From f95c8ba1376420a635bd78510c85454cf7b9cd2d Mon Sep 17 00:00:00 2001 From: dkf Date: Tue, 30 Oct 2007 23:50:54 +0000 Subject: Spread the idiom, make the rendering to HTML reliable! --- doc/clock.n | 10 ++-- doc/exec.n | 46 +++++++++--------- doc/file.n | 151 +++++++++++++++++++++++++++++++++------------------------- doc/info.n | 28 +++++------ doc/interp.n | 10 ++-- doc/msgcat.n | 2 + doc/open.n | 18 ++++--- doc/safe.n | 4 +- doc/tcltest.n | 10 ++-- doc/tclvars.n | 3 +- 10 files changed, 161 insertions(+), 121 deletions(-) diff --git a/doc/clock.n b/doc/clock.n index 97d05e1..4a4a519 100644 --- a/doc/clock.n +++ b/doc/clock.n @@ -40,16 +40,18 @@ If no \fI\-option\fR argument is supplied, returns a high-resolution time value as a system-dependent integer value. The unit of the value is system-dependent but should be the highest resolution clock available on the system such as a CPU cycle counter. See \fBHIGH RESOLUTION TIMERS\fR for a full description. -.sp +.RS +.PP If the \fI\-option\fR argument is \fI\-milliseconds\fR, then the command is synonymous with \fBclock milliseconds\fR (see below). This usage is obsolete, and \fBclock milliseconds\fR is to be considered the preferred way of obtaining a count of milliseconds. -.sp +.PP If the \fI\-option\fR argument is \fI\-microseconds\fR, then the command is synonymous with \fBclock microseconds\fR (see below). This usage is obsolete, and \fBclock microseconds\fR is to be considered the preferred way of obtaining a count of microseconds. +.RE .TP \fBclock format\fR \fItimeVal\fR ?\fI\-option value\fR...? Formats a time that is expressed as an integer number of seconds into a format @@ -134,11 +136,13 @@ the locale identified by \fIlocaleName\fR. The locale name may be any of the locales acceptable to the \fBmsgcat\fR package, or it may be the special name \fIsystem\fR, which represents the current locale of the process, or the null string, which represents Tcl's default locale. -.sp +.RS +.PP The effect of locale on scanning and formatting is discussed in the descriptions of the individual format groups under \fBFORMAT GROUPS\fR. The effect of locale on clock arithmetic is discussed under \fBCLOCK ARITHMETIC\fR. +.RE .TP \fB\-timezone\fR zoneName Specifies that clock arithmetic, formatting, and scanning are to be done diff --git a/doc/exec.n b/doc/exec.n index 0bf5edb..a406d56 100644 --- a/doc/exec.n +++ b/doc/exec.n @@ -6,7 +6,7 @@ '\" See the file "license.terms" for information on usage and redistribution '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. '\" -'\" RCS: @(#) $Id: exec.n,v 1.21 2007/10/29 11:28:50 dkf Exp $ +'\" RCS: @(#) $Id: exec.n,v 1.22 2007/10/30 23:50:54 dkf Exp $ '\" .so man.macros .TH exec n 8.5 Tcl "Tcl Built-In Commands" @@ -56,77 +56,77 @@ such as or in the same argument with no intervening space (i.e. .QW \fB<\fIfileName\fR ). .TP 15 -| +\fB|\fR Separates distinct commands in the pipeline. The standard output of the preceding command will be piped into the standard input of the next command. .TP 15 -|& +\fB|&\fR Separates distinct commands in the pipeline. Both standard output and standard error of the preceding command will be piped into the standard input of the next command. This form of redirection overrides forms such as 2> and >&. .TP 15 -<\0\fIfileName\fR +\fB<\0\fIfileName\fR The file named by \fIfileName\fR is opened and used as the standard input for the first command in the pipeline. .TP 15 -<@\0\fIfileId\fR +\fB<@\0\fIfileId\fR \fIFileId\fR must be the identifier for an open file, such as the return value from a previous call to \fBopen\fR. It is used as the standard input for the first command in the pipeline. \fIFileId\fR must have been opened for reading. .TP 15 -<<\0\fIvalue\fR +\fB<<\0\fIvalue\fR \fIValue\fR is passed to the first command as its standard input. .TP 15 ->\0\fIfileName\fR +\fB>\0\fIfileName\fR Standard output from the last command is redirected to the file named \fIfileName\fR, overwriting its previous contents. .TP 15 -2>\0\fIfileName\fR +\fB2>\0\fIfileName\fR Standard error from all commands in the pipeline is redirected to the file named \fIfileName\fR, overwriting its previous contents. .TP 15 ->&\0\fIfileName\fR +\fB>&\0\fIfileName\fR Both standard output from the last command and standard error from all commands are redirected to the file named \fIfileName\fR, overwriting its previous contents. .TP 15 ->>\0\fIfileName\fR +\fB>>\0\fIfileName\fR Standard output from the last command is redirected to the file named \fIfileName\fR, appending to it rather than overwriting it. .TP 15 -2>>\0\fIfileName\fR +\fB2>>\0\fIfileName\fR Standard error from all commands in the pipeline is redirected to the file named \fIfileName\fR, appending to it rather than overwriting it. .TP 15 ->>&\0\fIfileName\fR +\fB>>&\0\fIfileName\fR Both standard output from the last command and standard error from all commands are redirected to the file named \fIfileName\fR, appending to it rather than overwriting it. .TP 15 ->@\0\fIfileId\fR +\fB>@\0\fIfileId\fR \fIFileId\fR must be the identifier for an open file, such as the return value from a previous call to \fBopen\fR. Standard output from the last command is redirected to \fIfileId\fR's file, which must have been opened for writing. .TP 15 -2>@\0\fIfileId\fR +\fB2>@\0\fIfileId\fR \fIFileId\fR must be the identifier for an open file, such as the return value from a previous call to \fBopen\fR. Standard error from all commands in the pipeline is redirected to \fIfileId\fR's file. The file must have been opened for writing. .TP 15 -2>@1\0 +\fB2>@1\0\fR Standard error from all commands in the pipeline is redirected to the command result. This operator is only valid at the end of the command pipeline. .TP 15 ->&@\0\fIfileId\fR +\fB>&@\0\fIfileId\fR \fIFileId\fR must be the identifier for an open file, such as the return value from a previous call to \fBopen\fR. Both standard output from the last command and standard error from @@ -245,15 +245,11 @@ command should be used to concatenate path components. .PP Note that there are two general types of Win32 console applications: .RS -.TP -1) CLI -. -CommandLine Interface, simple stdio exchange. \fBnetstat.exe\fR for +.IP [1] +CLI \(em CommandLine Interface, simple stdio exchange. \fBnetstat.exe\fR for example. -.TP -2) TUI -. -Textmode User Interface, any application that accesses the console +.IP [2] +TUI \(em Textmode User Interface, any application that accesses the console API for doing such things as cursor movement, setting text color, detecting key presses and mouse movement, etc. An example would be \fBtelnet.exe\fR from Windows 2000. These types of applications are not common in a windows @@ -314,6 +310,8 @@ The Windows 9x system directory. The Windows 9x home directory. .IP \(bu The directories listed in the path. +.RE +.RS .PP In order to execute shell built-in commands like \fBdir\fR and \fBcopy\fR, the caller must prepend the desired command with diff --git a/doc/file.n b/doc/file.n index 24ed432..3a02c5a 100644 --- a/doc/file.n +++ b/doc/file.n @@ -5,7 +5,7 @@ '\" See the file "license.terms" for information on usage and redistribution '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. '\" -'\" RCS: @(#) $Id: file.n,v 1.50 2007/10/29 17:17:54 dgp Exp $ +'\" RCS: @(#) $Id: file.n,v 1.51 2007/10/30 23:50:54 dkf Exp $ '\" .so man.macros .TH file n 8.3 Tcl "Tcl Built-In Commands" @@ -16,7 +16,6 @@ file \- Manipulate file names and attributes .SH SYNOPSIS \fBfile \fIoption\fR \fIname\fR ?\fIarg arg ...\fR? .BE - .SH DESCRIPTION .PP This command provides several operations on a file's name or attributes. @@ -32,7 +31,7 @@ Returns a decimal string giving the time at which file \fIname\fR was last accessed. If \fItime\fR is specified, it is an access time to set for the file. The time is measured in the standard POSIX fashion as seconds from a fixed starting time (often January 1, 1970). If the file -doesn't exist or its access time cannot be queried or set then an error is +does not exist or its access time cannot be queried or set then an error is generated. On Windows, FAT file systems do not support access time. .TP \fBfile attributes \fIname\fR @@ -40,18 +39,19 @@ generated. On Windows, FAT file systems do not support access time. \fBfile attributes \fIname\fR ?\fBoption\fR? .TP \fBfile attributes \fIname\fR ?\fBoption value option value...\fR? -.RS +. This subcommand returns or sets platform specific values associated with a file. The first form returns a list of the platform specific flags and their values. The second form returns the value for the specific option. The third form sets one or more of the values. The values are as follows: +.RS .PP -On Unix, \fB-group\fR gets or sets the group name for the file. A group id -can be given to the command, but it returns a group name. \fB-owner\fR gets +On Unix, \fB\-group\fR gets or sets the group name for the file. A group id +can be given to the command, but it returns a group name. \fB\-owner\fR gets or sets the user name of the owner of the file. The command returns the owner name, but the numerical id can be passed when setting the -owner. \fB-permissions\fR sets or retrieves the octal code that chmod(1) +owner. \fB\-permissions\fR sets or retrieves the octal code that chmod(1) uses. This command does also has limited support for setting using the symbolic attributes for chmod(1), of the form [ugo]?[[+\-=][rwxst],[...]], where multiple symbolic attributes can be separated by commas (example: @@ -59,24 +59,24 @@ where multiple symbolic attributes can be separated by commas (example: permissions for group and other). A simplified \fBls\fR style string, of the form rwxrwxrwx (must be 9 characters), is also supported (example: \fBrwxr\-xr\-t\fR is equivalent to 01755). -On versions of Unix supporting file flags, \fB-readonly\fR gives the +On versions of Unix supporting file flags, \fB\-readonly\fR gives the value or sets or clears the readonly attribute of the file, i.e. the user immutable flag \fBuchg\fR to chflags(1). .PP -On Windows, \fB-archive\fR gives the value or sets or clears the -archive attribute of the file. \fB-hidden\fR gives the value or sets -or clears the hidden attribute of the file. \fB-longname\fR will +On Windows, \fB\-archive\fR gives the value or sets or clears the +archive attribute of the file. \fB\-hidden\fR gives the value or sets +or clears the hidden attribute of the file. \fB\-longname\fR will expand each path element to its long version. This attribute cannot be -set. \fB-readonly\fR gives the value or sets or clears the readonly -attribute of the file. \fB-shortname\fR gives a string where every +set. \fB\-readonly\fR gives the value or sets or clears the readonly +attribute of the file. \fB\-shortname\fR gives a string where every path element is replaced with its short (8.3) version of the -name. This attribute cannot be set. \fB-system\fR gives or sets or +name. This attribute cannot be set. \fB\-system\fR gives or sets or clears the value of the system attribute of the file. .PP -On Mac OS X and Darwin, \fB-creator\fR gives or sets the -Finder creator type of the file. \fB-hidden\fR gives or sets or clears -the hidden attribute of the file. \fB-readonly\fR gives or sets or -clears the readonly attribute of the file. \fB-rsrclength\fR gives +On Mac OS X and Darwin, \fB\-creator\fR gives or sets the +Finder creator type of the file. \fB\-hidden\fR gives or sets or clears +the hidden attribute of the file. \fB\-readonly\fR gives or sets or +clears the readonly attribute of the file. \fB\-rsrclength\fR gives the length of the resource fork of the file, this attribute can only be set to the value 0, which results in the resource fork being stripped off the file. @@ -84,7 +84,7 @@ off the file. .TP \fBfile channels ?\fIpattern\fR? . -If \fIpattern\fR isn't specified, returns a list of names of all +If \fIpattern\fR is not specified, returns a list of names of all registered open channels in this interpreter. If \fIpattern\fR is specified, only those names matching \fIpattern\fR are returned. Matching is determined using the same rules as for \fBstring match\fR. @@ -92,7 +92,7 @@ is determined using the same rules as for \fBstring match\fR. \fBfile copy \fR?\fB\-force\fR? ?\fB\-\|\-\fR? \fIsource\fR \fItarget\fR .TP \fBfile copy \fR?\fB\-force\fR? ?\fB\-\|\-\fR? \fIsource\fR ?\fIsource\fR ...? \fItargetDir\fR -.RS +. The first form makes a copy of the file or directory \fIsource\fR under the pathname \fItarget\fR. If \fItarget\fR is an existing directory, then the second form is used. The second form makes a copy inside @@ -110,7 +110,6 @@ or overwrite a file with a directory will all result in errors even if specified, halting at the first error, if any. A \fB\-\|\-\fR marks the end of switches; the argument following the \fB\-\|\-\fR will be treated as a \fIsource\fR even if it starts with a \fB\-\fR. -.RE .TP \fBfile delete \fR?\fB\-force\fR? ?\fB\-\|\-\fR? \fIpathname\fR ?\fIpathname\fR ... ? . @@ -122,9 +121,11 @@ Trying to delete a non-existent file is not considered an error. Trying to delete a read-only file will cause the file to be deleted, even if the \fB\-force\fR flags is not specified. If the \fB\-force\fR option is specified on a directory, Tcl will attempt both to change -permissions and move the current directory 'pwd' out of the given path -if that is necessary to allow the deletion to proceed. Arguments are -processed in the order specified, halting at the first error, if any. +permissions and move the current directory +.QW pwd +out of the given path if that is necessary to allow the deletion to +proceed. Arguments are processed in the order specified, halting at +the first error, if any. A \fB\-\|\-\fR marks the end of switches; the argument following the \fB\-\|\-\fR will be treated as a \fIpathname\fR even if it starts with a \fB\-\fR. @@ -132,9 +133,10 @@ a \fB\-\fR. \fBfile dirname \fIname\fR Returns a name comprised of all of the path components in \fIname\fR excluding the last element. If \fIname\fR is a relative file name and -only contains one path element, then returns ``\fB.\fR''. If \fIname\fR -refers to a root directory, then the root directory is returned. For -example, +only contains one path element, then returns +.QW \fB.\fR . +If \fIname\fR refers to a root directory, then the root directory is +returned. For example, .RS .CS \fBfile dirname c:/\fR @@ -195,36 +197,42 @@ is always canonical for the current platform: \fB/\fR for Unix and Windows. .RE .TP -\fBfile link ?\fI-linktype\fR? \fIlinkName\fR ?\fItarget\fR? +\fBfile link ?\fI\-linktype\fR? \fIlinkName\fR ?\fItarget\fR? . If only one argument is given, that argument is assumed to be \fIlinkName\fR, and this command returns the value of the link given by \fIlinkName\fR (i.e. the name of the file it points to). If -\fIlinkName\fR isn't a link or its value cannot be read (as, for example, +\fIlinkName\fR is not a link or its value cannot be read (as, for example, seems to be the case with hard links, which look just like ordinary files), then an error is returned. -. +.RS +.PP If 2 arguments are given, then these are assumed to be \fIlinkName\fR and \fItarget\fR. If \fIlinkName\fR already exists, or if \fItarget\fR -doesn't exist, an error will be returned. Otherwise, Tcl creates a new +does not exist, an error will be returned. Otherwise, Tcl creates a new link called \fIlinkName\fR which points to the existing filesystem object at \fItarget\fR (which is also the returned value), where the type of the link is platform-specific (on Unix a symbolic link will be the default). This is useful for the case where the user wishes to -create a link in a cross-platform way, and doesn't care what type of +create a link in a cross-platform way, and does not care what type of link is created. -. +.PP If the user wishes to make a link of a specific type only, (and signal an error if for some reason that is not possible), then the optional -\fI-linktype\fR argument should be given. Accepted values for -\fI-linktype\fR are "-symbolic" and "-hard". -. +\fI\-linktype\fR argument should be given. Accepted values for +\fI\-linktype\fR are +.QW \-symbolic +and +.QW \-hard . +.PP On Unix, symbolic links can be made to relative paths, and those paths must be relative to the actual \fIlinkName\fR's location (not to the cwd), but on all other platforms where relative links are not supported, target paths will always be converted to absolute, normalized form before the link is created (and therefore relative paths are interpreted -as relative to the cwd). Furthermore, "~user" paths are always expanded +as relative to the cwd). Furthermore, +.QW ~user +paths are always expanded to absolute form. When creating links on filesystems that either do not support any links, or do not support the specific type requested, an error message will be returned. In particular Windows 95, 98 and ME do @@ -232,6 +240,7 @@ not support any links at present, but most Unix platforms support both symbolic and hard links (the latter for files only) and Windows NT/2000/XP (on NTFS drives) support symbolic directory links and hard file links. +.RE .TP \fBfile lstat \fIname varName\fR . @@ -239,7 +248,7 @@ Same as \fBstat\fR option (see below) except uses the \fIlstat\fR kernel call instead of \fIstat\fR. This means that if \fIname\fR refers to a symbolic link the information returned in \fIvarName\fR is for the link rather than the file it refers to. On systems that -don't support symbolic links this option behaves exactly the same +do not support symbolic links this option behaves exactly the same as the \fBstat\fR option. .TP \fBfile mkdir \fIdir\fR ?\fIdir\fR ...? @@ -257,7 +266,7 @@ Returns a decimal string giving the time at which file \fIname\fR was last modified. If \fItime\fR is specified, it is a modification time to set for the file (equivalent to Unix \fBtouch\fR). The time is measured in the standard POSIX fashion as seconds from a fixed starting time (often January -1, 1970). If the file doesn't exist or its modified time cannot be queried +1, 1970). If the file does not exist or its modified time cannot be queried or set then an error is generated. .TP \fBfile nativename \fIname\fR @@ -268,21 +277,24 @@ under Windows. .TP \fBfile normalize \fIname\fR . -.RS Returns a unique normalized path representation for the file-system object (file, directory, link, etc), whose string value can be used as a unique identifier for it. A normalized path is an absolute path which has -all '../', './' removed. Also it is one which is in the ``standard'' +all +.QW ../ +and +.QW ./ +removed. Also it is one which is in the +.QW standard format for the native platform. On Unix, this means the segments leading up to the path must be free of symbolic links/aliases (but the very last path component may be a symbolic link), and on Windows it also means we want the long form with that form's case-dependence (which gives us a unique, case-dependent path). The one exception concerning the last link in the path is necessary, because Tcl or the user may wish to -operate on the actual symbolic link itself (for example 'file delete', 'file -rename', 'file copy' are defined to operate on symbolic links, not on the -things that they point to). -.RE +operate on the actual symbolic link itself (for example \fBfile delete\fR, +\fBfile rename\fR, \fBfile copy\fR are defined to operate on symbolic +links, not on the things that they point to). .TP \fBfile owned \fIname\fR . @@ -307,14 +319,14 @@ Returns \fB1\fR if file \fIname\fR is readable by the current user, \fBfile readlink \fIname\fR . Returns the value of the symbolic link given by \fIname\fR (i.e. the name -of the file it points to). If \fIname\fR isn't a symbolic link or its -value cannot be read, then an error is returned. On systems that don't +of the file it points to). If \fIname\fR is npt a symbolic link or its +value cannot be read, then an error is returned. On systems that do not support symbolic links this option is undefined. .TP \fBfile rename \fR?\fB\-force\fR? ?\fB\-\|\-\fR? \fIsource\fR \fItarget\fR .TP \fBfile rename \fR?\fB\-force\fR? ?\fB\-\|\-\fR? \fIsource\fR ?\fIsource\fR ...? \fItargetDir\fR -.RS +. The first form takes the file or directory specified by pathname \fIsource\fR and renames it to \fItarget\fR, moving the file if the pathname \fItarget\fR specifies a name in a different directory. If @@ -329,13 +341,14 @@ result in errors. Arguments are processed in the order specified, halting at the first error, if any. A \fB\-\|\-\fR marks the end of switches; the argument following the \fB\-\|\-\fR will be treated as a \fIsource\fR even if it starts with a \fB\-\fR. -.RE .TP \fBfile rootname \fIname\fR . Returns all of the characters in \fIname\fR up to but not including the -last ``.'' character in the last component of name. If the last -component of \fIname\fR doesn't contain a dot, then returns \fIname\fR. +last +.QW . +character in the last component of name. If the last +component of \fIname\fR does not contain a dot, then returns \fIname\fR. .TP \fBfile separator\fR ?\fIname\fR? . @@ -348,7 +361,7 @@ is generated. \fBfile size \fIname\fR . Returns a decimal string giving the size of file \fIname\fR in bytes. If -the file doesn't exist or its size cannot be queried then an error is +the file does not exist or its size cannot be queried then an error is generated. .TP \fBfile split \fIname\fR @@ -388,12 +401,19 @@ the filesystem to use for the file, and the second, if given, an arbitrary string representing the filesystem-specific nature or type of the location within that filesystem. If a filesystem only supports one type of file, the second element may not be supplied. For example the -native files have a first element 'native', and a second element which -when given is a platform-specific type name for the file's system -(e.g. 'NTFS', 'FAT', on Windows). A generic virtual file system might return -the list 'vfs ftp' to represent a file on a remote ftp site mounted as a -virtual filesystem through an extension called 'vfs'. If the file does -not belong to any filesystem, an error is generated. +native files have a first element +.QW native , +and a second element which when given is a platform-specific type name +for the file's system (e.g. +.QW NTFS , +.QW FAT , +on Windows). A generic virtual file system might return +the list +.QW "vfs ftp" +to represent a file on a remote ftp site mounted as a +virtual filesystem through an extension called +.QW vfs . +If the file does not belong to any filesystem, an error is generated. .TP \fBfile tail \fIname\fR . @@ -413,10 +433,13 @@ Returns a string giving the type of file \fIname\fR, which will be one of . Returns the absolute paths to the volumes mounted on the system, as a proper Tcl list. Without any virtual filesystems mounted as root -volumes, on UNIX, the command will always return "/", since all -filesystems are locally mounted. +volumes, on UNIX, the command will always return +.QW / , +since all filesystems are locally mounted. On Windows, it will return a list of the available local drives -(e.g. {a:/ c:/}). If any virtual filesystem has mounted additional +(e.g. +.QW "a:/ c:/" ). +If any virtual filesystem has mounted additional volumes, they will be in the returned list. .TP \fBfile writable \fIname\fR @@ -444,7 +467,7 @@ proc findMatchingCFiles {dir} { set ext .o } } - foreach file [glob -nocomplain -directory $dir *.c] { + foreach file [glob \-nocomplain \-directory $dir *.c] { set objectFile [\fBfile tail\fR [\fBfile rootname\fR $file]]$ext if {[\fBfile exists\fR $objectFile]} { lappend files $file @@ -464,12 +487,10 @@ if {![\fBfile isdirectory\fR [\fBfile dirname\fR $newName]]} { \fBfile mkdir\fR [\fBfile dirname\fR $newName] } \fBfile rename\fR $oldName $newName -\fBfile link\fR -symbolic $oldName $newName +\fBfile link\fR \-symbolic $oldName $newName .CE - .SH "SEE ALSO" filename(n), open(n), close(n), eof(n), gets(n), tell(n), seek(n), fblocked(n), flush(n) - .SH KEYWORDS attributes, copy files, delete files, directory, file, move files, name, rename files, stat diff --git a/doc/info.n b/doc/info.n index feb86dd..4b6d65c 100644 --- a/doc/info.n +++ b/doc/info.n @@ -7,7 +7,7 @@ '\" See the file "license.terms" for information on usage and redistribution '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. '\" -'\" RCS: @(#) $Id: info.n,v 1.22 2007/10/29 01:42:18 dkf Exp $ +'\" RCS: @(#) $Id: info.n,v 1.23 2007/10/30 23:50:54 dkf Exp $ '\" .so man.macros .TH info n 8.4 Tcl "Tcl Built-In Commands" @@ -90,30 +90,30 @@ command returns a number giving the frame level of the command. This is 1 if the command is invoked at top-level. If \fInumber\fR is specified, then the result is a dictionary containing the location information for the command at the \fInumber\fRed level on the stack. -.sp +.RS +.PP If \fInumber\fR is positive (> 0) then it selects a particular stack level (1 refers to the top-most active command, i.e., \fBinfo frame\fR itself, 2 to the command it was called from, and so on); otherwise it gives a level relative to the current command (0 refers to the current command, i.e., \fBinfo frame\fR itself, -1 to its caller, and so on). -.sp +.PP This is similar to how \fBinfo level\fR works, except that this subcommand reports all frames, like \fBsource\fRd scripts, \fBeval\fRs, \fBuplevel\fRs, etc. -.sp +.PP Note that for nested commands, like -.QW "foo [[bar [[x]]]]" , +.QW "foo [bar [x]]" , only .QW x will be seen by an \fBinfo frame\fR invoked within .QW x . This is the same as for \fBinfo level\fR and error stack traces. -.sp +.PP The result dictionary may contain the keys listed below, with the specified meanings for their values: -.RS .TP -\fItype\fR +\fBtype\fR This entry is always present and describes the nature of the location for the command. The recognized values are \fBsource\fR, \fBproc\fR, \fBeval\fR, and \fBprecompiled\fR. @@ -135,34 +135,34 @@ the package \fBtbcload\fR), and no further information will be available. .RE .TP -\fIline\fR +\fBline\fR This entry provides the number of the line the command is at inside of the script it is a part of. This information is not present for type \fBprecompiled\fR. For type \fBsource\fR this information is counted relative to the beginning of the file, whereas for the last two types the line is counted relative to the start of the script. .TP -\fIfile\fR +\fBfile\fR This entry is present only for type \fBsource\fR. It provides the normalized path of the file the command is in. .TP -\fIcmd\fR +\fBcmd\fR This entry provides the string representation of the command. This is usually the unsubstituted form, however for commands which are a pure list executed by eval it is the substituted form as they have no other string representation. Care is taken that the pure-List property of the latter is not spoiled. .TP -\fIproc\fR +\fBproc\fR This entry is present only if the command is found in the body of a regular Tcl procedure. It then provides the name of that procedure. .TP -\fIlambda\fR +\fBlambda\fR This entry is present only if the command is found in the body of an anonymous Tcl procedure, i.e. a lambda. It then provides the entire definition of the lambda in question. .TP -\fIlevel\fR +\fBlevel\fR This entry is present only if the queried frame has a corresponding frame returned by \fBinfo level\fR. It provides the index of this frame, relative to the current level (0 and negative numbers). diff --git a/doc/interp.n b/doc/interp.n index ea8dd80..8eeb8fd 100644 --- a/doc/interp.n +++ b/doc/interp.n @@ -5,7 +5,7 @@ '\" See the file "license.terms" for information on usage and redistribution '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. '\" -'\" RCS: @(#) $Id: interp.n,v 1.34 2007/10/30 14:06:40 dkf Exp $ +'\" RCS: @(#) $Id: interp.n,v 1.35 2007/10/30 23:50:54 dkf Exp $ '\" .so man.macros .TH interp n 7.6 Tcl "Tcl Built-In Commands" @@ -274,13 +274,15 @@ and related procedures in that interpreter will return an error. The \fInewlimit\fR value is also returned. The \fInewlimit\fR value must be a positive integer between 1 and the maximum value of a non-long integer on the platform. -.sp +.RS +.PP The command sets the maximum size of the Tcl call stack only. It cannot by itself prevent stack overflows on the C stack being used by the application. If your machine has a limit on the size of the C stack, you may get stack overflows before reaching the limit set by the command. If this happens, see if there is a mechanism in your system for increasing the maximum size of the C stack. +.RE .TP \fBinterp\fR \fBshare\fR \fIsrcPath channelId destPath\fR Causes the IO channel identified by \fIchannelId\fR to become shared @@ -452,13 +454,15 @@ and related procedures in \fIslave\fR will return an error. The \fInewlimit\fR value is also returned. The \fInewlimit\fR value must be a positive integer between 1 and the maximum value of a non-long integer on the platform. -.sp +.RS +.PP The command sets the maximum size of the Tcl call stack only. It cannot by itself prevent stack overflows on the C stack being used by the application. If your machine has a limit on the size of the C stack, you may get stack overflows before reaching the limit set by the command. If this happens, see if there is a mechanism in your system for increasing the maximum size of the C stack. +.RE .SH "SAFE INTERPRETERS" .PP A safe interpreter is one with restricted functionality, so that diff --git a/doc/msgcat.n b/doc/msgcat.n index 72101d7..ce8ef6e 100644 --- a/doc/msgcat.n +++ b/doc/msgcat.n @@ -55,6 +55,7 @@ Returns a translation of \fIsrc-string\fR according to the user's current locale. If additional arguments past \fIsrc-string\fR are given, the \fBformat\fR command is used to substitute the additional arguments in the translation of \fIsrc-string\fR. +.RS .PP \fB::msgcat::mc\fR will search the messages defined in the current namespace for a translation of \fIsrc-string\fR; if @@ -69,6 +70,7 @@ application can pass the English string through \fB::msgcat::mc\fR and use the result. If an application is written for a single language in this fashion, then it is easy to add support for additional languages later simply by defining new message catalog entries. +.RE .TP \fB::msgcat::mcmax ?\fIsrc-string src-string ...\fR? Given several source strings, \fB::msgcat::mcmax\fR returns the length diff --git a/doc/open.n b/doc/open.n index 378984d..a9b68b2 100644 --- a/doc/open.n +++ b/doc/open.n @@ -5,7 +5,7 @@ '\" See the file "license.terms" for information on usage and redistribution '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. '\" -'\" RCS: @(#) $Id: open.n,v 1.32 2007/10/29 11:28:50 dkf Exp $ +'\" RCS: @(#) $Id: open.n,v 1.33 2007/10/30 23:50:54 dkf Exp $ '\" .so man.macros .TH open n 8.3 Tcl "Tcl Built-In Commands" @@ -177,7 +177,8 @@ number of stop bits and should be the integer 1 or 2. (Windows and Unix). This option is used to setup automatic handshake control. Note that not all handshake types maybe supported by your operating system. The \fItype\fR parameter is case-independent. -.sp +.RS +.PP If \fItype\fR is \fBnone\fR then any handshake is switched off. \fBrtscts\fR activates hardware handshake. Hardware handshake signals are described below. @@ -187,6 +188,7 @@ An additional hardware handshake \fBdtrdsr\fR is available only under Windows. There is no default handshake configuration, the initial value depends on your operating system settings. The \fB\-handshake\fR option cannot be queried. +.RE .TP \fB\-queue\fR (Windows and Unix). The \fB\-queue\fR option can only be queried. @@ -363,7 +365,8 @@ standard input from a pipe and send standard output to a pipe run synchronously. Command pipelines that do not execute 16-bit DOS applications run asynchronously and can be opened for both reading and writing. -.sp +.RS +.PP When running Tcl interactively, there may be some strange interactions between the real console, if one is present, and a command pipeline that uses standard input or output. If a command pipeline is opened for reading from @@ -376,7 +379,7 @@ console at the same time. If the command pipeline is started from a script, so that Tcl is not accessing the console, or if the command pipeline does not use standard input or output, but is redirected from or to a file, then the above problems do not occur. -.sp +.PP Whether or not Tcl is running interactively, if a command pipeline is opened for reading from a 16-bit DOS application, the call to \fBopen\fR will not return until end-of-file has been received from the command pipeline's @@ -384,6 +387,7 @@ standard output. If a command pipeline is opened for writing to a 16-bit DOS application, no data will be sent to the command pipeline's standard output until the pipe is actually closed. This problem occurs because 16-bit DOS applications are run synchronously, as described above. +.RE .TP \fBUnix\fR\0\0\0\0\0\0\0 Valid values for \fIfileName\fR to open a serial port are generally of the @@ -391,7 +395,8 @@ form \fB/dev/tty\fIX\fR, where \fIX\fR is \fBa\fR or \fBb\fR, but the name of any pseudo-file that maps to a serial port may be used. Advanced configuration options are only supported for serial ports when Tcl is built to use the POSIX serial interface. -.sp +.RS +.PP When running Tcl interactively, there may be some strange interactions between the console, if one is present, and a command pipeline that uses standard input. If a command pipeline is opened for reading, some @@ -401,7 +406,8 @@ both Tcl and the child application are competing for the console at the same time. If the command pipeline is started from a script, so that Tcl is not accessing the console, or if the command pipeline does not use standard input, but is redirected from a file, then the above problem does not occur. -.LP +.RE +.PP See the \fBPORTABILITY ISSUES\fR section of the \fBexec\fR command for additional information not specific to command pipelines about executing applications on the various platforms diff --git a/doc/safe.n b/doc/safe.n index 07378b9..27279bb 100644 --- a/doc/safe.n +++ b/doc/safe.n @@ -4,7 +4,7 @@ '\" See the file "license.terms" for information on usage and redistribution '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. '\" -'\" RCS: @(#) $Id: safe.n,v 1.11 2007/10/29 11:28:50 dkf Exp $ +'\" RCS: @(#) $Id: safe.n,v 1.12 2007/10/30 23:50:54 dkf Exp $ '\" .so man.macros .TH "Safe Tcl" n 8.0 Tcl "Tcl Built-In Commands" @@ -33,7 +33,6 @@ Safe\ Base \- A mechanism for creating and manipulating safe interpreters ?\fB\-nested\fR \fIboolean\fR? ?\fB\-nestedLoadOk\fR? ?\fB\-deleteHook\fR \fIscript\fR? .BE - .SH DESCRIPTION Safe Tcl is a mechanism for executing untrusted Tcl scripts safely and for providing mediated access by such scripts to @@ -158,6 +157,7 @@ This prevents a safe interpreter from seeing messages about failures and other events that might contain sensitive information such as real directory names. .RS +.PP Example of use: .PP .CS diff --git a/doc/tcltest.n b/doc/tcltest.n index 6739a7a..863fe33 100644 --- a/doc/tcltest.n +++ b/doc/tcltest.n @@ -8,7 +8,7 @@ '\" See the file "license.terms" for information on usage and redistribution '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. '\" -'\" RCS: @(#) $Id: tcltest.n,v 1.53 2007/10/29 01:42:19 dkf Exp $ +'\" RCS: @(#) $Id: tcltest.n,v 1.54 2007/10/30 23:50:54 dkf Exp $ '\" .so man.macros .TH "tcltest" n 2.3 tcltest "Tcl Bundled Packages" @@ -181,7 +181,8 @@ run. Typically called once per test file, at the end of the file after all tests have been completed. For best effectiveness, be sure that the \fBcleanupTests\fR is evaluated even if an error occurs earlier in the test file evaluation. -.sp +.RS +.PP Prints statistics about the tests run and removes files that were created by \fBmakeDirectory\fR and \fBmakeFile\fR since the last \fBcleanupTests\fR. Names of files and directories @@ -191,6 +192,7 @@ the last \fBcleanupTests\fR, but not created by to \fBoutputChannel\fR. This command also restores the original shell environment, as described by the \fB::env\fR array. Returns an empty string. +.RE .TP \fBrunAllTests\fR This is a master command meant to run an entire suite of tests, @@ -217,12 +219,14 @@ an \fIoption\fR is not a supported configurable option, or if or if a \fIvalue\fR is not provided. When an error is raised, the operation of \fBconfigure\fR is halted, and subsequent \fIoption value\fR arguments are not processed. -.sp +.RS +.PP If the environment variable \fB::env(TCLTEST_OPTIONS)\fR exists when the \fBtcltest\fR package is loaded (by \fBpackage require tcltest\fR) then its value is taken as a list of arguments to pass to \fBconfigure\fR. This allows the default values of the configuration options to be set by the environment. +.RE .TP \fBcustomMatch \fImode script\fR Registers \fImode\fR as a new legal value of the \fB\-match\fR option diff --git a/doc/tclvars.n b/doc/tclvars.n index 8c8eff4..f912704 100644 --- a/doc/tclvars.n +++ b/doc/tclvars.n @@ -5,7 +5,7 @@ '\" See the file "license.terms" for information on usage and redistribution '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. '\" -'\" RCS: @(#) $Id: tclvars.n,v 1.32 2007/10/29 11:28:50 dkf Exp $ +'\" RCS: @(#) $Id: tclvars.n,v 1.33 2007/10/30 23:50:54 dkf Exp $ '\" .so man.macros .TH tclvars n 8.0 Tcl "Tcl Built-In Commands" @@ -36,6 +36,7 @@ If the entire \fBenv\fR array is unset then Tcl will stop monitoring \fBenv\fR accesses and will not update environment variables. .RS +.PP Under Windows, the environment variables PATH and COMSPEC in any capitalization are converted automatically to upper case. For instance, the PATH variable could be exported by the operating system as -- cgit v0.12