FVWM 95设 定 说 明

众 所 期 盼 的 Linux系 列 专 栏 , 终 於 在 本 期 揭 开 了 序 幕 。 喜 爱 Linux的 读 者 , 千 万 不 要 错 过 这 一 系 列 的 专 栏 报 导 。

本文作者/李俊宏


  如 果 你 是 第 一 次 安 装 Slackware 96, 并 且 安 装 了 X套 件 。 那 麽 当 你 第 一 次 看 到 你 的 X视 窗 画 面 , 恐 怕 会 大 吃 一 惊 。 奇 怪 ! 怎 麽 Linux装 一 装 便 成 Windows 95了 ? 呵 呵 , 不 要 怀 疑 ! 你 看 到 的 正 是 新 的 Fvwm 95。 怎 麽 样 ? 是 不 是 跟 Windows 95很 神 似 呢 ?

  在 设 定 完 XFree86之 後 , 就 开 始 展 开 设 定 FVWM95 了 。 不 过 , 对 於 有 些 刚 开 始 接 触 X- window的 人 , 可 能 找 不 到 何 处 可 下 手 , 甚 至 也 不 知 道 Window Manager还 有 很 多 可 以 设 定 的 地 方 , 其 实 如 果 设 定 得 好 的 话 , 可 以 让 你 的 X更 好 用 , 更 好 看 , 更 与 众 不 同 喔 。

  在 启 动 fvwm95後 , fvwm95会 开 始 搜 寻 设 定 档 (configuration file), 设 定 档 中 包 含 了 所 有 关 於 fvwm95的 颜 色 , 字 形 , 属 性 , 按 键 的 定 义 以 及 其 他 的 一 些 设 定 。 首 先 fvwm95会 先 搜 寻 home directory下 面 的 .fvwmrc95这 个 档 , 如 果 找 不 到 这 个 档 的 话 , 则 会 继 续 找 寻 /usr/lib/X11/fvwm95-2/system.fvwm2rc95这 个 档 , 如 果 连 这 个 档 都 找 不 到 的 话 , fvwm95将 会 结 束 执 行 。

  在 fvwmrc95的 设 定 档 中 凡 是 以 “ #” 开 头 的 , 则 表 示 这 行 是 注 解 。 Fvwmrc95会 忽 略 它 。 若 是 以 “ *” 开 头 的 话 , 则 表 示 後 面 的 命 令 是 属 於 module命 令 的 。 下 面 针 对 configuration file中 的 各 个 command来 加 以 说 明 :

  在 system.fvwmrc95内 最 先 看 到 的 设 定 是 关 於 X-window基 本 设 定 , 包 括 视 窗 颜 色 (Window Font), 图 像 颜 色 (IconFont), 选 单 颜 色 (Menu Font)以 下 是 system.fvwmrc95的 预 设 值 :

WindowFont -adobe-helvetica-bold-r-*-*-12-*-*-*-*-*-*-*

IconFont fixed

MenuFont -adobe-helvetica-medium-r-*-*-*-120-*-*-*-*-*-*

所 以 首 先 呢 ....我 们 就 来 看 看 如 何 进 行 这 些 设 定 :

DefaultColors:

  设 定 视 窗 颜 色 的 预 设 值 。

HilightColors:

  设 定 键 盘 输 入 字 的 颜 色 。

StickyColors:

  设 定 视 窗 与 桌 面 一 起 移 动 时 的 颜 色 。

