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

NAME

       auto_execok,  auto_import,  auto_load,  auto_mkindex, auto_mkindex_old,
       auto_qualify,  auto_reset,  tcl_findLibrary,   parray,   tcl_endOfWord,
       tcl_startOfNextWord,    tcl_startOfPreviousWord,    tcl_wordBreakAfter,
       tcl_wordBreakBefore - standard library of Tcl procedures

ç¸ç¸½è¦è¦½ SYNOPSIS
       auto_execok cmd
       auto_import pattern
       auto_load cmd
       auto_mkindex dir pattern pattern ...
       auto_mkindex_old dir pattern pattern ...
       auto_qualify command namespace
       auto_reset
       tcl_findLibrary basename version patch initScript enVarName varName
       parray arrayName
       tcl_endOfWord str start                                                 │
       tcl_startOfNextWord str start                                           │
       tcl_startOfPreviousWord str start                                       │
       tcl_wordBreakAfter str start                                            │
       tcl_wordBreakBefore str start                                           │
_________________________________________________________________

ä»ä»‹ç´ç´¹ INTRODUCTION
       Tcl      為公共需求的功能包含了一個      Tcl       過程庫。在       Tcl
       庫中定義的過程是適用於多種不同的應用的通用過程。用     info     library
       命令返回             Tcl             庫的位置。除了這個             Tcl
       庫之外,每個應用通常都有它自己的支持過程庫;這個庫的位置通常用
       $app_library    全局變量的值給出,這裏    app    是應用的名字。例如,Tk
       庫的位置保持在變量 $tk_library 中。

       要訪問在    Tcl    庫中的過程,一個應用應該   source   (載入)庫中的檔案
       init.tcl,例如,Tcl 命令
              source [file join [info library] init.tcl]
       如果在一個應用的             Tcl_AppInit             過程中調用了庫過程
       Tcl_Init,則這(個加載)將自動發生。在  init.tcl  中的代碼將定義  unknown
       過程和使用下面定義的自動裝載機制安排其他過程在需要時裝載。

