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