diff options
| -rw-r--r-- | .github/workflows/linux-build.yml | 3 | ||||
| -rw-r--r-- | .github/workflows/mac-build.yml | 3 | ||||
| -rw-r--r-- | .github/workflows/onefiledist.yml | 4 | ||||
| -rw-r--r-- | .github/workflows/win-build.yml | 3 | ||||
| -rw-r--r-- | doc/Cancel.3 | 3 | ||||
| -rw-r--r-- | doc/Class.3 | 8 | ||||
| -rw-r--r-- | doc/CrtChannel.3 | 8 | ||||
| -rw-r--r-- | doc/Ensemble.3 | 2 | ||||
| -rw-r--r-- | doc/LinkVar.3 | 36 | ||||
| -rw-r--r-- | doc/Namespace.3 | 3 | ||||
| -rw-r--r-- | doc/chan.n | 12 | ||||
| -rw-r--r-- | doc/copy.n | 2 | ||||
| -rw-r--r-- | doc/coroutine.n | 24 | ||||
| -rw-r--r-- | doc/define.n | 4 | ||||
| -rw-r--r-- | doc/dict.n | 4 | ||||
| -rw-r--r-- | doc/encoding.n | 36 | ||||
| -rw-r--r-- | doc/expr.n | 12 | ||||
| -rw-r--r-- | doc/file.n | 13 | ||||
| -rw-r--r-- | doc/info.n | 16 | ||||
| -rw-r--r-- | doc/library.n | 24 | ||||
| -rw-r--r-- | doc/lreplace.n | 4 | ||||
| -rw-r--r-- | doc/mathfunc.n | 32 | ||||
| -rw-r--r-- | doc/mathop.n | 20 | ||||
| -rw-r--r-- | doc/msgcat.n | 58 | ||||
| -rw-r--r-- | doc/open.n | 20 | ||||
| -rw-r--r-- | doc/process.n | 10 | ||||
| -rw-r--r-- | doc/regsub.n | 8 | ||||
| -rw-r--r-- | doc/string.n | 4 | ||||
| -rw-r--r-- | doc/tclvars.n | 31 | ||||
| -rw-r--r-- | doc/tm.n | 4 | ||||
| -rw-r--r-- | doc/zlib.n | 12 | ||||
| -rw-r--r-- | generic/tclBasic.c | 4 | ||||
| -rw-r--r-- | generic/tclCmdMZ.c | 22 | ||||
| -rw-r--r-- | library/tcltest/tcltest.tcl | 2 | ||||
| -rw-r--r-- | win/rules.vc | 2 |
35 files changed, 193 insertions, 260 deletions
diff --git a/.github/workflows/linux-build.yml b/.github/workflows/linux-build.yml index 2e6784d..975b1fa 100644 --- a/.github/workflows/linux-build.yml +++ b/.github/workflows/linux-build.yml @@ -3,8 +3,7 @@ on: push: branches: - "main" - - "core-8-branch" - - "core-8-6-branch" + - "core-9-0-branch" tags: - "core-**" permissions: diff --git a/.github/workflows/mac-build.yml b/.github/workflows/mac-build.yml index e33b12a..df907d9 100644 --- a/.github/workflows/mac-build.yml +++ b/.github/workflows/mac-build.yml @@ -3,8 +3,7 @@ on: push: branches: - "main" - - "core-8-branch" - - "core-8-6-branch" + - "core-9-0-branch" tags: - "core-**" permissions: diff --git a/.github/workflows/onefiledist.yml b/.github/workflows/onefiledist.yml index 23afe03..f647a30 100644 --- a/.github/workflows/onefiledist.yml +++ b/.github/workflows/onefiledist.yml @@ -3,7 +3,7 @@ on: push: branches: - "main" - - "core-8-branch" + - "core-9-0-branch" tags: - "core-**" permissions: @@ -11,7 +11,7 @@ permissions: jobs: linux: name: Linux - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 defaults: run: shell: bash diff --git a/.github/workflows/win-build.yml b/.github/workflows/win-build.yml index aff5008..24c5385 100644 --- a/.github/workflows/win-build.yml +++ b/.github/workflows/win-build.yml @@ -3,8 +3,7 @@ on: push: branches: - "main" - - "core-8-branch" - - "core-8-6-branch" + - "core-9-0-branch" tags: - "core-**" permissions: diff --git a/doc/Cancel.3 b/doc/Cancel.3 index 72dd939..e9b497a 100644 --- a/doc/Cancel.3 +++ b/doc/Cancel.3 @@ -77,7 +77,6 @@ object is shared with some other location (including the Tcl evaluation stack) it should have its reference count incremented before calling this function. .SH "SEE ALSO" -interp(n), Tcl_Eval(3), -TIP 285 +interp(n), Tcl_Eval(3) .SH KEYWORDS cancel, unwind diff --git a/doc/Class.3 b/doc/Class.3 index ed549c0..4a659c1 100644 --- a/doc/Class.3 +++ b/doc/Class.3 @@ -56,13 +56,13 @@ Tcl_ObjectMapMethodNameProc .sp \fBTcl_ObjectSetMethodNameMapper\fR(\fIobject\fR, \fImethodNameMapper\fR) .sp -.VS "TIP 605" +.VS TIP605 Tcl_Class \fBTcl_GetClassOfObject\fR(\fIobject\fR) .sp Tcl_Obj * \fBTcl_GetObjectClassName\fR(\fIinterp\fR, \fIobject\fR) -.VE "TIP 605" +.VE TIP605 .fi .SH ARGUMENTS .AS void *metadata in/out @@ -123,13 +123,13 @@ function. Note that the Tcl_Obj reference returned by \fBTcl_GetObjectName\fR is a shared reference. You can also get whether the object has been marked for deletion with \fBTcl_ObjectDeleted\fR (it returns true if deletion of the object has begun); this can be useful during the processing of methods. -.VS "TIP 605" +.VS TIP605 The class of an object can be retrieved with \fBTcl_GetClassOfObject\fR, and the name of the class of an object with \fBTcl_GetObjectClassName\fR; note that these two \fImay\fR return NULL during deletion of an object (this is transient, and only occurs when the object is a long way through being deleted). -.VE "TIP 605" +.VE TIP605 .PP Instances of classes are created using \fBTcl_NewObjectInstance\fR, which creates an object from any class (and which is internally called by both diff --git a/doc/CrtChannel.3 b/doc/CrtChannel.3 index 3c622f2..10a227f 100644 --- a/doc/CrtChannel.3 +++ b/doc/CrtChannel.3 @@ -35,10 +35,10 @@ Tcl_ThreadId int \fBTcl_GetChannelMode\fR(\fIchannel\fR) .sp -.VS 8.7 +.VS TIP220 int \fBTcl_RemoveChannelMode\fR(\fIinterp, channel, mode\fR) -.VE 8.7 +.VE TIP220 .sp int \fBTcl_GetChannelBufferSize\fR(\fIchannel\fR) @@ -239,7 +239,7 @@ events to the correct event queue even for a multi-threaded core. and \fBTCL_WRITABLE\fR, indicating whether the channel is open for input and output. .PP -.VS 8.7 +.VS TIP220 .PP \fBTcl_RemoveChannelMode\fR removes an access privilege from the channel, either \fBTCL_READABLE\fR or \fBTCL_WRITABLE\fR, and returns @@ -247,7 +247,7 @@ a regular Tcl result code, \fBTCL_OK\fR, or \fBTCL_ERROR\fR. The function throws an error if either an invalid mode is specified or the result of the removal would be an inaccessible channel. In that case an error message is left in the interp argument, if not NULL. -.VE 8.7 +.VE TIP220 .PP \fBTcl_GetChannelBufferSize\fR returns the size, in bytes, of buffers allocated to store input or output in \fIchannel\fR. If the value was not set diff --git a/doc/Ensemble.3 b/doc/Ensemble.3 index 0c2ea9d..f31049f 100644 --- a/doc/Ensemble.3 +++ b/doc/Ensemble.3 @@ -4,8 +4,6 @@ '\" See the file "license.terms" for information on usage and redistribution '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. '\" -'\" This documents the C API introduced in TIP#235 -'\" .TH Tcl_Ensemble 3 8.5 Tcl "Tcl Library Procedures" .so man.macros .BS diff --git a/doc/LinkVar.3 b/doc/LinkVar.3 index ffedb9d..0fe4122 100644 --- a/doc/LinkVar.3 +++ b/doc/LinkVar.3 @@ -17,10 +17,10 @@ Tcl_LinkArray, Tcl_LinkVar, Tcl_UnlinkVar, Tcl_UpdateLinkedVar \- link Tcl varia int \fBTcl_LinkVar\fR(\fIinterp, varName, addr, type\fR) .sp -.VS "TIP 312" +.VS TIP312 int \fBTcl_LinkArray\fR(\fIinterp, varName, addr, type, size\fR) -.VE "TIP 312" +.VE TIP312 .sp \fBTcl_UnlinkVar\fR(\fIinterp, varName\fR) .sp @@ -36,10 +36,10 @@ Name of global variable. .AP void *addr in Address of C variable that is to be linked to \fIvarName\fR. .sp -.VS "TIP 312" +.VS TIP312 In \fBTcl_LinkArray\fR, may be NULL to tell Tcl to create the storage for the array in the variable. -.VE "TIP 312" +.VE TIP312 .AP int type in Type of C variable for \fBTcl_LinkVar\fR or type of array element for \fBTcl_LinkArray\fR. Must be one of \fBTCL_LINK_INT\fR, @@ -52,18 +52,18 @@ Type of C variable for \fBTcl_LinkVar\fR or type of array element for In \fBTcl_LinkVar\fR, the additional linked type \fBTCL_LINK_STRING\fR may be used. .sp -.VS "TIP 312" +.VS TIP312 In \fBTcl_LinkArray\fR, the additional linked types \fBTCL_LINK_CHARS\fR and \fBTCL_LINK_BINARY\fR may be used. -.VE "TIP 312" +.VE TIP312 .sp All the above for both functions may be optionally OR'ed with \fBTCL_LINK_READ_ONLY\fR to make the Tcl variable read-only. .AP Tcl_Size size in -.VS "TIP 312" +.VS TIP312 The number of elements in the C array. Must be greater than zero. -.VE "TIP 312" +.VE TIP312 .BE .SH DESCRIPTION .PP @@ -78,12 +78,12 @@ while setting up the link (e.g. because \fIvarName\fR is the name of array) then \fBTCL_ERROR\fR is returned and the interpreter's result contains an error message. .PP -.VS "TIP 312" +.VS TIP312 \fBTcl_LinkArray\fR is similar, but for arrays of fixed size (given by the \fIsize\fR argument). When asked to allocate the backing C array storage (via the \fIaddr\fR argument being NULL), it writes the address that it allocated to the Tcl interpreter result. -.VE "TIP 312" +.VE TIP312 .PP The \fItype\fR argument specifies the type of the C variable, or the type of the elements of the C array, @@ -122,17 +122,17 @@ integer representations (like the empty string, '+', '-' or the hex/octal/decimal/binary prefix) are accepted as if they are valid too. .RS .PP -.VS "TIP 312" +.VS TIP312 If using an array of these, consider using \fBTCL_LINK_CHARS\fR instead. -.VE "TIP 312" +.VE TIP312 .RE .TP \fBTCL_LINK_CHARS\fR -.VS "TIP 312" +.VS TIP312 The C array is of type \fBchar *\fR and is mapped into Tcl as a string. Any value written into the Tcl variable must have the same length as the underlying storage. Only supported with \fBTcl_LinkArray\fR. -.VE "TIP 312" +.VE TIP312 .TP \fBTCL_LINK_UCHAR\fR . @@ -146,18 +146,18 @@ representations (like the empty string, '+', '-' or the hex/octal/decimal/binary prefix) are accepted as if they are valid too. .RS .PP -.VS "TIP 312" +.VS TIP312 If using an array of these, consider using \fBTCL_LINK_BINARY\fR instead. -.VE "TIP 312" +.VE TIP312 .RE .TP \fBTCL_LINK_BINARY\fR -.VS "TIP 312" +.VS TIP312 The C array is of type \fBunsigned char *\fR and is mapped into Tcl as a bytearray. Any value written into the Tcl variable must have the same length as the underlying storage. Only supported with \fBTcl_LinkArray\fR. -.VE "TIP 312" +.VE TIP312 .TP \fBTCL_LINK_SHORT\fR . diff --git a/doc/Namespace.3 b/doc/Namespace.3 index 399bd7d..4b74d47 100644 --- a/doc/Namespace.3 +++ b/doc/Namespace.3 @@ -4,9 +4,6 @@ '\" See the file "license.terms" for information on usage and redistribution '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. '\" -'\" Note that some of these functions do not seem to belong, but they -'\" were all introduced with the same TIP (#139) -'\" .TH Tcl_Namespace 3 8.5 Tcl "Tcl Library Procedures" .so man.macros .BS @@ -90,14 +90,12 @@ the Tcl program. .PP Channels are automatically closed when an interpreter is destroyed and when the process exits. -From 8.6 on (TIP#398), nonblocking channels are no longer switched to +Nonblocking channels are not switched to blocking mode when exiting; this guarantees a timely exit even when the peer or a communication channel is stalled. To ensure proper flushing of -stalled nonblocking channels on exit, one must now either (a) actively +stalled nonblocking channels on exit, one must either (a) actively switch them back to blocking or (b) use the environment variable -\fBTCL_FLUSH_NONBLOCKING_ON_EXIT\fR, which when set and not equal to -.QW \fB0\fR -restores the previous behavior. +\fBTCL_FLUSH_NONBLOCKING_ON_EXIT\fR. .RE .\" METHOD: configure .TP @@ -200,7 +198,7 @@ Otherwise (the default) there is no special end of file character marker. The acceptable range for \fB\-eofchar\fR values is \ex01 - \ex7f; attempting to set \fB\-eofchar\fR to a value outside of this range will generate an error. -.VS "TCL8.7 TIP656" +.VS TIP656 .\" OPTION: -profile .TP \fB\-profile\fI profile\fR @@ -210,7 +208,7 @@ transforms in use for the channel's input and output will then be subject to the rules of that profile. Any failures will result in a channel error. See \fBPROFILES\fR in the \fBencoding(n)\fR documentation for details about encoding profiles. -.VE "TCL8.7 TIP656" +.VE TIP656 .\" OPTION: -translation .TP \fB\-translation\fI translation\fR @@ -24,7 +24,6 @@ name of the object or class to be copied, \fIsourceObject\fR, and optionally the name of the object or class to create, \fItargetObject\fR, which will be resolved relative to the current namespace if not an absolute qualified name and -.VS TIP473 \fItargetNamespace\fR which is the name of the namespace that will hold the internal state of the object (\fBmy\fR command, etc.); it \fImust not\fR refer to an existing namespace. @@ -32,7 +31,6 @@ If either \fItargetObject\fR or \fItargetNamespace\fR is omitted or is given as the empty string, a new name is chosen. Names, unless specified, are chosen with the same algorithm used by the \fBnew\fR method of \fBoo::class\fR. -.VE TIP473 The copied object will be of the same class as the source object, and will have all its per-object methods copied. If it is a class, it will also have all the class methods in the class copied, but it will not have any of its instances diff --git a/doc/coroutine.n b/doc/coroutine.n index 6dae482..3a029d4 100644 --- a/doc/coroutine.n +++ b/doc/coroutine.n @@ -18,10 +18,10 @@ coroutine, yield, yieldto, coroinject, coroprobe \- Create and produce values fr \fByieldto\fI command\fR ?\fIarg...\fR? \fIname\fR ?\fIvalue...\fR? -.VS "8.7, TIP383" +.VS TIP383 \fBcoroinject \fIcoroName command\fR ?\fIarg...\fR? \fBcoroprobe \fIcoroName command\fR ?\fIarg...\fR? -.VE "8.7, TIP383" +.VE TIP383 .fi .BE .SH DESCRIPTION @@ -78,7 +78,7 @@ global namespace and there will be no stack frames above it (in the sense of \fBupvar\fR and \fBuplevel\fR). However, which command to call will be determined in the namespace that the \fBcoroutine\fR command was called from. .PP -.VS "8.7, TIP383" +.VS TIP383 A suspended coroutine (i.e., one that has \fByield\fRed or \fByieldto\fR-d) may have its state inspected (or modified) at that point by using \fBcoroprobe\fR to run a command at the point where the coroutine is at. The @@ -93,24 +93,24 @@ Similarly, the \fBcoroinject\fR command may be used to place a command to be run inside a suspended coroutine (when it is resumed) to process arguments, with quite a bit of similarity to \fBcoroprobe\fR. However, with \fBcoroinject\fR there are several key differences: -.VE "8.7, TIP383" +.VE TIP383 .IP \(bu -.VS "8.7, TIP383" +.VS TIP383 The coroutine is not immediately resumed after the injection has been done. A consequence of this is that multiple injections may be done before the coroutine is resumed. The injected commands are performed in \fIreverse order of definition\fR (that is, they are internally stored on a stack). -.VE "8.7, TIP383" +.VE TIP383 .IP \(bu -.VS "8.7, TIP383" +.VS TIP383 An additional two arguments are appended to the list of arguments to be run (that is, the \fIcommand\fR and its \fIargs\fR are extended by two elements). The first is the name of the command that suspended the coroutine (\fByield\fR or \fByieldto\fR), and the second is the argument (or list of arguments, in the case of \fByieldto\fR) that is the current resumption value. -.VE "8.7, TIP383" +.VE TIP383 .IP \(bu -.VS "8.7, TIP383" +.VS TIP383 The result of the injected command is used as the result of the \fByield\fR or \fByieldto\fR that caused the coroutine to become suspended. Where there are multiple injected commands, the result of one becomes the resumption value @@ -124,7 +124,7 @@ operations may only be applied to coroutines that are suspended. (If a coroutine is running then any introspection code would be merely inspecting the state of where it is currently running; \fBcoroinject\fR/\fBcoroprobe\fR are unnecessary in that case.) -.VE "8.7, TIP383" +.VE TIP383 .SH EXAMPLES .PP This example shows a coroutine that will produce an infinite sequence of @@ -207,7 +207,7 @@ proc juggler {name target {value ""}} { \fBcoroutine\fR j3 juggler Moe j1]] "Nyuck!Nyuck!Nyuck!" .CE .PP -.VS "8.7, TIP383" +.VS TIP383 This example shows a simple coroutine that collects non-empty values and returns a list of them when not given an argument. It also shows how we can look inside the coroutine to find out what it is doing, and how we can modify @@ -245,7 +245,7 @@ puts [\fBcoroprobe \fIcollect\fR set accumulator] puts [\fIcollect\fR] # ==> 123 {abc def} 456 pqr RST xyz .CE -.VE "8.7, TIP383" +.VE TIP383 .SS "DETAILED SEMANTICS" .PP This example demonstrates that coroutines start from the global namespace, and diff --git a/doc/define.n b/doc/define.n index 775cdc4..8146d59 100644 --- a/doc/define.n +++ b/doc/define.n @@ -156,7 +156,7 @@ be a namespace that is unique to the current object. The method will be exported if \fIname\fR starts with a lower-case letter, and non-exported otherwise; this behavior can be overridden via \fBexport\fR and \fBunexport\fR -.VS TIP519 +.VS TIP519 or by specifying \fB\-export\fR, \fB\-private\fR or \fB\-unexport\fR in the optional parameter \fIoption\fR. .VE TIP519 @@ -379,7 +379,7 @@ method will be \fIbodyScript\fR. When the body of the method is evaluated, the current namespace of the method will be a namespace that is unique to the object. The method will be exported if \fIname\fR starts with a lower-case letter, and non-exported otherwise; -.VS TIP519 +.VS TIP519 this can be overridden by specifying \fB\-export\fR, \fB\-private\fR or \fB\-unexport\fR in the optional parameter \fIoption\fR, or via the \fBexport\fR and \fBunexport\fR definitions. @@ -129,7 +129,7 @@ present in the dictionary. \fBdict getdef \fIdictionaryValue \fR?\fIkey ...\fR? \fIkey default\fR .TP \fBdict getwithdefault \fIdictionaryValue \fR?\fIkey ...\fR? \fIkey default\fR -.VS "8.7, TIP342" +.VS TIP342 This behaves the same as \fBdict get\fR (with at least one \fIkey\fR argument), returning the value that the key path maps to in the dictionary \fIdictionaryValue\fR, except that instead of producing an @@ -140,7 +140,7 @@ is absent, it returns the \fIdefault\fR argument instead. Note that there must always be at least one \fIkey\fR provided, and that \fBdict getdef\fR and \fBdict getwithdefault\fR are aliases for each other. .RE -.VE "8.7, TIP342" +.VE TIP342 .\" METHOD: incr .TP \fBdict incr \fIdictionaryVariable key \fR?\fIincrement\fR? diff --git a/doc/encoding.n b/doc/encoding.n index c28406f..43da934 100644 --- a/doc/encoding.n +++ b/doc/encoding.n @@ -30,16 +30,16 @@ Performs one of several encoding related operations, depending on .\" METHOD: convertfrom .TP \fBencoding convertfrom\fR ?\fIencoding\fR? \fIdata\fR -.VS "TCL8.7 TIP607, TIP656" +.VS "TIP607, TIP656" .TP \fBencoding convertfrom\fR ?\fB-profile \fIprofile\fR? ?\fB-failindex var\fR? \fIencoding data\fR -.VE "TCL8.7 TIP607, TIP656" +.VE "TIP607, TIP656" . Converts \fIdata\fR, which should be in binary string encoded as per \fIencoding\fR, to a Tcl string. If \fIencoding\fR is not specified, the current system encoding is used. .PP -.VS "TCL8.7 TIP607, TIP656" +.VS "TIP607, TIP656" The \fB-profile\fR option determines the command behavior in the presence of conversion errors. See the \fBPROFILES\fR section below for details. Any premature termination of processing due to errors is reported through an exception if @@ -51,7 +51,7 @@ error is returned as the result of the command. In addition, the index of the source byte triggering the error is stored in \fBvar\fR. If no errors are encountered, the entire result of the conversion is returned and the value \fB-1\fR is stored in \fBvar\fR. -.VE "TCL8.7 TIP607, TIP656" +.VE "TIP607, TIP656" .\" METHOD: convertto .TP \fBencoding convertto\fR ?\fIencoding\fR? \fIdata\fR @@ -63,10 +63,10 @@ string that contains the sequence of bytes representing the converted string in the specified encoding. If \fIencoding\fR is not specified, the current system encoding is used. .PP -.VS "TCL8.7 TIP607, TIP656" +.VS "TIP607, TIP656" The \fB-profile\fR and \fB-failindex\fR options have the same effect as described for the \fBencoding convertfrom\fR command. -.VE "TCL8.7 TIP607, TIP656" +.VE "TIP607, TIP656" .\" METHOD: dirs .TP \fBencoding dirs\fR ?\fIdirectoryList\fR? @@ -94,9 +94,9 @@ are guaranteed to be present in the list. .\" METHOD: profiles .TP \fBencoding profiles\fR -.VS "TCL8.7 TIP656" +.VS TIP656 Returns a list of the names of encoding profiles. See \fBPROFILES\fR below. -.VE "TCL8.7 TIP656" +.VE TIP656 .\" METHOD: system .TP \fBencoding system\fR ?\fIencoding\fR? @@ -107,30 +107,30 @@ system encoding is used whenever Tcl passes strings to system calls. .\" Do not put .VS on whole section as that messes up the bullet list alignment .SH PROFILES .PP -.VS "TCL8.7 TIP656" +.VS TIP656 Operations involving encoding transforms may encounter several types of errors such as invalid sequences in the source data, characters that cannot be encoded in the target encoding and so on. A \fIprofile\fR prescribes the strategy for dealing with such errors in one of two ways: -.VE "TCL8.7 TIP656" +.VE TIP656 . .IP \(bu -.VS "TCL8.7 TIP656" +.VS TIP656 Terminating further processing of the source data. The profile does not determine how this premature termination is conveyed to the caller. By default, this is signalled by raising an exception. If the \fB-failindex\fR option is specified, errors are reported through that mechanism. -.VE "TCL8.7 TIP656" +.VE TIP656 .IP \(bu -.VS "TCL8.7 TIP656" +.VS TIP656 Continue further processing of the source data using a fallback strategy such as replacing or discarding the offending bytes in a profile-defined manner. -.VE "TCL8.7 TIP656" +.VE TIP656 .PP The following profiles are currently implemented with \fBstrict\fR being the default if the \fB-profile\fR is not specified. -.VS "TCL8.7 TIP656" +.VS TIP656 .TP \fBstrict\fR . @@ -173,7 +173,7 @@ code points that cannot be represented in the target encoding are transformed to an encoding-specific fallback character, U+FFFD REPLACEMENT CHARACTER for UTF targets and generally `?` for other encodings. -.VE "TCL8.7 TIP656" +.VE TIP656 .SH EXAMPLES .PP These examples use the utility proc below that prints the Unicode code points @@ -195,7 +195,7 @@ U+00306F The result is the unicode codepoint .QW "\eu306F" , which is the Hiragana letter HA. -.VS "TCL8.7 TIP607, TIP656" +.VS "TIP607, TIP656" .PP Example 2: Error handling based on profiles: .PP @@ -232,7 +232,7 @@ A % set idx 1 .CE -.VE "TCL8.7 TIP607, TIP656" +.VE "TIP607, TIP656" .PP .SH "SEE ALSO" Tcl_GetEncoding(3), fconfigure(n) @@ -41,11 +41,11 @@ When the result of expression is an integer, it is in decimal form, and when the result is a floating-point number, it is in the form produced by the \fB%g\fR format specifier of \fBformat\fR. .PP -.VS "TIP 582" +.VS TIP582 At any point in the expression except within double quotes or braces, \fB#\fR is the beginning of a comment, which lasts to the end of the line or the end of the expression, whichever comes first. -.VE "TIP 582" +.VE TIP582 .SS OPERANDS .PP An expression consists of a combination of operands, operators, parentheses and @@ -198,12 +198,12 @@ comparison is done using UNICODE string comparison, as with the string comparison operators below, which have the same precedence. .TP 20 \fBlt\0\0gt\0\0le\0\0ge\fR -.VS "8.7, TIP461" +.VS TIP461 Boolean string comparisons: less than, greater than, less than or equal, and greater than or equal. These always compare values using their UNICODE strings (also see \fBstring compare\fR), unlike with the numeric-preferring comparisons above, which have the same precedence. -.VE "8.7, TIP461" +.VE TIP461 .TP 20 \fB==\0\0!=\fR . @@ -439,13 +439,13 @@ A string comparison whose result is 1: \fBexpr\fR {"0y" > "0x12"} .CE .PP -.VS "8.7, TIP461" +.VS TIP461 A forced string comparison whose result is 0: .PP .CS \fBexpr\fR {"0x03" gt "2"} .CE -.VE "8.7, TIP461" +.VE TIP461 .PP Define a procedure that computes an .QW interesting @@ -218,7 +218,7 @@ element of \fIname\fR then returns the empty string. .\" METHOD: home .TP \fBfile home ?\fIusername\fR? -.VS "8.7, TIP 602" +.VS TIP602 If no argument is specified, the command returns the home directory of the current user. This is generally the value of the \fB$HOME\fR environment variable except that on Windows platforms backslashes @@ -233,7 +233,7 @@ even when \fIusername\fR corresponds to the current user. An error is raised if the \fIusername\fR does not correspond to a user account on the system. .RE -.VE "8.7, TIP 602" +.VE TIP602 .\" METHOD: isdirectory .TP \fBfile isdirectory \fIname\fR @@ -500,7 +500,7 @@ return \fBb\fR. .\" METHOD: tempdir .TP \fBfile tempdir\fR ?\fItemplate\fR? -.VS "8.7, TIP 431" +.VS TIP431 Creates a temporary directory (guaranteed to be newly created and writable by the current script) and returns its name. If \fItemplate\fR is given, it specifies one of or both of the existing directory (on a filesystem controlled @@ -527,11 +527,10 @@ between platforms: /var/tmp/myapp_0ihS0n .CE .RE -.VE "8.7, TIP 431" +.VE TIP431 .\" METHOD: tempfile .TP \fBfile tempfile\fR ?\fInameVar\fR? ?\fItemplate\fR? -.\" TIP #210 Creates a temporary file and returns a read-write channel opened on that file. If the \fInameVar\fR is given, it specifies a variable that the name of the temporary file will be written into; if absent, Tcl will attempt to arrange @@ -549,7 +548,7 @@ native APIs and external programs that require a filename. .\" METHOD: tildeexpand .TP \fBfile tildeexpand \fIname\fR -.VS "8.7, TIP 602" +.VS TIP602 Returns the result of performing tilde substitution on \fIname\fR. If the name begins with a tilde, then the file name will be interpreted as if the first element is replaced with the location of the home directory for the given user. @@ -562,7 +561,7 @@ retrieve the user's home directory for substitution. An error is raised if the .PP If the file name does not begin with a tilde, it is returned unmodified. .RE -.VE "8.7, TIP 602" +.VE TIP602 .\" METHOD: type .TP \fBfile type \fIname\fR @@ -94,18 +94,18 @@ to allow users to type in commands that span multiple lines. .\" METHOD: constant .TP \fBinfo constant \fIvarName\fR -.VS "TIP 677" +.VS TIP677 Returns 1 if \fIvarName\fR is a constant variable (see \fBconst\fR) and 0 otherwise. -.VE "TIP 677" +.VE TIP677 .\" METHOD: consts .TP \fBinfo consts\fR ?\fIpattern\fR? -.VS "TIP 677" +.VS TIP677 Returns the list of constant variables (see \fBconst\fR) in the current scope, or the list of constant variables matching \fIpattern\fR (if that is provided) in a manner similar to \fBinfo vars\fR. -.VE "TIP 677" +.VE TIP677 .\" METHOD: coroutine .TP \fBinfo coroutine\fR @@ -529,7 +529,7 @@ class named \fIclass\fR. .\" METHOD: properties .TP \fBinfo class properties\fI class\fR ?\fIoptions...\fR -.VS "TIP 558" +.VS TIP558 This subcommand returns a sorted list of properties defined on the class named \fIclass\fR. The \fIoptions\fR define exactly which properties are returned: .RS @@ -552,7 +552,7 @@ returned. Only readable or writable properties are returned, not both. This option asks for the writable properties to be returned. Only readable or writable properties are returned, not both. .RE -.VE "TIP 558" +.VE TIP558 .\" METHOD: subclasses .TP \fBinfo class subclasses\fI class\fR ?\fIpattern\fR? @@ -762,7 +762,7 @@ This subcommand returns the name of the internal namespace of the object named .\" METHOD: properties .TP \fBinfo object properties\fI object\fR ?\fIoptions...\fR -.VS "TIP 558" +.VS TIP558 This subcommand returns a sorted list of properties defined on the object named \fIobject\fR. The \fIoptions\fR define exactly which properties are returned: @@ -786,7 +786,7 @@ returned. Only readable or writable properties are returned, not both. This option asks for the writable properties to be returned. Only readable or writable properties are returned, not both. .RE -.VE "TIP 558" +.VE TIP558 .\" METHOD: variables .TP \fBinfo object variables\fI object\fR ?\fB\-private\fR? diff --git a/doc/library.n b/doc/library.n index af9d776..5336e13 100644 --- a/doc/library.n +++ b/doc/library.n @@ -9,7 +9,7 @@ .so man.macros .BS .SH NAME -auto_execok, auto_import, auto_load, auto_mkindex, auto_qualify, auto_reset, foreachLine, parray, readFile, tcl_findLibrary, tcl_endOfWord, tcl_startOfNextWord, tcl_startOfPreviousWord, tcl_wordBreakAfter, tcl_wordBreakBefore, writeFile \- standard library of Tcl procedures +auto_execok, auto_import, auto_load, auto_mkindex, auto_qualify, auto_reset, foreachLine, parray, readFile, tcl_findLibrary, tcl_endOfWord, tcl_nonwordchars, tcl_startOfNextWord, tcl_startOfPreviousWord, tcl_wordBreakAfter, tcl_wordBreakBefore, tcl_wordchars, writeFile \- standard library of Tcl procedures .SH SYNOPSIS .nf \fBauto_execok \fIcmd\fR @@ -25,11 +25,11 @@ auto_execok, auto_import, auto_load, auto_mkindex, auto_qualify, auto_reset, for \fBtcl_startOfPreviousWord \fIstr start\fR \fBtcl_wordBreakAfter \fIstr start\fR \fBtcl_wordBreakBefore \fIstr start\fR -.VS "Tcl 8.7, TIP 670" +.VS TIP670 \fBforeachLine \fIfilename varName body\fR \fBreadFile \fIfilename\fR ?\fBtext\fR|\fBbinary\fR? \fBwriteFile \fIfilename\fR ?\fBtext\fR|\fBbinary\fR? \fIcontents\fR -.VE "Tcl 8.7, TIP 670" +.VE TIP670 .fi .BE .SH INTRODUCTION @@ -329,7 +329,7 @@ boundary. .\" COMMAND: foreachLine .TP \fBforeachLine \fIvarName filename body\fR -.VS "Tcl 8.7, TIP 670" +.VS TIP670 This reads in the text file named \fIfilename\fR one line at a time (using system defaults for reading text files). It writes that line to the variable named by \fIvarName\fR and then executes \fIbody\fR for that line. @@ -340,22 +340,22 @@ respectively. The overall result of \fBforeachLine\fR is the empty string (assuming no errors from I/O or from evaluating the body of the loop); the file will be closed prior to the procedure returning. -.VE "Tcl 8.7, TIP 670" +.VE TIP670 .\" COMMAND: readFile .TP \fBreadFile \fIfilename\fR ?\fBtext\fR|\fBbinary\fR? -.VS "Tcl 8.7, TIP 670" +.VS TIP670 Reads in the file named in \fIfilename\fR and returns its contents. The second argument says how to read in the file, either as \fBtext\fR (using the system defaults for reading text files) or as \fBbinary\fR (as uninterpreted bytes). The default is \fBtext\fR. When read as text, this will include any trailing newline. The file will be closed prior to the procedure returning. -.VE "Tcl 8.7, TIP 670" +.VE TIP670 .\" COMMAND: writeFile .TP \fBwriteFile \fIfilename\fR ?\fBtext\fR|\fBbinary\fR? \fIcontents\fR -.VS "Tcl 8.7, TIP 670" +.VS TIP670 Writes the \fIcontents\fR to the file named in \fIfilename\fR. The optional second argument says how to write to the file, either as \fBtext\fR (using the system defaults for writing text files) or as @@ -363,7 +363,7 @@ The optional second argument says how to write to the file, either as If a trailing newline is required, it will need to be provided in \fIcontents\fR. The result of this command is the empty string; the file will be closed prior to the procedure returning. -.VE "Tcl 8.7, TIP 670" +.VE TIP670 .SH "VARIABLES" .PP The following global variables are defined or used by the procedures in @@ -473,8 +473,7 @@ These variables are only used in the \fBtcl_endOfWord\fR, This variable contains a regular expression that is used by routines like \fBtcl_endOfWord\fR to identify whether a character is part of a word or not. If the pattern matches a character, the character is -considered to be a non-word character. The default value is -.QW "\\W" . +considered to be a non-word character. The default value is \fB\eW\fR. .\" VARIABLE: tcl_wordchars .TP \fBtcl_wordchars\fR @@ -482,8 +481,7 @@ considered to be a non-word character. The default value is This variable contains a regular expression that is used by routines like \fBtcl_endOfWord\fR to identify whether a character is part of a word or not. If the pattern matches a character, the character is -considered to be a word character. The default value is -.QW "\\w" . +considered to be a word character. The default value is \fB\ew\fR. .SH "SEE ALSO" env(n), info(n), re_syntax(n) .SH KEYWORDS diff --git a/doc/lreplace.n b/doc/lreplace.n index 47d33f9..6f3fda4 100644 --- a/doc/lreplace.n +++ b/doc/lreplace.n @@ -31,12 +31,10 @@ list, and \fBend\fR refers to the last element of the list. If either \fIfirst\fR or \fIlast\fR is less than zero, it is considered to refer to before the first element of the list. This allows \fBlreplace\fR to prepend elements to \fIlist\fR. -.VS TIP505 If either \fIfirst\fR or \fIlast\fR indicates a position greater than the index of the last element of the list, it is treated as if it is an index one greater than the last element. This allows \fBlreplace\fR to append elements to \fIlist\fR. -.VE TIP505 .PP If \fIlast\fR is less than \fIfirst\fR, then any specified elements will be inserted into the list before the element specified by \fIfirst\fR @@ -82,7 +80,6 @@ proc lremove {listVariable value} { } .CE .PP -.VS TIP505 Appending elements to the list; note that \fBend+2\fR will initially be treated as if it is \fB6\fR here, but both that and \fB12345\fR are greater than the index of the final item so they behave identically: @@ -93,7 +90,6 @@ a b c d e % set var [\fBlreplace\fR $var 12345 end+2 f g h i] a b c d e f g h i .CE -.VE TIP505 .SH "SEE ALSO" list(n), lappend(n), lassign(n), ledit(n), lindex(n), linsert(n), llength(n), lmap(n), lpop(n), lrange(n), lremove(n), lrepeat(n), diff --git a/doc/mathfunc.n b/doc/mathfunc.n index c84dbf7..f0d296d 100644 --- a/doc/mathfunc.n +++ b/doc/mathfunc.n @@ -32,17 +32,17 @@ package require \fBTcl 8.5-\fR \fB::tcl::mathfunc::fmod\fI x y\fR \fB::tcl::mathfunc::hypot\fI x y\fR \fB::tcl::mathfunc::int\fI arg\fR -.VS "8.7, TIP 521" +.VS TIP521 \fB::tcl::mathfunc::isfinite\fI arg\fR \fB::tcl::mathfunc::isinf\fI arg\fR \fB::tcl::mathfunc::isnan\fI arg\fR \fB::tcl::mathfunc::isnormal\fI arg\fR -.VE "8.7, TIP 521" +.VE TIP521 \fB::tcl::mathfunc::isqrt\fI arg\fR -.VS "8.7, TIP 521" +.VS TIP521 \fB::tcl::mathfunc::issubnormal\fI arg\fR \fB::tcl::mathfunc::isunordered\fI x y\fR -.VE "8.7, TIP 521" +.VE TIP521 \fB::tcl::mathfunc::log\fI arg\fR \fB::tcl::mathfunc::log10\fI arg\fR \fB::tcl::mathfunc::max\fI arg\fR ?\fIarg\fR ...? @@ -207,35 +207,35 @@ element of the \fBtcl_platform\fR array. .\" COMMAND: isfinite .TP \fBisfinite \fIarg\fR -.VS "8.7, TIP 521" +.VS TIP521 Returns 1 if the floating-point number \fIarg\fR is finite. That is, if it is zero, subnormal, or normal. Returns 0 if the number is infinite or NaN. Throws an error if \fIarg\fR cannot be promoted to a floating-point value. -.VE "8.7, TIP 521" +.VE TIP521 .\" COMMAND: isinf .TP \fBisinf \fIarg\fR -.VS "8.7, TIP 521" +.VS TIP521 Returns 1 if the floating-point number \fIarg\fR is infinite. Returns 0 if the number is finite or NaN. Throws an error if \fIarg\fR cannot be promoted to a floating-point value. -.VE "8.7, TIP 521" +.VE TIP521 .\" COMMAND: isnan .TP \fBisnan \fIarg\fR -.VS "8.7, TIP 521" +.VS TIP521 Returns 1 if the floating-point number \fIarg\fR is Not-a-Number. Returns 0 if the number is finite or infinite. Throws an error if \fIarg\fR cannot be promoted to a floating-point value. -.VE "8.7, TIP 521" +.VE TIP521 .\" COMMAND: isnormal .TP \fBisnormal \fIarg\fR -.VS "8.7, TIP 521" +.VS TIP521 Returns 1 if the floating-point number \fIarg\fR is normal. Returns 0 if the number is zero, subnormal, infinite or NaN. Throws an error if \fIarg\fR cannot be promoted to a floating-point value. -.VE "8.7, TIP 521" +.VE TIP521 .\" COMMAND: isqrt .TP \fBisqrt \fIarg\fR @@ -247,22 +247,22 @@ number, \fIisqrt\fR will return a result of arbitrary precision. .\" COMMAND: issubnormal .TP \fBissubnormal \fIarg\fR -.VS "8.7, TIP 521" +.VS TIP521 Returns 1 if the floating-point number \fIarg\fR is subnormal, i.e., the result of gradual underflow. Returns 0 if the number is zero, normal, infinite or NaN. Throws an error if \fIarg\fR cannot be promoted to a floating-point value. -.VE "8.7, TIP 521" +.VE TIP521 .\" COMMAND: isunordered .TP \fBisunordered \fIx y\fR -.VS "8.7, TIP 521" +.VS TIP521 Returns 1 if \fIx\fR and \fIy\fR cannot be compared for ordering, that is, if either one is NaN. Returns 0 if both values can be ordered, that is, if they are both chosen from among the set of zero, subnormal, normal and infinite values. Throws an error if either \fIx\fR or \fIy\fR cannot be promoted to a floating-point value. -.VE "8.7, TIP 521" +.VE TIP521 .\" COMMAND: log .TP \fBlog \fIarg\fR diff --git a/doc/mathop.n b/doc/mathop.n index 95a5d0e..38b862b 100644 --- a/doc/mathop.n +++ b/doc/mathop.n @@ -35,12 +35,12 @@ package require \fBTcl 8.5-\fR \fB::tcl::mathop::>\fR ?\fIarg\fR ...? \fB::tcl::mathop::eq\fR ?\fIarg\fR ...? \fB::tcl::mathop::ne\fI arg arg\fR -.VS "8.7, TIP461" +.VS TIP461 \fB::tcl::mathop::lt\fR ?\fIarg\fR ...? \fB::tcl::mathop::le\fR ?\fIarg\fR ...? \fB::tcl::mathop::gt\fR ?\fIarg\fR ...? \fB::tcl::mathop::ge\fR ?\fIarg\fR ...? -.VE "8.7, TIP461" +.VE TIP461 \fB::tcl::mathop::in\fI arg list\fR \fB::tcl::mathop::ni\fI arg list\fR .fi @@ -228,39 +228,39 @@ operator or the \fBstring compare\fR command should be used instead. .\" COMMAND: lt .TP \fBlt\fR ?\fIarg\fR ...? -.VS "8.7, TIP461" +.VS TIP461 Returns whether the arbitrarily-many arguments are ordered, with each argument after the first having to be strictly more than the one preceding it. Comparisons are performed using UNICODE string comparison. If fewer than two arguments are present, this operation always returns a true value. -.VE "8.7, TIP461" +.VE TIP461 .\" COMMAND: le .TP \fBle\fR ?\fIarg\fR ...? -.VS "8.7, TIP461" +.VS TIP461 Returns whether the arbitrarily-many arguments are ordered, with each argument after the first having to be equal to or strictly more than the one preceding it. Comparisons are performed using UNICODE string comparison. If fewer than two arguments are present, this operation always returns a true value. -.VE "8.7, TIP461" +.VE TIP461 .\" COMMAND: gt .TP \fBgt\fR ?\fIarg\fR ...? -.VS "8.7, TIP461" +.VS TIP461 Returns whether the arbitrarily-many arguments are ordered, with each argument after the first having to be strictly less than the one preceding it. Comparisons are performed using UNICODE string comparison. If fewer than two arguments are present, this operation always returns a true value. -.VE "8.7, TIP461" +.VE TIP461 .\" COMMAND: ge .TP \fBge\fR ?\fIarg\fR ...? -.VS "8.7, TIP461" +.VS TIP461 Returns whether the arbitrarily-many arguments are ordered, with each argument after the first having to be equal to or strictly less than the one preceding it. Comparisons are performed using UNICODE string comparison. If fewer than two arguments are present, this operation always returns a true value. -.VE "8.7, TIP461" +.VE TIP461 .SS "BIT-WISE OPERATORS" .PP The behaviors of the bit-wise operator commands (all of which only operate on diff --git a/doc/msgcat.n b/doc/msgcat.n index 3d433d8..94884f3 100644 --- a/doc/msgcat.n +++ b/doc/msgcat.n @@ -17,33 +17,27 @@ msgcat \- Tcl message catalog \fB::msgcat::mc \fIsrc-string\fR ?\fIarg arg ...\fR? \fB::msgcat::mcmax ?\fIsrc-string src-string ...\fR? -.VS "TIP 412" \fB::msgcat::mcexists\fR ?\fB\-exactnamespace\fR? ?\fB\-exactlocale\fR? \fIsrc-string\fR -.VE "TIP 412" -.VS "TIP 490" +.VS TIP490 \fB::msgcat::mcpackagenamespaceget\fR -.VE "TIP 490" +.VE TIP490 \fB::msgcat::mclocale \fR?\fInewLocale\fR? -.VS "TIP 499" +.VS TIP499 \fB::msgcat::mcpreferences\fR ?\fIlocale preference\fR? ... -.VE "TIP 499" -.VS "TIP 412" +.VE TIP499 \fB::msgcat::mcloadedlocales subcommand\fR -.VE "TIP 412" \fB::msgcat::mcload \fIdirname\fR \fB::msgcat::mcset \fIlocale src-string \fR?\fItranslate-string\fR? \fB::msgcat::mcmset \fIlocale src-trans-list\fR \fB::msgcat::mcflset \fIsrc-string \fR?\fItranslate-string\fR? \fB::msgcat::mcflmset \fIsrc-trans-list\fR \fB::msgcat::mcunknown \fIlocale src-string\fR ?\fIarg arg ...\fR? -.VS "TIP 412" \fB::msgcat::mcpackagelocale subcommand\fR ?\fIlocale\fR? \fB::msgcat::mcpackageconfig subcommand\fI option\fR ?\fIvalue\fR? \fB::msgcat::mcforgetpackage\fR -.VE "TIP 412" -.VS "TIP 499" +.VS TIP499 \fB::msgcat::mcutil subcommand\fR ?\fIlocale\fR? -.VS "TIP 499" +.VS TIP499 .fi .BE .SH DESCRIPTION @@ -69,9 +63,9 @@ decide to use the global locale or to use a package specific locale. The global locale may be changed on demand, for example by a user initiated language change or within a multi user application like a web server. .PP -.VS tip490 +.VS TIP490 Object oriented programming is supported by the use of a package namespace. -.VE tip490 +.VE TIP490 .PP .SH COMMANDS .\" COMMAND: mc @@ -101,7 +95,7 @@ later simply by defining new message catalog entries. .\" COMMAND: mcn .TP \fB::msgcat::mcn \fInamespace src-string\fR ?\fIarg arg ...\fR? -.VS "TIP 490" +.VS TIP490 Like \fB::msgcat::mc\fR, but with the message namespace specified as first argument. .PP @@ -122,7 +116,6 @@ fixed width (which will be the width of the widest button). .\" COMMAND: mcexists .TP \fB::msgcat::mcexists\fR ?\fB\-exactnamespace\fR? ?\fB\-exactlocale\fR? ?\fB\-namespace\fI namespace\fR? \fIsrc-string\fR -.VS "TIP 412" Return true, if there is a translation for the given \fIsrc-string\fR. .PP .RS @@ -133,17 +126,16 @@ It may also be limited by the option \fB\-exactlocale\fR to only check the first prefered locale (e.g. first element returned by \fB::msgcat::mcpreferences\fR if global locale is used). .PP -.VE "TIP 412" -.VS "TIP 490" +.VS TIP490 An explicit package namespace may be specified by the option \fB\-namespace\fR. The namespace of the caller is used if not explicitly specified. .RE .PP -.VE "TIP 490" +.VE TIP490 .\" COMMAND: mcpackagenamespaceget .TP \fB::msgcat::mcpackagenamespaceget\fR -.VS "TIP 490" +.VS TIP490 Return the package namespace of the caller. This command handles all cases described in section \fBOBJECT ORIENTED PROGRAMMING\fR. .PP @@ -166,7 +158,7 @@ proc ::tooltip::show {widget messagenamespace message} { .CE .RE .PP -.VE "TIP 490" +.VE TIP490 .\" COMMAND: mclocale .TP \fB::msgcat::mclocale \fR?\fInewLocale\fR? @@ -192,10 +184,8 @@ The initial locale is determined by the locale specified in the user's environment. See \fBLOCALE SPECIFICATION\fR below for a description of the locale string format. .PP -.VS "TIP 412" If the locale is set, the preference list of locales is evaluated. Locales in this list are loaded now, if not jet loaded. -.VE "TIP 412" .RE .\" COMMAND: mcpreferences .TP @@ -205,7 +195,7 @@ Without arguments, returns an ordered list of the locales preferred by the user. The list is ordered from most specific to least preference. .PP -.VS "TIP 499" +.VS TIP499 .RS A set of locale preferences may be given to set the list of locale preferences. The current locale is also set, which is the first element of the locale @@ -223,7 +213,7 @@ configured by: .\" COMMAND: mcloadedlocales .TP \fB::msgcat::mcloadedlocales subcommand\fR -.VS "TIP 499" +.VS TIP499 This group of commands manage the list of loaded locales for packages not setting a package locale. .PP @@ -237,7 +227,6 @@ the current preference list. .\" COMMAND: mcload .TP \fB::msgcat::mcload \fIdirname\fR -.VS "TIP 412" Searches the specified directory for files that match the language specifications returned by \fB::msgcat::mcloadedlocales loaded\fR (or \fBmsgcat::mcpackagelocale preferences\fR if a package locale is set) @@ -255,7 +244,6 @@ and were loaded is returned. In addition, the given folder is stored in the \fBmsgcat\fR package configuration option \fImcfolder\fR to eventually load message catalog files required by a locale change. -.VE "TIP 412" .RE .\" COMMAND: mcset .TP @@ -311,7 +299,6 @@ string. The \fB::msgcat::mcunknown\fR procedure is invoked at the same stack context as the call to \fB::msgcat::mc\fR. The return value of \fB::msgcat::mcunknown\fR is used as the return value for the call to \fB::msgcat::mc\fR. -.VS "TIP 412" .RS .PP Note that this routine is only called if the concerned package did not set a @@ -323,11 +310,10 @@ package locale unknown command name. . The calling package clears all its state within the \fBmsgcat\fR package including all settings and translations. -.VE "TIP 412" .PP .\" COMMAND: mcutil .\" METHOD: getpreferences -.VS "TIP 499" +.VS TIP499 .TP \fB::msgcat::mcutil getpreferences\fI locale\fR . @@ -345,7 +331,7 @@ fr_ch fr de_ch de {} . The system locale is returned as described by the section \fBLOCALE SPECIFICATION\fR. -.VE "TIP 499" +.VE TIP499 .PP .SH "LOCALE SPECIFICATION" .PP @@ -550,7 +536,6 @@ formatting substitution is done directly. # ... where that key is mapped to one of the # human-oriented versions by \fBmsgcat::mcset\fR .CE -.VS "TIP 412" .SH "PACKAGE PRIVATE LOCALE" .PP A package using \fBmsgcat\fR may choose to use its own package private @@ -592,13 +577,13 @@ The package locale state (set or not) is not changed (in contrast to the command \fB::msgcat::mcpackagelocale set\fR). .PP .RS -.VS "TIP 499" +.VS TIP499 If a set of locale preferences is given, it is set as package locale preference list. The package locale is set to the first element of the preference list. A package locale is activated, if it was not set so far. .PP Locale preferences are loaded now for the package, if not yet loaded. -.VE "TIP 499" +.VE TIP499 .RE .PP .\" METHOD: loaded @@ -741,7 +726,7 @@ interpreter is invoked after command completion. Only exception is the callback \fBunknowncmd\fR, where an error causes the invoking \fBmc\fR-command to fail with that error. .PP -.VS tip490 +.VS TIP490 .SH "OBJECT ORIENTED PROGRAMMING" \fBmsgcat\fR supports packages implemented by object oriented programming. Objects and classes should be defined within a package namespace. @@ -791,7 +776,7 @@ namespace eval ::N4 { } .CE .PP -.VE tip490 +.VE TIP490 .SH EXAMPLES Packages which display a GUI may update their widgets when the global locale changes. To register to a callback, use: @@ -858,7 +843,6 @@ proc ::tcl::clock::LocalizeFormat { locale format } { return $format } .CE -.VE "TIP 412" .SH CREDITS .PP The message catalog code was developed by Mark Harrison. @@ -96,7 +96,7 @@ If a new file is created as part of opening it, \fIpermissions\fR conjunction with the process's file mode creation mask. \fIPermissions\fR defaults to 0666. .PP -.VS "8.7, TIP 603" +.VS TIP603 When the file opened is an ordinary disk file, the \fBchan configure\fR and \fBfconfigure\fR commands can be used to query this additional configuration option: @@ -117,7 +117,7 @@ on all platforms; other keys may be present too. POSIX platforms, and to a call to \fBGetFileInformationByHandle()\fR on Windows; the information reported is what those system calls produce. .RE -.VE "8.7, TIP 603" +.VE TIP603 .SH "COMMAND PIPELINES" .PP If the first character of \fIfileName\fR is @@ -249,7 +249,7 @@ XON and XOFF characters. .\" OPTION: -closemode .TP \fB\-closemode\fI closeMode\fR -.VS "8.7, TIP 160" +.VS TIP160 (Windows and Unix). This option is used to query or change the close mode of the serial channel, which defines how pending output in operating system buffers is handled when the channel is closed. The following values for @@ -266,11 +266,11 @@ interact unexpectedly with handling of \fBstderr\fR. indicates that Tcl should wait when closing the channel until all output has been consumed. This may slow down \fBclose\fR noticeably. .RE -.VE "8.7, TIP 160" +.VE TIP160 .\" OPTION: -inputmode .TP \fB\-inputmode\fI inputMode\fR -.VS "8.7, TIP 160" +.VS TIP160 (Unix only; Windows has the equivalent option on console channels). This option is used to query or change the input mode of the serial channel under the assumption that it is talking to a terminal, which controls how interactive @@ -303,7 +303,7 @@ turn on an automatic reset of the terminal when the channel is closed. (Unix only; Windows has the equivalent option on console channels). This option is query only. It retrieves a two-element list with the the current width and height of the terminal. -.VE "8.7, TIP 160" +.VE TIP160 .\" OPTION: -pollinterval .TP \fB\-pollinterval\fI msec\fR @@ -462,7 +462,7 @@ 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 .SH "CONSOLE CHANNELS" -.VS "8.7, TIP 160" +.VS TIP160 On Windows only, console channels (usually \fBstdin\fR or \fBstdout\fR) support the following options: .\" OPTION: -inputmode @@ -504,7 +504,7 @@ console that this channel is talking to. .PP Note that the equivalent options exist on Unix, but are on the serial channel type. -.VE "8.7, TIP 160" +.VE TIP160 .SH "EXAMPLES" Open a file for writing, forcing it to be created and raising an error if it already exists. @@ -542,7 +542,7 @@ set binData [read $fl] close $fl .CE .PP -.VS "8.7, TIP 160" +.VS TIP160 Read a password securely from the user (assuming that the script is being run interactively): .PP @@ -556,7 +556,7 @@ try { chan configure stdin \fB-inputmode reset\fR } .CE -.VE "8.7, TIP 160" +.VE TIP160 .SH "SEE ALSO" file(n), close(n), filename(n), fconfigure(n), gets(n), read(n), puts(n), exec(n), pid(n), fopen(3) diff --git a/doc/process.n b/doc/process.n index 5124b46..b34deb2 100644 --- a/doc/process.n +++ b/doc/process.n @@ -41,17 +41,19 @@ corresponding process table entries purged. \fB::tcl::process purge\fR ?\fIpids\fR? . Cleans up all data associated with terminated subprocesses. If \fIpids\fR is -specified as a list of PIDs then the command only cleanup data for the matching -subprocesses if they exist, and raises an error otherwise. If a process listed is +specified as a list of PIDs then the command only cleans up data for the matching +subprocesses if they exist. If a process listed is still active, this command does nothing to that process. +Any PID that does not correspond to a subprocess is ignored. .\" METHOD: status .TP \fB::tcl::process status\fR ?\fIswitches\fR? ?\fIpids\fR? . Returns a dictionary mapping subprocess PIDs to their respective status. If \fIpids\fR is specified as a list of PIDs then the command only returns the -status of the matching subprocesses if they exist, and raises an error -otherwise. For active processes, the status is an empty value. For terminated +status of the matching subprocesses if they exist. +Any PID that does not correspond to a subprocess is ignored. +For active processes, the status is an empty value. For terminated processes, the status is a list with the following format: .QW "\fB{\fIcode\fR ?\fImsg errorCode\fR?\fB}\fR" , where: diff --git a/doc/regsub.n b/doc/regsub.n index cb8c2d4..cb41700 100644 --- a/doc/regsub.n +++ b/doc/regsub.n @@ -71,7 +71,7 @@ from the corresponding match. .\" OPTION: -command .TP \fB\-command\fR -.VS 8.7 +.VS TIP463 Changes the handling of \fIsubSpec\fR so that it is not treated as a template for a substitution string and the substrings .QW & @@ -95,7 +95,7 @@ The exact location indices that matched are not made available to the script. .PP See \fBEXAMPLES\fR below for illustrative cases. .RE -.VE 8.7 +.VE TIP463 .\" OPTION: -expanded .TP \fB\-expanded\fR @@ -220,7 +220,7 @@ set quoted [subst [string map {\en {\e\eu000a}} \e [\fBregsub\fR -all $RE $string $substitution]]] .CE .PP -.VS 8.7 +.VS TIP463 The above operation can be done using \fBregsub \-command\fR instead, which is often faster. (A full pre-computed \fBstring map\fR would be faster still, but the cost of computing the map for a transformation as complex as this can be @@ -274,7 +274,7 @@ set message "the quIck broWn fOX JUmped oVer the laZy dogS..." puts [\fBregsub\fR -all -command {\ew+} $message {string totitle}] # \(-> \fIThe Quick Brown Fox Jumped Over The Lazy Dogs..\fR .CE -.VE 8.7 +.VE TIP463 .SH "SEE ALSO" regexp(n), re_syntax(n), subst(n), string(n) .SH KEYWORDS diff --git a/doc/string.n b/doc/string.n index 480f3ce..a78a842 100644 --- a/doc/string.n +++ b/doc/string.n @@ -95,7 +95,7 @@ length of the string then this command returns an empty string. .\" METHOD: insert .TP \fBstring insert \fIstring index insertString\fR -.VS "TIP 504" +.VS TIP504 Returns a copy of \fIstring\fR with \fIinsertString\fR inserted at the \fIindex\fR'th character. The \fIindex\fR may be specified as described in the \fBSTRING INDICES\fR section. @@ -110,7 +110,7 @@ If \fIindex\fR is at or before the start of \fIstring\fR (e.g., \fIindex\fR is or after the end of \fIstring\fR (e.g., \fIindex\fR is \fBend\fR), \fIinsertString\fR is appended to \fIstring\fR. .RE -.VE "TIP 504" +.VE TIP504 .\" METHOD: is .TP \fBstring is \fIclass\fR ?\fB\-strict\fR? ?\fB\-failindex \fIvarname\fR? \fIstring\fR diff --git a/doc/tclvars.n b/doc/tclvars.n index fbbe956..5a0c276 100644 --- a/doc/tclvars.n +++ b/doc/tclvars.n @@ -10,7 +10,7 @@ .BS '\" Note: do not modify the .SH NAME line immediately below! .SH NAME -argc, argv, argv0, auto_path, env, errorCode, errorInfo, tcl_interactive, tcl_library, tcl_nonwordchars, tcl_patchLevel, tcl_pkgPath, tcl_platform, tcl_rcFileName, tcl_traceCompile, tcl_traceExec, tcl_wordchars, tcl_version \- Variables used by Tcl +argc, argv, argv0, auto_path, env, errorCode, errorInfo, tcl_interactive, tcl_library, tcl_patchLevel, tcl_pkgPath, tcl_platform, tcl_rcFileName, tcl_traceCompile, tcl_traceExec, tcl_version \- Variables used by Tcl .BE .SH DESCRIPTION .PP @@ -322,7 +322,6 @@ On UNIX machines, this is the value returned by \fBuname -s\fR. The version number for the operating system running on this machine. On UNIX machines, this is the value returned by \fBuname -r\fR. .IP \fBpathSeparator\fR -'\" Defined by TIP #315 The character that should be used to \fBsplit\fR PATH-like environment variables into their corresponding list of directory names. .IP \fBplatform\fR @@ -343,6 +342,16 @@ and the value from the GetUserName() system call on Windows. This gives the size of the native-machine word in bytes (strictly, it is same as the result of evaluating \fIsizeof(long)\fR in C.) .RE +.\" VARIABLE: tcl_rcFileName +.TP +\fBtcl_rcFileName\fR +. +This variable is used during initialization to indicate the name of a +user-specific startup file. If it is set by application-specific +initialization, then the Tcl startup code will check for the existence +of this file and \fBsource\fR it if it exists. For example, for \fBwish\fR +the variable is set to \fB~/.wishrc\fR for Unix and \fB~/wishrc.tcl\fR +for Windows. .\" VARIABLE: tcl_traceCompile .TP \fBtcl_traceCompile\fR @@ -390,24 +399,6 @@ and interpreter. This variable and functionality only exist if \fBTCL_COMPILE_DEBUG\fR was defined during Tcl's compilation. .RE -.\" VARIABLE: tcl_wordchars -.TP -\fBtcl_wordchars\fR -. -The value of this variable is a regular expression that can be set to -control what are considered -.QW word -characters. It defaults to \fB\ew\fR, which is any Unicode -word character (number, letter, or underscore). -.\" VARIABLE: tcl_nonwordchars -.TP -\fBtcl_nonwordchars\fR -. -The value of this variable is a regular expression that can be set to -control what are considered -.QW non-word -characters. It defaults to \fB\eW\fR, which is anything but a -Unicode word character (number, letter, or underscore). .\" VARIABLE: tcl_version .TP \fBtcl_version\fR @@ -304,9 +304,9 @@ fails because the user is unknown will be omitted from search paths. .SH "SEE ALSO" package(n), Tcl Improvement Proposal #189 .QW "\fITcl Modules\fR" -(online at https://tip.tcl-lang.org/189.html), Tcl Improvement Proposal #190 +(online at https://core.tcl-lang.org/tips/doc/trunk/tip/189.md), Tcl Improvement Proposal #190 .QW "\fIImplementation Choices for Tcl Modules\fR" -(online at https://tip.tcl-lang.org/190.html) +(online at https://core.tcl-lang.org/tips/doc/trunk/tip/190.md) .SH "KEYWORDS" modules, package .\" Local Variables: @@ -141,7 +141,6 @@ to the \fBzlib push\fR command: .\" OPTION: -dictionary .TP \fB\-dictionary\fI binData\fR -.VS "TIP 400" Sets the compression dictionary to use when working with compressing or decompressing the data to be \fIbinData\fR. Not valid for transformations that work with gzip-format data. The dictionary should consist of strings (byte @@ -149,7 +148,6 @@ sequences) that are likely to be encountered later in the data to be compressed, with the most commonly used strings preferably put towards the end of the dictionary. Tcl provides no mechanism for choosing a good such dictionary for a particular data sequence. -.VE .\" OPTION: -header .TP \fB\-header\fI dictionary\fR @@ -193,7 +191,6 @@ compression algorithm depends on what format is being produced or consumed. .\" OPTION: -dictionary .TP \fB\-dictionary\fI binData\fR -.VS "TIP 400" This read-write options gets or sets the initial compression dictionary to use when working with compressing or decompressing the data to be \fIbinData\fR. It is not valid for transformations that work with gzip-format data, and should @@ -201,7 +198,6 @@ not normally be set on compressing transformations other than at the point where the transformation is stacked. Note that this cannot be used to get the current active compression dictionary mid-stream, as that information is not exposed by the underlying library. -.VE .\" OPTION: -flush .TP \fB\-flush\fI type\fR @@ -243,7 +239,6 @@ and \fIoptions\fR are supported: The stream will be a compressing stream that produces zlib-format output, using compression level \fIlevel\fR (if specified) which will be an integer from 0 to 9, -.VS "TIP 400" and the compression dictionary \fIbindata\fR (if specified). .VE .TP @@ -251,7 +246,6 @@ and the compression dictionary \fIbindata\fR (if specified). . The stream will be a decompressing stream that takes zlib-format input and produces uncompressed output. -.VS "TIP 400" If \fIbindata\fR is supplied, it is a compression dictionary to use if required. .VE @@ -261,11 +255,9 @@ required. The stream will be a compressing stream that produces raw output, using compression level \fIlevel\fR (if specified) which will be an integer from 0 to 9, -.VS "TIP 400" and the compression dictionary \fIbindata\fR (if specified). Note that the raw compressed data includes no metadata about what compression dictionary was used, if any; that is a feature of the zlib-format data. -.VE .TP \fBzlib stream gunzip\fR . @@ -283,11 +275,9 @@ for keys see \fBzlib gzip\fR). . The stream will be a decompressing stream that takes raw compressed input and produces uncompressed output. -.VS "TIP 400" If \fIbindata\fR is supplied, it is a compression dictionary to use. Note that there are no checks in place to determine whether the compression dictionary is correct. -.VE .RE .SS "CHECKSUMMING SUBCOMMANDS" .\" METHOD: adler32 @@ -380,10 +370,8 @@ way in which the transformation is applied: .\" OPTION: -dictionary .TP \fB\-dictionary\fI binData\fR -.VS "TIP 400" Sets the compression dictionary to use when working with compressing or decompressing the data to be \fIbinData\fR. -.VE .\" OPTION: -finalize .TP \fB\-finalize\fR diff --git a/generic/tclBasic.c b/generic/tclBasic.c index 3b757bb..6c73ed0 100644 --- a/generic/tclBasic.c +++ b/generic/tclBasic.c @@ -1131,7 +1131,7 @@ Tcl_CreateInterp(void) cmdPtr->cmdEpoch = 0; cmdPtr->compileProc = cmdInfoPtr->compileProc; cmdPtr->proc = NULL; - cmdPtr->clientData = cmdPtr; + cmdPtr->clientData = NULL; cmdPtr->objProc = cmdInfoPtr->objProc; cmdPtr->objClientData = NULL; cmdPtr->deleteProc = NULL; @@ -2946,7 +2946,7 @@ TclCreateObjCommandInNs( cmdPtr->objProc = proc; cmdPtr->objClientData = clientData; cmdPtr->proc = NULL; - cmdPtr->clientData = cmdPtr; + cmdPtr->clientData = NULL; cmdPtr->deleteProc = deleteProc; cmdPtr->deleteData = clientData; cmdPtr->flags = 0; diff --git a/generic/tclCmdMZ.c b/generic/tclCmdMZ.c index 4ab0732..8b59e34 100644 --- a/generic/tclCmdMZ.c +++ b/generic/tclCmdMZ.c @@ -3339,31 +3339,19 @@ TclSubstOptions( static const char *const substOptions[] = { "-nobackslashes", "-nocommands", "-novariables", NULL }; - enum { - SUBST_NOBACKSLASHES, SUBST_NOCOMMANDS, SUBST_NOVARS + static const int optionFlags[] = { + TCL_SUBST_BACKSLASHES, TCL_SUBST_COMMANDS, TCL_SUBST_VARIABLES }; - int i, flags = TCL_SUBST_ALL; + int flags = TCL_SUBST_ALL; - for (i = 0; i < numOpts; i++) { + for (Tcl_Size i = 0; i < numOpts; i++) { int optionIndex; if (Tcl_GetIndexFromObj(interp, opts[i], substOptions, "option", 0, &optionIndex) != TCL_OK) { return TCL_ERROR; } - switch (optionIndex) { - case SUBST_NOBACKSLASHES: - flags &= ~TCL_SUBST_BACKSLASHES; - break; - case SUBST_NOCOMMANDS: - flags &= ~TCL_SUBST_COMMANDS; - break; - case SUBST_NOVARS: - flags &= ~TCL_SUBST_VARIABLES; - break; - default: - Tcl_Panic("Tcl_SubstObjCmd: bad option index to SubstOptions"); - } + flags &= ~optionFlags[optionIndex]; } *flagPtr = flags; return TCL_OK; diff --git a/library/tcltest/tcltest.tcl b/library/tcltest/tcltest.tcl index 92fe489..302ffee 100644 --- a/library/tcltest/tcltest.tcl +++ b/library/tcltest/tcltest.tcl @@ -2828,7 +2828,7 @@ proc tcltest::GetMatchingDirectories {rootdir} { foreach pattern [matchDirectories] { foreach path [glob -directory $rootdir -types d -nocomplain -- \ $pattern] { - if {$path ni $skipDirs} { + if {$path ni $skipDirs && [file readable $path]} { set matchDirs [concat $matchDirs [GetMatchingDirectories $path]] if {[file exists [file join $path all.tcl]]} { lappend matchDirs $path diff --git a/win/rules.vc b/win/rules.vc index 57bc770..170481f 100644 --- a/win/rules.vc +++ b/win/rules.vc @@ -697,7 +697,7 @@ LINKERFLAGS = $(LINKERFLAGS) -ltcg && [nmakehlp -V "$(_TCL_H)" "define TCL_MAJOR_VERSION" >> versions.vc]
!endif
!if [echo TCL_MINOR_VERSION = \>> versions.vc] \
- && [nmakehlp -V "$(_TCL_H)" TCL_MINOR_VERSION >> versions.vc]
+ && [nmakehlp -V "$(_TCL_H)" "define TCL_MINOR_VERSION" >> versions.vc]
!endif
!if [echo TCL_RELEASE_SERIAL = \>> versions.vc] \
&& [nmakehlp -V "$(_TCL_H)" TCL_RELEASE_SERIAL >> versions.vc]
|
