Next Previous Contents

6. 模块

6.1 如何在屏幕上显示多个 Wharf/Pager?

这很简单。您只需要让 Wharf 以几个不同的名称存在,然后使用其名称配置每个 Wharf。 例如,如果您创建了一个名为 MyWharf 的 Wharf 链接(如果您不知道如何创建链接,请在命令提示符下键入“man ln”),您需要为新的二进制名称在 Wharf 配置文件(或 .steprc 中的新节)中添加额外的行:~/GNUstep/Library/AfterStep/mywharf。 该文件将包含如下行

       *MyWharfAnimate
       *MyWharf "label" Icon.xpm Exec "something" something

Pager 也一样。 请注意,默认的 pager 文件已经包含了一些额外的行,用于 *WPager、*XPager、*YPager 和 *Zpager。 使用这些名称的链接以使用默认设置(并删除相关行的注释标记)。

在最新版本中,您还需要编辑数据库文件:使用新名称镜像 Wharf 的外观。

注意: 显然,由于 Wharf 配置文件解析器的工作方式,名称如 Wharf2 的链接(即在原始名称后附加字符)将无法工作:解析器会认为您正在引用原始模块并会感到困惑。 您必须为每个链接指定一个独特的名称。 例如,尝试 MyWharf。

在最新版本的 AfterStep 中,AfterStep 还包含一个不同版本的 GoodStuff; 这被称为 Zharf。 它允许可变大小的按钮,并且包含图标的名称。 您可以从“开始”菜单(在“模块”下查找)使用默认配置启动它。 配置基本上与 Wharf 相同。

6.2 如何让 asclock 在 Wharf 中正确显示?

首先,您需要 AfterStep 0.98 beta 4 或更高版本。 这些版本具有 MaxSwallow 选项。 然后,在 wharf 文件或行中添加如下命令(取决于您是否使用 .steprc)

         *Wharf asclock nil MaxSwallow "asclock" asclock -12 -shape &