在 此 我 们 先 看 看 HilightColors的 原 始 设 定 (HilightColors White #000080), 我 们 可 以 看 见 它 的 设 定 为 000080的 白 色 , 如 果 要 更 改 成 其 他 颜 色 , 只 要 将 White换 掉 即 可 , #後 面 可 以 不 用 更 改 , 但 如 果 想 要 更 改 可 参 阅 /usr/X11/lib/X11/

rgb.txt这 份 颜 色 对 照 表 。

  除 此 之 外 , 还 可 以 用 Style这 个 命 令 (command)去 个 别 设 定 一 些 还 没 有 被 设 定 颜 色 的 视 窗 , 例 如 :

Style “ *” ForeColor:

  设 定 前 景 颜 色 。

Style “ *” BackColor:

  设 定 背 景 颜 色 。

接 着 设 定 主 要 的 作 业 模 式 :

Style “ *” ClickToFocus

ClickToFocus

  当 设 定 这 个 选 项 时 , 只 有 在 mouse在 该 window上 点 一 下 , 该 window才 会 变 成 active, 系 统 的 预 设 值 是 当 mouse的 游 标 移 到 哪 个 window上 , 该 window就 会 变 成 active模 式 。 你 也 可 以 明 确 指 定 要 求 当 游 标 移 动 到 视 窗 上 面 就 自 动 变 成 Active。 就 像 下 面 这 样 :

Style “ *” SloppyFocus

接 下 来 是 设 定 图 像 (icon):

Style “ *” NoIcon:

这 就 表 示 不 要 有 图 像 (icon)。

Style “ *” MWMFunctions:

这 是 用 来 模 拟 mwm的 funtion hint的 功 能 。

Style “ *” HintOverride:

  让 一 些 mwm的 function hint的 功 能 失 效 , 这 个 时 候 你 在 选 单 中 所 看 见 的 一 些 选 项 会 变 成 较 淡 的 颜 色 。 但 仍 然 可 以 选 择 它 们 。 不 过 要 注 意 的 是 , 有 时 候 这 样 做 会 造 成 一 些 软 体 的 中 断 。

Style “ *” MWMDecor:

  fvwm会 读 取 从 window送 来 的 MWMDecor 的 event。 同 时 依 其 内 容 来 做 一 些 必 要 的 反 应 动 作 。

Style “ *” RandomPlacement:

  在 防 范 使 用 者 安 置 视 窗 时 所 产 生 交 互 影 响 的 作 用 。

Style “ *” NoPPosition:

指 示 fvwm在 增 加 一 个 新 的 window的 时 候 , 忽 略 掉 PPosition的 栏 位 。

DeskTopSize 3x2:

  这 个 选 项 是 用 来 设 定 虚 拟 桌 面 的 数 目 的 , 原 本 的 预 设 是 3x2。 大 家 可 以 依 自 己 的 习 惯 及 需 要 自 行 订 定 。

紧 接 着 我 们 来 设 定 各 种 系 统 的 路 径 :

ModulePath /usr/X11R6/lib/X11/fvwm95-2/:

  这 是 设 定 fvwm95的 模 组 路 径 为 /usr/X11R6/lib/X11/fvwm95-2/。

PixmapPath /usr/include/X11/pixmaps/:/usr/local/mini-icons/:

  这 是 指 定 在 /usr/include/X11/pixmaps/及 /usr/local/mini-icons/下 可 以 找 到 彩 色 的 pixmap 图 像 (icon)。 路 径 与 路 径 中 间 用 冒 号 隔 开 。

IconPath /usr/include/X11/bitmaps/:/usr/local/icons/:

  这 里 是 设 定 可 以 找 到 图 像 (icon)的 路 径 为 /usr/include/X11/bitmaps/和 /usr/local/icons/。

  接 下 来 我 们 来 设 定 一 些 关 於 加 强 style这 个 指 令 和 视 窗 的 取 舍 的 东 西 , 这 些 做 法 是 非 常 重 要 的 , 如 果 将 一 些 相 容 性 质 的 style设 在 一 起 (也 就 是 在 同 一 行 )那 麽 这 些 功 能 将 会 一 起 作 用 , 而 如 果 不 是 呢 … … 将 会 以 最 後 的 属 性 为 准 。

  这 些 命 令 通 常 是 下 在 选 单 (menu)或 功 能 (function)还 没 有 定 义 之 前 , 而 且 是 在 这 些 内 部 的 设 定 开 始 之 後 。

  这 表 示 上 面 所 述 的 window的 样 式 设 定 , 并 非 一 个 window只 能 设 定 一 种 , 有 些 style是 可 以 重 复 作 用 在 同 一 个 window之 上 的 , 例 如 pager, 它 是 NoTitle, WindowListSkip, Sticky… … 等 等 的 style。 利 用 这 个 选 项 , 可 以 将 我 们 要 设 定 的 window style设 定 在 一 起 可 用 的 style如 下 所 示 :

BorderWidth [width]:

  这 是 用 来 设 定 边 线 宽 度 的 。

HandleWidth [width]:

  在 视 窗 是 属 於 可 调 整 的 视 窗 下 , 这 是 用 来 设 定 此 种 视 窗 的 边 线 宽 度 。

NoIcon/Icon [icon name]:

  这 是 用 来 选 择 视 窗 上 是 否 要 有 Icon, icon name即 是 Icon的 档 名 。

NoTitle/Title:

  这 是 用 来 选 择 是 否 视 窗 要 有 title bar, 如 果 选 择 NoTitle, 则 此 视 窗 将 不 会 有 Title Bar。 如 果 选 择 Title就 会 有 Title Bar。

NoHandles/Handles:

  这 是 用 来 选 择 视 窗 是 能 任 意 调 整 大 小 , 如 果 选 择 NoHandles, 则 边 框 不 会 有 四 个 角 可 以 调 整 大 小 。 如 果 选 择 Handles, 就 会 有 四 个 角 可 以 调 整 大 小 。

WindowListSkip/WindowListHit:

  这 是 用 来 选 择 是 否 可 以 看 见 视 窗 的 名 字 , 如 果 选 择 WindowListSkip, 则 在 WindowList这 个 Module就 不 会 看 到 这 个 视   窗 的 名 字 。 Window ListHit 则 是 相 反 。

CirculateSkip/CirculateHit:

  这 是 用 来 选 择 视 窗 在 做 切 换 时 是 否 会 跳 过 另 一 个 视 窗 , 如 果 选 择 CirculateSkip在 做 与 视 窗 之 间 的 切 换 的 时 候 将 会 跳 过 这 个 视 窗 。 CirculateHit则 相 反 。

StaysOnTop/StaysPut:

  这 是 用 来 选 择 是 将 某 一 个 视 窗 置 於 其 他 视 窗 的 何 处 ? StaysOnTop将 会 让 这 个 视 窗 一 直 在 其 他 视 窗 的 上 方 。 StaysPut是 正 常 的 情 况 。

Sticky/Slippery:

  这 是 用 来 选 择 视 窗 是 否 会 跟 着 桌 面 移 动 , Sticky会 让 视 窗 一 直 跟 着 桌 面 移 动 。 Slippery则 相 反 。

StartIconic/StartNormal:

  这 是 用 来 选 择 视 窗 在 启 动 时 是 以 何 种 形 式 出 现 , StartIconic会 让 此 视 窗 启 动 的 时 候 , 以 Icon的 方 式 出 现 。 StartNormal则 是 以 正 常 的 方 式 出 现 。

Color [colorname]:

  这 是 用 来 设 定 视 窗 的 文 字 颜 色 。

ForeColor [colorname]:

  这 是 用 来 设 定 视 窗 的 前 景 颜 色 。 也 就 是 文 字 颜 色 。

BackColor [colorname]:

  这 是 用 来 设 定 视 窗 的 背 景 颜 色 。

StartsAnyWhere/StartsOnDesk[desk number]:

  这 是 用 来 设 定 选 择 视 窗 开 启 後 要 置 於 哪 个 桌 面 上 , Desk是 只 桌 面 的 代 码 。 StartsAnyWhere, 如 果 指 定 StartsAnyWhere则 视 窗 会 出 现 在 目 前 的 桌 面 上 。

IconTitle/NoIconTitle:

  这 是 用 来 设 定 Icon是 否 要 显 示 Title Bar的 字 元 。 IconTitle是 要 显 示 , NoIconTitle则 相 反 。

NoButton/Button:

  这 是 用 来 设 定 视 窗 上 的 title bar的 按 钮 是 否 要 有 , NoButton是 不 要 , Button则 是 要 。

举 例 而 言 :

  Style“ xbiff*” NoHandles, Sticky, WindowListSkip, BorderWidth 0就 是 让 xbiff 变 成 一 个 sticky且 没 有 Border的 window, 且 不 会 出 现 在 FvwmWinList的 module中 。 其 馀 的 用 法 大 家 可 以 自 行 试 试 看 。

  再 来 就 是 设 定 在 视 窗 上 的 titlebar的 mini-icon, 要 设 定 的 有 基 本 视 窗 , xterm视 窗 , rxvt视 窗 , xcalc视 窗 , xsession视 窗 , xv视 窗 , Netscape视 窗 , xmag视 窗 , textedit视 窗 , tkps视 窗 , Ghostview视 窗 , Xcolorsel视 窗 , IDL视 窗 , xeyes视 窗 和 fm视 窗 。

以 下 就 是 这 些 设 定 的 一 些 样 式 :

(程式一)

  你 也 可 以 设 定 当 视 窗 缩 小 成 为 Icon的 时 候 , 应 该 使 用 那 些 Icon。

以 下 就 是 设 定 的 方 法 :

(程式二)

  如 果 使 用 者 觉 得 这 些 功 能 不 够 ( 就 像 我 ) 还 可 以 增 加 功 能 , 如 下 面 这 个 例 子 。 读 者 请 注 意 , 下 面 这 个 设 定 会 在 Fvwm95启 动 的 时 候 自 动 执 行 。

(程式叁)

AddToFunc这 个 命 令 可 以 来 设 定 Function。 透 过 这 个 命 令 , 你 可 以 为 你 的 FVWM定 义 自 己 的 功 能 。 请 看 下 面 的 范 例 :

AddToFunc Move-or-Raise “ I” Raise
+ “ M” Move
+ “ D” Lower

其 中 I、 M、 D意 义 如 下 :

I( Immediate) :

  立 即 执 行 後 面 的 命 令 。

M( Motion) :

  如 果 滑 鼠 是 在 移 动 状 态 就 执 行 後 面 的 命 令 。

C( Click) :

  如 果 使 用 者 是 以 按 下 滑 鼠 键 的 方 式 呼 叫 的 话 , 就 会 执 行 後 面 的 命 令 。

D( Double-Click) :

  使 用 者 如 果 是 用 连 按 两 次 滑 鼠 键 的 方 式 来 呼 叫 的 话 , 就 会 执 行 後 面 的 命 令 。

运 用 这 个 方 式 你 可 以 做 出 一 个 非 常 方 便 的 功 能 选 单 , 以 下 就 是 一 个 具 有 好 用 的 功 能 的 例 子 :

AddToFunc “ Resize-or-Raise” “ M” Resize
+ “ M” Raise
+ “ C” Raise
+ “ D” RaiseLower

  这 就 是 当 你 在 移 动 滑 鼠 它 就 会 执 行 改 变 视 窗 大 小 , 而 且 下 一 步 会 将 视 窗 往 上 移 , 或 是 当 你 按 下 滑 鼠 时 , 会 让 视 窗 上 移 ; 或 者 是 在 按 滑 鼠 两 次 时 , 视 窗 会 交 替 的 上 移 或 下 移 。

  再 来 就 是 定 义 选 单 了 , 它 是 用 AddToMenu 这 个 命 令 是 用 来 定 义 一 个 选 单 。 请 看 下 面 的 范 例 :

AddToMenu Tools “ TOOLS” Title
+ “ Utils” Popup “ Utilities”
+ “ Xterm” Exec exec xterm &
+ “ Top” Exec exec xterm -e top &
+ “ ” Nop
+ “ Xman” Exec exec xman &
+ “ Xcalc” Exec exec xcalc &

  这 个 命 令 是 在 定 义 一 个 有 五 个 选 项 的 选 单 , 在 这 个 选 单 中 , 我 们 会 在 选 单 上 看 到 “ Utils” 、 ” Xterm” 、 ” Top” 、 ” Xman” 、 ” Xcalc” , 这 五 个 选 项 。 分 别 会 执 行 xterm、 top、 xman、 xcalc这 四 个 程 式 。 以 及 呼 叫 “ Utilities” 这 个 下 拉 式 的 选 单 。 而 且 这 个 选 单 将 会 有 个 Title, 就 是 “ TOOLS” 。 而 在 Top与 Xman这 两 个 选 项 之 间 将 会 出 现 一 条 分 隔 线 。

PS: 在 设 定 档 案 中 同 一 个 Menu的 定 义 不 一 定 是 要 连 续 的 。

  接 着 我 们 再 来 看 一 些 例 子 。

  以 下 就 是 一 个 FvwmTaskbar的 Start menu的 例 子 :

(程式四)

  这 里 是 Shells的 例 子 :

(程式五)

  这 里 是 萤 幕 装 置 的 例 子 :

(程式六)

  这 里 是 萤 幕 锁 定 的 例 子 : (程式七)

  这 里 是 Game的 选 单 : (程式八 )

  这 是 一 个 在 选 择 如 何 跳 出 X-window( fvwm 95) 的 例 子 :

(程式九 )

  这 里 是 出 现 在 萤 幕 上 选 单 的 一 些 模 组 设 定 : (程式十 )

  这 里 是 关 於 Utilities选 单 的 设 定 : (程式十一 )

  这 里 是 定 义 最 基 本 X-window命 令 选 单 的 例 子 :

(程式十二 )

  这 里 是 用 来 设 定 视 窗 的 title bar上 的 icon所 出 现 的 列 表 :

(程式十叁 )

  哇 ! 天 啊 ! 怎 麽 那 麽 多 呢 ? ? 原 因 就 是 AddToMenu这 个 命 令 可 以 用 来 设 定 非 常 多 的 东 西 , 因 此 , 如 果 想 要 使 自 己 的 X-window选 单 功 能 超 强 , 而 且 适 合 自 己 的 习 惯 , 就 必 须 去 一 个 一 个 的 设 定 这 些 选 单 , 这 也 就 是 说 : 如 果 想 要 使 自 己 的 X-window与 众 不 同 , 是 必 须 付 出 相 当 的 代 价 的 , 其 中 就 包 括 这 一 些 选 单 的 设 定 。 所 以 , 希 望 大 家 都 能 有 耐 心 的 去 一 步 一 步 做 这 些 设 定 的 工 作 。

  当 然 , 在 看 完 了 以 上 的 例 子 , 难 免 有 些 不 懂 的 , 尤 其 是 FVWM的 内 建 function的 用 法 。

  因 此 我 们 就 来 看 看 这 些 function的 说 明 :

  FVWM提 供 了 一 组 内 建 function的 集 合 。 这 些 function将 会 跟 一 些 key或 是 button相 结 合 。

Nop:

  这 个 function表 示 什 麽 也 不 做 。 通 常 是 用 来 隔 开 menu中 的 选 项 用 的 。 因 此 在 menu中 加 上 Nop “ ” 就 会 在 menu中 产 生 一 条 线 来 隔 开 上 下 的 选 项 。

Title:

  这 个 function会 插 入 一 个 title到 menu中 , 所 以 通 常 都 是 设 定 在 menu的 第 一 行 。

Beep:

  这 个 function会 让 电 脑 哔 的 叫 一 声 。

Quit:

  这 个 funtion会 使 user离 开 fvwm, 通 常 也 会 跳 离 X-window。

Restart name WindowManagerName:

  这 个 是 用 来 离 开 FVWM然 後 载 入 别 的 window manager用 的 function, 也 可 用 在 重 新 载 入 fvwm。 用 法 如 下 :

Restart “ Fvwm” fvwm &
Restart “ twm” /usr/X11/bin/twm

name:

  是 来 显 示 在 menu中 的 , 後 面 的 则 是 指 定 要 启 动 的 window manager。

Refresh:

  这 个 将 会 让 X window进 行 重 绘 的 动 作 。

Move:

  允 许 user移 动 window, 如 果 user是 在 某 个 window上 面 选 择 了 这 个 功 能 , 则 可 移 动 该 window, 如 果 使 用 者 ( user) 是 在 root window上 面 选 择 了 这 个 function, 就 可 以 让 使 用 者 选 择 所 要 移 动 的 所 有 视 窗 。

Resize:

  允 许 user改 变 视 窗 的 大 小 , 以 方 便 其 使 用 。

Raise:

  允 许 user将 一 个 window提 到 前 面 来 。

Lower:

  允 许 user将 一 个 window移 到 较 下 层 。

RaiseLower:

  交 替 的 将 一 个 window往 上 或 往 下 移 动 。

Delete:

  送 出 一 个 讯 息 给 某 个 视 窗 并 要 求 需 自 行 删 除 该 视 窗 ( window) 。 所 以 通 常 这 项 要 求 都 会 引 起 该 应 用 程 式 自 行 结 束 。

Destroy:

  消 除 一 个 使 用 视 窗 , 功 能 和 Delete相 同 。 不 过 这 是 属 於 比 较 暴 力 的 方 式 。

Close:

  功 能 和 上 面 两 个 相 同 , 不 同 的 是 这 个 function会 先 送 Delete的 讯 息 , 如 果 该 window的 使 用 者 不 懂 得 这 个 讯 息 的 话 , 则 该 视 窗 将 会 被 删 除 。

Iconify [value]:

  如 果 value为 正 数 的 话 , 就 只 有 将 window变 成 icon的 能 力 ; 如 果 value是 负 数 的 话 , 则 只 有 将 icon回 复 为 本 来 的 window能 力 。

Maximize [ horizontal vertical ]:

  如 果 没 有 参 数 的 话 , 会 让 该 视 窗 在 整 个 萤 幕 的 大 小 , 和 正 常 的 大 小 之 间 进 行 切 换 , 如 果 有 参 数 的 话 , 则 在 参 数 所 设 定 的 大 小 和 正 常 的 大 小 之 间 进 行 切 换 。

Stick:

  让 该 window在 sticky和 non-sticky之 间 切 换 , 也 就 是 是 否 要 一 直 跟 随 在 window上 面 而 不 随 window的 切 换 而 消 失 。

Scroll horizonal vertical:

  移 动 FVWM的 virtual desktop, 其 参 数 为 一 百 分 比 值 , horizonal表 示 要 向 水 平 方 向 移 动 多 少 的 百 分 比 ; vertical表 示 要 向 垂 直 方 向 移 动 多 少 的 百 分 比 。

TogglePage:

  暂 时 停 止 edge scrolling的 功 能 , 也 就 是 不 会 因 为 游 标 碰 触 到 边 界 而 更 换 虚 拟 桌 面 , 要 恢 复 edge scrolling的 话 , 只 须 要 再 次 呼 叫 此 功 能 就 可 以 了 。

CursorMove horizonal vertical:

  这 个 功 能 是 用 来 移 动 滑 鼠 的 指 标 , 後 面 的 参 数 分 别 为 水 平 和 垂 直 的 移 动 范 围 , 其 单 位 为 一 个 虚 拟 桌 面 的 百 分 比 。

CirculateUp [name window_name]:

  这 个 功 能 会 将 游 标 移 到 window name所 指 的 window的 前 一 个 去 .......

CirculateDown [name window_name]:

  同 上 , 只 是 这 个 功 能 是 移 到 下 一 个 ...

Warp [name window_name]:

  同 CirculateDown, 不 过 它 会 将 已 经 变 成 icon 的 window再 变 回 来 。

Wait name:

  这 个 功 能 是 用 来 代 替 fvwm内 建 的 执 行 程 式 的 功 能 , 该 功 能 不 同 的 地 方 在 於 , 此 功 能 会 等 到 该 window出 现 之 後 , 才 会 继 续 後 面 的 命 令 …

Focus:

  将 keyboard focus移 到 选 择 的 window上 面 。

Desk arg1 arg2:

  更 换 目 前 的 工 作 的 desktop, 如 果 arg1为 非 零 值 , 要 移 动 目 的 地 的 desktop的 号 码 为 目 前 的 desktop的 号 码 加 上 arg1, 但 如 果 arg1为 零 的 话 , 则 arg2就 是 目 的 desktop的 号 码 。

WindowsDesk new_desk:

  将 所 选 择 的 window移 到 new_desk所 指 定 的 desktop上 面 去 。

GotoPage x y:

  移 动 目 前 的 desktop到 ( x, y) 所 指 定 的 desktop上 面 。

WindowList arg1 arg2:

  将 会 产 生 一 个 Popup Menu, 这 个 menu中 会 有 目 前 desktop上 所 show window, 及 其 目 前 的 位 置 。 如 果 是 一 个 变 成 icon的 window, 则 这 个 window的 位 置 会 用 括 号 括 起 来 。 如 果 arg1是 偶 数 的 话 , 则 会 show title bar上 所 显 示 的 window name。 但 如 果 是 奇 数 的 话 , 会 show icon name。 如 果 arg1小 於 2的 话 , 则 所 有 的 window都 会 show 出 。 但 是 如 果 arg1是 2或 者 是 3的 话 , 只 有 在 目 前 的 desktop上 的 window会 被 show出 。 如 果 arg1是 4 或 是 5的 话 , 则 只 有 arg2所 指 定 的 desktop上 的 window会 被 show出 。

Exec name command:

  这 个 是 用 来 执 行 一 些 程 式 用 的 。 command 没 有 什 麽 限 制 , name主 要 是 用 来 显 示 在 menu中 用 的 。 例 如 :

Exec “ My Term” exec xterm &
Exec “ sub-menu” Popup “ sub menu”

  但 是 有 一 些 功 能 是 不 能 在 一 早 就 定 义 , 还 有 一 些 是 要 用 popup才 能 加 上 去 的 , 以 下 就 是 它 的 范 例 :

AddToFunc “ window_ops_func” “ C” PopUp Window-Ops2
+ “ M” PopUp Window-Ops2
+ “ D” Delete

  再 来 就 是 定 义 滑 鼠 按 键 的 意 义 , Mouse Button Context Modifiers Function此 命 令 是 用 来 定 义 滑 鼠 的 按 键 的 意 义 。

各 参 数 的 意 义 如 下 :

Button这 是 指 滑 鼠 的 按 键 。

0 表 示 任 意 键 按 下 都 会 有 反 应 。

1 表 示 左 键 。

2 表 示 中 键 。

3 表 示 右 键 。

Context是 用 来 描 述 在 什 麽 地 方 才 会 有 用 。

R 表 示 是 root window, 也 就 是 整 个 背 景 萤 幕 。

W 表 示 在 视 窗 上 面 。

T 表 示 在 Title Bar上 面 , 也 就 是 显 示 视 窗 标 题 的 地 方 。

S 表 示 在 视 窗 四 周 的 边 框 上 面 。

F 表 示 在 视 窗 的 四 角 上 面 。

I 表 示 在 Icon上 面 。

A 表 示 在 Title Bar 以 外 的 任 何 地 方 。

0-9 的 数 字 则 是 表 示 在 Title Bar上 面 的 按 钮 。

上 面 的 各 项 可 以 混 合 使 用 。 如 “ FST” 表 示 整 个 视 窗 的 任 何 地 方 。 除 了 Title Bar的 按 钮 之 外 。

Modifiers这 个 项 目 是 指 有 无 其 他 的 组 合 键 的 配 合 。

N 表 示 没 有 其 他 的 组 合 键 。

C 表 示 CTRL键 。

S 表 示 SHIFT 键 。

A 表 示 ALT 键 。

M 表 示 Meta键 。

上 面 各 项 也 可 以 混 合 用 , 例 如 CA表 示 CTRL+ALT键 。 CAS表 示 CTRL+ALT+SHIFT键 。

Function这 里 是 任 何 FVWM内 建 的 功 能 。

以 下 是 例 子 :

(程式十四)

  接 下 来 是 设 定 键 盘 上 的 热 键 (hot key), 使 用 者 可 以 根 据 自 己 的 习 惯 来 做 设 定 。 其 格 式 与 定 义 mouse相 同 , 但 这 时 的 button的 地 方 要 换 成 Left, Right, Up, Down, F1~F8, Tab, Escape这 些 属 性 。

以 下 是 一 些 例 子 :

(程式十五)

  以 上 是 笔 者 认 为 一 个 会 设 定 X-window的 人 所 应 该 要 知 道 的 一 些 设 定 方 式 , 希 望 每 位 使 用 者 都 能 在 阅 读 完 这 一 篇 文 章 後 , 都 能 有 能 力 将 自 己 的 X-window设 定 成 非 常 的 人 性 化 , 这 样 不 但 可 以 使 自 己 的 X-window非 常 popular, 而 且 使 自 己 在 用 linux系 统 时 更 加 的 方 便 。

(作 者 E-Mail:s841084@moon.yzit.edu.tw)