Manpages

NAME

wish - 简 单 的 窗 口 式 (windowing) shell

总 览

wish [filename] [arg] [arg ...]

选 项

-colormap new 指 定 窗 口 使 用 一 个 新 的 私 有 的 调 色 板 (colormap)而 不 使 用 给 屏 幕 的 缺 省 的 调 色 板 。
-display display 指 定 显 示 窗 口 的 显 示 器 (和 屏 幕 )。
-geometry geometry 初 始 化 用 于 窗 口 的 几 何 (位 置 、 大 小 )。 如 果 指 定 了 这 个 选 项 , 它 的 值 存 储 在 应 用 的 Tcl 解 释 器 的 geometry 全 局 变 量 中 。
-name name 用 name 作 为 窗 口 中 显 示 的 标 题 (title), 作 为 被 send 命 令 使 用 的 解 释 器 的 名 字 。

-sync 同 步 的 执 行 所 有

X 服 务 器 命 令 , 这 样 出 错 就 可 以 立 即 报 告 。 这 将 导 致 执

行 更 慢 , 但 对 调 试 有 用 。   -use id 指 定 应 用 的 主 窗 口 要 被 嵌 入 标 识 符 (identifier)为 id 的 窗 口 中 , 而 不 是 被 建 立 为 一 个 独 立 的 顶 层 窗 口 。 必 须 用 与 toplevel 组 件 的 -use 选 项 的 值 相 同 的 方 式 指 定 Id (例 如 , 它 必 须 与 winfo id 的 返 回 有 一 样 的 形 式 (form))。

-visual visual 指 定 这 个 窗 口 使 用 的 视 觉 效 果 (visual)。 Visual 必 须 用 Tk_GetVisual 过 程 所 支 持 的 形 式 。

- - 传 递 所 有 剩 下 的 参 数 到 脚 本 的

argv 变 量 而 不 解 释 它 们 。 这 提 供 了 一 种 机

制 来 传 递 象 -name 这 样 的 参 数 到 一 个 脚 本 而 不 让 wish 解 释 它 们 。

描 述

Wish 是 一 个 由 Tcl 命 令 语 言 、 Tk 工 具 箱 和 一 个 从 标 准 输 入 或 文 件 读 命 令 的 主 程 序 构 成 的 简 单 的 程 序 。 它 建 立 一 个 主 窗 口 接 着 就 处 理 Tcl 命 令 。 如 果 不 加 参 数 的 调 用 wish, 或 者 第 一 个 参 数 以 “-”开 始 , 则 从 标 准 输 入 交 互 的 读 Tcl 命 令 。 它 将 连 续 的 处 理 命 令 直 到 删 除 了 所 有 的 窗 口 或 在 标 准 输 入 上 到 达 文 件 结 束 。 如 果 在 用 户 的 主 (home)目 录 中 存 在 文 件 .wishrc, 在 从 标 准 输 入 读 第 一 条 命 令 之 前 , wish 把 这 个 文 件 作 为 一 个 Tcl 脚 本 来 求 值 。 如 果 调 用 wish 时 加 了 一 个 初 始 化 fileName 参 数 , 则 fileName 被 作 为 一 个 脚 本 文 件 的 名 字 对 待 。 Wish 将 对 fileName 中 的 脚 本 进 行 求 值 (可 能 是 建 立 一 个 用 户 界 面 ), 接 着 它 将 响 应 事 件 直 到 所 有 窗 口 被 删 除 。 将 不 从 标 准 输 入 读 命 令 。 在 这 种 情 况 下 不 自 动 的 对 .wishrc 求 值 , 如 果 需 要 的 话 , 脚 本 文 件 总 是 可 以 source(包 含 ) 它 。

 

关 于 选 项

Wish 自 动 的 处 理 在 上 面 选 项 总 结 中 描 述 的 所 有 命 令 行 选 项 。 任 何 其 他 的 命 令 行 参 数 被 用 后 面 描 述 的 argc 和 argv 变 量 直 接 传 递 给 应 用 (程 序 )。 应 用 的 名 字 用 于 象 send 这 样 的 命 令 , 从 如 果 指 定 了 -name 选 项 , 则 从 其 中 获 得 ; 否 则 若 指 定 了 fileName则 接 受 之 , 或 者 接 受 调 用 wish 所 使 用 的 名 字 。 在 后 两 种 情 况 , 如 果 名 字 包 含 “/”字 符 , 则 只 有 在 最 后 一 个 反 斜 杠 后 面 的 字 符 被 作 为 应 用 的 名 字 。 应 用 (程 序 )的 类 被 用 于 通 过 RESOURCE_MANAGER 属 性 或 .Xdefaults 文 件 来 指 定 选 项 , 除 了 第 一 个 字 母 是 大 写 的 之 外 , 类 的 名 字 同 于 应 用 的 名 字 。

变 量

Wish 设 置 了 下 列 Tcl 变 量 :

argc 包 含 arg 参 数 的 个 数 (没 有 则 为 0), 不 包 括 上 面 描 述 的 选 项 。

