sourCEntral - mobile manpages

pdf

WISH

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

pdf