å‘命ä»ä»¤ééŽç¨ç¨‹ COMMAND PROCEDURES
       在 Tcl 庫中提供了下列過程:

       auto_execok cmd
              確定是否有一個叫       cmd       的一個可執行檔案或        shell
              內置命令。如果有,它返回要傳遞給   exec       來執行這個叫   cmd
              的可執行檔案或                                             shell
              內置命令的那些參數的一個列表。如果沒有,它返回一個空串。這個命令檢查在當前查找路徑中目錄(由
              PATH  環境變量給出),在其中查找叫  cmd      的一個可執行檔案。在
              Windows            平台上,查找被展開為相同的目錄和與       exec
              使用相同的檔名擴展。     Auto_exec      在一個叫      auto_execs
              的數組中記住以前查找的信息;這避免在將來調用相同的           cmd
              時進行路徑查找。可以使用命令 auto_reset      來強迫  auto_execok
              忘掉緩存的信息。

       auto_import pattern
              在   namespace  import  期間調用  Auto_import  來查看用  pattern
              指定的導入命令是否駐留在一個
              自動裝載的庫中。如果是,則裝載這個命令,這樣要建立導入連接的解釋器就可以獲得它們。如果這個命令不駐留在自動裝載庫中,auto_import
              什麼都不做。

       auto_load cmd
              這個命令嘗試裝載一個叫做          cmd           的           Tcl
              命令的定義,它查找一個è‡è‡ªå‹å‹•è£è£è¼è¼‰è·è·¯å¾å¾‘,它是一個或多個目錄的一個列表。如果全局變量
              $auto_path          存在的話,則它給出這個自動裝載路徑。如果沒有
              $auto_path                   變量,則若               TCLLIBPATH
              環境變量存在則使用它。否則自動裝載路徑只包含                 Tcl
              庫目錄。在自動裝載路徑中的每個目錄中必須有描述在這個目錄中定義的一個或多個命令的一個檔案
              tclIndex,和要被求值來裝載每個命令的一個稿本。應當使用
              auto_mkindex               命令來自動生成               tclIndex
              檔案。如果在一個索引檔案中找到                               cmd
              ,則求值適當的稿本來建立這個命令。如果成功的建立了       cmd,則
              auto_load          命令返回          1。如果沒有給           cmd
              的索引條目或這個稿本實際上定義的不是
              cmd(例如,因為索引信息過時了),這個命令返回
              0。如果在處理這個稿本的時候發生了一個錯誤,則返回這個錯誤。Auto_load
              只讀這個索引檔案一次並把它保存到數組    auto_index    中;以後對
              auto_load              的調用將在這個數組中檢查              cmd
              而不是重讀索引檔案。可以用命令                        auto_reset
              刪除緩存的索引信息。這將強制下一個                     auto_load
              命令從磁碟重新裝載索引數據庫。

       auto_mkindex dir pattern pattern ...
              生成適合於     auto_load     使用的一個索引。這個命令在      dir
              中查找名字匹配任何      pattern     參數的所有檔案(使用     glob
              命令進行匹配),生成在所有匹配的檔案的中定義的所有            Tcl
              命令過程的一個索引,並且在      dir      中的一個叫     tclIndex
              的檔案中存儲索引信息。如果未給出模式,則假定模式是 *.tcl,例如
                     auto_mkindex foo *.tcl

              將在子目錄讀  foo   中讀取所有   .tcl   檔案並生成一個新索引檔案
              foo/tclIndex。

              Auto_mkindex                      通過把                     Tcl
              稿本載入(source)到一個從解釋器中來分析它們並監視執行的      proc
              和             namespace            命令。擴展可以使用(沒有文件)
              auto_mkindex_parser             包來注冊對             auto_load
              索引有所貢獻的其他命令。你必須閱讀                      auto.tcl
              來查看這是如何工作的。

              Auto_mkindex_old   在一個相對不復雜的方式分析   Tcl        稿本:
              如果任何一行包含字                                          proc
              為它的第一個字,則假定它為一個過程定義並接受這一行的下一個字為這個過程的名字。不是以這種方式出現的過程定義(比如,在
              proc
              前面有空格)將不被編排索引。如果你的稿本包含「危險」代碼,比如全局初始化代碼或有特殊字符如
              $、*、[    或    ]   的過程名字,則你使用       auto_mkindex_old
              是更安全的。

       auto_reset
              銷毀被            auto_execok            和            auto_load
              緩存的所有信息。下次需要這些信息的時候將從磁碟重新讀取。Auto_reset
              還刪除在                                               auto-load
              中列出的所有過程,這樣下次使用它們的時候將裝載它們的刷新了的復本。

       auto_qualify command namespace
              計算    command     的完全限定的名字的一個列表。這個列表鏡像標準
              Tcl                                解釋器用以查找命令的那個路徑:
              首先它在當前名字空間中查找這個命令,接著在全局名字空間中。相應的,如果
              command           是相對的並且           namespace          不是
              ::,則返回的這個列表兩個元素:           一個是由       namespace
              界定范圍的command,如同它是一個在                      namespace
              名字空間中的命令一樣;而另一個                           command
              如同在全局名字空間中的一個命令一樣。否則,如果           command
              是絕對的(它以      ::      為開始),或者      namespace       是
              ::,則這個列表只包含一個                                 command
              ,如同它是一個在全局名字空間中的命令一樣。

              在 Tcl  中自動裝載設施使用  Auto_qualify,用來生成自動裝載索引如
              pkgIndex.tcl,和用來在運行時進行實際的函數自動裝載。

       tcl_findLibrary basename version patch initScript enVarName varName
              這個命令是擴展在它們的初始化期間使用的一個標準查找過程。擴展調用這個過程來在多個標準路徑中查找它們的過程。目錄名字的最後的構成部分通常是
              basenameversion
              (例如,tk8.0),但在建造等級上他可能是「庫」。一旦找到就把
              initScript                                                  檔案
              source(加載)到解釋器中。把在其中找到檔案的那個目錄保存到全局變量
              varName 中。如果已經定義這個變量(比如,在應用初始化期間用      C
              代碼),則不進行查找。否則在以下這些目錄中進行查找:
              由環境變量      enVarName       給出名字的目錄;相對於       Tcl
              庫的目錄;相對於(???  relative  to)在標準安裝  bin  或  bin/arch
              中的可執行檔案的目錄;相對於在當前建造樹中的可執行檔案的目錄;相對於在並行建造樹中的可執行檔案的目錄。

       parray arrayName
              把數組                                                 arrayName
              中的所有元素的名字和值輸出到標準輸出上。ArrayName
              必須是一個對於                                            parray
              的調用者是可以訪問的一個數組。它可以是局部的或全局的。

       tcl_endOfWord str start
              返回字符串 str 中在起始索引  start   之後出現的第一個字結束(end- │
              of-                                                              │
              word)位置的的索引。定義字結束位置為在起始點之後跟隨在第一個單字字符後面的第一個非字字符。如果在起始點之後沒有字結束位置則返回│
              -1。關於     Tcl      如何確定哪個字符是單字字符的詳情參見下面對 │
              tcl_wordchars  和 tcl_nonwordchars 的描述。                      │

       tcl_startOfNextWord str start                                           │
              返回字符串 str 中在起始索引 start  之後出現的第一個字開始(start- │
              of-                                                              │
              word)位置的的索引。定義字開始位置為跟隨在一個非字字符後面的第一個單字字符。如果在起始點之後沒有字開始位置則返回│
              -1。                                                             │

       tcl_startOfPreviousWord str start                                       │
              返回字符串 str 中在起始索引 start  之前出現的第一個字開始(start- │
              of-word)位置的的索引。如果在起始點之前沒有字開始位置則返回  -1。 │

       tcl_wordBreakAfter str start                                            │
              返回字符串           str           中在起始索引            start │
              之後出現的第一個字邊界的索引。如果在給定字符串中在起始點之後沒有邊界則返回│
              -1。返回的索引參照組成一個邊界(字符)對的第二個字符。             │

       tcl_wordBreakBefore str start                                           │
              返回字符串           str           中在起始索引            start │
              之前出現的第一個字邊界的索引。如果在給定字符串中在起始點之前沒有邊界則返回│
              -1。返回的索引參照組成一個邊界(字符)對的第二個字符。

