第9章 方便的程式和视窗相关的工具
到目前为止我们已经涵盖了使用系统的基本元素, 有了 xterm功能, 你开始从视窗系统获得看得见的优点. 在本章我们描述一些小程式, 开始去充分使用系统并使你的工作更方便.
这章先提出 "案头附属品" (desk Accessory) 的方便程式, 接著介绍捕捉(capturing)、恢复 (restoring) 与列印萤幕影像的一组工具.
9.1 方便的程式
本节所描述的一些程式功能虽属次要, 但是却可以使你工作得更方便轻松.有些我们曾经提过 -- xclock 与 xcalc -- 但在这里将更有组织地描述, 我们将看一些可以显示目前机器负载和告诉你有邮件送达等功能的新程式.
9.1.1 一个类比或数位时钟 - xclock
在第5章中我们用 xclock 为范例程式, 它有下列命令列选项 :
指定视窗初始大小与位置 : 用 -geometry geomspec.
设定背景色 : 用 -bg colour.
设定前景色 : 用 -fg colour.
设定指针的颜色 : 用 -hd colour.
指针边缘高亮度 : 用 -hl colour, 以高亮度 colour 颜色为指针的边缘.
其他有用的选项 :
使用数位时钟 : -digital, 告诉 xclock 使用一个 24 小时的数字型时钟, 以取代预设的类比型, 如图 9 - 1.
设定 "时钟-滴答" 频率 : -update num, 使时钟每 num 秒更新显示一次. 处於指针状态下, 若 num 小於 30 秒则以一个钻石形秒针每num 秒移动一次, 如图 9 - 2. (预设值为 60 秒)
设定半小时钟声 : -chime, 每半小时整使终端机铃响一次, 每一个小时整铃响两次.
┌————————————————┐
│ p98. fig 9 - 1 │
│ │
│ │
│ 图 9 - 1 数字型时钟 │
└————————————————┘
┌————————————————┐
│ p98. fig 9 - 2 │
│ │
│ │
│ 图 9 - 2 具有钻石形秒针的指针型│
│ 时钟 │
└————————————————┘
9.1.2 一个桌上型计算器 - xcalc
这是另一个我们曾经用过的程式. 我们用过的命令列选项如下 :
指定视窗初始大小与位置 : -geometry geomspec.
设定背景色 : -bg colour.
设定前景色 : -fg colour.
其他选项 :
指定计算尺 (slide-rule) 模式 : -analog, 执行程式模拟一个计算尺 (图 9 - 3) 取代电子式计算器. 这实在很稀奇, 但一些更进一步的指令包含於下面, 因为它不包含在指南页内.
指定 HP-10C 型计算器 : -rpn (代表反波兰记数法 (Reverse Polish Notation)), 告诉 xcalc 模拟 HP-10C 型计算器 (如图 9 - 4).
各种计算器模式的更深入的指令说明包含於指南页. (无论你处於那一个模式, 当你将它表徵图化时, 其表徵图都是图 9 - 5 的样子.
┌——————————————————┐
│ p99. fig 9 - 3 │
│ │
│ │
│ 图 9 - 3 类比的 xcalc 是一个计算尺 │
└——————————————————┘
┌——————————————————┐
│ p99. fig 9 - 4 │
│ │
│ │
│ 图 9 - 4 反波兰记数法 xcalc 计算器 │
└——————————————————┘
┌————————————————┐
│ p99. fig 9 - 5 │
│ │
│ │
│ 图 9 - 5 xcalc 表徵图 │
└————————————————┘
使用计算尺
使用滑鼠按钮操作计算尺. 当滑鼠指标进入视窗内, 指标变成手型游标.
定位滑尺 - 左端 : 移动指标进入滑尺区, 定位至你想要的地方,碰触左按钮,滑尺左端跳至指标位置.
定位滑尺 - 右端 : 与设定左端一样, 但碰触右按钮.
定位计算尺的游标 : 定位指标至你想要的尺体位置, 并碰触左按钮
: 尺的游标跳至指标位置.
[1] [2] [3] 下一页
滑动滑动棒 (slide-bar) : 定位游标至滑尺, 按下中间按钮, 并保持按著 ... 拖拽滑尺到你要的位置, 然後放松按钮.
将尺的长度变为两倍 : 在尺体上碰触中间按钮.
将尺的长度变为一半 : 在尺体上碰触右按钮.
注意 : 假如你以左或右按钮拖拽, 将会有奇怪的事情发生.
9.1.3 显示机器的负载平均 - xload
xload 显示系统平均负载 (在执行伫列里的平均工作数目) 的柱状图 ,它会定期地更新. 典型的输出如图 9 - 6a, xload 的表徵图如 9 - 6b.
┌———————————————————┐
│ p100. fig 9 - 6 │
│ │
│ │
│ 图 9 - 6 xload 的正常视窗与表徵图视窗│
└———————————————————┘
9.1.4 邮件通知程式 - xbiff
xbiff 是一个监视你的邮件档与让你知道何时有邮件到达的小程式. 它显示一个邮箱的图案; 当没有新邮件时邮箱的旗子是向下的 (图 9 - 7a). 当有新邮件进来时, xbiff 响铃, 竖起旗子, 并使图案变成反相显示 (图 9 - 7b).
你可以在 xbiff 视窗上碰触任何滑鼠按钮, 强迫旗子放下.
xbiff 接受一般对色彩的命令列选项 (-bg, -fg, -bd) 与对视窗特性的命令列选项(-display, -geometry, -bw). 其他包括 :
指定检查邮件频率 : -update num, 告诉 xbiff 每 num 秒检查邮箱一次, 看是否有新的邮件到达. (预设值为 60 秒)
指定一个特定邮件档 : -file filename, 使 xbiff 检查在 filename 内的邮件, 取代预设名称的档. 预设名称为 /usr/spool/mail/username, 其中username为你的登录名称 (login name)。
xbiff 特有的 -file 选项, 对网路上的邮件被集中处理和你的邮箱由另外的机器处理等两方面非常有用. 下面的命令让你执行某个邮件机器(比如说mars) 上的 xbiff程式, 查看你的邮箱, 并将显示送回你自己的机器venus:
rsh mars xbiff -file /var/spool/mail/smith -display venus:0 &
┌—————————————————┐
│ p101. fig 9 - 7 │
│ │
│ 图 9 - 7 xbiff 邮件监视视窗的两种│
│ 状态 │
└—————————————————┘
9.2 储存, 显示与列印萤幕影像
X是一个图形系统, 而你将用它在视窗内显示文字与图形. 经常X视窗的使用者会想要捕捉萤幕上的某些影像, 以便稍後你可以重新显示它, 或送至硬拷贝(hard-copy)装置列印. 下面的小节将描述这些功能.
9.2.1 储存一个视窗的影像 - xwd
xwd 倾印 (dump) 一个视窗的影像到一个档案. 这个档案稍後可以被其他程式处理 (例如列印一个硬拷贝).
使用 xwd 有许多种不同方法. 你可以明确地指定一个输出档 (使用命令列选项-out name), 或者使用 xwd 倾印影像到标准输出. 你也可以明确地指定想倾印的视窗, 或可以让 xwd "提示" 你一下.
让我们拿最简单的一个例子 : 於 xterm 下以下列命令启动程式
xwd > outfile
只要 xwd 启动, 游标便会变成 "十字线" (cross hairs) 状, 见图 9 - 8. 移动指标进入你想要倾印的视窗, 并碰触任何按钮 : xwd 响一次铃表示它已经开始记录视窗影像, 且在它完成时响两次铃. 然後游标恢复正常.
┌————————————————┐
│ p102. fig 9 - 8 │
│ │
│ │
│ 图 9 - 8 十字线形游标 │
└————————————————┘
注意 1 : 假如你试图倾印在萤幕上不完整的视窗, 程式可能失败并在你的控制台 xterm 视窗内显示出一长串的错误讯息 (假如你有一个控制台的话).
注意 2 : 被捕捉的影像是你真正在萤幕上的视窗边界内所看到的, 特别的是,假如视窗的某部分被另一个视窗覆盖, 倾印的影像将展现视窗涵盖的可见部分以及遮蔽视窗重叠的部分. (例如 : 图 9 - 9 展示一个被 xman 覆盖的一个xterm 视窗的倾印结果) 这似乎是一个不方便的功能, 但有它的优点 :若想要获得整个萤幕的倾印影像, 只要对根视窗执行 xwd 即可; 就如同你在萤幕上看到被覆盖的根视窗一样, 用这个方法你可以得到完整萤幕的图片.
┌—————————————————┐
│ p102. fig 9 - 9 │
│ │
│ │
│ 图 9 - 9 一个被重叠视窗的倾印结果│
└—————————————————┘
如何指定被倾印的视窗
有两种方法可以透过命令列选项告诉 xwd 要倾印那一个视窗.
-root : 倾印根视窗. 例如 : 想得到萤幕的一个完整图片, 使用命令 :
上一页 [1] [2] [3] 下一页
xwd -root > screenpic
-id win-id : 倾印视窗识别码为 win-id 的视窗. (每个由 X server 建立的视窗皆有一个唯一的视窗识别码 : 它只是一个识别视窗的号码. 我们将在 "资讯与状态程式 " (Information and status program)那一章 (第12章) 中告诉你
(出处:http://www.sheup.com)
上一页 [1] [2] [3]
(出处:http://www.sheup.com/)
上一页 [1] [2] [3] [4]