summaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/Access.31
-rw-r--r--doc/AddErrInfo.37
-rw-r--r--doc/Alloc.33
-rw-r--r--doc/AllowExc.31
-rw-r--r--doc/AppInit.31
-rw-r--r--doc/AssocData.31
-rw-r--r--doc/Async.33
-rw-r--r--doc/BackgdErr.31
-rw-r--r--doc/BoolObj.31
-rw-r--r--doc/ByteArrObj.32
-rw-r--r--doc/CallDel.31
-rw-r--r--doc/Cancel.31
-rw-r--r--doc/ChnlStack.33
-rw-r--r--doc/Class.31
-rw-r--r--doc/CmdCmplt.31
-rw-r--r--doc/Concat.31
-rw-r--r--doc/CrtAlias.31
-rw-r--r--doc/CrtChannel.35
-rw-r--r--doc/CrtChnlHdlr.35
-rw-r--r--doc/CrtCloseHdlr.34
-rw-r--r--doc/CrtCommand.31
-rw-r--r--doc/CrtFileHdlr.31
-rw-r--r--doc/CrtInterp.31
-rw-r--r--doc/CrtObjCmd.33
-rw-r--r--doc/CrtTimerHdlr.31
-rw-r--r--doc/CrtTrace.31
-rw-r--r--doc/DString.31
-rw-r--r--doc/DetachPids.31
-rw-r--r--doc/DictObj.33
-rw-r--r--doc/DoOneEvent.31
-rw-r--r--doc/DoWhenIdle.31
-rw-r--r--doc/DoubleObj.31
-rw-r--r--doc/DumpActiveMemory.34
-rw-r--r--doc/Encoding.33
-rw-r--r--doc/Ensemble.31
-rw-r--r--doc/Environment.31
-rw-r--r--doc/Eval.33
-rw-r--r--doc/Exit.31
-rw-r--r--doc/ExprLong.31
-rw-r--r--doc/ExprLongObj.31
-rw-r--r--doc/FileSystem.32
-rw-r--r--doc/FindExec.31
-rw-r--r--doc/GetCwd.31
-rw-r--r--doc/GetHostName.31
-rw-r--r--doc/GetIndex.31
-rw-r--r--doc/GetInt.31
-rw-r--r--doc/GetOpnFl.32
-rw-r--r--doc/GetStdChan.32
-rw-r--r--doc/GetTime.31
-rw-r--r--doc/GetVersion.31
-rw-r--r--doc/Hash.31
-rw-r--r--doc/Init.31
-rw-r--r--doc/InitStubs.31
-rw-r--r--doc/InitSubSyst.34
-rw-r--r--doc/IntObj.31
-rw-r--r--doc/Limit.39
-rw-r--r--doc/LinkVar.31
-rw-r--r--doc/ListObj.31
-rw-r--r--doc/Load.31
-rw-r--r--doc/Method.31
-rw-r--r--doc/NRE.31
-rw-r--r--doc/Namespace.31
-rw-r--r--doc/Notifier.313
-rw-r--r--doc/Number.31
-rw-r--r--doc/Object.33
-rw-r--r--doc/ObjectType.31
-rw-r--r--doc/OpenFileChnl.33
-rw-r--r--doc/OpenTcp.32
-rw-r--r--doc/Panic.34
-rw-r--r--doc/ParseArgs.31
-rw-r--r--doc/ParseCmd.31
-rw-r--r--doc/PkgRequire.31
-rw-r--r--doc/Preserve.31
-rw-r--r--doc/PrintDbl.31
-rw-r--r--doc/RecEvalObj.31
-rw-r--r--doc/RecordEval.31
-rw-r--r--doc/RegConfig.33
-rw-r--r--doc/RegExp.32
-rw-r--r--doc/SaveInterpState.31
-rw-r--r--doc/SetChanErr.36
-rw-r--r--doc/SetErrno.33
-rw-r--r--doc/SetRecLmt.31
-rw-r--r--doc/SetResult.33
-rw-r--r--doc/SetVar.31
-rw-r--r--doc/Signal.32
-rw-r--r--doc/Sleep.31
-rw-r--r--doc/SourceRCFile.32
-rw-r--r--doc/SplitList.31
-rw-r--r--doc/SplitPath.31
-rw-r--r--doc/StaticLibrary.31
-rw-r--r--doc/StrMatch.31
-rw-r--r--doc/StringObj.312
-rw-r--r--doc/SubstObj.31
-rw-r--r--doc/Tcl.n1
-rw-r--r--doc/Tcl_Main.31
-rw-r--r--doc/Thread.39
-rw-r--r--doc/ToUpper.31
-rw-r--r--doc/TraceCmd.38
-rw-r--r--doc/TraceVar.313
-rw-r--r--doc/Translate.31
-rw-r--r--doc/UniCharIsAlpha.31
-rw-r--r--doc/UpVar.35
-rw-r--r--doc/Utf.31
-rw-r--r--doc/WrongNumArgs.31
-rw-r--r--doc/after.n7
-rw-r--r--doc/chan.n4
-rw-r--r--doc/clock.n11
-rw-r--r--doc/coroutine.n3
-rw-r--r--doc/dde.n11
-rw-r--r--doc/define.n1
-rw-r--r--doc/error.n1
-rw-r--r--doc/eval.n14
-rw-r--r--doc/exit.n1
-rw-r--r--doc/expr.n1
-rw-r--r--doc/fblocked.n1
-rw-r--r--doc/fcopy.n1
-rw-r--r--doc/fileevent.n1
-rw-r--r--doc/for.n1
-rw-r--r--doc/foreach.n3
-rw-r--r--doc/format.n1
-rw-r--r--doc/gets.n3
-rw-r--r--doc/http.n32
-rw-r--r--doc/idna.n1
-rw-r--r--doc/if.n1
-rw-r--r--doc/ledit.n4
-rw-r--r--doc/library.n1
-rw-r--r--doc/lpop.n8
-rw-r--r--doc/lseq.n29
-rw-r--r--doc/mathfunc.n41
-rw-r--r--doc/mathop.n31
-rw-r--r--doc/msgcat.n21
-rw-r--r--doc/open.n5
-rw-r--r--doc/packagens.n2
-rw-r--r--doc/pid.n2
-rw-r--r--doc/platform.n2
-rw-r--r--doc/platform_shell.n2
-rw-r--r--doc/puts.n1
-rw-r--r--doc/registry.n5
-rw-r--r--doc/return.n4
-rw-r--r--doc/safe.n88
-rw-r--r--doc/socket.n4
-rw-r--r--doc/tclsh.111
-rw-r--r--doc/timerate.n17
-rw-r--r--doc/upvar.n1
-rw-r--r--doc/zipfs.32
-rw-r--r--doc/zipfs.n2
146 files changed, 261 insertions, 350 deletions
diff --git a/doc/Access.3 b/doc/Access.3
index 5a29ec2..5a32e08 100644
--- a/doc/Access.3
+++ b/doc/Access.3
@@ -18,6 +18,7 @@ int
.sp
int
\fBTcl_Stat\fR(\fIpath\fR, \fIstatPtr\fR)
+.fi
.SH ARGUMENTS
.AS "struct stat" *statPtr out
.AP "const char" *path in
diff --git a/doc/AddErrInfo.3 b/doc/AddErrInfo.3
index d3289aa..21b75cb 100644
--- a/doc/AddErrInfo.3
+++ b/doc/AddErrInfo.3
@@ -13,7 +13,7 @@ Tcl_GetReturnOptions, Tcl_SetReturnOptions, Tcl_AddErrorInfo, Tcl_AppendObjToErr
.SH SYNOPSIS
.nf
\fB#include <tcl.h>\fR
-.sp
+
Tcl_Obj *
\fBTcl_GetReturnOptions\fR(\fIinterp, code\fR)
.sp
@@ -28,8 +28,9 @@ int
.sp
\fBTcl_SetObjErrorCode\fR(\fIinterp, errorObjPtr\fR)
.sp
-\fBTcl_SetErrorCode\fR(\fIinterp, element, element, ... \fB(char *)NULL\fR)
+\fBTcl_SetErrorCode\fR(\fIinterp, element, element, ... \fBNULL\fR)
.sp
+int
\fBTcl_GetErrorLine\fR(\fIinterp\fR)
.sp
\fBTcl_SetErrorLine\fR(\fIinterp, lineNum\fR)
@@ -37,8 +38,8 @@ int
const char *
\fBTcl_PosixError\fR(\fIinterp\fR)
.sp
-void
\fBTcl_LogCommandInfo\fR(\fIinterp, script, command, commandLength\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_Interp commandLength
.AP Tcl_Interp *interp in
diff --git a/doc/Alloc.3 b/doc/Alloc.3
index d1db8d4..bed6d83 100644
--- a/doc/Alloc.3
+++ b/doc/Alloc.3
@@ -16,7 +16,6 @@ Tcl_Alloc, Tcl_Free, Tcl_Realloc, Tcl_AttemptAlloc, Tcl_AttemptRealloc, Tcl_GetM
char *
\fBTcl_Alloc\fR(\fIsize\fR)
.sp
-void
\fBTcl_Free\fR(\fIptr\fR)
.sp
void *
@@ -28,8 +27,8 @@ void *
void *
\fBTcl_AttemptRealloc\fR(\fIptr, size\fR)
.sp
-void
\fBTcl_GetMemoryInfo\fR(\fIdsPtr\fR)
+.fi
.SH ARGUMENTS
.AS char *size
.AP "size_t" size in
diff --git a/doc/AllowExc.3 b/doc/AllowExc.3
index 29e31be..a5e9aa2 100644
--- a/doc/AllowExc.3
+++ b/doc/AllowExc.3
@@ -15,6 +15,7 @@ Tcl_AllowExceptions \- allow all exceptions in next script evaluation
\fB#include <tcl.h>\fR
.sp
\fBTcl_AllowExceptions\fR(\fIinterp\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_Interp *interp
.AP Tcl_Interp *interp in
diff --git a/doc/AppInit.3 b/doc/AppInit.3
index 44b2d6b..e61d188 100644
--- a/doc/AppInit.3
+++ b/doc/AppInit.3
@@ -16,6 +16,7 @@ Tcl_AppInit \- perform application-specific initialization
.sp
int
\fBTcl_AppInit\fR(\fIinterp\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_Interp *interp
.AP Tcl_Interp *interp in
diff --git a/doc/AssocData.3 b/doc/AssocData.3
index e95c26b..c1ca24c 100644
--- a/doc/AssocData.3
+++ b/doc/AssocData.3
@@ -19,6 +19,7 @@ void *
\fBTcl_SetAssocData\fR(\fIinterp, key, delProc, clientData\fR)
.sp
\fBTcl_DeleteAssocData\fR(\fIinterp, key\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_InterpDeleteProc **delProcPtr
.AP Tcl_Interp *interp in
diff --git a/doc/Async.3 b/doc/Async.3
index a8d7da0..45ae587 100644
--- a/doc/Async.3
+++ b/doc/Async.3
@@ -17,7 +17,6 @@ Tcl_AsyncCreate, Tcl_AsyncMark, Tcl_AsyncMarkFromSignal, Tcl_AsyncInvoke, Tcl_As
Tcl_AsyncHandler
\fBTcl_AsyncCreate\fR(\fIproc, clientData\fR)
.sp
-void
\fBTcl_AsyncMark\fR(\fIasync\fR)
.sp
int
@@ -26,11 +25,11 @@ int
int
\fBTcl_AsyncInvoke\fR(\fIinterp, code\fR)
.sp
-void
\fBTcl_AsyncDelete\fR(\fIasync\fR)
.sp
int
\fBTcl_AsyncReady\fR()
+.fi
.SH ARGUMENTS
.AS Tcl_AsyncHandler clientData
.AP Tcl_AsyncProc *proc in
diff --git a/doc/BackgdErr.3 b/doc/BackgdErr.3
index adbe33c..4340e4d 100644
--- a/doc/BackgdErr.3
+++ b/doc/BackgdErr.3
@@ -17,6 +17,7 @@ Tcl_BackgroundException, Tcl_BackgroundError \- report Tcl exception that occurr
\fBTcl_BackgroundException\fR(\fIinterp, code\fR)
.sp
\fBTcl_BackgroundError\fR(\fIinterp\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_Interp *interp
.AP Tcl_Interp *interp in
diff --git a/doc/BoolObj.3 b/doc/BoolObj.3
index 71580af..de2a66b 100644
--- a/doc/BoolObj.3
+++ b/doc/BoolObj.3
@@ -24,6 +24,7 @@ int
.sp
int
\fBTcl_GetBoolFromObj\fR(\fIinterp, objPtr, flags. charPtr\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_Interp intValue in/out
.AP int intValue in
diff --git a/doc/ByteArrObj.3 b/doc/ByteArrObj.3
index 3dd626a..174bbc0 100644
--- a/doc/ByteArrObj.3
+++ b/doc/ByteArrObj.3
@@ -16,7 +16,6 @@ Tcl_NewByteArrayObj, Tcl_SetByteArrayObj, Tcl_GetBytesFromObj, Tcl_GetByteArrayF
Tcl_Obj *
\fBTcl_NewByteArrayObj\fR(\fIbytes, numBytes\fR)
.sp
-void
\fBTcl_SetByteArrayObj\fR(\fIobjPtr, bytes, numBytes\fR)
.sp
.VS TIP568
@@ -29,6 +28,7 @@ unsigned char *
.sp
unsigned char *
\fBTcl_SetByteArrayLength\fR(\fIobjPtr, numBytes\fR)
+.fi
.SH ARGUMENTS
.AS "const unsigned char" *numBytesPtr in/out
.AP "const unsigned char" *bytes in
diff --git a/doc/CallDel.3 b/doc/CallDel.3
index 00763b6..7d65154 100644
--- a/doc/CallDel.3
+++ b/doc/CallDel.3
@@ -17,6 +17,7 @@ Tcl_CallWhenDeleted, Tcl_DontCallWhenDeleted \- Arrange for callback when interp
\fBTcl_CallWhenDeleted\fR(\fIinterp\fR, \fIproc\fR, \fIclientData\fR)
.sp
\fBTcl_DontCallWhenDeleted\fR(\fIinterp\fR, \fIproc\fR, \fIclientData\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_InterpDeleteProc clientData
.AP Tcl_Interp *interp in
diff --git a/doc/Cancel.3 b/doc/Cancel.3
index a8121cb..72dd939 100644
--- a/doc/Cancel.3
+++ b/doc/Cancel.3
@@ -17,6 +17,7 @@ int
.sp
int
\fBTcl_Canceled\fR(\fIinterp, flags\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_Interp *interp
.AP Tcl_Interp *interp in
diff --git a/doc/ChnlStack.3 b/doc/ChnlStack.3
index 9233a88..ba7bc48 100644
--- a/doc/ChnlStack.3
+++ b/doc/ChnlStack.3
@@ -11,7 +11,6 @@
Tcl_StackChannel, Tcl_UnstackChannel, Tcl_GetStackedChannel, Tcl_GetTopChannel \- manipulate stacked I/O channels
.SH SYNOPSIS
.nf
-.nf
\fB#include <tcl.h>\fR
.sp
Tcl_Channel
@@ -25,7 +24,7 @@ Tcl_Channel
.sp
Tcl_Channel
\fBTcl_GetTopChannel\fR(\fIchannel\fR)
-.sp
+.fi
.SH ARGUMENTS
.AS Tcl_ChannelType clientData
.AP Tcl_Interp *interp in
diff --git a/doc/Class.3 b/doc/Class.3
index 888347f..ed549c0 100644
--- a/doc/Class.3
+++ b/doc/Class.3
@@ -63,6 +63,7 @@ Tcl_Class
Tcl_Obj *
\fBTcl_GetObjectClassName\fR(\fIinterp\fR, \fIobject\fR)
.VE "TIP 605"
+.fi
.SH ARGUMENTS
.AS void *metadata in/out
.AP Tcl_Interp *interp in/out
diff --git a/doc/CmdCmplt.3 b/doc/CmdCmplt.3
index bb7532c..2c18efe 100644
--- a/doc/CmdCmplt.3
+++ b/doc/CmdCmplt.3
@@ -16,6 +16,7 @@ Tcl_CommandComplete \- Check for unmatched braces in a Tcl command
.sp
int
\fBTcl_CommandComplete\fR(\fIcmd\fR)
+.fi
.SH ARGUMENTS
.AS "const char" *cmd
.AP "const char" *cmd in
diff --git a/doc/Concat.3 b/doc/Concat.3
index af30cd1..5357dae 100644
--- a/doc/Concat.3
+++ b/doc/Concat.3
@@ -16,6 +16,7 @@ Tcl_Concat \- concatenate a collection of strings
.sp
const char *
\fBTcl_Concat\fR(\fIargc, argv\fR)
+.fi
.SH ARGUMENTS
.AS "const char *const" argv[]
.AP Tcl_Size argc in
diff --git a/doc/CrtAlias.3 b/doc/CrtAlias.3
index eec8ed6..fba6253 100644
--- a/doc/CrtAlias.3
+++ b/doc/CrtAlias.3
@@ -49,6 +49,7 @@ int
.sp
int
\fBTcl_HideCommand\fR(\fIinterp, cmdName, hiddenCmdName\fR)
+.fi
.SH ARGUMENTS
.AS "const char *const" **targetInterpPtr out
.AP Tcl_Interp *interp in
diff --git a/doc/CrtChannel.3 b/doc/CrtChannel.3
index 6a62c0f..cbeb9da 100644
--- a/doc/CrtChannel.3
+++ b/doc/CrtChannel.3
@@ -59,13 +59,10 @@ int
int
\fBTcl_IsChannelExisting\fR(\fIchannelName\fR)
.sp
-void
\fBTcl_CutChannel\fR(\fIchannel\fR)
.sp
-void
\fBTcl_SpliceChannel\fR(\fIchannel\fR)
.sp
-void
\fBTcl_ClearChannelHandlers\fR(\fIchannel\fR)
.sp
int
@@ -115,7 +112,7 @@ Tcl_DriverFlushProc *
.sp
Tcl_DriverHandlerProc *
\fBTcl_ChannelHandlerProc\fR(\fItypePtr\fR)
-.sp
+.fi
.SH ARGUMENTS
.AS "const Tcl_ChannelType" *channelName
.AP "const Tcl_ChannelType" *typePtr in
diff --git a/doc/CrtChnlHdlr.3 b/doc/CrtChnlHdlr.3
index ee8b411..5b0e724 100644
--- a/doc/CrtChnlHdlr.3
+++ b/doc/CrtChnlHdlr.3
@@ -12,15 +12,12 @@
Tcl_CreateChannelHandler, Tcl_DeleteChannelHandler \- call a procedure when a channel becomes readable or writable
.SH SYNOPSIS
.nf
-.nf
\fB#include <tcl.h>\fR
.sp
-void
\fBTcl_CreateChannelHandler\fR(\fIchannel, mask, proc, clientData\fR)
.sp
-void
\fBTcl_DeleteChannelHandler\fR(\fIchannel, proc, clientData\fR)
-.sp
+.fi
.SH ARGUMENTS
.AS Tcl_ChannelProc clientData
.AP Tcl_Channel channel in
diff --git a/doc/CrtCloseHdlr.3 b/doc/CrtCloseHdlr.3
index 1046ea3..cd59e8a 100644
--- a/doc/CrtCloseHdlr.3
+++ b/doc/CrtCloseHdlr.3
@@ -14,12 +14,10 @@ Tcl_CreateCloseHandler, Tcl_DeleteCloseHandler \- arrange for callbacks when cha
.nf
\fB#include <tcl.h>\fR
.sp
-void
\fBTcl_CreateCloseHandler\fR(\fIchannel, proc, clientData\fR)
.sp
-void
\fBTcl_DeleteCloseHandler\fR(\fIchannel, proc, clientData\fR)
-.sp
+.fi
.SH ARGUMENTS
.AS Tcl_CloseProc clientData
.AP Tcl_Channel channel in
diff --git a/doc/CrtCommand.3 b/doc/CrtCommand.3
index 50baa6f..f88e4f0 100644
--- a/doc/CrtCommand.3
+++ b/doc/CrtCommand.3
@@ -16,6 +16,7 @@ Tcl_CreateCommand \- implement new commands in C
.sp
Tcl_Command
\fBTcl_CreateCommand\fR(\fIinterp, cmdName, proc, clientData, deleteProc\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_CmdDeleteProc *deleteProc
.AP Tcl_Interp *interp in
diff --git a/doc/CrtFileHdlr.3 b/doc/CrtFileHdlr.3
index 0dfb429..65a6794 100644
--- a/doc/CrtFileHdlr.3
+++ b/doc/CrtFileHdlr.3
@@ -17,6 +17,7 @@ Tcl_CreateFileHandler, Tcl_DeleteFileHandler \- associate procedure callbacks wi
\fBTcl_CreateFileHandler\fR(\fIfd, mask, proc, clientData\fR)
.sp
\fBTcl_DeleteFileHandler\fR(\fIfd\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_FileProc clientData
.AP int fd in
diff --git a/doc/CrtInterp.3 b/doc/CrtInterp.3
index aacb868..159fb12 100644
--- a/doc/CrtInterp.3
+++ b/doc/CrtInterp.3
@@ -24,6 +24,7 @@ int
.sp
int
\fBTcl_InterpActive\fR(\fIinterp\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_Interp *interp
.AP Tcl_Interp *interp in
diff --git a/doc/CrtObjCmd.3 b/doc/CrtObjCmd.3
index 4bdde44..57eaf8e 100644
--- a/doc/CrtObjCmd.3
+++ b/doc/CrtObjCmd.3
@@ -40,12 +40,11 @@ int
const char *
\fBTcl_GetCommandName\fR(\fIinterp, token\fR)
.sp
-void
\fBTcl_GetCommandFullName\fR(\fIinterp, token, objPtr\fR)
.sp
Tcl_Command
\fBTcl_GetCommandFromObj\fR(\fIinterp, objPtr\fR)
-.sp
+.fi
.SH ARGUMENTS
.AS Tcl_CmdDeleteProc *deleteProc in/out
.AP Tcl_Interp *interp in
diff --git a/doc/CrtTimerHdlr.3 b/doc/CrtTimerHdlr.3
index 1190417..eeeea77 100644
--- a/doc/CrtTimerHdlr.3
+++ b/doc/CrtTimerHdlr.3
@@ -18,6 +18,7 @@ Tcl_TimerToken
\fBTcl_CreateTimerHandler\fR(\fImilliseconds, proc, clientData\fR)
.sp
\fBTcl_DeleteTimerHandler\fR(\fItoken\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_TimerToken milliseconds
.AP int milliseconds in
diff --git a/doc/CrtTrace.3 b/doc/CrtTrace.3
index 9f74cbf..8e4b92f 100644
--- a/doc/CrtTrace.3
+++ b/doc/CrtTrace.3
@@ -25,6 +25,7 @@ Tcl_Trace
\fBTcl_CreateObjTrace2\fR(\fIinterp, level, flags, objProc2, clientData, deleteProc\fR)
.sp
\fBTcl_DeleteTrace\fR(\fIinterp, trace\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_CmdObjTraceDeleteProc *deleteProc
.AP Tcl_Interp *interp in
diff --git a/doc/DString.3 b/doc/DString.3
index 3d6f746..7265898 100644
--- a/doc/DString.3
+++ b/doc/DString.3
@@ -42,6 +42,7 @@ char *
.sp
Tcl_Obj *
\fBTcl_DStringToObj\fR(\fIdsPtr\fR)
+.fi
.sp
.SH ARGUMENTS
.AS Tcl_DString newLength in/out
diff --git a/doc/DetachPids.3 b/doc/DetachPids.3
index bff345a..4d87529 100644
--- a/doc/DetachPids.3
+++ b/doc/DetachPids.3
@@ -20,6 +20,7 @@ Tcl_DetachPids, Tcl_ReapDetachedProcs, Tcl_WaitPid \- manage child processes in
.sp
Tcl_Pid
\fBTcl_WaitPid\fR(\fIpid, statusPtr, options\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_Pid *statusPtr out
.AP Tcl_Size numPids in
diff --git a/doc/DictObj.3 b/doc/DictObj.3
index 4a25d84..ec36d6a 100644
--- a/doc/DictObj.3
+++ b/doc/DictObj.3
@@ -33,10 +33,8 @@ int
\fBTcl_DictObjFirst\fR(\fIinterp, dictPtr, searchPtr,
keyPtrPtr, valuePtrPtr, donePtr\fR)
.sp
-void
\fBTcl_DictObjNext\fR(\fIsearchPtr, keyPtrPtr, valuePtrPtr, donePtr\fR)
.sp
-void
\fBTcl_DictObjDone\fR(\fIsearchPtr\fR)
.sp
int
@@ -44,6 +42,7 @@ int
.sp
int
\fBTcl_DictObjRemoveKeyList\fR(\fIinterp, dictPtr, keyc, keyv\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_DictSearch "**valuePtrPtr" in/out
.AP Tcl_Interp *interp in
diff --git a/doc/DoOneEvent.3 b/doc/DoOneEvent.3
index d48afd0..e515328 100644
--- a/doc/DoOneEvent.3
+++ b/doc/DoOneEvent.3
@@ -16,6 +16,7 @@ Tcl_DoOneEvent \- wait for events and invoke event handlers
.sp
int
\fBTcl_DoOneEvent\fR(\fIflags\fR)
+.fi
.SH ARGUMENTS
.AS int flags
.AP int flags in
diff --git a/doc/DoWhenIdle.3 b/doc/DoWhenIdle.3
index 1a252cc..aed3a4a 100644
--- a/doc/DoWhenIdle.3
+++ b/doc/DoWhenIdle.3
@@ -17,6 +17,7 @@ Tcl_DoWhenIdle, Tcl_CancelIdleCall \- invoke a procedure when there are no pendi
\fBTcl_DoWhenIdle\fR(\fIproc, clientData\fR)
.sp
\fBTcl_CancelIdleCall\fR(\fIproc, clientData\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_IdleProc clientData
.AP Tcl_IdleProc *proc in
diff --git a/doc/DoubleObj.3 b/doc/DoubleObj.3
index c70f5d1..c4db52c 100644
--- a/doc/DoubleObj.3
+++ b/doc/DoubleObj.3
@@ -20,6 +20,7 @@ Tcl_Obj *
.sp
int
\fBTcl_GetDoubleFromObj\fR(\fIinterp, objPtr, doublePtr\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_Interp doubleValue in/out
.AP double doubleValue in
diff --git a/doc/DumpActiveMemory.3 b/doc/DumpActiveMemory.3
index 0e162bb..7c8dd7e 100644
--- a/doc/DumpActiveMemory.3
+++ b/doc/DumpActiveMemory.3
@@ -15,12 +15,10 @@ Tcl_DumpActiveMemory, Tcl_InitMemory, Tcl_ValidateAllMemory \- Validated memory
int
\fBTcl_DumpActiveMemory\fR(\fIfileName\fR)
.sp
-void
\fBTcl_InitMemory\fR(\fIinterp\fR)
.sp
-void
\fBTcl_ValidateAllMemory\fR(\fIfileName, line\fR)
-
+.fi
.SH ARGUMENTS
.AS Tcl_Interp *fileName
.AP Tcl_Interp *interp in
diff --git a/doc/Encoding.3 b/doc/Encoding.3
index 68903b2..2759ec7 100644
--- a/doc/Encoding.3
+++ b/doc/Encoding.3
@@ -16,7 +16,6 @@ Tcl_GetEncoding, Tcl_FreeEncoding, Tcl_GetEncodingFromObj, Tcl_ExternalToUtfDStr
Tcl_Encoding
\fBTcl_GetEncoding\fR(\fIinterp, name\fR)
.sp
-void
\fBTcl_FreeEncoding\fR(\fIencoding\fR)
.sp
int
@@ -54,7 +53,6 @@ int
const char *
\fBTcl_GetEncodingNameFromEnvironment\fR(\fIbufPtr\fR)
.sp
-void
\fBTcl_GetEncodingNames\fR(\fIinterp\fR)
.sp
Tcl_Encoding
@@ -65,6 +63,7 @@ Tcl_Obj *
.sp
int
\fBTcl_SetEncodingSearchPath\fR(\fIsearchPath\fR)
+.fi
.SH ARGUMENTS
.AS "const Tcl_EncodingType" *dstWrotePtr in/out
.AP Tcl_Interp *interp in
diff --git a/doc/Ensemble.3 b/doc/Ensemble.3
index 71a53ac..0dfaa01 100644
--- a/doc/Ensemble.3
+++ b/doc/Ensemble.3
@@ -56,6 +56,7 @@ int
.sp
int
\fBTcl_GetEnsembleNamespace\fR(\fIinterp, token, namespacePtrPtr\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_Namespace **namespacePtrPtr in/out
.AP Tcl_Interp *interp in/out
diff --git a/doc/Environment.3 b/doc/Environment.3
index 7a5e396..da1d4f4 100644
--- a/doc/Environment.3
+++ b/doc/Environment.3
@@ -15,6 +15,7 @@ Tcl_PutEnv \- procedures to manipulate the environment
.sp
int
\fBTcl_PutEnv\fR(\fIassignment\fR)
+.fi
.SH ARGUMENTS
.AS "const char" *assignment
.AP "const char" *assignment in
diff --git a/doc/Eval.3 b/doc/Eval.3
index f9e58d1..fb0a420 100644
--- a/doc/Eval.3
+++ b/doc/Eval.3
@@ -37,7 +37,8 @@ int
\fBTcl_GlobalEvalObj\fR(\fIinterp, objPtr\fR)
.sp
int
-\fBTcl_VarEval\fR(\fIinterp, part, part, ... \fB(char *)NULL\fR)
+\fBTcl_VarEval\fR(\fIinterp, part, part, ... \fBNULL\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_Interp **termPtr
.AP Tcl_Interp *interp in
diff --git a/doc/Exit.3 b/doc/Exit.3
index 874ea90..a1d0694 100644
--- a/doc/Exit.3
+++ b/doc/Exit.3
@@ -31,6 +31,7 @@ Tcl_Exit, Tcl_Finalize, Tcl_CreateExitHandler, Tcl_DeleteExitHandler, Tcl_ExitTh
.sp
Tcl_ExitProc *
\fBTcl_SetExitProc\fR(\fIproc\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_ExitProc clientData
.AP int status in
diff --git a/doc/ExprLong.3 b/doc/ExprLong.3
index 0d369ce..8d5e06d 100644
--- a/doc/ExprLong.3
+++ b/doc/ExprLong.3
@@ -25,6 +25,7 @@ int
.sp
int
\fBTcl_ExprString\fR(\fIinterp, expr\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_Interp *booleanPtr out
.AP Tcl_Interp *interp in
diff --git a/doc/ExprLongObj.3 b/doc/ExprLongObj.3
index 59413e1..09f83dd 100644
--- a/doc/ExprLongObj.3
+++ b/doc/ExprLongObj.3
@@ -24,6 +24,7 @@ int
.sp
int
\fBTcl_ExprObj\fR(\fIinterp, objPtr, resultPtrPtr\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_Interp **resultPtrPtr out
.AP Tcl_Interp *interp in
diff --git a/doc/FileSystem.3 b/doc/FileSystem.3
index 2076c96..255606c 100644
--- a/doc/FileSystem.3
+++ b/doc/FileSystem.3
@@ -23,7 +23,6 @@ int
void *
\fBTcl_FSData\fR(\fIfsPtr\fR)
.sp
-void
\fBTcl_FSMountsChanged\fR(\fIfsPtr\fR)
.sp
const Tcl_Filesystem *
@@ -182,6 +181,7 @@ unsigned long long
.sp
int
\fBTcl_GetUserIdFromStat\fR(\fIstatPtr\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_GlobTypeData **srcPathPtr out
.AP "const Tcl_Filesystem" *fsPtr in
diff --git a/doc/FindExec.3 b/doc/FindExec.3
index eed296c..756d8cb 100644
--- a/doc/FindExec.3
+++ b/doc/FindExec.3
@@ -18,6 +18,7 @@ const char *
.sp
const char *
\fBTcl_GetNameOfExecutable\fR()
+.fi
.SH ARGUMENTS
.AS char *argv0
.AP char *argv0 in
diff --git a/doc/GetCwd.3 b/doc/GetCwd.3
index b19f587..26bc691 100644
--- a/doc/GetCwd.3
+++ b/doc/GetCwd.3
@@ -18,6 +18,7 @@ char *
.sp
int
\fBTcl_Chdir\fR(\fIdirName\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_DString *bufferPtr in/out
.AP Tcl_Interp *interp in
diff --git a/doc/GetHostName.3 b/doc/GetHostName.3
index 8e43f8e..cdef270 100644
--- a/doc/GetHostName.3
+++ b/doc/GetHostName.3
@@ -13,6 +13,7 @@ Tcl_GetHostName \- get the name of the local host
.sp
const char *
\fBTcl_GetHostName\fR()
+.fi
.BE
.SH DESCRIPTION
diff --git a/doc/GetIndex.3 b/doc/GetIndex.3
index 176b0b2..4dcee45 100644
--- a/doc/GetIndex.3
+++ b/doc/GetIndex.3
@@ -20,6 +20,7 @@ indexPtr\fR)
int
\fBTcl_GetIndexFromObjStruct\fR(\fIinterp, objPtr, structTablePtr, offset,
msg, flags, indexPtr\fR)
+.fi
.SH ARGUMENTS
.AS "const char" *structTablePtr in/out
.AP Tcl_Interp *interp in
diff --git a/doc/GetInt.3 b/doc/GetInt.3
index 1e8cd61..a0c1d1b 100644
--- a/doc/GetInt.3
+++ b/doc/GetInt.3
@@ -25,6 +25,7 @@ int
.sp
int
\fBTcl_GetBool\fR(\fIinterp, src, flags, charPtr\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_Interp *doublePtr out
.AP Tcl_Interp *interp in
diff --git a/doc/GetOpnFl.3 b/doc/GetOpnFl.3
index 5ac5391..f3a3143 100644
--- a/doc/GetOpnFl.3
+++ b/doc/GetOpnFl.3
@@ -15,7 +15,7 @@ Tcl_GetOpenFile \- Return a FILE* for a channel registered in the given interpre
.sp
int
\fBTcl_GetOpenFile\fR(\fIinterp, chanID, write, checkUsage, filePtr\fR)
-.sp
+.fi
.SH ARGUMENTS
.AS Tcl_Interp checkUsage out
.AP Tcl_Interp *interp in
diff --git a/doc/GetStdChan.3 b/doc/GetStdChan.3
index 3472fee..91217e4 100644
--- a/doc/GetStdChan.3
+++ b/doc/GetStdChan.3
@@ -18,7 +18,7 @@ Tcl_Channel
\fBTcl_GetStdChannel\fR(\fItype\fR)
.sp
\fBTcl_SetStdChannel\fR(\fIchannel, type\fR)
-.sp
+.fi
.SH ARGUMENTS
.AS Tcl_Channel channel
.AP int type in
diff --git a/doc/GetTime.3 b/doc/GetTime.3
index c2e6116..9f898e4 100644
--- a/doc/GetTime.3
+++ b/doc/GetTime.3
@@ -18,6 +18,7 @@ Tcl_GetTime, Tcl_SetTimeProc, Tcl_QueryTimeProc \- get date and time
\fBTcl_SetTimeProc\fR(\fIgetProc, scaleProc, clientData\fR)
.sp
\fBTcl_QueryTimeProc\fR(\fIgetProcPtr, scaleProcPtr, clientDataPtr\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_GetTimeProc *getProc in
.AP Tcl_Time *timePtr out
diff --git a/doc/GetVersion.3 b/doc/GetVersion.3
index b973044..5a85a2a 100644
--- a/doc/GetVersion.3
+++ b/doc/GetVersion.3
@@ -14,6 +14,7 @@ Tcl_GetVersion \- get the version of the library at runtime
\fB#include <tcl.h>\fR
.sp
\fBTcl_GetVersion\fR(\fImajor, minor, patchLevel, type\fR)
+.fi
.SH ARGUMENTS
.AP int *major out
Major version number of the Tcl library.
diff --git a/doc/Hash.3 b/doc/Hash.3
index 6481f64..dced52f 100644
--- a/doc/Hash.3
+++ b/doc/Hash.3
@@ -46,6 +46,7 @@ Tcl_HashEntry *
.sp
char *
\fBTcl_HashStats\fR(\fItablePtr\fR)
+.fi
.SH ARGUMENTS
.AS "const Tcl_HashKeyType" *searchPtr out
.AP Tcl_HashTable *tablePtr in
diff --git a/doc/Init.3 b/doc/Init.3
index e109c82..575a39d 100644
--- a/doc/Init.3
+++ b/doc/Init.3
@@ -16,6 +16,7 @@ int
.sp
const char *
\fBTcl_SetPreInitScript\fR(\fIscriptPtr\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_Interp *interp
.AP Tcl_Interp *interp in
diff --git a/doc/InitStubs.3 b/doc/InitStubs.3
index 6f0a570..80a21de 100644
--- a/doc/InitStubs.3
+++ b/doc/InitStubs.3
@@ -15,6 +15,7 @@ Tcl_InitStubs \- initialize the Tcl stubs mechanism
.sp
const char *
\fBTcl_InitStubs\fR(\fIinterp, version, exact\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_Interp *interp
.AP Tcl_Interp *interp in
diff --git a/doc/InitSubSyst.3 b/doc/InitSubSyst.3
index b7962c6..4647567 100644
--- a/doc/InitSubSyst.3
+++ b/doc/InitSubSyst.3
@@ -14,7 +14,9 @@ Tcl_InitSubsystems \- initialize the Tcl library.
\fB#include <tcl.h>\fR
.sp
const char *
-\fBTcl_InitSubsystems\fR(\fIvoid\fR)
+\fBTcl_InitSubsystems\fR()
+.fi
+.BE
.SH DESCRIPTION
.PP
The \fBTcl_InitSubsystems\fR procedure initializes the Tcl
diff --git a/doc/IntObj.3 b/doc/IntObj.3
index f3683c2..4cd13e6 100644
--- a/doc/IntObj.3
+++ b/doc/IntObj.3
@@ -62,6 +62,7 @@ int
.sp
int
\fBTcl_InitBignumFromDouble\fR(\fIinterp, doubleValue, bigValue\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_WideInt doubleValue in/out
.AP Tcl_Size endValue in
diff --git a/doc/Limit.3 b/doc/Limit.3
index 60817e9..5eb3ac8 100644
--- a/doc/Limit.3
+++ b/doc/Limit.3
@@ -28,35 +28,28 @@ int
int
\fBTcl_LimitTypeEnabled\fR(\fIinterp, type\fR)
.sp
-void
\fBTcl_LimitTypeSet\fR(\fIinterp, type\fR)
.sp
-void
\fBTcl_LimitTypeReset\fR(\fIinterp, type\fR)
.sp
int
\fBTcl_LimitGetCommands\fR(\fIinterp\fR)
.sp
-void
\fBTcl_LimitSetCommands\fR(\fIinterp, commandLimit\fR)
.sp
-void
\fBTcl_LimitGetTime\fR(\fIinterp, timeLimitPtr\fR)
.sp
-void
\fBTcl_LimitSetTime\fR(\fIinterp, timeLimitPtr\fR)
.sp
int
\fBTcl_LimitGetGranularity\fR(\fIinterp, type\fR)
.sp
-void
\fBTcl_LimitSetGranularity\fR(\fIinterp, type, granularity\fR)
.sp
-void
\fBTcl_LimitAddHandler\fR(\fIinterp, type, handlerProc, clientData, deleteProc\fR)
.sp
-void
\fBTcl_LimitRemoveHandler\fR(\fIinterp, type, handlerProc, clientData\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_LimitHandlerDeleteProc commandLimit in/out
.AP Tcl_Interp *interp in
diff --git a/doc/LinkVar.3 b/doc/LinkVar.3
index 42211c5..ffedb9d 100644
--- a/doc/LinkVar.3
+++ b/doc/LinkVar.3
@@ -25,6 +25,7 @@ int
\fBTcl_UnlinkVar\fR(\fIinterp, varName\fR)
.sp
\fBTcl_UpdateLinkedVar\fR(\fIinterp, varName\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_Interp varName in
.AP Tcl_Interp *interp in
diff --git a/doc/ListObj.3 b/doc/ListObj.3
index 74cbe9a..deae5a5 100644
--- a/doc/ListObj.3
+++ b/doc/ListObj.3
@@ -35,6 +35,7 @@ int
.sp
int
\fBTcl_ListObjReplace\fR(\fIinterp, listPtr, first, count, objc, objv\fR)
+.fi
.SH ARGUMENTS
.AS "Tcl_Obj *const" *elemListPtr in/out
.AP Tcl_Interp *interp in
diff --git a/doc/Load.3 b/doc/Load.3
index 4533510..01af42b 100644
--- a/doc/Load.3
+++ b/doc/Load.3
@@ -19,6 +19,7 @@ int
.sp
void *
\fBTcl_FindSymbol\fR(\fIinterp, loadHandle, symbol\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_LoadHandle loadHandle in
.AP Tcl_Interp *interp in
diff --git a/doc/Method.3 b/doc/Method.3
index 377fc5a..ed2211b 100644
--- a/doc/Method.3
+++ b/doc/Method.3
@@ -60,6 +60,7 @@ Tcl_Object
.sp
Tcl_Size
\fBTcl_ObjectContextSkippedArgs\fR(\fIcontext\fR)
+.fi
.SH ARGUMENTS
.AS void *clientData in
.AP Tcl_Interp *interp in/out
diff --git a/doc/NRE.3 b/doc/NRE.3
index 62184f9..bf757c3 100644
--- a/doc/NRE.3
+++ b/doc/NRE.3
@@ -40,7 +40,6 @@ int
int
\fBTcl_NRExprObj\fR(\fIinterp, objPtr, resultPtr\fR)
.sp
-void
\fBTcl_NRAddCallback\fR(\fIinterp, postProcPtr, data0, data1, data2, data3\fR)
.fi
.SH ARGUMENTS
diff --git a/doc/Namespace.3 b/doc/Namespace.3
index d5f7764..399bd7d 100644
--- a/doc/Namespace.3
+++ b/doc/Namespace.3
@@ -50,6 +50,7 @@ Tcl_Obj *
.sp
int
\fBTcl_SetNamespaceUnknownHandler\fR(\fIinterp, nsPtr, handlerPtr\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_NamespaceDeleteProc allowOverwrite in/out
.AP Tcl_Interp *interp in/out
diff --git a/doc/Notifier.3 b/doc/Notifier.3
index 483fb2c..8041dd8 100644
--- a/doc/Notifier.3
+++ b/doc/Notifier.3
@@ -14,43 +14,33 @@ Tcl_CreateEventSource, Tcl_DeleteEventSource, Tcl_SetMaxBlockTime, Tcl_QueueEven
.nf
\fB#include <tcl.h>\fR
.sp
-void
\fBTcl_CreateEventSource\fR(\fIsetupProc, checkProc, clientData\fR)
.sp
-void
\fBTcl_DeleteEventSource\fR(\fIsetupProc, checkProc, clientData\fR)
.sp
-void
\fBTcl_SetMaxBlockTime\fR(\fItimePtr\fR)
.sp
-void
\fBTcl_QueueEvent\fR(\fIevPtr, position\fR)
.sp
-void
\fBTcl_ThreadQueueEvent\fR(\fIthreadId, evPtr, position\fR)
.sp
-void
\fBTcl_ThreadAlert\fR(\fIthreadId\fR)
.sp
Tcl_ThreadId
\fBTcl_GetCurrentThread\fR()
.sp
-void
\fBTcl_DeleteEvents\fR(\fIdeleteProc, clientData\fR)
.sp
void *
\fBTcl_InitNotifier\fR()
.sp
-void
\fBTcl_FinalizeNotifier\fR(\fIclientData\fR)
.sp
int
\fBTcl_WaitForEvent\fR(\fItimePtr\fR)
.sp
-void
\fBTcl_AlertNotifier\fR(\fIclientData\fR)
.sp
-void
\fBTcl_SetTimer\fR(\fItimePtr\fR)
.sp
int
@@ -65,11 +55,10 @@ int
int
\fBTcl_SetServiceMode\fR(\fImode\fR)
.sp
-void
\fBTcl_ServiceModeHook\fR(\fImode\fR)
.sp
-void
\fBTcl_SetNotifier\fR(\fInotifierProcPtr\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_EventDeleteProc *notifierProcPtr
.AP Tcl_EventSetupProc *setupProc in
diff --git a/doc/Number.3 b/doc/Number.3
index 1bf018a..99efab7 100644
--- a/doc/Number.3
+++ b/doc/Number.3
@@ -20,6 +20,7 @@ int
.sp
int
\fBTcl_GetNumberFromObj\fR(\fIinterp, objPtr, clientDataPtr, typePtr\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_Interp clientDataPtr out
.AP Tcl_Interp *interp out
diff --git a/doc/Object.3 b/doc/Object.3
index 7c90f79..d14124f 100644
--- a/doc/Object.3
+++ b/doc/Object.3
@@ -28,7 +28,8 @@ Tcl_Obj *
int
\fBTcl_IsShared\fR(\fIobjPtr\fR)
.sp
-\fBTcl_InvalidateStringRep\fR(\fIobjPtr\fR)
+\fBTcl_InvalidateStringRep\fR(\fIobjPtr\fR)3
+.fi
.SH ARGUMENTS
.AS Tcl_Obj *objPtr
.AP Tcl_Obj *objPtr in
diff --git a/doc/ObjectType.3 b/doc/ObjectType.3
index 3739c33..3b4782d 100644
--- a/doc/ObjectType.3
+++ b/doc/ObjectType.3
@@ -23,6 +23,7 @@ int
.sp
int
\fBTcl_ConvertToType\fR(\fIinterp, objPtr, typePtr\fR)
+.fi
.SH ARGUMENTS
.AS "const char" *typeName
.AP "const Tcl_ObjType" *typePtr in
diff --git a/doc/OpenFileChnl.3 b/doc/OpenFileChnl.3
index 3260198..db25ce2 100644
--- a/doc/OpenFileChnl.3
+++ b/doc/OpenFileChnl.3
@@ -32,7 +32,6 @@ int
int
\fBTcl_GetChannelNamesEx\fR(\fIinterp, pattern\fR)
.sp
-void
\fBTcl_RegisterChannel\fR(\fIinterp, channel\fR)
.sp
int
@@ -106,7 +105,7 @@ int
.sp
int
\fBTcl_SetChannelOption\fR(\fIinterp, channel, optionName, newValue\fR)
-.sp
+.fi
.SH ARGUMENTS
.AS Tcl_DString *channelName in/out
.AP Tcl_Interp *interp in
diff --git a/doc/OpenTcp.3 b/doc/OpenTcp.3
index 602f081..3e62363 100644
--- a/doc/OpenTcp.3
+++ b/doc/OpenTcp.3
@@ -25,7 +25,7 @@ Tcl_Channel
.sp
Tcl_Channel
\fBTcl_OpenTcpServerEx\fR(\fIinterp, service, myaddr, flags, backlog, proc, clientData\fR)
-.sp
+.fi
.SH ARGUMENTS
.AS Tcl_TcpAcceptProc clientData
.AP Tcl_Interp *interp in
diff --git a/doc/Panic.3 b/doc/Panic.3
index 2f5d19c..25e38c2 100644
--- a/doc/Panic.3
+++ b/doc/Panic.3
@@ -12,15 +12,13 @@ Tcl_Panic, Tcl_SetPanicProc, Tcl_ConsolePanic \- report fatal error and abort
.nf
\fB#include <tcl.h>\fR
.sp
-void
\fBTcl_Panic\fR(\fIformat\fR, \fIarg\fR, \fIarg\fR, \fI...\fR)
.sp
const char *
\fBTcl_SetPanicProc\fR(\fIpanicProc\fR)
.sp
-void
\fBTcl_ConsolePanic\fR(\fIformat\fR, \fIarg\fR, \fIarg\fR, \fI...\fR)
-.sp
+.fi
.SH ARGUMENTS
.AS Tcl_PanicProc *panicProc
.AP "const char*" format in
diff --git a/doc/ParseArgs.3 b/doc/ParseArgs.3
index 4fdf0b0..7c7b08e 100644
--- a/doc/ParseArgs.3
+++ b/doc/ParseArgs.3
@@ -15,6 +15,7 @@ Tcl_ParseArgsObjv \- parse arguments according to a tabular description
.sp
int
\fBTcl_ParseArgsObjv\fR(\fIinterp, argTable, objcPtr, objv, remObjv\fR)
+.fi
.SH ARGUMENTS
.AS "const Tcl_ArgvInfo" ***remObjv in/out
.AP Tcl_Interp *interp out
diff --git a/doc/ParseCmd.3 b/doc/ParseCmd.3
index 0919299..0e2c3b4 100644
--- a/doc/ParseCmd.3
+++ b/doc/ParseCmd.3
@@ -35,6 +35,7 @@ const char *
.sp
int
\fBTcl_EvalTokensStandard\fR(\fIinterp, tokenPtr, numTokens\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_Interp *usedParsePtr out
.AP Tcl_Interp *interp out
diff --git a/doc/PkgRequire.3 b/doc/PkgRequire.3
index 3bfc684..c19065b 100644
--- a/doc/PkgRequire.3
+++ b/doc/PkgRequire.3
@@ -33,6 +33,7 @@ int
.sp
int
\fBTcl_PkgProvideEx\fR(\fIinterp, name, version, clientData\fR)
+.fi
.SH ARGUMENTS
.AS void *clientDataPtr out
.AP Tcl_Interp *interp in
diff --git a/doc/Preserve.3 b/doc/Preserve.3
index eb50a5f..e01cf80 100644
--- a/doc/Preserve.3
+++ b/doc/Preserve.3
@@ -19,6 +19,7 @@ Tcl_Preserve, Tcl_Release, Tcl_EventuallyFree \- avoid freeing storage while it
\fBTcl_Release\fR(\fIclientData\fR)
.sp
\fBTcl_EventuallyFree\fR(\fIclientData, freeProc\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_FreeProc clientData
.AP void *clientData in
diff --git a/doc/PrintDbl.3 b/doc/PrintDbl.3
index 42b258c..79398ab 100644
--- a/doc/PrintDbl.3
+++ b/doc/PrintDbl.3
@@ -15,6 +15,7 @@ Tcl_PrintDouble \- Convert floating value to string
\fB#include <tcl.h>\fR
.sp
\fBTcl_PrintDouble\fR(\fIinterp, value, dst\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_Interp *interp out
.AP Tcl_Interp *interp in
diff --git a/doc/RecEvalObj.3 b/doc/RecEvalObj.3
index 0835904..7bfee95 100644
--- a/doc/RecEvalObj.3
+++ b/doc/RecEvalObj.3
@@ -15,6 +15,7 @@ Tcl_RecordAndEvalObj \- save command on history list before evaluating
.sp
int
\fBTcl_RecordAndEvalObj\fR(\fIinterp, cmdPtr, flags\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_Interp *interp
.AP Tcl_Interp *interp in
diff --git a/doc/RecordEval.3 b/doc/RecordEval.3
index 36ef6b9..a5887f0 100644
--- a/doc/RecordEval.3
+++ b/doc/RecordEval.3
@@ -16,6 +16,7 @@ Tcl_RecordAndEval \- save command on history list before evaluating
.sp
int
\fBTcl_RecordAndEval\fR(\fIinterp, cmd, flags\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_Interp *interp
.AP Tcl_Interp *interp in
diff --git a/doc/RegConfig.3 b/doc/RegConfig.3
index ef46ba5..09ae116 100644
--- a/doc/RegConfig.3
+++ b/doc/RegConfig.3
@@ -14,9 +14,8 @@ Tcl_RegisterConfig \- procedures to register embedded configuration information
.nf
\fB#include <tcl.h>\fR
.sp
-void
\fBTcl_RegisterConfig\fR(\fIinterp, pkgName, configuration, valEncoding\fR)
-.sp
+.fi
.SH ARGUMENTS
.AS Tcl_Interp *configuration
.AP Tcl_Interp *interp in
diff --git a/doc/RegExp.3 b/doc/RegExp.3
index f173b02..35b14a2 100644
--- a/doc/RegExp.3
+++ b/doc/RegExp.3
@@ -27,7 +27,6 @@ Tcl_RegExp
int
\fBTcl_RegExpExec\fR(\fIinterp\fR, \fIregexp\fR, \fItext\fR, \fIstart\fR)
.sp
-void
\fBTcl_RegExpRange\fR(\fIregexp\fR, \fIindex\fR, \fIstartPtr\fR, \fIendPtr\fR)
.sp
Tcl_RegExp
@@ -36,7 +35,6 @@ Tcl_RegExp
int
\fBTcl_RegExpExecObj\fR(\fIinterp\fR, \fIregexp\fR, \fItextObj\fR, \fIoffset\fR, \fInmatches\fR, \fIeflags\fR)
.sp
-void
\fBTcl_RegExpGetInfo\fR(\fIregexp\fR, \fIinfoPtr\fR)
.fi
.SH ARGUMENTS
diff --git a/doc/SaveInterpState.3 b/doc/SaveInterpState.3
index da70c4d..96fecdb 100644
--- a/doc/SaveInterpState.3
+++ b/doc/SaveInterpState.3
@@ -23,6 +23,7 @@ int
\fBTcl_RestoreInterpState\fR(\fIinterp, state\fR)
.sp
\fBTcl_DiscardInterpState\fR(\fIstate\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_InterpState savedPtr
.AP Tcl_Interp *interp in
diff --git a/doc/SetChanErr.3 b/doc/SetChanErr.3
index 72157c6..e7593b7 100644
--- a/doc/SetChanErr.3
+++ b/doc/SetChanErr.3
@@ -14,18 +14,14 @@ Tcl_SetChannelError, Tcl_SetChannelErrorInterp, Tcl_GetChannelError, Tcl_GetChan
.nf
\fB#include <tcl.h>\fR
.sp
-void
\fBTcl_SetChannelError\fR(\fIchan, msg\fR)
.sp
-void
\fBTcl_SetChannelErrorInterp\fR(\fIinterp, msg\fR)
.sp
-void
\fBTcl_GetChannelError\fR(\fIchan, msgPtr\fR)
.sp
-void
\fBTcl_GetChannelErrorInterp\fR(\fIinterp, msgPtr\fR)
-.sp
+.fi
.SH ARGUMENTS
.AS Tcl_Channel chan
.AP Tcl_Channel chan in
diff --git a/doc/SetErrno.3 b/doc/SetErrno.3
index c202e2e..abed74e 100644
--- a/doc/SetErrno.3
+++ b/doc/SetErrno.3
@@ -13,7 +13,6 @@ Tcl_SetErrno, Tcl_GetErrno, Tcl_ErrnoId, Tcl_ErrnoMsg \- manipulate errno to sto
.nf
\fB#include <tcl.h>\fR
.sp
-void
\fBTcl_SetErrno\fR(\fIerrorCode\fR)
.sp
int
@@ -24,7 +23,7 @@ const char *
.sp
const char *
\fBTcl_ErrnoMsg\fR(\fIerrorCode\fR)
-.sp
+.fi
.SH ARGUMENTS
.AS int errorCode
.AP int errorCode in
diff --git a/doc/SetRecLmt.3 b/doc/SetRecLmt.3
index 171d29d..b2d1705 100644
--- a/doc/SetRecLmt.3
+++ b/doc/SetRecLmt.3
@@ -16,6 +16,7 @@ Tcl_SetRecursionLimit \- set maximum allowable nesting depth in interpreter
.sp
Tcl_Size
\fBTcl_SetRecursionLimit\fR(\fIinterp, depth\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_Interp *interp
.AP Tcl_Interp *interp in
diff --git a/doc/SetResult.3 b/doc/SetResult.3
index 41a87b3..4d0c9df 100644
--- a/doc/SetResult.3
+++ b/doc/SetResult.3
@@ -24,13 +24,14 @@ Tcl_Obj *
const char *
\fBTcl_GetStringResult\fR(\fIinterp\fR)
.sp
-\fBTcl_AppendResult\fR(\fIinterp, result, result, ... , \fB(char *)NULL\fR)
+\fBTcl_AppendResult\fR(\fIinterp, result, result, ... , \fBNULL\fR)
.sp
\fBTcl_ResetResult\fR(\fIinterp\fR)
.sp
\fBTcl_TransferResult\fR(\fIsourceInterp, code, targetInterp\fR)
.sp
\fBTcl_AppendElement\fR(\fIinterp, element\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_FreeProc sourceInterp out
.AP Tcl_Interp *interp out
diff --git a/doc/SetVar.3 b/doc/SetVar.3
index 9d8e0b7..ad4773e 100644
--- a/doc/SetVar.3
+++ b/doc/SetVar.3
@@ -43,6 +43,7 @@ int
.sp
int
\fBTcl_UnsetVar2\fR(\fIinterp, name1, name2, flags\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_Interp *newValuePtr
.AP Tcl_Interp *interp in
diff --git a/doc/Signal.3 b/doc/Signal.3
index 0a280f9..a0d7417 100644
--- a/doc/Signal.3
+++ b/doc/Signal.3
@@ -18,7 +18,7 @@ const char *
.sp
const char *
\fBTcl_SignalMsg\fR(\fIsig\fR)
-.sp
+.fi
.SH ARGUMENTS
.AS int sig
.AP int sig in
diff --git a/doc/Sleep.3 b/doc/Sleep.3
index 656d72a..082adb2 100644
--- a/doc/Sleep.3
+++ b/doc/Sleep.3
@@ -15,6 +15,7 @@ Tcl_Sleep \- delay execution for a given number of milliseconds
\fB#include <tcl.h>\fR
.sp
\fBTcl_Sleep\fR(\fIms\fR)
+.fi
.SH ARGUMENTS
.AS int ms
.AP int ms in
diff --git a/doc/SourceRCFile.3 b/doc/SourceRCFile.3
index bf8c527..3175cd1 100644
--- a/doc/SourceRCFile.3
+++ b/doc/SourceRCFile.3
@@ -11,8 +11,8 @@ Tcl_SourceRCFile \- source the Tcl rc file
.nf
\fB#include <tcl.h>\fR
.sp
-void
\fBTcl_SourceRCFile\fR(\fIinterp\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_Interp *interp
.AP Tcl_Interp *interp in
diff --git a/doc/SplitList.3 b/doc/SplitList.3
index 0036333..d036ace 100644
--- a/doc/SplitList.3
+++ b/doc/SplitList.3
@@ -31,6 +31,7 @@ Tcl_Size
.sp
Tcl_Size
\fBTcl_ConvertCountedElement\fR(\fIsrc, length, dst, flags\fR)
+.fi
.SH ARGUMENTS
.AS "const char *const" ***argvPtr out
.AP Tcl_Interp *interp out
diff --git a/doc/SplitPath.3 b/doc/SplitPath.3
index 663b336..452baff 100644
--- a/doc/SplitPath.3
+++ b/doc/SplitPath.3
@@ -20,6 +20,7 @@ char *
.sp
Tcl_PathType
\fBTcl_GetPathType\fR(\fIpath\fR)
+.fi
.SH ARGUMENTS
.AS "const char *const" ***argvPtr in/out
.AP "const char" *path in
diff --git a/doc/StaticLibrary.3 b/doc/StaticLibrary.3
index c5bd364..9cad43d 100644
--- a/doc/StaticLibrary.3
+++ b/doc/StaticLibrary.3
@@ -16,6 +16,7 @@ Tcl_StaticLibrary, Tcl_StaticPackage \- make a statically linked library availab
\fBTcl_StaticLibrary\fR(\fIinterp, prefix, initProc, safeInitProc\fR)
.sp
\fBTcl_StaticPackage\fR(\fIinterp, prefix, initProc, safeInitProc\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_LibraryInitProc *safeInitProc
.AP Tcl_Interp *interp in
diff --git a/doc/StrMatch.3 b/doc/StrMatch.3
index d664067..89b4ae0 100644
--- a/doc/StrMatch.3
+++ b/doc/StrMatch.3
@@ -19,6 +19,7 @@ int
.sp
int
\fBTcl_StringCaseMatch\fR(\fIstr\fR, \fIpattern\fR, \fIflags\fR)
+.fi
.SH ARGUMENTS
.AS "const char" *pattern
.AP "const char" *str in
diff --git a/doc/StringObj.3 b/doc/StringObj.3
index 5a67055..826f80e 100644
--- a/doc/StringObj.3
+++ b/doc/StringObj.3
@@ -19,10 +19,8 @@ Tcl_Obj *
Tcl_Obj *
\fBTcl_NewUnicodeObj\fR(\fIunicode, numChars\fR)
.sp
-void
\fBTcl_SetStringObj\fR(\fIobjPtr, bytes, length\fR)
.sp
-void
\fBTcl_SetUnicodeObj\fR(\fIobjPtr, unicode, numChars\fR)
.sp
char *
@@ -46,19 +44,14 @@ Tcl_Size
Tcl_Obj *
\fBTcl_GetRange\fR(\fIobjPtr, first, last\fR)
.sp
-void
\fBTcl_AppendToObj\fR(\fIobjPtr, bytes, length\fR)
.sp
-void
\fBTcl_AppendUnicodeToObj\fR(\fIobjPtr, unicode, numChars\fR)
.sp
-void
\fBTcl_AppendObjToObj\fR(\fIobjPtr, appendObjPtr\fR)
.sp
-void
-\fBTcl_AppendStringsToObj\fR(\fIobjPtr, string, string, ... \fB(char *)NULL\fR)
+\fBTcl_AppendStringsToObj\fR(\fIobjPtr, string, string, ... \fBNULL\fR)
.sp
-void
\fBTcl_AppendLimitedToObj\fR(\fIobjPtr, bytes, length, limit, ellipsis\fR)
.sp
Tcl_Obj *
@@ -70,10 +63,8 @@ int
Tcl_Obj *
\fBTcl_ObjPrintf\fR(\fIformat, ...\fR)
.sp
-void
\fBTcl_AppendPrintfToObj\fR(\fIobjPtr, format, ...\fR)
.sp
-void
\fBTcl_SetObjLength\fR(\fIobjPtr, newLength\fR)
.sp
int
@@ -81,6 +72,7 @@ int
.sp
Tcl_Obj *
\fBTcl_ConcatObj\fR(\fIobjc, objv\fR)
+.fi
.SH ARGUMENTS
.AS "const Tcl_UniChar" *appendObjPtr in/out
.AP "const char" *bytes in
diff --git a/doc/SubstObj.3 b/doc/SubstObj.3
index f10e01d..2867df8 100644
--- a/doc/SubstObj.3
+++ b/doc/SubstObj.3
@@ -15,6 +15,7 @@ Tcl_SubstObj \- perform substitutions on Tcl values
.sp
Tcl_Obj *
\fBTcl_SubstObj\fR(\fIinterp, objPtr, flags\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_Interp **termPtr
.AP Tcl_Interp *interp in
diff --git a/doc/Tcl.n b/doc/Tcl.n
index 99af4df..0bceca6 100644
--- a/doc/Tcl.n
+++ b/doc/Tcl.n
@@ -108,7 +108,6 @@ variable within an array variable, and may be empty.
\fB$\fIname\fR
.
\fIname\fR may not be empty.
-
.TP 15
\fB$\fIname\fB(\fIindex\fB)\fR
.
diff --git a/doc/Tcl_Main.3 b/doc/Tcl_Main.3
index 8277262..6410450 100644
--- a/doc/Tcl_Main.3
+++ b/doc/Tcl_Main.3
@@ -27,6 +27,7 @@ Tcl_Obj *
\fBTcl_GetStartupScript\fR(\fIencodingPtr\fR)
.sp
\fBTcl_SetMainLoop\fR(\fImainLoopProc\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_MainLoopProc *mainLoopProc
.AP Tcl_Size argc in
diff --git a/doc/Thread.3 b/doc/Thread.3
index c59a8dd..cb63570 100644
--- a/doc/Thread.3
+++ b/doc/Thread.3
@@ -14,25 +14,19 @@ Tcl_ConditionNotify, Tcl_ConditionWait, Tcl_ConditionFinalize, Tcl_GetThreadData
.nf
\fB#include <tcl.h>\fR
.sp
-void
\fBTcl_ConditionNotify\fR(\fIcondPtr\fR)
.sp
-void
\fBTcl_ConditionWait\fR(\fIcondPtr, mutexPtr, timePtr\fR)
.sp
-void
\fBTcl_ConditionFinalize\fR(\fIcondPtr\fR)
.sp
-Void *
+void *
\fBTcl_GetThreadData\fR(\fIkeyPtr, size\fR)
.sp
-void
\fBTcl_MutexLock\fR(\fImutexPtr\fR)
.sp
-void
\fBTcl_MutexUnlock\fR(\fImutexPtr\fR)
.sp
-void
\fBTcl_MutexFinalize\fR(\fImutexPtr\fR)
.sp
int
@@ -40,6 +34,7 @@ int
.sp
int
\fBTcl_JoinThread\fR(\fIid, result\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_CreateThreadProc proc out
.AP Tcl_Condition *condPtr in
diff --git a/doc/ToUpper.3 b/doc/ToUpper.3
index 089e120..580a5b3 100644
--- a/doc/ToUpper.3
+++ b/doc/ToUpper.3
@@ -30,6 +30,7 @@ Tcl_Size
.sp
Tcl_Size
\fBTcl_UtfToTitle\fR(\fIstr\fR)
+.fi
.SH ARGUMENTS
.AS char *str in/out
.AP int ch in
diff --git a/doc/TraceCmd.3 b/doc/TraceCmd.3
index 8ae946e..d5de5a9 100644
--- a/doc/TraceCmd.3
+++ b/doc/TraceCmd.3
@@ -14,13 +14,13 @@ Tcl_CommandTraceInfo, Tcl_TraceCommand, Tcl_UntraceCommand \- monitor renames an
\fB#include <tcl.h>\fR
.sp
void *
-\fBTcl_CommandTraceInfo(\fIinterp, cmdName, flags, proc, prevClientData\fB)\fR
+\fBTcl_CommandTraceInfo\fR(\fIinterp, cmdName, flags, proc, prevClientData\fR)
.sp
int
-\fBTcl_TraceCommand(\fIinterp, cmdName, flags, proc, clientData\fB)\fR
+\fBTcl_TraceCommand\fR(\fIinterp, cmdName, flags, proc, clientData\fR)
.sp
-void
-\fBTcl_UntraceCommand(\fIinterp, cmdName, flags, proc, clientData\fB)\fR
+\fBTcl_UntraceCommand\fR(\fIinterp, cmdName, flags, proc, clientData\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_CommandTraceProc prevClientData
.AP Tcl_Interp *interp in
diff --git a/doc/TraceVar.3 b/doc/TraceVar.3
index 90c90b9..2c572d3 100644
--- a/doc/TraceVar.3
+++ b/doc/TraceVar.3
@@ -15,20 +15,21 @@ Tcl_TraceVar, Tcl_TraceVar2, Tcl_UntraceVar, Tcl_UntraceVar2, Tcl_VarTraceInfo,
\fB#include <tcl.h>\fR
.sp
int
-\fBTcl_TraceVar(\fIinterp, varName, flags, proc, clientData\fB)\fR
+\fBTcl_TraceVar\fR(\fIinterp, varName, flags, proc, clientData\fR)
.sp
int
-\fBTcl_TraceVar2(\fIinterp, name1, name2, flags, proc, clientData\fB)\fR
+\fBTcl_TraceVar2\fR(\fIinterp, name1, name2, flags, proc, clientData\fR)
.sp
-\fBTcl_UntraceVar(\fIinterp, varName, flags, proc, clientData\fB)\fR
+\fBTcl_UntraceVar\fR(\fIinterp, varName, flags, proc, clientData\fR)
.sp
-\fBTcl_UntraceVar2(\fIinterp, name1, name2, flags, proc, clientData\fB)\fR
+\fBTcl_UntraceVar2\fR(\fIinterp, name1, name2, flags, proc, clientData\fR)
.sp
void *
-\fBTcl_VarTraceInfo(\fIinterp, varName, flags, proc, prevClientData\fB)\fR
+\fBTcl_VarTraceInfo\fR(\fIinterp, varName, flags, proc, prevClientData\fR)
.sp
void *
-\fBTcl_VarTraceInfo2(\fIinterp, name1, name2, flags, proc, prevClientData\fB)\fR
+\fBTcl_VarTraceInfo2\fR(\fIinterp, name1, name2, flags, proc, prevClientData\fR)
+.fi
.SH ARGUMENTS
.AS void *prevClientData
.AP Tcl_Interp *interp in
diff --git a/doc/Translate.3 b/doc/Translate.3
index e7668eb..0b6db29 100644
--- a/doc/Translate.3
+++ b/doc/Translate.3
@@ -16,6 +16,7 @@ Tcl_TranslateFileName \- convert file name to native form
.sp
char *
\fBTcl_TranslateFileName\fR(\fIinterp\fR, \fIname\fR, \fIbufferPtr\fR)
+.fi
.SH ARGUMENTS
.AS Tcl_DString *bufferPtr in/out
.AP Tcl_Interp *interp in
diff --git a/doc/UniCharIsAlpha.3 b/doc/UniCharIsAlpha.3
index a07af9a..1f70f6d 100644
--- a/doc/UniCharIsAlpha.3
+++ b/doc/UniCharIsAlpha.3
@@ -48,6 +48,7 @@ int
.sp
int
\fBTcl_UniCharIsWordChar\fR(\fIch\fR)
+.fi
.SH ARGUMENTS
.AS int ch
.AP int ch in
diff --git a/doc/UpVar.3 b/doc/UpVar.3
index 9e17ed5..d755b34 100644
--- a/doc/UpVar.3
+++ b/doc/UpVar.3
@@ -15,10 +15,11 @@ Tcl_UpVar, Tcl_UpVar2 \- link one variable to another
\fB#include <tcl.h>\fR
.sp
int
-\fBTcl_UpVar(\fIinterp, frameName, sourceName, destName, flags\fB)\fR
+\fBTcl_UpVar\fR(\fIinterp, frameName, sourceName, destName, flags\fR)
.sp
int
-\fBTcl_UpVar2(\fIinterp, frameName, name1, name2, destName, flags\fB)\fR
+\fBTcl_UpVar2\fR(\fIinterp, frameName, name1, name2, destName, flags\fR)
+.fi
.SH ARGUMENTS
.AS "const char" *sourceName
.AP Tcl_Interp *interp in
diff --git a/doc/Utf.3 b/doc/Utf.3
index 6dd083f..fc7311e 100644
--- a/doc/Utf.3
+++ b/doc/Utf.3
@@ -95,6 +95,7 @@ const char *
.sp
Tcl_Size
\fBTcl_UtfBackslash\fR(\fIsrc, readPtr, dst\fR)
+.fi
.SH ARGUMENTS
.AS "const Tcl_UniChar" *uniPattern in/out
.AP char *buf out
diff --git a/doc/WrongNumArgs.3 b/doc/WrongNumArgs.3
index 0d00c0b..fbd0f59 100644
--- a/doc/WrongNumArgs.3
+++ b/doc/WrongNumArgs.3
@@ -14,6 +14,7 @@ Tcl_WrongNumArgs \- generate standard error message for wrong number of argument
\fB#include <tcl.h>\fR
.sp
\fBTcl_WrongNumArgs\fR(\fIinterp, objc, objv, message\fR)
+.fi
.SH ARGUMENTS
.AS "Tcl_Obj *const" *message
.AP Tcl_Interp interp in
diff --git a/doc/after.n b/doc/after.n
index 5d64cb6..b43f2cb 100644
--- a/doc/after.n
+++ b/doc/after.n
@@ -12,17 +12,14 @@
.SH NAME
after \- Execute a command after a time delay
.SH SYNOPSIS
+.nf
\fBafter \fIms\fR
-.sp
\fBafter \fIms \fR?\fIscript script script ...\fR?
-.sp
\fBafter cancel \fIid\fR
-.sp
\fBafter cancel \fIscript script script ...\fR
-.sp
\fBafter idle \fR?\fIscript script script ...\fR?
-.sp
\fBafter info \fR?\fIid\fR?
+.fi
.BE
.SH DESCRIPTION
.PP
diff --git a/doc/chan.n b/doc/chan.n
index 2964eff..5436cc8 100644
--- a/doc/chan.n
+++ b/doc/chan.n
@@ -153,9 +153,11 @@ interface with the operating system,
\fIchar\fR signals the end of the data when it is encountered in the input.
If \fIchar\fR is the empty string, there is no special character that marks
the end of the data.
-
+.RS
+.PP
The default value is the empty string. The acceptable range is \ex01 -
\ex7F. A value outside this range results in an error.
+.RE
.VS "TCL8.7 TIP656"
.TP
\fB\-profile\fI profile\fR
diff --git a/doc/clock.n b/doc/clock.n
index 5d86ed2..e7f1b11 100644
--- a/doc/clock.n
+++ b/doc/clock.n
@@ -8,22 +8,17 @@
.SH NAME
clock \- Obtain and manipulate dates and times
.SH "SYNOPSIS"
+.nf
package require \fBTcl 8.5-\fR
-.sp
+
\fBclock add\fI timeVal\fR ?\fIcount unit...\fR? ?\fI\-option value\fR?
-.sp
\fBclock clicks\fR ?\fI\-option\fR?
-.sp
\fBclock format\fI timeVal\fR ?\fI\-option value\fR...?
-.sp
\fBclock microseconds\fR
-.sp
\fBclock milliseconds\fR
-.sp
\fBclock scan\fI inputString\fR ?\fI\-option value\fR...?
-.sp
\fBclock seconds\fR
-.sp
+.fi
.BE
.SH "DESCRIPTION"
.PP
diff --git a/doc/coroutine.n b/doc/coroutine.n
index 25ab6ad..cb4d3dd 100644
--- a/doc/coroutine.n
+++ b/doc/coroutine.n
@@ -13,10 +13,11 @@ coroutine, yield, yieldto, coroinject, coroprobe \- Create and produce values fr
.SH SYNOPSIS
.nf
\fBcoroutine \fIname command\fR ?\fIarg...\fR?
+
\fByield\fR ?\fIvalue\fR?
\fByieldto\fI command\fR ?\fIarg...\fR?
\fIname\fR ?\fIvalue...\fR?
-.sp
+
.VS "8.7, TIP383"
\fBcoroinject \fIcoroName command\fR ?\fIarg...\fR?
\fBcoroprobe \fIcoroName command\fR ?\fIarg...\fR?
diff --git a/doc/dde.n b/doc/dde.n
index ab6ed80..86bf92c 100644
--- a/doc/dde.n
+++ b/doc/dde.n
@@ -12,22 +12,17 @@
.SH NAME
dde \- Execute a Dynamic Data Exchange command
.SH SYNOPSIS
-.sp
+.nf
\fBpackage require dde 1.4\fR
-.sp
+
\fBdde servername\fR ?\fB\-force\fR? ?\fB\-handler \fIproc\fR? ?\fB\-\|\-\fR? ?\fItopic\fR?
-.sp
\fBdde execute\fR ?\fB\-async\fR? ?\fB\-binary\fR? \fIservice topic data\fR
-.sp
\fBdde poke\fR ?\fB\-binary\fR? \fIservice topic item data\fR
-.sp
\fBdde request\fR ?\fB\-binary\fR? \fIservice topic item\fR
-.sp
\fBdde services \fIservice topic\fR
-.sp
\fBdde eval\fR ?\fB\-async\fR? \fItopic cmd \fR?\fIarg arg ...\fR?
+.fi
.BE
-
.SH DESCRIPTION
.PP
This command allows an application to send Dynamic Data Exchange (DDE)
diff --git a/doc/define.n b/doc/define.n
index cb1864c43..1344b32 100644
--- a/doc/define.n
+++ b/doc/define.n
@@ -20,7 +20,6 @@ package require tcl::oo
\fBoo::objdefine\fI object subcommand arg\fR ?\fIarg ...\fR?
.fi
.BE
-
.SH DESCRIPTION
The \fBoo::define\fR command is used to control the configuration of classes,
and the \fBoo::objdefine\fR command is used to control the configuration of
diff --git a/doc/error.n b/doc/error.n
index c05f8b9..9ff4298 100644
--- a/doc/error.n
+++ b/doc/error.n
@@ -14,7 +14,6 @@ error \- Generate an error
.SH SYNOPSIS
\fBerror \fImessage\fR ?\fIinfo\fR? ?\fIcode\fR?
.BE
-
.SH DESCRIPTION
.PP
Returns a \fBTCL_ERROR\fR code, which causes command interpretation to be
diff --git a/doc/eval.n b/doc/eval.n
index 9fc2ae4..9710a55 100644
--- a/doc/eval.n
+++ b/doc/eval.n
@@ -23,7 +23,13 @@ fashion as the \fBconcat\fR command, passes the concatenated string to the
Tcl interpreter recursively, and returns the result of that
evaluation (or any error generated by it).
Note that the \fBlist\fR command quotes sequences of words in such a
-way that they are not further expanded by the \fBeval\fR command.
+way that they are not further expanded by the \fBeval\fR command;
+for \fIany\fR values, $a, $b, and $c, these two lines are effectively
+equivalent:
+.PP
+.CS
+\fBeval\fR [list $a $b $c]
+$a $b $c
.SH EXAMPLES
.PP
Often, it is useful to store a fragment of a script in a variable and
@@ -74,6 +80,12 @@ However, the last line would now normally be written without
.CS
set var [linsert $var 0 {*}$args]
.CE
+.PP
+or indeed like this:
+.PP
+.CS
+set var [list {*}$args {*}$var]
+.CE
.SH "SEE ALSO"
catch(n), concat(n), error(n), errorCode(n), errorInfo(n), interp(n), list(n),
namespace(n), subst(n), uplevel(n)
diff --git a/doc/exit.n b/doc/exit.n
index 36676b1..5744ffe 100644
--- a/doc/exit.n
+++ b/doc/exit.n
@@ -14,7 +14,6 @@ exit \- End the application
.SH SYNOPSIS
\fBexit \fR?\fIreturnCode\fR?
.BE
-
.SH DESCRIPTION
.PP
Terminate the process, returning \fIreturnCode\fR to the
diff --git a/doc/expr.n b/doc/expr.n
index 3b8f1a8..340495c 100644
--- a/doc/expr.n
+++ b/doc/expr.n
@@ -88,7 +88,6 @@ end of a numeric value. Here are some examples:
\fBexpr\fR 3_141_592_653_589e-1_2 \fI3.141592653589\fR
.CE
.RE
-
.TP
A \fBboolean value\fR
.
diff --git a/doc/fblocked.n b/doc/fblocked.n
index 0a28dcf..44dfcd5 100644
--- a/doc/fblocked.n
+++ b/doc/fblocked.n
@@ -12,7 +12,6 @@ fblocked \- Test whether the last input operation exhausted all available input
.SH SYNOPSIS
\fBfblocked \fIchannelId\fR
.BE
-
.SH DESCRIPTION
.PP
The \fBfblocked\fR command returns 1 if the most recent input operation
diff --git a/doc/fcopy.n b/doc/fcopy.n
index 800a392..2eafdd7 100644
--- a/doc/fcopy.n
+++ b/doc/fcopy.n
@@ -14,7 +14,6 @@ fcopy \- Copy data from one channel to another
.SH SYNOPSIS
\fBfcopy \fIinputChan outputChan\fR ?\fB\-size \fIsize\fR? ?\fB\-command \fIcallback\fR?
.BE
-
.SH DESCRIPTION
.PP
The \fBfcopy\fR command copies data from one I/O channel, \fIinchan\fR to another I/O channel, \fIoutchan\fR.
diff --git a/doc/fileevent.n b/doc/fileevent.n
index bbba997..c302b39 100644
--- a/doc/fileevent.n
+++ b/doc/fileevent.n
@@ -17,7 +17,6 @@ fileevent \- Execute a script when a channel becomes readable or writable
.sp
\fBfileevent \fIchannelId \fBwritable \fR?\fIscript\fR?
.BE
-
.SH DESCRIPTION
.PP
This command is used to create \fIfile event handlers\fR. A file event
diff --git a/doc/for.n b/doc/for.n
index 9a3235f..759b66e 100644
--- a/doc/for.n
+++ b/doc/for.n
@@ -14,7 +14,6 @@ for \- 'For' loop
.SH SYNOPSIS
\fBfor \fIstart test next body\fR
.BE
-
.SH DESCRIPTION
.PP
\fBFor\fR is a looping command, similar in structure to the C
diff --git a/doc/foreach.n b/doc/foreach.n
index 43f961a..1f9f88e 100644
--- a/doc/foreach.n
+++ b/doc/foreach.n
@@ -16,7 +16,6 @@ foreach \- Iterate over all elements in one or more lists
.br
\fBforeach \fIvarlist1 list1\fR ?\fIvarlist2 list2 ...\fR? \fIbody\fR
.BE
-
.SH DESCRIPTION
.PP
The \fBforeach\fR command implements a loop where the loop
@@ -96,10 +95,8 @@ set x {}
# The value of x is "a d e b f g c {} {}"
# There are 3 iterations of the loop.
.CE
-
.SH "SEE ALSO"
for(n), while(n), break(n), continue(n)
-
.SH KEYWORDS
foreach, iteration, list, loop
'\" Local Variables:
diff --git a/doc/format.n b/doc/format.n
index eb64491..1e70995 100644
--- a/doc/format.n
+++ b/doc/format.n
@@ -14,7 +14,6 @@ format \- Format a string in the style of sprintf
.SH SYNOPSIS
\fBformat \fIformatString \fR?\fIarg arg ...\fR?
.BE
-
.SH INTRODUCTION
.PP
This command generates a formatted string in a fashion similar to the
diff --git a/doc/gets.n b/doc/gets.n
index 29355a4..33d8cf6 100644
--- a/doc/gets.n
+++ b/doc/gets.n
@@ -14,7 +14,6 @@ gets \- Read a line from a channel
.SH SYNOPSIS
\fBgets \fIchannelId\fR ?\fIvarName\fR?
.BE
-
.SH DESCRIPTION
.PP
This command reads the next line from \fIchannelId\fR, returns everything
@@ -96,10 +95,8 @@ while {[\fBgets\fR $chan line] >= 0} {
}
close $chan
.CE
-
.SH "SEE ALSO"
file(n), eof(n), fblocked(n), Tcl_StandardChannels(3)
-
.SH KEYWORDS
blocking, channel, end of file, end of line, line, non-blocking, read
'\" Local Variables:
diff --git a/doc/http.n b/doc/http.n
index 4105592..f35e917 100644
--- a/doc/http.n
+++ b/doc/http.n
@@ -13,66 +13,40 @@
.SH NAME
http \- Client-side implementation of the HTTP/1.1 protocol
.SH SYNOPSIS
+.nf
\fBpackage require http\fR ?\fB2.10\fR?
.\" See Also -useragent option documentation in body!
-.sp
+
\fB::http::config\fR ?\fI\-option value\fR ...?
-.sp
\fB::http::geturl \fIurl\fR ?\fI\-option value\fR ...?
-.sp
\fB::http::formatQuery\fI key value\fR ?\fIkey value\fR ...?
-.sp
\fB::http::quoteString\fI value\fR
-.sp
\fB::http::reset\fI token\fR ?\fIwhy\fR?
-.sp
\fB::http::wait \fItoken\fR
-.sp
\fB::http::status \fItoken\fR
-.sp
\fB::http::size \fItoken\fR
-.sp
\fB::http::error \fItoken\fR
-.sp
\fB::http::postError \fItoken\fR
-.sp
\fB::http::cleanup \fItoken\fR
-.sp
\fB::http::requestLine\fI token\fR
-.sp
\fB::http::requestHeaders\fI token\fR ?\fIheaderName\fR?
-.sp
\fB::http::requestHeaderValue\fI token headerName\fR
-.sp
\fB::http::responseLine\fI token\fR
-.sp
\fB::http::responseCode\fI token\fR
-.sp
\fB::http::reasonPhrase\fI code\fR
-.sp
\fB::http::responseHeaders\fI token\fR ?\fIheaderName\fR?
-.sp
\fB::http::responseHeaderValue\fI token headerName\fR
-.sp
\fB::http::responseInfo\fI token\fR
-.sp
\fB::http::responseBody\fI token\fR
-.sp
\fB::http::register \fIproto port command\fR ?\fIsocketCmdVarName\fR? ?\fIuseSockThread\fR? ?\fIendToEndProxy\fR?
-.sp
\fB::http::registerError \fIsock\fR ?\fImessage\fR?
-.sp
\fB::http::unregister \fIproto\fR
-.sp
\fB::http::code \fItoken\fR
-.sp
\fB::http::data \fItoken\fR
-.sp
\fB::http::meta \fItoken\fR ?\fIheaderName\fR?
-.sp
\fB::http::metaValue\fI token headerName\fR
-.sp
\fB::http::ncode \fItoken\fR
+.fi
.SH "EXPORTED COMMANDS"
.PP
Namespace \fBhttp\fR exports the commands \fBconfig\fR, \fBformatQuery\fR,
diff --git a/doc/idna.n b/doc/idna.n
index 7f4ab6a..5f31558 100644
--- a/doc/idna.n
+++ b/doc/idna.n
@@ -20,6 +20,7 @@ package require tcl::idna 1.0
\fBtcl::idna puny encode\fI string\fR ?\fIcase\fR?
\fBtcl::idna version\fR
.fi
+.BE
.SH DESCRIPTION
This package provides an implementation of the punycode scheme used in
Internationalised Domain Names, and some access commands. (See RFC 3492 for a
diff --git a/doc/if.n b/doc/if.n
index ff2518d..8ba1f8e 100644
--- a/doc/if.n
+++ b/doc/if.n
@@ -14,7 +14,6 @@ if \- Execute scripts conditionally
.SH SYNOPSIS
\fBif \fIexpr1 \fR?\fBthen\fR? \fIbody1 \fBelseif \fIexpr2 \fR?\fBthen\fR? \fIbody2\fR \fBelseif\fR ... ?\fBelse\fR? ?\fIbodyN\fR?
.BE
-
.SH DESCRIPTION
.PP
The \fIif\fR command evaluates \fIexpr1\fR as an expression (in the
diff --git a/doc/ledit.n b/doc/ledit.n
index 48bc608..b956cc1 100644
--- a/doc/ledit.n
+++ b/doc/ledit.n
@@ -26,6 +26,8 @@ the same as index values for the command \fBstring index\fR,
supporting simple index arithmetic and indices relative to the
end of the list. The index \fB0\fR refers to the first element of the
list, and \fBend\fR refers to the last element of the list.
+(Unlike with \fBlpop\fR, \fBlset\fR, and \fBlindex\fR, indices into sublists
+are not supported.)
.PP
If either \fIfirst\fR or \fIlast\fR is less than zero, it is considered to
refer to the position before the first element of the list. This allows
@@ -42,7 +44,7 @@ with no elements being deleted.
The \fIvalue\fR arguments specify zero or more new elements to
be added to the list in place of those that were deleted.
Each \fIvalue\fR argument will become a separate element of
-the list. If no \fIvalue\fR arguments are specified, then the elements
+the list. If no \fIvalue\fR arguments are specified, the elements
between \fIfirst\fR and \fIlast\fR are simply deleted.
.SH EXAMPLES
.PP
diff --git a/doc/library.n b/doc/library.n
index d55218d..bb3db05 100644
--- a/doc/library.n
+++ b/doc/library.n
@@ -30,6 +30,7 @@ auto_execok, auto_import, auto_load, auto_mkindex, auto_qualify, auto_reset, tcl
\fBreadFile \fIfilename\fR ?\fBtext\fR|\fBbinary\fR?
\fBwriteFile \fIfilename\fR ?\fBtext\fR|\fBbinary\fR? \fIcontents\fR
.VE "Tcl 8.7, TIP 670"
+.fi
.BE
.SH INTRODUCTION
.PP
diff --git a/doc/lpop.n b/doc/lpop.n
index 2a464eb..454ff2a 100644
--- a/doc/lpop.n
+++ b/doc/lpop.n
@@ -18,14 +18,15 @@ lpop \- Get and remove an element in a list
The \fBlpop\fR command accepts a parameter, \fIvarName\fR, which
it interprets as the name of a variable containing a Tcl list.
It also accepts one or more \fIindices\fR into
-the list. If no indices are presented, it defaults to "end".
+the list. If no indices are presented, it defaults to "\fBend\fR".
.PP
When presented with a single index, the \fBlpop\fR command
addresses the \fIindex\fR'th element in it, removes if from the list
and returns the element.
.PP
If \fIindex\fR is negative or greater or equal than the number
-of elements in \fI$varName\fR, then an error occurs.
+of elements in the list in the variable called \fIvarName\fR, an
+error occurs.
.PP
The interpretation of each simple \fIindex\fR value is the same as
for the command \fBstring index\fR, supporting simple index
@@ -34,7 +35,8 @@ arithmetic and indices relative to the end of the list.
If additional \fIindex\fR arguments are supplied, then each argument is
used in turn to address an element within a sublist designated
by the previous indexing operation,
-allowing the script to remove elements in sublists.
+allowing the script to remove elements in sublists, similar to
+\fBlindex\fR and \fBlset\fR.
The command,
.PP
.CS
diff --git a/doc/lseq.n b/doc/lseq.n
index fded359..9e46f38 100644
--- a/doc/lseq.n
+++ b/doc/lseq.n
@@ -11,11 +11,11 @@
.SH NAME
lseq \- Build a numeric sequence returned as a list
.SH SYNOPSIS
+.nf
\fBlseq \fIstart \fR?(\fB..\fR|\fBto\fR)? \fIend\fR ??\fBby\fR? \fIstep\fR?
-
\fBlseq \fIstart \fBcount\fI count\fR ??\fBby\fR? \fIstep\fR?
-
\fBlseq \fIcount\fR ?\fBby \fIstep\fR?
+.fi
.BE
.SH DESCRIPTION
.PP
@@ -24,16 +24,17 @@ parameters \fIstart\fR, \fIend\fR, and \fIstep\fR. The \fIoperation\fR
argument "\fB..\fR" or "\fBto\fR" defines the range. The "\fBcount\fR" option
is used to define a count of the number of elements in the list. A short form
use of the command, with a single count value, will create a range from 0 to
-count-1.
-
+\fIcount\fR-1.
+.PP
The \fBlseq\fR command can produce both increasing and decreasing
sequences. When both \fIstart\fR and \fIend\fR are provided without a
\fIstep\fR value, then if \fIstart\fR <= \fIend\fR, the sequence will be
increasing and if \fIstart\fR > \fIend\fR it will be decreasing. If a
\fIstep\fR vale is included, it's sign should agree with the direction of the
-sequence (descending -> negative and ascending -> positive), otherwise an
+sequence (descending \(-> negative and ascending \(-> positive), otherwise an
empty list is returned. For example:
-
+.RS
+.PP
.CS \"
% \fBlseq\fR 1 to 5 ;# increasing
\fI\(-> 1 2 3 4 5
@@ -46,7 +47,8 @@ empty list is returned. For example:
% \fBlseq\fR 1 to 5 by 0 ;# all step sizes of 0 produce an empty list
.\"
.CE
-
+.RE
+.PP
The numeric arguments, \fIstart\fR, \fIend\fR, \fIstep\fR, and \fIcount\fR,
may also be a valid expression. The expression will be evaluated and the
numeric result will be used. An expression that does not evaluate to a number
@@ -54,20 +56,19 @@ will produce an invalid argument error.
.PP
\fIStart\fR defines the initial value and \fIend\fR defines the limit, not
necessarily the last value. \fBlseq\fR produces a list with \fIcount\fR
-elements, and if \fIcount\fR is not supplied, it is computed as
-
-.CS \"
- \fIcount\fR = int( (\fIend\fR - \fIstart\fR + \fIstep\fR) / \fIstep\fR )
-.\"
+elements, and if \fIcount\fR is not supplied, it is computed as:
+.RS
+.PP
+.CS
+\fIcount\fR = int( (\fIend\fR - \fIstart\fR + \fIstep\fR) / \fIstep\fR )
.CE
-
+.RE
.PP
The numeric arguments, \fIstart\fR, \fIend\fR, \fIstep\fR, and \fIcount\fR,
can also be a valid expression. the \fBlseq\fR command will evaluate the
expression (as if with \fBexpr\fR)
and use the numeric result, or return an error as with any invalid argument
value; a non-numeric expression result will result in an error.
-
.SH EXAMPLES
.CS
.\"
diff --git a/doc/mathfunc.n b/doc/mathfunc.n
index 00fef17..c84dbf7 100644
--- a/doc/mathfunc.n
+++ b/doc/mathfunc.n
@@ -13,86 +13,51 @@
.SH NAME
mathfunc \- Mathematical functions for Tcl expressions
.SH SYNOPSIS
+.nf
package require \fBTcl 8.5-\fR
-.sp
+
\fB::tcl::mathfunc::abs\fI arg\fR
-.br
\fB::tcl::mathfunc::acos\fI arg\fR
-.br
\fB::tcl::mathfunc::asin\fI arg\fR
-.br
\fB::tcl::mathfunc::atan\fI arg\fR
-.br
\fB::tcl::mathfunc::atan2\fI y x\fR
-.br
\fB::tcl::mathfunc::bool\fI arg\fR
-.br
\fB::tcl::mathfunc::ceil\fI arg\fR
-.br
\fB::tcl::mathfunc::cos\fI arg\fR
-.br
\fB::tcl::mathfunc::cosh\fI arg\fR
-.br
\fB::tcl::mathfunc::double\fI arg\fR
-.br
\fB::tcl::mathfunc::entier\fI arg\fR
-.br
\fB::tcl::mathfunc::exp\fI arg\fR
-.br
\fB::tcl::mathfunc::floor\fI arg\fR
-.br
\fB::tcl::mathfunc::fmod\fI x y\fR
-.br
\fB::tcl::mathfunc::hypot\fI x y\fR
-.br
\fB::tcl::mathfunc::int\fI arg\fR
-.br
.VS "8.7, TIP 521"
\fB::tcl::mathfunc::isfinite\fI arg\fR
-.br
\fB::tcl::mathfunc::isinf\fI arg\fR
-.br
\fB::tcl::mathfunc::isnan\fI arg\fR
-.br
\fB::tcl::mathfunc::isnormal\fI arg\fR
.VE "8.7, TIP 521"
-.br
\fB::tcl::mathfunc::isqrt\fI arg\fR
-.br
.VS "8.7, TIP 521"
\fB::tcl::mathfunc::issubnormal\fI arg\fR
-.br
\fB::tcl::mathfunc::isunordered\fI x y\fR
.VE "8.7, TIP 521"
-.br
\fB::tcl::mathfunc::log\fI arg\fR
-.br
\fB::tcl::mathfunc::log10\fI arg\fR
-.br
\fB::tcl::mathfunc::max\fI arg\fR ?\fIarg\fR ...?
-.br
\fB::tcl::mathfunc::min\fI arg\fR ?\fIarg\fR ...?
-.br
\fB::tcl::mathfunc::pow\fI x y\fR
-.br
\fB::tcl::mathfunc::rand\fR
-.br
\fB::tcl::mathfunc::round\fI arg\fR
-.br
\fB::tcl::mathfunc::sin\fI arg\fR
-.br
\fB::tcl::mathfunc::sinh\fI arg\fR
-.br
\fB::tcl::mathfunc::sqrt\fI arg\fR
-.br
\fB::tcl::mathfunc::srand\fI arg\fR
-.br
\fB::tcl::mathfunc::tan\fI arg\fR
-.br
\fB::tcl::mathfunc::tanh\fI arg\fR
-.br
\fB::tcl::mathfunc::wide\fI arg\fR
-.sp
+.fi
.BE
.SH "DESCRIPTION"
.PP
diff --git a/doc/mathop.n b/doc/mathop.n
index f8a0dc4..95a5d0e 100644
--- a/doc/mathop.n
+++ b/doc/mathop.n
@@ -11,64 +11,39 @@
.SH NAME
mathop \- Mathematical operators as Tcl commands
.SH SYNOPSIS
+.nf
package require \fBTcl 8.5-\fR
-.sp
+
\fB::tcl::mathop::!\fI number\fR
-.br
\fB::tcl::mathop::~\fI number\fR
-.br
\fB::tcl::mathop::+\fR ?\fInumber\fR ...?
-.br
\fB::tcl::mathop::\-\fI number\fR ?\fInumber\fR ...?
-.br
\fB::tcl::mathop::*\fR ?\fInumber\fR ...?
-.br
\fB::tcl::mathop::/\fI number\fR ?\fInumber\fR ...?
-.br
\fB::tcl::mathop::%\fI number number\fR
-.br
\fB::tcl::mathop::**\fR ?\fInumber\fR ...?
-.br
\fB::tcl::mathop::&\fR ?\fInumber\fR ...?
-.br
\fB::tcl::mathop::|\fR ?\fInumber\fR ...?
-.br
\fB::tcl::mathop::^\fR ?\fInumber\fR ...?
-.br
\fB::tcl::mathop::<<\fI number number\fR
-.br
\fB::tcl::mathop::>>\fI number number\fR
-.br
\fB::tcl::mathop::==\fR ?\fIarg\fR ...?
-.br
\fB::tcl::mathop::!=\fI arg arg\fR
-.br
\fB::tcl::mathop::<\fR ?\fIarg\fR ...?
-.br
\fB::tcl::mathop::<=\fR ?\fIarg\fR ...?
-.br
\fB::tcl::mathop::>=\fR ?\fIarg\fR ...?
-.br
\fB::tcl::mathop::>\fR ?\fIarg\fR ...?
-.br
\fB::tcl::mathop::eq\fR ?\fIarg\fR ...?
-.br
\fB::tcl::mathop::ne\fI arg arg\fR
-.br
.VS "8.7, TIP461"
\fB::tcl::mathop::lt\fR ?\fIarg\fR ...?
-.br
\fB::tcl::mathop::le\fR ?\fIarg\fR ...?
-.br
\fB::tcl::mathop::gt\fR ?\fIarg\fR ...?
-.br
\fB::tcl::mathop::ge\fR ?\fIarg\fR ...?
.VE "8.7, TIP461"
-.br
\fB::tcl::mathop::in\fI arg list\fR
-.br
\fB::tcl::mathop::ni\fI arg list\fR
-.sp
+.fi
.BE
.SH DESCRIPTION
.PP
diff --git a/doc/msgcat.n b/doc/msgcat.n
index 58b5b0d..43ea95d 100644
--- a/doc/msgcat.n
+++ b/doc/msgcat.n
@@ -11,55 +11,40 @@
.SH NAME
msgcat \- Tcl message catalog
.SH SYNOPSIS
+.nf
\fBpackage require tcl 8.7\fR
-.sp
\fBpackage require msgcat 1.7\fR
-.sp
+
\fB::msgcat::mc \fIsrc-string\fR ?\fIarg arg ...\fR?
-.sp
\fB::msgcat::mcmax ?\fIsrc-string src-string ...\fR?
-.sp
.VS "TIP 412"
\fB::msgcat::mcexists\fR ?\fB-exactnamespace\fR? ?\fB-exactlocale\fR? \fIsrc-string\fR
.VE "TIP 412"
-.sp
.VS "TIP 490"
\fB::msgcat::mcpackagenamespaceget\fR
.VE "TIP 490"
-.sp
\fB::msgcat::mclocale \fR?\fInewLocale\fR?
-.sp
.VS "TIP 499"
\fB::msgcat::mcpreferences\fR ?\fIlocale preference\fR? ...
.VE "TIP 499"
-.sp
.VS "TIP 412"
\fB::msgcat::mcloadedlocales subcommand\fR ?\fIlocale\fR?
.VE "TIP 412"
-.sp
\fB::msgcat::mcload \fIdirname\fR
-.sp
\fB::msgcat::mcset \fIlocale src-string \fR?\fItranslate-string\fR?
-.sp
\fB::msgcat::mcmset \fIlocale src-trans-list\fR
-.sp
\fB::msgcat::mcflset \fIsrc-string \fR?\fItranslate-string\fR?
-.sp
\fB::msgcat::mcflmset \fIsrc-trans-list\fR
-.sp
\fB::msgcat::mcunknown \fIlocale src-string\fR ?\fIarg arg ...\fR?
-.sp
.VS "TIP 412"
\fB::msgcat::mcpackagelocale subcommand\fR ?\fIlocale\fR?
-.sp
\fB::msgcat::mcpackageconfig subcommand\fI option\fR ?\fIvalue\fR?
-.sp
\fB::msgcat::mcforgetpackage\fR
.VE "TIP 412"
-.sp
.VS "TIP 499"
\fB::msgcat::mcutil subcommand\fR ?\fIlocale\fR?
.VS "TIP 499"
+.fi
.BE
.SH DESCRIPTION
.PP
diff --git a/doc/open.n b/doc/open.n
index f955e39..1c63f8f 100644
--- a/doc/open.n
+++ b/doc/open.n
@@ -12,12 +12,11 @@
.SH NAME
open \- Open a file-based or command pipeline channel
.SH SYNOPSIS
-.sp
+.nf
\fBopen \fIfileName\fR
-.br
\fBopen \fIfileName access\fR
-.br
\fBopen \fIfileName access permissions\fR
+.fi
.BE
.SH DESCRIPTION
.PP
diff --git a/doc/packagens.n b/doc/packagens.n
index d55151f..ebb7372 100644
--- a/doc/packagens.n
+++ b/doc/packagens.n
@@ -11,14 +11,12 @@ pkg::create \- Construct an appropriate 'package ifneeded' command for a given p
.SH SYNOPSIS
\fB::pkg::create\fR \fB\-name \fIpackageName \fB\-version \fIpackageVersion\fR ?\fB\-load \fIfilespec\fR? ... ?\fB\-source \fIfilespec\fR? ...
.BE
-
.SH DESCRIPTION
.PP
\fB::pkg::create\fR is a utility procedure that is part of the standard Tcl
library. It is used to create an appropriate \fBpackage ifneeded\fR
command for a given package specification. It can be used to construct a
\fBpkgIndex.tcl\fR file for use with the \fBpackage\fR mechanism.
-
.SH OPTIONS
The parameters supported are:
.TP
diff --git a/doc/pid.n b/doc/pid.n
index fa0af56..02d1cbe 100644
--- a/doc/pid.n
+++ b/doc/pid.n
@@ -14,7 +14,6 @@ pid \- Retrieve process identifiers
.SH SYNOPSIS
\fBpid \fR?\fIfileId\fR?
.BE
-
.SH DESCRIPTION
.PP
If the \fIfileId\fR argument is given then it should normally
@@ -40,7 +39,6 @@ puts [string repeat - 70]
puts [read $pipeline]
close $pipeline
.CE
-
.SH "SEE ALSO"
exec(n), open(n)
.SH KEYWORDS
diff --git a/doc/platform.n b/doc/platform.n
index 8ac07d2..18754b6 100644
--- a/doc/platform.n
+++ b/doc/platform.n
@@ -13,7 +13,7 @@ platform \- System identification support code and utilities
.SH SYNOPSIS
.nf
\fBpackage require platform\fR ?\fB1.0.10\fR?
-.sp
+
\fBplatform::generic\fR
\fBplatform::identify\fR
\fBplatform::patterns \fIidentifier\fR
diff --git a/doc/platform_shell.n b/doc/platform_shell.n
index 54a1edb..7103e6a 100644
--- a/doc/platform_shell.n
+++ b/doc/platform_shell.n
@@ -13,7 +13,7 @@ platform::shell \- System identification support code and utilities
.SH SYNOPSIS
.nf
\fBpackage require platform::shell\fR ?\fB1.1.4\fR?
-.sp
+
\fBplatform::shell::generic \fIshell\fR
\fBplatform::shell::identify \fIshell\fR
\fBplatform::shell::platform \fIshell\fR
diff --git a/doc/puts.n b/doc/puts.n
index 0943f87..5ce56b7 100644
--- a/doc/puts.n
+++ b/doc/puts.n
@@ -67,7 +67,6 @@ via a file event that the channel is ready for more output data).
Encoding errors may exist, if the encoding profile \fBstrict\fR is used.
\fBputs\fR writes out data until an encoding error occurs and fails with
POSIX error code \fBEILSEQ\fR.
-
.SH EXAMPLES
.PP
Write a short message to the console (or wherever \fBstdout\fR is
diff --git a/doc/registry.n b/doc/registry.n
index a58dd87..58215ff 100644
--- a/doc/registry.n
+++ b/doc/registry.n
@@ -12,10 +12,11 @@
.SH NAME
registry \- Manipulate the Windows registry
.SH SYNOPSIS
-.sp
+.nf
\fBpackage require registry 1.3\fR
-.sp
+
\fBregistry \fR?\fI\-mode\fR? \fIoption keyName\fR ?\fIarg arg ...\fR?
+.fi
.BE
.SH DESCRIPTION
.PP
diff --git a/doc/return.n b/doc/return.n
index 58b1b75..a7eb197 100644
--- a/doc/return.n
+++ b/doc/return.n
@@ -13,11 +13,11 @@
.SH NAME
return \- Return from a procedure, or set return code of a script
.SH SYNOPSIS
+.nf
\fBreturn \fR?\fIresult\fR?
-.sp
\fBreturn \fR?\fB\-code \fIcode\fR? ?\fIresult\fR?
-.sp
\fBreturn \fR?\fIoption value \fR...? ?\fIresult\fR?
+.fi
.BE
.SH DESCRIPTION
.PP
diff --git a/doc/safe.n b/doc/safe.n
index a3a945e..44375e5 100644
--- a/doc/safe.n
+++ b/doc/safe.n
@@ -11,28 +11,26 @@
.SH NAME
safe \- Creating and manipulating safe interpreters
.SH SYNOPSIS
+.nf
\fB::safe::interpCreate\fR ?\fIchild\fR? ?\fIoptions...\fR?
-.sp
\fB::safe::interpInit\fI child\fR ?\fIoptions...\fR?
-.sp
\fB::safe::interpConfigure\fI child\fR ?\fIoptions...\fR?
-.sp
\fB::safe::interpDelete\fI child\fR
-.sp
\fB::safe::interpAddToAccessPath\fI child directory\fR
-.sp
\fB::safe::interpFindInAccessPath\fI child directory\fR
-.sp
\fB::safe::setSyncMode\fR ?\fInewValue\fR?
-.sp
\fB::safe::setLogCmd\fR ?\fIcmd arg...\fR?
+.fi
.SS OPTIONS
-.PP
+.nf
?\fB\-accessPath\fI pathList\fR?
?\fB\-autoPath\fI pathList\fR?
-?\fB\-statics\fI boolean\fR? ?\fB\-noStatics\fR?
-?\fB\-nested\fI boolean\fR? ?\fB\-nestedLoadOk\fR?
+?\fB\-statics\fI boolean\fR?
+?\fB\-noStatics\fR?
+?\fB\-nested\fI boolean\fR?
+?\fB\-nestedLoadOk\fR?
?\fB\-deleteHook\fI script\fR?
+.fi
.BE
.SH DESCRIPTION
Safe Tcl is a mechanism for executing untrusted Tcl scripts
@@ -484,17 +482,17 @@ safe interpreter's ::auto_path will be set to {} (by
(by \fB::safe::interpConfigure\fR). If the same command specifies a new
value for \fB\-autoPath\fR, it will be applied after the \fB\-accessPath\fR argument has
been processed.
-
+.PP
Examples of use with "Sync Mode" off: any of these commands will set the
::auto_path to a tokenized form of its value in the parent interpreter:
.RS
.PP
.CS
- safe::interpCreate foo
- safe::interpCreate foo -accessPath {}
- safe::interpInit bar
- safe::interpInit bar -accessPath {}
- safe::interpConfigure foo -accessPath {}
+safe::interpCreate foo
+safe::interpCreate foo -accessPath {}
+safe::interpInit bar
+safe::interpInit bar -accessPath {}
+safe::interpConfigure foo -accessPath {}
.CE
.RE
.PP
@@ -504,35 +502,35 @@ own value is also specified:
.RS
.PP
.CS
- safe::interpCreate foo -accessPath {
- /usr/local/TclHome/lib/tcl8.6
- /usr/local/TclHome/lib/tcl8.6/http1.0
- /usr/local/TclHome/lib/tcl8.6/opt0.4
- /usr/local/TclHome/lib/tcl8.6/msgs
- /usr/local/TclHome/lib/tcl8.6/encoding
- /usr/local/TclHome/lib
- }
+safe::interpCreate foo -accessPath {
+ /usr/local/TclHome/lib/tcl8.6
+ /usr/local/TclHome/lib/tcl8.6/http1.0
+ /usr/local/TclHome/lib/tcl8.6/opt0.4
+ /usr/local/TclHome/lib/tcl8.6/msgs
+ /usr/local/TclHome/lib/tcl8.6/encoding
+ /usr/local/TclHome/lib
+}
- # The child's ::auto_path must be given a suitable value:
+# The child's ::auto_path must be given a suitable value:
- safe::interpConfigure foo -autoPath {
- /usr/local/TclHome/lib/tcl8.6
- /usr/local/TclHome/lib
- }
+safe::interpConfigure foo -autoPath {
+ /usr/local/TclHome/lib/tcl8.6
+ /usr/local/TclHome/lib
+}
- # The two commands can be combined:
+# The two commands can be combined:
- safe::interpCreate foo -accessPath {
- /usr/local/TclHome/lib/tcl8.6
- /usr/local/TclHome/lib/tcl8.6/http1.0
- /usr/local/TclHome/lib/tcl8.6/opt0.4
- /usr/local/TclHome/lib/tcl8.6/msgs
- /usr/local/TclHome/lib/tcl8.6/encoding
- /usr/local/TclHome/lib
- } -autoPath {
- /usr/local/TclHome/lib/tcl8.6
- /usr/local/TclHome/lib
- }
+safe::interpCreate foo -accessPath {
+ /usr/local/TclHome/lib/tcl8.6
+ /usr/local/TclHome/lib/tcl8.6/http1.0
+ /usr/local/TclHome/lib/tcl8.6/opt0.4
+ /usr/local/TclHome/lib/tcl8.6/msgs
+ /usr/local/TclHome/lib/tcl8.6/encoding
+ /usr/local/TclHome/lib
+} -autoPath {
+ /usr/local/TclHome/lib/tcl8.6
+ /usr/local/TclHome/lib
+}
.CE
.RE
.PP
@@ -542,11 +540,11 @@ Example of use with "Sync Mode" off: the command
.RS
.PP
.CS
- safe::interpAddToAccessPath foo /usr/local/TclHome/lib/extras/Img1.4.11
+safe::interpAddToAccessPath foo /usr/local/TclHome/lib/extras/Img1.4.11
- lassign [safe::interpConfigure foo -autoPath] DUM childAutoPath
- lappend childAutoPath /usr/local/TclHome/lib/extras/Img1.4.11
- safe::interpConfigure foo -autoPath $childAutoPath
+lassign [safe::interpConfigure foo -autoPath] DUM childAutoPath
+lappend childAutoPath /usr/local/TclHome/lib/extras/Img1.4.11
+safe::interpConfigure foo -autoPath $childAutoPath
.CE
.RE
.SH "SEE ALSO"
diff --git a/doc/socket.n b/doc/socket.n
index b7b3228..8cc5029 100644
--- a/doc/socket.n
+++ b/doc/socket.n
@@ -12,10 +12,10 @@
.SH NAME
socket \- Open a TCP network connection
.SH SYNOPSIS
-.sp
+.nf
\fBsocket \fR?\fIoptions\fR? \fIhost port\fR
-.sp
\fBsocket\fR \fB\-server \fIcommand\fR ?\fIoptions\fR? \fIport\fR
+.fi
.BE
.SH DESCRIPTION
.PP
diff --git a/doc/tclsh.1 b/doc/tclsh.1
index 3a78737..28ad14c 100644
--- a/doc/tclsh.1
+++ b/doc/tclsh.1
@@ -96,6 +96,17 @@ its version number as part of the name. This has the advantage of
allowing multiple versions of Tcl to exist on the same system at once,
but also the disadvantage of making it harder to write scripts that
start up uniformly across different versions of Tcl.
+.PP
+Alternatively, you can use /usr/bin/env to locate tclsh on the path,
+like this:
+.PP
+.CS
+\fB#!/usr/bin/env tclsh\fR
+.CE
+.PP
+That has the advantages of being succinct and simple, but the
+disadvantage of not being flexible in the face of varying names for
+the binary.
.SH "VARIABLES"
.PP
\fBTclsh\fR sets the following global Tcl variables in addition to those
diff --git a/doc/timerate.n b/doc/timerate.n
index 5d49c86..f5f960c 100644
--- a/doc/timerate.n
+++ b/doc/timerate.n
@@ -11,11 +11,11 @@
.SH NAME
timerate \- Calibrated performance measurements of script execution time
.SH SYNOPSIS
+.nf
\fBtimerate \fIscript\fR ?\fItime\fR? ?\fImax-count\fR?
-.sp
-\fBtimerate \fR?\fB\-direct\fR? ?\fB\-overhead\fI double\fR? \fIscript\fR ?\fItime\fR? ?\fImax-count\fR?
-.sp
+\fBtimerate \fR?\fB\-direct\fR? ?\fB\-overhead\fI estimate\fR? \fIscript\fR ?\fItime\fR? ?\fImax-count\fR?
\fBtimerate \fR?\fB\-calibrate\fR? ?\fB\-direct\fR? \fIscript\fR ?\fItime\fR? ?\fImax-count\fR?
+.fi
.BE
.SH DESCRIPTION
.PP
@@ -32,12 +32,12 @@ application performance.
The first and second form will evaluate \fIscript\fR until the interval
\fItime\fR given in milliseconds elapses, or for 1000 milliseconds (1 second)
if \fItime\fR is not specified.
-.sp
+.PP
The parameter \fImax-count\fR could additionally impose a further restriction
by the maximal number of iterations to evaluate the script.
If \fImax-count\fR is specified, the evaluation will stop either this count of
iterations is reached or the time is exceeded.
-.sp
+.PP
It will then return a canonical Tcl-list of the form:
.PP
.CS
@@ -66,12 +66,13 @@ for future invocations of the \fBtimerate\fR command. If the \fItime\fR
parameter is not specified, the calibrate procedure runs for up to 10 seconds.
.RS
.PP
-Note that calibration is not thread safe in the current implementation.
+Note that the calibration process is not thread safe in the current implementation.
.RE
.TP
-\fB\-overhead \fIdouble\fR
+\fB\-overhead \fIestimate\fR
.
-The \fB\-overhead\fR parameter supplies an estimate (in microseconds) of the
+The \fB\-overhead\fR parameter supplies an estimate (in microseconds, which may
+be a floating point number) of the
measurement overhead of each iteration of the tested script. This quantity
will be subtracted from the measured time prior to reporting results. This can
be useful for removing the cost of interpreter state reset commands from the
diff --git a/doc/upvar.n b/doc/upvar.n
index 55632d1..6543be8 100644
--- a/doc/upvar.n
+++ b/doc/upvar.n
@@ -14,7 +14,6 @@ upvar \- Create link to variable in a different stack frame
.SH SYNOPSIS
\fBupvar \fR?\fIlevel\fR? \fIotherVar myVar \fR?\fIotherVar myVar \fR...?
.BE
-
.SH DESCRIPTION
.PP
This command arranges for one or more local variables in the current
diff --git a/doc/zipfs.3 b/doc/zipfs.3
index 0418acd..18b9ea5 100644
--- a/doc/zipfs.3
+++ b/doc/zipfs.3
@@ -14,7 +14,7 @@ TclZipfs_AppHook, TclZipfs_Mount, TclZipfs_MountBuffer, TclZipfs_Unmount \- hand
.SH SYNOPSIS
.nf
const char *
-\fBTclZipfs_AppHook(\fIargcPtr, argvPtr\fR)
+\fBTclZipfs_AppHook\fR(\fIargcPtr, argvPtr\fR)
.sp
int
\fBTclZipfs_Mount\fR(\fIinterp, zipname, mountpoint, password\fR)
diff --git a/doc/zipfs.n b/doc/zipfs.n
index b7bcab1..520c11b 100644
--- a/doc/zipfs.n
+++ b/doc/zipfs.n
@@ -15,7 +15,7 @@ zipfs \- Mount and work with ZIP files within Tcl
.SH SYNOPSIS
.nf
\fBpackage require tcl::zipfs \fR?\fB1.0\fR?
-.sp
+
\fBzipfs canonical\fR ?\fImntpnt\fR? \fIfilename\fR ?\fIZIPFS\fR?
\fBzipfs exists\fI filename\fR
\fBzipfs find\fI directoryName\fR