argv 包 含 一 个 Tcl 列 表 , 其 成 员 依 次 是 在 - - 选 项 后 面 或 不 匹 配 在 上 面 的 选 项 段 落 描 述 的 任 何 选 项 的 arg 参 数 , 如 果 没 有 这 些 参 数 则 是 一 个 空 串 。

argv0 如 果 指 定 了 fileName 则 在 此 包 含 。 否 则 。 包 含 调 用 wish 使 用 的 名 字 。   geometry 如 果 指 定 了 -geometry 选 项 , wish 把 它 的 值 复 制 到 这 个 变 量 中 。 如 果 在 fileName 被 求 值 之 后 这 个 变 量 仍 然 存 在 , wish 在 一 个 wm geometry 命 令 中 使 用 这 个 值 来 设 置 主 窗 口 的 几 何 (位 置 、 大 小 )。

tcl_interactive 如 果 交 互 式 运 行 wish 则 包 含 1(不 指 定 fileName 并 且 标 准 输 入 是 一 个 终 端 类 设 备 ), 否 则 是 0。

脚 本 文 件

如 果 你 建 立 的 Tcl 脚 本 文 件 的 第 一 行 是

#!/usr/local/bin/wish 则 如 果 你 把 它 标 记 为 可 执 行 的 , 接 着 就 可 以 直 接 在 你 的 shell 中 调 用 这 个 脚 本 文 件 。 这 里 假 定 了 wish 被 安 装 在 缺 省 的 位 置 /usr/local/bin; 如 果 它 被 安 装 在 其 他 地 方 , 那 么 你 需 要 修 改 上 述 行 来 匹 配 之 。 许 多 UNIX 系 统 不 允 许 #! 行 超 出 30 个 字 符 的 长 度 , 所 以 要 确 定 wish 可 执 行 文 件 能 被 用 短 文 件 名 访 问 。 一 个 更 好 的 途 径 是 用 下 面 三 行 来 开 始 你 的 脚 本 文 件 :

#!/bin/sh
# the next line restarts using wish \
exec wish "$0" "$@" 这 种 方 法 比 起 前 面 的 段 落 有 三 个 好 处 。 首 先 , wish 二 进 制 文 件 的 位 置 不 需 要 填 入 (hard-wired into) 脚 本 中 : 它 可 以 在 你 的 shell 查 找 路 径 中 的 任 何 地 方 。 其 次 , 他 超 越 了 (get around)了 上 种 方 法 的 30 字 符 的 文 件 名 的 限 制 。 第 三 , 这 种 方 法 在 wish 自 身 也 是 shell 脚 本 时 仍 可 运 行 (一 些 系 统 要 处 理 多 体 系 或 操 作 系 统 : wish 脚 本 选 择 某 个 二 进 制 文 件 来 运 行 )。 第 三 行 导 致 sh 和 wish 两 者 来 处 理 脚 本 , 但 exec 只 被 sh 执 行 。 sh 首 先 处 理 脚 本 文 件 ; 它 把 第 二 行 作 为 脚 本 文 件 对 待 并 执 行 第 三 行 。 exec 语 句 导 致 shell 停 止 处 理 而 启 动 wish 来 重 新 处 理 整 个 脚 本 。 当 wish 启 动 时 , 因 为 第 二 行 的 反 斜 线 导 致 第 三 行 被 作 为 第 二 行 注 释 的 一 部 分 , 它 把 所 有 三 行 都 作 为 注 释 对 待 。 提 示 符 当 交 互 式 的 调 用 wish 时 , 它 通 常 为 每 条 命 令 提 示 “%”。 你 可 以 通 过 设 置 变 量 tcl_prompt1 和 tcl_prompt2 来 改 变 提 示 符 。 如 果 存 在 变 量 tcl_prompt1 则 它 必 须 由 一 个 输 出 一 个 提 示 符 的 Tcl 脚 本 组 成 ; tclsh 对 tcl_prompt1 中 的 脚 本 求 值 而 不 是 输 出 一 个 提 示 符 。 变 量 tcl_prompt2 以 类 似 的 方 式 用 在 键 入 了 换 行 而 当 前 命 令 却 不 完 整 的 时 候 ; 如 果 没 设 置 tcl_prompt2 则 对 不 完 整 的 命 令 不 给 以 提 示 符 。

关 键 字

shell, 工 具 箱

作 者

Copyright (C) 1991-1994 The Regents of the University of California.
Copyright (C) 1994-1996 Sun Microsystems, Inc.
Copyright (C) 1995-1997 Roger E. Critchlow Jr.

[中 文 版 维 护 人 ]

寒 蝉 退 士

[中 文 版 最 新 更 新 ]

2001/06/20

《 中 国 linux论 坛 man手 册 页 翻 译 计 划 》 :

http://cmpp.linuxforum.net

本 页 面 中 文 版 由 中 文 man 手 册 页 计 划 提 供 。 中 文 man 手 册 页 计 划 : https://github.com/man-pages-zh/manpages-zh