您必须将 `-12' 替换为 '-24' 以显示 24 小时制时间。

6.3 如何配置 asclock 以使用更少的颜色?

安装时,执行 configure 后,默认情况下应启动 asclock configure。 否则,请转到 modules/asclock 目录并执行以下操作

  1. 执行 sh configure
  2. 将出现几个菜单,询问日期的默认语言(是的,您可以更改它!)和使用的颜色数量。 有一个选项可以使用 2 位颜色,从而产生一个仅使用 4 种颜色的 asclock,但仍然看起来不错。
  3. 完成。 现在像往常一样编译 asclock。

6.4 为什么 asclock 显示的时间不正确?

这最常发生在 Red Hat Linux 安装中。 存在一个断开的链接; 这是一个相当知名的问题。 只需在 /usr/lib/zoneinfo 和 /usr/share/zoneinfo 之间创建一个链接。 如果您不了解链接,请尝试在命令提示符下键入“man ln”。

6.5 为什么我最新版本的 MaxSwallow 会做奇怪的事情?

在最新版本的 AfterStep 中(即从 1.4.5 系列补丁开始),Wharf 经历了一些重新设计,以便允许使用一些更新的程序(为 Window Maker 设计)。 因此,Wharf 出现了不同的补丁。

这项工作的最终结果可以在 1.5 版本中看到。 旧的“MaxSwallow”已被删除,并替换为“Swallow”。 较旧的“Swallow”及其大小限制已不复存在。“MaxSwallow”关键字现在会调整按钮大小以适应正在吞噬的应用程序。 还有一个“Size”关键字,用于调整按钮大小,并忽略任何其他尺寸确定。

6.6 WharfAnimate 有什么问题?

这里实际上有两个问题。

首先,在 1.4.4 中,WharfAnimate 已损坏。 这在 1.4.5.0 中已修复。

其次,有些人抱怨 Animate 太慢。 这是在编译时定义的。 您应该将 configure.h 中的三个 animate 行调整为较低的数字; 这将加快动画速度。 1.5 版本包含三个新的配置选项:WharfAnimateSteps、WharfAnimateStepsMain、WharfAnimateDelay。 这些在 wharf 配置文件中定义,并控制 Wharf 的动画。 旧的编译时配置仍然可用,但这些新选项有望使事情变得更容易。

6.7 您可以将 xyz 添加到 Wharf 吗?

您知道,如果 Wharf 支持文本标题/级联菜单/侧边标签/插件模块/在文件夹中吞噬正在运行的应用程序/文件夹上的滚动条/仅在应用程序尚未运行时才启动应用程序,那就太好了。 为什么没有人这样做呢?

这是一场圣战。 您将在黎明时被钉在十字架上。 除非您自己实现它并发布补丁。

不,严肃地说,关于这些主题已经有很多讨论。

许多人认为 AfterStep 应该尽可能接近原始的 NEXTSTEP 界面,而另一些人则认为它应该扩展并尽可能地可配置。

现在 Window Maker 正在遵循原始的 NEXTSTEP 界面,而 AfterStep 正在走自己的路。 广泛的可配置性是这些“自有之路”之一。

因此,请向相关列表之一发送消息,准确说明您希望实现什么; 或者,更好的是,自己动手并发送补丁。

6.8 我可以在文件夹下放置吞噬的应用程序吗?

只有当您拥有 1.4.5.55N2 或更高版本时,您才能拥有此功能。

6.9 我可以在文件夹内嵌套文件夹吗?

是的。 在 1.5 版本中,文件夹可以嵌套。 只需将子文件夹规范嵌套在主文件夹规范中即可。

在 1.5 之前的版本中,您无法嵌套文件夹。 Thadeu Penna (tjppenna@aol.com) 通过创建一个调用另一个 Wharf 的文件夹巧妙地解决了此限制

 
My dirty solution was: one of the Wharf's buttons is a call
to Pier (a secondary Wharf). In this way, I got one additional level. The
main disadvantage is for each button in the Pier, you have to write a small
script that calls the program and after to kill the Pier. The geometry was
quite easy to evaluate. I have used, for the first button of the Pier, the
same icon as in the Wharf, therefore it seems as a Folder with an additional
level. It is a little slower than Wharf itself.

6.10 我可以在我的 Wharf 中设置两列吗?

是的,在 1.5 版本中。 使用 WharfColumns。 WharfColumns 曾经坏了,但现在已修复。

6.11 为什么我找不到 Wharf 的 man page?

拼写为 “Wharf” 而不是 “wharf”。

6.12 pager 中的鼠标按钮有什么问题?

在 1.4.5.55 中,由于 Red Hat 的要求,左右和中间鼠标按钮绑定被颠倒了。 然而,一些用户对这种安排表示不满,因此将不再维护。 1.5 版本恢复到旧样式。

6.13 如何拥有更多/更少/更大的桌面?

最新 AfterStep 版本中的 Pager 模块非常灵活。 它可以配置为显示多个桌面,每个桌面有多个屏幕,并且可以放置在您喜欢的任何位置。

要更改桌面大小,请编辑 base.{您的位深}bpp 文件以反映您想要的桌面大小。“2x2”表示“两格宽乘两格高”。

要更改桌面数量,您需要做两件事。 首先,您需要更改 autoexec 文件中对 pager 的调用。 启动 Pager 的语法是“Pager {第一个桌面} {最后一个桌面}”,其中第一个桌面始终为 0。 因此,如果您想要有两个桌面,您需要在 autoexec 文件中添加以下行


Module  "I"     Pager 0 1

然后,您还应该注释掉或删除 pager 配置文件中额外桌面的定义。

Pager 可以放置在桌面上的任何位置,方法是编辑 “*PagerGeometry” 的值。 这使用标准的 X geometry 值。

Pager 也可以垂直和水平显示。 只需调整 “*PagerRows” 和 “*PagerColumns” 的值。

另请注意,pager 配置文件在 1.5 版本中已更改,以便允许新功能。 不要回收旧的 pager 配置,而应使用新的默认配置作为新自定义的基础。

6.14 好的,但是如何完全从桌面上移除 pager?

您可以通过从 autoexec 文件中删除 pager 来摆脱它。

Pager 可以被吞噬到 Wharf 中。 在 1.5 版本中,也可以在 Wharf 文件夹下执行此操作。 使用 “MaxSwallowModule”。

6.15 如何在 AfterStep 中启用声音?

首先,确保您拥有必要的硬件,并拥有一个编译了声音支持的内核。 您可以通过在命令提示符下尝试以下操作来检查您的声音是否真的有效

cat [some au file] > /dev/audio

然后,编辑 ~/GNUstep/Library/AfterStep/audio 文件。 您应该看到如下行(如果看不到,请添加它们)

         *AudioPlayCmd /usr/bin/showaudio
         *AudioDir /usr/local/share/afterstep/desktop/sounds
         *AudioDelay 1

同样,如果这些行不存在,请添加它们。 验证 AudioPlayCmd 是否是有效程序,并且您要播放的声音是否在 /usr/local/share/afterstep/desktop/sounds/ 中(或将其设置为适当的目录)。

在该部分下方,您应该看到许多如下行

         #*Audio startup gong.au

只需删除行首的注释 (#),如果需要,可以将启动事件设置为其他 au 文件。 格式是

       *Audio [event] [sound]

对其余的 Audio 事件执行此操作,正如一位 AfterStepper 所说,您将真正为 AfterStep 添加新的花哨功能。

在某些版本的 AfterStep 中,声音默认情况下是禁用的。 您可以通过两种方式使音频模块工作。 第一种是打开“开始”菜单,单击“模块”,然后单击“音频”。 另一种是在您的 autoexec 文件中启动 Audio 模块。 只需添加行

        Module  "I"     Audio

到您的 autoexec 文件。

音频模块在某些版本中显然已损坏,但似乎没有人知道为什么。 在询问为什么您的 Audio 模块不工作之前,您应确保您拥有最新版本的 AfterStep:所有当前版本似乎都能正常运行。 如果您仍然遇到问题,并且您已阅读本文并仔细遵循了说明,您可能需要在邮件列表中提问。

您还应该意识到 Audio 模块的配置进行了一些更改。 因此,如果您更改了 AfterStep 版本,并且 Audio 突然对您不起作用,请在询问哪里出错之前检查您是否删除了旧配置。

最后,如果您收到错误消息,抱怨路径不正确,请检查您的 base.{您的 bpp 数字}bpp 文件。 AudioPath 过去是在 base 文件中设置的,但现在是在 Audio 模块的配置文件中设置的。 此更改影响自 1.4.5.0 以来的版本; 但 1.4.5.0 在发布时意外地将 AudioPath 配置在 base 文件中。 修复定义,问题就会消失。


Next Previous Contents