📄 00000008.htm
字号:
<BR> 导致你的应用程式看起来很讨厌----你得到杂乱的视窗,每一个空间以某 <BR>种图样填满----但它们的确在作用,有时这样做可能会有用,backgroundPixmap <BR>是类别Pixmap的属性。 <BR> <BR> <BR>15.5 结论 <BR> <BR> 在这复杂的一章中,你看到了什麽是”resource”,和你如何使用它们指 <BR>定预设值或其它的值给应用程式,我们勾绘出Toolkit 大致轮廓,和widget的 <BR>阶层观念,并说明如何利用widget结构或应用程式的其它物件来设定较大范围 <BR>的预设值。从这里我们介绍类别的概念,它可以让你指定物件而无需知道它们 <BR>个别的名称,接著谈到Resource Manager和它在资料库中对应resource规格的 <BR>规则以便程式查询预设值,最後,我们大致说明如何指定它们的值。 <BR> <BR> 本章专注於resources 结构运作的规则,现在是告诉你如何在系统下实际 <BR>使用的时候了。在下一章,我们告诉你如何及在何处储存预设规格,也就是说 <BR>,如何管理我们前述的”resource资料库”。在这章之後,我们解释如何使用 <BR>resource来定制你的键盘。 <BR> <BR>===== <BR> <BR>第16章 实际的使用Resource <BR> <BR> 前一章解释X resources的规则----为什麽需要它们,结构如何工作和 <BR>resource规格的格式。本章中继续讨论resources ,但较强调实用性:我们告 <BR>诉你如何及何处设定resources 预设值,来影响你的系统的一部份或全部。在 <BR>本章结束前,我们将完成一些范例,点出你可能常见的错误,并告诉你如何克 <BR>服它们。 <BR> <BR> 在这些范例中,我们假设你自己的工作站叫做venus ,并且大部份时间你 <BR>是使用它。从venus 的显示器,你可在远方的机器saturn和mars上执行client <BR>应用程式且和venus 共享档案系统;neptune 则不可,我们曾在第4章描述过。 <BR> <BR> 当你在本章中时,记得resource结构是:传递资讯给应用程式,通常这些 <BR>资讯是用来传递一些比较感兴趣的预设值(例如色彩和字型),但只要应用程 <BR>式取得协调你就能使用这种设施传递任何资讯。所以我们一般状况下倾向於把 <BR>”resource规格””预设值”(defaults)”resource”这三个名词视为同一含 <BR>意。 <BR> <BR> <BR>16.1 在何处储存resource的预设值 <BR> <BR> 在上一章我们只告诉你输入resource规格到”一个资料库”,但未告诉你 <BR>如何做。事实上有几个不同的地方可以储存预设值:这些”地方”通常是一个 <BR>你可以用任何编辑器修改的简单的文字档案,但有一个特殊的位置需要特殊的 <BR>工具来设定它,我们先很快的给你一个概念,再讨论细节部份。 <BR> <BR> 首先它的架构非常的复杂:包含命令列选项总共有八种设定resource方法, <BR>但有两个重点需要注意: <BR> <BR> 1 .你最好只使用其中的一或二种设置,只要你做完启始设定,你将只 <BR> 须改变预设的设定。 <BR> <BR> 2 .系统是被设计来掌握许多不同模式的工作,和满足那些在许多显示器 <BR> 上工作或在一台显示器上工作而存取远方机器的使用者的。 <BR> <BR> 总结来说,这些设置是提供来让系统尽可能富於弹性,但任何时刻你将只 <BR>须存取其中的子集合而已。 <BR> <BR> <BR>16.1.1 设定Resource的八种方法 <BR> <BR> 总共有八种方法设定resource,但它们可分为下面几类: <BR> <BR> .应用程式专属的(Application-specific)resource:resource的表列, <BR> 限定档案只能被特定的应用程式读取。 <BR> <BR> .Server专属的resource:应用设定,不管应用程式在那一种主机上执行。 <BR> <BR> .主机专属的设定(Host-specific-setting) :对应用程式在主机上执行 <BR> 有关的设定,和显示器无关。 <BR> <BR> .命令列选项:在执行时期做一次关闭(one-off) 设定。 <BR> <BR>应用程式专属的resource -- 方法1 和方法2 <BR> <BR> Toolkit 程式初始时在和应用程式直接相关的两个档案中寻找resource, <BR>这些档案只能被特定的应用程式读取: <BR> <BR> 1 .应用程式--类别(Application-class) resource档案:这个档案包含 <BR> 了机器一般性(site-wide) 对应用程式的类别之预设值,通常为系统 <BR> 管理者所设定。它的名称就是应用程式类别的名称,在标准安装的系 <BR> 统中它是储存在目录/usr/lib/X11/app-defaults 中,例如xterm 的 <BR> 相关档案为: <BR> <BR> /usr/lib/X11/app-defaults/XTerm <BR> <BR> 在core版中,有一个相关於Xmh 的此种档案,观察此档案可以看所使 <BR> 用之设定的型态。 <BR> <BR> 2 .你自己拥有的应用程式专属的resource档案:这个档案的名称和上述 <BR> 相同,但它存放在不同的地方----由shell 变数$XAPPLRESDIR所指定 <BR> 的目录,如果未定义,则放在home目录。例如对Xmh 类别的程式,它 <BR> 的档案放在下列二者之一: <BR> <BR> $XAPPLRESDIR/Xmh <BR> $HOME/Xmh <BR> <BR> 你可以使用此种档案,处理方法1 中你不喜欢的 site-wide档案使其无 <BR> 效。 <BR> <BR>Server专属的Resource -- 方法3 和方法4 <BR> <BR> 这是对你目前工作的Server(显示器)做有关的设定。键盘的设定通常是 <BR>server专属的(因为不同的显示器有不同的键盘)。另一个server专属的特徵 <BR>为显示器是彩色或单色。 <BR> <BR> Resource和这些有关的项目会被所有与这个终端机相关的应用程式应用到, <BR>并且不论应用程式在何主机上执行。(例如,如果你使用的显示器为单色,则 <BR>不管你的应用程式在何处执行,你还是不会要它使用彩色。) <BR> <BR>储存server专属设定的方法是: <BR> <BR> 3 .server的RESOURCE_MANAGER性质(property):(你可在12章中xprop <BR> 的输出看到),使用下述的xrdb程式,你可以在server的根视窗的 <BR> RESOURCE_MANAGER性质中储存resource设定。它的优点如下: <BR> <BR> (a) 你不需编辑任何档案即可设定预设值。(当你为了了解系统而实 <BR> 验系统时特别有用) <BR> <BR> (b) resource被server掌握,所以不论应用程式在那一部主机上执行, <BR> 均能被所有的应用程式应用。在我们的范例中,在neptune 的 <BR> 情况下特别有用,甚至在不和我们的显示机器venus 共享档案系 <BR> 统时,它仍然自动地选出为了使用此显示器所必需的resource设定。 <BR> <BR> 4 .你的$HOME/.Xdefaults档案:(只有在根视窗没有RESOURCE_MANAGER <BR> 性质定义的情况下使用)。如果你对xrdb尚不熟悉,你便可以此档取 <BR> 代,但你必须在每一部你执行client应用程式的机器上均设定一个。 <BR> <BR>主机专属设定 -- 方法5 和方法6 <BR> <BR> 主机专属预设值和server专属相反,不管应用程式所使用机器的终端机为 <BR>何,只要应用程式在此主机上执行,均使用主机专属预设值,你可以用它们来: <BR> <BR> .让应用程式在不同的机器上对不同的档案系统作计算,例如:被一个应 <BR> 用程式读取的资料档案可能在不同的主机上保持不同的位置。 <BR> <BR> .区分显示在同一个萤幕上不同的主机的视窗(这些视窗可能由同一个应 <BR> 用程式执行),例如:你可以要所有在mars机器上执行的xterm 的视窗 <BR> 为红色的边框,而在saturn上执行的视窗为黄边。 <BR> <BR> .调高一个相同的应用程式在不同的client机器上版本的差异,例如: <BR> xterm 在venus 是标准的MIT 版,但在neptune 机器上是由第三集团修 <BR> 改过以适应机器结构的产品,这两版的xterm 可能并不完全相容。 <BR> <BR>主机专属Resource储存在: <BR> <BR> 5 .由$XENVIRONMENT 来的档案名称:如果shell 变数$ENVIRONMENT有被 <BR> 定义,它会被解释为一个含有resource设定的档案之完整的路径名称。 <BR> <BR> 6 .你的$HOME/.Xdefaults-thishost 档案:(当$XENVIRONMENT 未被定 <BR> 义时使用)。注意它和我们先前的档案有所不同,它必须附加上主机 <BR> 名称,例如,如果你在neptune 执行应用程式而在venus 显示(假设 <BR> RESOURCE MANAGER性质未定义),则server专属 resource 读取自: <BR> <BR> .Xdefaults <BR> <BR> 而主机专属resource则是: <BR> <BR> .Xdefaults-neptune <BR> <BR> 两者均在neptune 的家目录(home directory)中。 <BR> <BR> 注意:在不同的小节中,我们曾说过类似”server专属resource读取自...” <BR>这可能造成误导:”如果你实际需要,你可以放置任何型态的resource设定到 <BR>任何的档案或资料库。”我们真正的意思是你应该放置机器特性或不论甚麽的 <BR>resource到任何地方,如果你这样做,你将获得你需要的动作。 <BR> <BR>命令列选项 -- 方法7 和方法8 <BR> <BR> 最後,你可以藉著命令列选项设定应用程式的值。通常当你设定预设值时 <BR>,为的是你不需要使用选项为你的程式作X相关的设定。但你实际上可以用它 <BR>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -