Provided by: manpages-zh_1.5.1-1_all bug

NAME

       tclvars - Tcl 使用的變量

yz DESCRIPTION
       Tcl                             庫自動的建立和管理下列全局變量。除了下-
       控M做說明的地方之外,對特定於應用的代碼和使用者,這些變量通常應當作為只讀的來對待。

       env    Tcl                        把這蚥僆q維護為一蚍捸A它的元素是這-
              荈i程的環境變量。讀取一茪葛彌N返回相應的環境變量的C設置這-
              蚍晡漱@茪葛彌N蚹麍衈釭瑰藿疻僆q,如果它不存在則建立一-
              虓s的。刪除       env   的一茪葛彌N刪除相應的環境變量。對    env
              數組的變更將影響通過像                                      exec
              這樣的命令傳遞給子進程的環境變量。如果刪除了整     env 數組,則
              Tcl 將停止監視 env     訪問並且將不更新環境變量。
              在   Windows   下,任何大小寫形式的環境變量   PATH  和   COMSPEC |
              都被自動轉換成                                大寫的。例如,PATH |
              環境變量可以被作業系統導出為"path"、"Path"、"PaTh"、   等,這導- |
              P其他簡單   Tcl  代碼必須支持釵h特殊的寫法。Tcl   繼承的所有其他 |
              環境變量保持不變。
              在  Macintosh  上,Tcl  把環境變量構造為非現存的全局環境變量。為
              Tcl  建立的環境變量包括:

              LOGIN  它持有 Macintosh 的 Chooser 名字。

              USER   它也持有 Macintosh 的 Chooser 名字。

              SYS_FOLDER
                     到系統目錄的路徑。

              APPLE_M_FOLDER
                     到 Apple 選單目錄的路徑。

              CP_FOLDER
                     到控制悸O目錄的路徑。

              DESK_FOLDER
                     到桌悼媬的路徑。

              EXT_FOLDER
                     到系統擴展目錄的路徑。

              PREF_FOLDER
                     到偏好目錄的路徑。

              PRINT_MON_FOLDER
                     到列印監控器目錄的路徑。

              SHARED_TRASH_FOLDER
                     到網路垃圾箱目錄的路徑。

              TRASH_FOLDER
                     到垃圾箱目錄的路徑。

              START_UP_FOLDER
                     到啟動目錄的路徑。

              HOME   到應用程式的預設目錄的路徑。

              你還可以為 Macintosh 建立你自己的環境變量。叫做 Tcl  Environment
              Variables                 的一蚗仵衒N被放置到                Mac
              系統檔案夾中的偏好檔案夾中。這蚗仵蚺云漕C行的形式都是
              VAR_NAME=var_data。

              最後的選擇是把環境變量放置到這蚗野峈漸s做     Tcl    Environment
              Variables  的一罛STR#'資源檔案中。這被認為是更像"Mac   式"而不是
              一      Unix     式樣的環境變量檔案。`STR#'資源中每荓囓埵頂P上-
              z相同的格式。源 代碼檔案 tclMacEnv.c  包含  env  機制的實現。這-
              蚗仵蚰]含釵h  #define ,它怳像你定制 env 機制來適合你的應用的需-
              n。

       errorCode
              在發生了一蚇欞~之後,設置這-
              蚥僆q為持有關於錯誤的補充信息,它的形式易於用程式處理。errorCode
              由有一茤峖h茪葛尷漱@        Tcl        列表組成。這茼C表的第一-
              茪葛擘陏捁欞~的一茪@般的類別,並決定列表餘下部分的格式。Tcl
              核心為 errorCode 使用下列格式;荍O應用可以定義補充的格式。

              ARITH code msg
                     在發生一蚨滼N錯誤的時唻洏帠o荇璁(例如,在           expr
                     命令中嘗試除以零)。Code   標識準確的錯誤而   msg  提供一-
                     茪H可嬝牧犒嚙欞~的描z。Code         將是下列之一:DIVZERO
                     (嘗試除以零)、DOMAIN                       (如果函數的一-
                     荌捊b它的作用域之外,比如          acos(-3))、IOVERFLOW
                     (整數溢出)、     OVERFLOW     (浮點數溢出)、或    UNKNOWN
                     (如果不能確定錯誤的鴞])。

              CHILDKILLED pid sigName msg
                     在子進程被一茷H號所終止的時唻洏帠o荇璁﹛CerrorCode
                     的第二茪葛嶼O這荈i程的標識符(十進制數)。第三茪葛擘陏挩-
                     P進程終止的信號的符號名字;它將是在檔案          signal.h
                     中包含的名字之一,比如      SIGPIPE。第四茪葛嶼O一荋yz這-
                     茷H號的人可嬝牧熊u消息,比如對  SIGPIPE是"write  on  pipe
                     with no readers"。

              CHILDSTATUS pid code
                     在子進程以非零狀態退出的時唻洏帠o荇璁﹛CerrorCode 的第二-
                     茪葛嶼O這荈i程的標識符(十進制數),而第三茪葛嶼O這-
                     荈i程返回的退出代碼(也是十進制數)。

              CHILDSUSP pid sigName msg
                     在子進程被一茷H號所掛起的時唻洏帠o荇璁﹛CerrorCode
                     的第二茪葛嶼O這荈i程的標識符,是一茪Q進制數。第三-
                     茪葛擭挩丮進程掛起的信號的符號名字;它將是在檔案signal.h
                     中包含的名字之一,比如   SIGTTIN。   第四茪葛嶼O一荋yz這-
                     茷H號的人可嬝牧熊u消息,比如對  SIGTTIN 是"background tty
                     read"。

              NONE   對除了返回錯誤消息之外沒有其他可獲得的補充信息的錯誤使用這-
                     荇璁﹛C在這種情況下   errorCode  將由只有一茬璊@元素的一-
                     茼C表組成,這茪葛尷漱漁e是 NONEPOSIX errName msg
                     如果 errorCode 的第一茪葛嶼O POSIX,則錯誤發生在一 POSIX
                     核心調用期間。這茼C表的第二-
                     茪葛彌N包含發生的錯誤的符號名字,比如
                     ENOENT;它將是在包含檔案    errno.h    中定義的坐@。這-
                     茼C表的第三茪葛嶼O對應於          errName           的一-
                     茪H可嬝牧漁灡均A比如對   ENOENT   是"no   such   file  or
                     directory"。

              n設置  errorCode,應用應當使用庫過程比如   Tcl_SetErrorCodeTcl_PosixError,或者調用  error 命令。如果使用了這些方法之一,則
              Tcl 解釋器將在下蚇欞~之後姜m這蚥僆q為 NONEerrorInfo
              在一蚇欞~發生之後,這-
              茼r符串將包含標識在最新近的錯誤發生時正在執行的              Tcl
              命令和過程的一行或多行。它的內容使用棧跟蹤的形式,展示在錯誤發生時調用的各-
              荋O套的 Tcl 命令。

       tcl_library
              這蚥僆q持有包含系統               Tcl                稿本庫的一-
              茈媬的名字,比如用於自動裝載的那些目錄。info            library
              命令返回這蚥僆q的C關於    Tcl     稿本庫的詳情請參見   library
              手冊條目。          除了           Tcl           稿本庫之外,每-
              蚗野峏峊]通常都有它自己的特定於應用的稿本庫;每-
              蚗野帠雩茬]置名字像  $app_library 這樣的一茈局變量(這裏的 app
              是這蚗野峈漲W字)來持有這-
              蚗野峈漁w目錄的網路檔案名字。在建立解釋器的時-
              唌A通過查找釵h不同目錄直到找到包含一蚞A當的                  Tcl
              啟動稿本的目錄,來設置 tcl_library  的最初的C如果  TCL_LIBRARY
              環境變量存在,則漸訪問它指名的目錄。如果            TCL_LIBRARY
              未被設置或不參照一蚞A當的目錄,則                            Tcl
              檢查基於在其中編譯(compiled-
              in)的預設位置的其他一些目錄、包含應用的二進制檔案的位置、和當前工作目錄。

       tcl_patchLevel
              在建立解釋器的時    Tcl    初始化這蚥僆q來持有給出當前的    Tcl
              補丁級別的一茼r符串,比如 7.3p2 是Tcl  7.3  的第二次官方補丁,而
              7.4b4   是   Tcl  7.4  的第四次  beta     發佈。info  patchlevel
              命令返回這蚧。

       tcl_pkgPath                                                             ||
              這蚥僆q持有一茈媬的列表,它一般指示把包安裝到裏。在    Windows |
              上不使  用它。它典型的包含一茤峔瑧條目;如果它包含兩荓囓堙A第一- |
              茬q常是依賴於     孕x的包的目錄(例如,共享庫的二進制檔案)而第二- |
              茬q常是孕x無關的包的目錄    (例如,稿本檔案)。典型的把包安裝為在 |
              $tcl_pkgPath     中的一荓囓堛     一茪l目錄。在    $tcl_pkgPath |
              中的目錄預設的包含在  auto_path  變量中,所以  package   require |
              命令期間自動的在它怍M它怐漯蔣竣l目 錄中查找包。注意: 不希望應用- |
              蚹    tcl_pkgPath。在啟動時它的Q添加    到      auto_path;對 |
              tcl_pkgPath   的變動不會反映到  auto_path    中。如果你想讓  Tcl |
              來在額外的目錄中查找包,你應該把這            些目錄的名字添加到 |
              auto_path,而不是 tcl_pkgPathtcl_platform
              這是一蚚鶬p數組,它的元素包含關於應用在其上運行的-
              台的信息,比如作業系統的名字、它的當前發行號、和機器的指令集。總是定義下列元素,但是如果
              Tcl                           不能檢索到任何有關的信息,則它怐-
              N是空串。除此之外,擴展和應用可以向這蚍梐K加補充的-
              C預先定義的元素是:

              byteOrder                                                        ||
                     這蚞鷑鼓漸誚a字節序: littleEndianbigEndiandebug  如果這蚥僆q存在,則編譯解釋器時啟用了調試符號。只在
                     Windows    上存在這蚥僆q,擴展作者可以依賴於所裝載的    C
                     運行時庫來指定裝載茈]。

              machine
                     這蚞鷑僭鶡瑼澈令集,比如    intelPPC68k、或sun4m。在
                     UNIX 機器上,用 uname -m 返回這蚧。

              os     在這蚞鷑馱W運行的作業系統的名字,比如 Windows 95Windows
                     NTMacOS、或 SunOS。 在 UNIX 機器上,用 uname -s 返回這-
                     蚧。在  Windows  95 和 Windows 98 上,返回的N是 Windows
                     95    來提供更好的對     Windows     95     的反向相容;-
                     n區別二者,請檢查 osVersionosVersion
                     在這蚞鷑馱W運行的作業系統的版本號。在   UNIX   機器上,用
                     uname -r 返回這蚧。在  Windows  95  上,版本將是  4.0;在
                     Windows 98 上,版本將是 4.10。

              platform
                     windowsmacintosh、或        unix        之一。它表示這-
                     蚞鷑鼓漱@般操作環境。

              threaded
                     如果這蚥僆q存在,則編譯這虒挭擰僥伀狴峇F線程。

              user   它基於在孕x上獲得的登入信息標識當前使用者。在 Unix 它源自
                     USER  或 LOGNAME 環境變量,在 Windows 和 Macintosh 上源自
                     GetUserName。

       tcl_precision
              這蚥僆q在把浮點數轉換成字符串時控制生成的數字的數目。它預設的是  |
              12。對於   IEEE   浮點數   17   位數字是"最佳的",這樣允麻戇諞- |
              b二進制和字符串之間來回轉換而不丟失信息。但是,使用         17 |
              位數字將禁止任何舍入,這將生成更長,而更不直觀的C例如,expr    |
              1.4      在設置      tcl_precision      為       17       時返回 |
              1.3999999999999999,而在設置 tcl_precision 為 12 時返回 1.4 。   |
              在一荈i程中的所有解釋器共享一茬璊@的   tcl_precision   :  在一- |
              虒挭擰馱之幭雈曲N同樣影響所有其他解釋器。但是,不允釵w全解釋器-  |
              蚹鼣o蚥僆q。                                                     |

       tcl_rcFileName
              在初始化期間使用這-
              蚥僆q來指示特定於使用者的啟動檔案的名字。如果在特定於應用的初始化中設置了它,則
              Tcl  啟動代碼將檢查這蚗仵蚻O否存在,並且如果它存在的話則  source
              (載入)它。例如,對於 wish ,這蚥僆q被設置成給 Unix 的  ~/.wishrc
              和給 Windows 的 ~/wishrc.tcltcl_rcRsrcName
              這蚥僆q只在      Macintosh       系統上使用。在初始化期間使用這-
              蚥僆q來指示位於應用或擴展資源   fork  中的一荅S定於應用的   TEXT
              資源的名字。如果特定於應用的初始化設置了它,則               Tcl
              啟動代碼將檢查資源是否存在,如果存在則                    source
              它。例如,Macintosh wish  應用設置這蚥僆q為 tclshrctcl_traceCompile
              設置這蚥僆q的-
              荓惆謢b字節碼編譯期間顯示多少跟蹤信息。預設的,tcl_traceCompile
              是零且不顯示信息。設置    tcl_traceCompile    為    1,在編譯一-
              蚢L程或頂層命令的時啈b標準輸出上生成一行總結。設置它為
              2,在標準輸出上詳細的列出在每次編譯期間散發(???
              emit)的字節碼指令。在跟蹤懷疑是                              Tcl
              編譯器的問題時很有用。在把現存代碼轉換成 Tcl8.0 時也偶爾有用。

       tcl_traceExec
              設置這蚥僆q的-
              荓惆謢b字節碼執行期間顯示多少跟蹤信息。預設的,tcl_traceExec
              是零而不顯示信息。設置  tcl_traceExec  為  1,在每次調用一  Tcl
              過程的時啈b標準輸出上生成一行跟蹤。設置它為
              2,在用命令的名字和它的參數調用任何Tcl                 命令的時-
              唌A生成一行輸出。設置它為          3,生成一虒埴茠爾臕隉A展示每-
              茼r節碼指令的執行結果。注意在  tcl_traceExec  是  2  或  3 的時-
              唌A不展示像     set     和      incr      這樣已經被整荋懂型陘@-
              茼r節碼指令序列的命令。在跟蹤懷疑是                          Tcl
              編譯器和解釋器的問題時很有用。在把現存代碼轉換成          Tcl8.0
              時也偶爾有用。

       tcl_wordchars
              這蚥僆q的O一茈翰h表達式,設置它來控制認把什麼字符認為是"字"字
              符。例如在   Tk   的文本框中用雙擊來選擇一茼r。它是孕x相關的。在
              Windows        上,它預設為        \S,意思是除了        Unicode
              空格字符之外的任何字符。其他 孕x上預設為 \w,它是任何    Unicode
              字字符(數字、字母、下劃線)。

       tcl_nonwordchars
              這蚥僆q的O一茈翰h表達式,設置它來控制認把什麼字符認為是"非字"
              字符。例如在   Tk 的文本框中用雙擊來選擇一茼r。它是孕x相關的。在
              Windows  上,它預設為  \s,意思是任何  Unicode  空格字符。其他-
              台上缺           省為            \W,它是除了            Unicode
              字字符(數字、字母、下劃線)之外的任何字符 。

       tcl_version
              在建立解釋器的時唌ATcl      初始化這蚥僆q來持有這茠岩貌     Tcl
              的版本號,形式是       x.y。對        x        的變更表示可能導-
              P不相容的較大的變化,對 y  的變更表示保持反向相容的小增強和缺陷-
              袉z,info tclversion 命令返回這蚥僆q的C

 SEE ALSO
       eval(n)

r KEYWORDS
       arithmetic, bytecode, compiler, error, environment,  POSIX,  precision,
       subprocess, variables

[]
      Hhh

[]
       2001/12/10

m Linux manUpn:
       http://cmpp.linuxforum.net