è®è®Šé‡é‡ VARIABLES
       在 Tcl 庫中的過程定義或使用下列全局變量:

       auto_execs
              用它來記錄關於特定命令是否存在為可執行檔案的信息。

       auto_index
              auto_load 用它來保存從磁碟讀來的索引信息。

       auto_noexec
              如果設置了任何值,則 unknown     不嘗試自動執行任何命令。

       auto_noload
              如果設置了任何值,則 unknown     不嘗試自動裝載任何命令。

       auto_path
              如果設置了它,則它必須包含一個有效的                         Tcl
              列表,給出在自動裝載操作中要查找的目錄。在啟動期間初始化這個變量為依次包含:
              在     TCLLIBPATH     環境變量中列出的目錄,由      $tcl_library
              變量命名的目錄,$tcl_library      的父目錄,在      $tcl_pkgPath
              變量中列出的目錄。

       env(TCL_LIBRARY)
              如果設置了它,則它指定包含庫稿本的目錄的位置(這個變量的值將被賦予
              tcl_library            變量並被           info           library
              命令所返回)。如果這個變量未被設置,則使用預設的值。

       env(TCLLIBPATH)
              如果設置了它,則它必須包含一個有效的                         Tcl
              列表,給出在自動裝載操作期間要查找的目錄。必須用             Tcl
              格式指定目錄,使用「/」作為分隔符而不管是在什麼平台上。只在初始化
              auto_path 的時候使用這個變量。

       tcl_nonwordchars
              這個變量包含一個正則表達式,用於像                 tcl_endOfWord │
              這樣的例程來識別一個字符是否是一個字的一部分。如果這個模式匹配一個字符,則把這個字符作為一個非字(non-│
              word)字符對待。在                                        Windows │
              平台上,空格、tab、和換行被作為非字字符對待。在             Unix │
              下,除了數字、字母和下劃線之外,所有字符都是非字字符。           │

       tcl_wordchars                                                           │
              這個變量包含一個正則表達式,用於像                 tcl_endOfWord │
              這樣的例程來識別一個字符是否是一個字的一部分。如果這個模式匹配一個字符,則把這個字符作為一個單字字符對待。在│
              Windows      平台上,字有任何不是空格、tab、或換行的字符組成。在 │
              Unix 下,字由數字、字母或下劃線組成。

       unknown_pending
               unknown            用它來記錄正在查找的命令。在         unknown
              在自身上無窮遞歸的地方,使用它來檢測錯誤。在             unknown
              返回前刪除它的值。

ååƒè¦è¦‹ SEE ALSO
       info(n), re_syntax(n)

é—é—œééµå­å­— KEYWORDS
       auto-exec, auto-load, library, unknown, word, whitespace

[ä¸ä¸­æ–æ–‡ç‰ç‰ˆç¶ç¶­è­è­·äºäºº]
       å¯å¯’èŸèŸ¬é€é€€å£å£«

[ä¸ä¸­æ–æ–‡ç‰ç‰ˆæœæœ€æ–æ–°æ›æ›´æ–æ–°]
       2001/12/06

ã€ã€Šä¸ä¸­åœåœ‹ Linux è«è«–å£å£‡ man æ‰æ‰‹å†å†Šé é ç¿ç¿»è­è­¯è¨è¨ˆåŠåŠƒã€ã€‹:
       http://cmpp.linuxforum.net