summaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/Access.32
-rw-r--r--doc/AddErrInfo.33
-rw-r--r--doc/Alloc.33
-rw-r--r--doc/AllowExc.33
-rw-r--r--doc/AppInit.33
-rw-r--r--doc/AssocData.33
-rw-r--r--doc/Async.33
-rw-r--r--doc/BackgdErr.33
-rw-r--r--doc/Backslash.33
-rw-r--r--doc/BoolObj.33
-rw-r--r--doc/ByteArrObj.33
-rw-r--r--doc/CallDel.33
-rw-r--r--doc/Cancel.33
-rw-r--r--doc/ChnlStack.33
-rw-r--r--doc/Class.32
-rw-r--r--doc/CmdCmplt.33
-rw-r--r--doc/Concat.33
-rw-r--r--doc/CrtChannel.33
-rw-r--r--doc/CrtChnlHdlr.33
-rw-r--r--doc/CrtCloseHdlr.33
-rw-r--r--doc/CrtCommand.33
-rw-r--r--doc/CrtFileHdlr.33
-rw-r--r--doc/CrtInterp.33
-rw-r--r--doc/CrtMathFnc.33
-rw-r--r--doc/CrtObjCmd.33
-rw-r--r--doc/CrtSlave.33
-rw-r--r--doc/CrtTimerHdlr.33
-rw-r--r--doc/CrtTrace.33
-rw-r--r--doc/DString.33
-rw-r--r--doc/DetachPids.33
-rw-r--r--doc/DictObj.33
-rw-r--r--doc/DoOneEvent.33
-rw-r--r--doc/DoWhenIdle.33
-rw-r--r--doc/DoubleObj.33
-rw-r--r--doc/DumpActiveMemory.33
-rw-r--r--doc/Encoding.33
-rw-r--r--doc/Ensemble.33
-rw-r--r--doc/Environment.33
-rw-r--r--doc/Eval.33
-rw-r--r--doc/Exit.33
-rw-r--r--doc/ExprLong.33
-rw-r--r--doc/ExprLongObj.33
-rw-r--r--doc/FileSystem.33
-rw-r--r--doc/FindExec.33
-rwxr-xr-xdoc/GetCwd.33
-rw-r--r--doc/GetHostName.33
-rw-r--r--doc/GetIndex.33
-rw-r--r--doc/GetInt.33
-rw-r--r--doc/GetOpnFl.33
-rw-r--r--doc/GetStdChan.33
-rw-r--r--doc/GetTime.33
-rwxr-xr-xdoc/GetVersion.33
-rw-r--r--doc/Hash.33
-rw-r--r--doc/Init.33
-rw-r--r--doc/InitStubs.33
-rw-r--r--doc/IntObj.33
-rw-r--r--doc/Interp.33
-rw-r--r--doc/Limit.33
-rw-r--r--doc/LinkVar.33
-rw-r--r--doc/ListObj.33
-rw-r--r--doc/Load.32
-rw-r--r--doc/Method.32
-rw-r--r--doc/NRE.32
-rw-r--r--doc/Namespace.33
-rw-r--r--doc/Notifier.33
-rw-r--r--doc/Object.33
-rw-r--r--doc/ObjectType.33
-rw-r--r--doc/OpenFileChnl.33
-rw-r--r--doc/OpenTcp.33
-rw-r--r--doc/Panic.33
-rw-r--r--doc/ParseArgs.32
-rw-r--r--doc/ParseCmd.33
-rw-r--r--doc/PkgRequire.32
-rw-r--r--doc/Preserve.33
-rw-r--r--doc/PrintDbl.33
-rw-r--r--doc/RecEvalObj.33
-rw-r--r--doc/RecordEval.33
-rw-r--r--doc/RegConfig.33
-rw-r--r--doc/RegExp.33
-rw-r--r--doc/SaveResult.33
-rw-r--r--doc/SetChanErr.33
-rw-r--r--doc/SetErrno.33
-rw-r--r--doc/SetRecLmt.33
-rw-r--r--doc/SetResult.33
-rw-r--r--doc/SetVar.33
-rw-r--r--doc/Signal.33
-rw-r--r--doc/Sleep.33
-rw-r--r--doc/SourceRCFile.33
-rw-r--r--doc/SplitList.33
-rw-r--r--doc/SplitPath.33
-rw-r--r--doc/StaticPkg.32
-rw-r--r--doc/StdChannels.33
-rw-r--r--doc/StrMatch.33
-rw-r--r--doc/StringObj.33
-rw-r--r--doc/SubstObj.33
-rw-r--r--doc/TCL_MEM_DEBUG.33
-rw-r--r--doc/Tcl.n2
-rw-r--r--doc/TclZlib.32
-rw-r--r--doc/Tcl_Main.33
-rw-r--r--doc/Thread.33
-rw-r--r--doc/ToUpper.33
-rw-r--r--doc/TraceCmd.33
-rw-r--r--doc/TraceVar.33
-rw-r--r--doc/Translate.33
-rw-r--r--doc/UniCharIsAlpha.33
-rw-r--r--doc/UpVar.33
-rw-r--r--doc/Utf.33
-rw-r--r--doc/WrongNumArgs.33
-rw-r--r--doc/after.n2
-rw-r--r--doc/append.n3
-rw-r--r--doc/apply.n2
-rw-r--r--doc/array.n3
-rw-r--r--doc/bgerror.n3
-rw-r--r--doc/binary.n2
-rw-r--r--doc/break.n2
-rw-r--r--doc/case.n3
-rw-r--r--doc/catch.n2
-rw-r--r--doc/cd.n3
-rw-r--r--doc/chan.n2
-rw-r--r--doc/class.n2
-rw-r--r--doc/clock.n2
-rw-r--r--doc/close.n2
-rw-r--r--doc/concat.n2
-rw-r--r--doc/continue.n2
-rw-r--r--doc/copy.n2
-rw-r--r--doc/coroutine.n2
-rw-r--r--doc/dde.n2
-rw-r--r--doc/define.n2
-rw-r--r--doc/dict.n2
-rw-r--r--doc/encoding.n3
-rw-r--r--doc/eof.n3
-rw-r--r--doc/error.n2
-rw-r--r--doc/eval.n2
-rw-r--r--doc/exec.n2
-rw-r--r--doc/exit.n3
-rw-r--r--doc/expr.n2
-rw-r--r--doc/fblocked.n3
-rw-r--r--doc/fconfigure.n2
-rw-r--r--doc/fcopy.n3
-rw-r--r--doc/file.n2
-rw-r--r--doc/fileevent.n3
-rw-r--r--doc/filename.n3
-rw-r--r--doc/flush.n3
-rw-r--r--doc/for.n2
-rw-r--r--doc/foreach.n3
-rw-r--r--doc/format.n2
-rw-r--r--doc/gets.n2
-rw-r--r--doc/glob.n2
-rw-r--r--doc/global.n3
-rw-r--r--doc/history.n3
-rw-r--r--doc/http.n2
-rw-r--r--doc/if.n2
-rw-r--r--doc/incr.n3
-rw-r--r--doc/info.n2
-rw-r--r--doc/interp.n2
-rw-r--r--doc/join.n3
-rw-r--r--doc/lappend.n3
-rw-r--r--doc/lassign.n4
-rw-r--r--doc/library.n2
-rw-r--r--doc/lindex.n2
-rw-r--r--doc/linsert.n2
-rw-r--r--doc/list.n2
-rw-r--r--doc/llength.n3
-rw-r--r--doc/lmap.n2
-rw-r--r--doc/load.n2
-rw-r--r--doc/lrange.n3
-rw-r--r--doc/lrepeat.n3
-rw-r--r--doc/lreplace.n3
-rw-r--r--doc/lreverse.n2
-rw-r--r--doc/lsearch.n2
-rwxr-xr-xdoc/lset.n4
-rw-r--r--doc/lsort.n2
-rw-r--r--doc/mathfunc.n2
-rw-r--r--doc/mathop.n2
-rw-r--r--doc/memory.n2
-rw-r--r--doc/msgcat.n2
-rw-r--r--doc/my.n2
-rw-r--r--doc/namespace.n2
-rw-r--r--doc/next.n2
-rw-r--r--doc/object.n2
-rw-r--r--doc/open.n2
-rw-r--r--doc/package.n2
-rw-r--r--doc/packagens.n3
-rw-r--r--doc/pid.n3
-rw-r--r--doc/pkgMkIndex.n2
-rw-r--r--doc/platform.n2
-rw-r--r--doc/platform_shell.n3
-rw-r--r--doc/prefix.n2
-rw-r--r--doc/proc.n2
-rw-r--r--doc/puts.n3
-rw-r--r--doc/pwd.n3
-rw-r--r--doc/re_syntax.n2
-rw-r--r--doc/read.n2
-rw-r--r--doc/refchan.n2
-rw-r--r--doc/regexp.n2
-rw-r--r--doc/registry.n2
-rw-r--r--doc/regsub.n2
-rw-r--r--doc/rename.n3
-rw-r--r--doc/return.n2
-rw-r--r--doc/safe.n2
-rw-r--r--doc/scan.n2
-rw-r--r--doc/seek.n2
-rw-r--r--doc/self.n2
-rw-r--r--doc/set.n3
-rw-r--r--doc/socket.n2
-rw-r--r--doc/source.n3
-rw-r--r--doc/split.n2
-rw-r--r--doc/string.n2
-rw-r--r--doc/subst.n2
-rw-r--r--doc/switch.n2
-rw-r--r--doc/tailcall.n2
-rw-r--r--doc/tclsh.13
-rw-r--r--doc/tcltest.n2
-rw-r--r--doc/tclvars.n2
-rw-r--r--doc/tell.n3
-rw-r--r--doc/throw.n2
-rw-r--r--doc/time.n2
-rw-r--r--doc/tm.n2
-rw-r--r--doc/trace.n2
-rw-r--r--doc/transchan.n2
-rw-r--r--doc/try.n2
-rw-r--r--doc/unknown.n3
-rw-r--r--doc/unload.n2
-rw-r--r--doc/unset.n2
-rw-r--r--doc/update.n3
-rw-r--r--doc/uplevel.n2
-rw-r--r--doc/upvar.n2
-rw-r--r--doc/variable.n3
-rw-r--r--doc/vwait.n2
-rw-r--r--doc/while.n3
-rw-r--r--doc/zlib.n2
231 files changed, 601 insertions, 0 deletions
diff --git a/doc/Access.3 b/doc/Access.3
index 1e82e07..553cf54 100644
--- a/doc/Access.3
+++ b/doc/Access.3
@@ -67,5 +67,7 @@ If \fIpath\fR exists, \fBTcl_Stat\fR returns 0 and the stat structure is
filled with data. Otherwise, -1 is returned, and no stat info is given.
.SH KEYWORDS
stat, access
+.SH CATEGORY
+Operating System Interface
.SH "SEE ALSO"
Tcl_FSAccess(3), Tcl_FSStat(3)
diff --git a/doc/AddErrInfo.3 b/doc/AddErrInfo.3
index b9c6a63..f422f8e 100644
--- a/doc/AddErrInfo.3
+++ b/doc/AddErrInfo.3
@@ -310,3 +310,6 @@ Tcl_DecrRefCount(3), Tcl_IncrRefCount(3), Tcl_Interp(3), Tcl_ResetResult(3),
Tcl_SetErrno(3), tclvars(n)
.SH KEYWORDS
error, value, value result, stack, trace, variable
+
+.SH CATEGORY
+Commands \ No newline at end of file
diff --git a/doc/Alloc.3 b/doc/Alloc.3
index ca4f949..c7e8467 100644
--- a/doc/Alloc.3
+++ b/doc/Alloc.3
@@ -90,3 +90,6 @@ module, use the macros rather than direct calls to \fBTcl_Alloc\fR, etc.
.SH KEYWORDS
alloc, allocation, free, malloc, memory, realloc, TCL_MEM_DEBUG
+
+.SH CATEGORY
+Utilities \ No newline at end of file
diff --git a/doc/AllowExc.3 b/doc/AllowExc.3
index ae595f1..02ae392 100644
--- a/doc/AllowExc.3
+++ b/doc/AllowExc.3
@@ -42,3 +42,6 @@ such as \fBTCL_BREAK\fR or \fBTCL_CONTINUE\fR in a meaningful way.
.SH KEYWORDS
continue, break, exception, interpreter
+
+.SH CATEGORY
+Invoking the Interpreter \ No newline at end of file
diff --git a/doc/AppInit.3 b/doc/AppInit.3
index e4ae971..24da853 100644
--- a/doc/AppInit.3
+++ b/doc/AppInit.3
@@ -81,3 +81,6 @@ Tcl_Main(3)
.SH KEYWORDS
application, argument, command, initialization, interpreter
+
+.SH CATEGORY
+Initialization \ No newline at end of file
diff --git a/doc/AssocData.3 b/doc/AssocData.3
index 59c26a4..c63c4af 100644
--- a/doc/AssocData.3
+++ b/doc/AssocData.3
@@ -85,3 +85,6 @@ returns \fBNULL\fR.
the given interpreter. Then it calls the deletion procedure.
.SH KEYWORDS
association, data, deletion procedure, interpreter, key
+
+.SH CATEGORY
+Utilities \ No newline at end of file
diff --git a/doc/Async.3 b/doc/Async.3
index d02f76d..26a7b1f 100644
--- a/doc/Async.3
+++ b/doc/Async.3
@@ -159,3 +159,6 @@ and then returning the \fIcode\fR argument.
.SH KEYWORDS
asynchronous event, handler, signal, Tcl_SaveInterpState, thread
+
+.SH CATEGORY
+The Event Loop \ No newline at end of file
diff --git a/doc/BackgdErr.3 b/doc/BackgdErr.3
index 3116671..e850c0d 100644
--- a/doc/BackgdErr.3
+++ b/doc/BackgdErr.3
@@ -76,3 +76,6 @@ Tcl_BackgroundException(interp, TCL_ERROR);
.SH KEYWORDS
background, bgerror, error, interp
+
+.SH CATEGORY
+Commands \ No newline at end of file
diff --git a/doc/Backslash.3 b/doc/Backslash.3
index 8b399fc..e385ebc 100644
--- a/doc/Backslash.3
+++ b/doc/Backslash.3
@@ -45,3 +45,6 @@ Tcl(n), Tcl_UtfBackslash(3)
.SH KEYWORDS
backslash, parse
+
+.SH CATEGORY
+Invoking the Interpreter \ No newline at end of file
diff --git a/doc/BoolObj.3 b/doc/BoolObj.3
index 6691140..70deb57 100644
--- a/doc/BoolObj.3
+++ b/doc/BoolObj.3
@@ -93,3 +93,6 @@ Tcl_NewObj, Tcl_IsShared, Tcl_GetBoolean
.SH KEYWORDS
boolean, value
+
+.SH CATEGORY
+Objects \ No newline at end of file
diff --git a/doc/ByteArrObj.3 b/doc/ByteArrObj.3
index 2921f68..fb042df 100644
--- a/doc/ByteArrObj.3
+++ b/doc/ByteArrObj.3
@@ -89,3 +89,6 @@ Tcl_GetStringFromObj, Tcl_NewObj, Tcl_IncrRefCount, Tcl_DecrRefCount
.SH KEYWORDS
value, binary data, byte array, utf, unicode, internationalization
+
+.SH CATEGORY
+Objects \ No newline at end of file
diff --git a/doc/CallDel.3 b/doc/CallDel.3
index dec4392..1a85c8a 100644
--- a/doc/CallDel.3
+++ b/doc/CallDel.3
@@ -65,3 +65,6 @@ a callback is received even if the application terminates without deleting the i
Tcl_CreateExitHandler(3), Tcl_CreateThreadExitHandler(3)
.SH KEYWORDS
callback, cleanup, delete, interpreter
+
+.SH CATEGORY
+Initialization \ No newline at end of file
diff --git a/doc/Cancel.3 b/doc/Cancel.3
index 80db3a3..a98c3c0 100644
--- a/doc/Cancel.3
+++ b/doc/Cancel.3
@@ -64,3 +64,6 @@ message is left and the interpreter's result will not be modified.
TIP 285
.SH KEYWORDS
cancel, unwind
+
+.SH CATEGORY
+The Event Loop \ No newline at end of file
diff --git a/doc/ChnlStack.3 b/doc/ChnlStack.3
index 9ec38b4..979b877 100644
--- a/doc/ChnlStack.3
+++ b/doc/ChnlStack.3
@@ -95,3 +95,6 @@ Notifier(3), Tcl_CreateChannel(3), Tcl_OpenFileChannel(3), vwait(n).
.SH KEYWORDS
channel, compression
+
+.SH CATEGORY
+Input/Output \ No newline at end of file
diff --git a/doc/Class.3 b/doc/Class.3
index 28cea9b..7aa2b46 100644
--- a/doc/Class.3
+++ b/doc/Class.3
@@ -230,6 +230,8 @@ invoked, as provided by the user; this object may be updated by the callback.
Method(3), oo::class(n), oo::copy(n), oo::define(n), oo::object(n)
.SH KEYWORDS
class, constructor, object
+.SH CATEGORY
+Object Orientation
.\" Local variables:
.\" mode: nroff
.\" fill-column: 78
diff --git a/doc/CmdCmplt.3 b/doc/CmdCmplt.3
index eeae039..717017d 100644
--- a/doc/CmdCmplt.3
+++ b/doc/CmdCmplt.3
@@ -32,3 +32,6 @@ If the command string is complete then it returns 1; otherwise it returns 0.
.SH KEYWORDS
complete command, partial command
+
+.SH CATEGORY
+Invoking the Interpreter \ No newline at end of file
diff --git a/doc/Concat.3 b/doc/Concat.3
index c38bf82..c98e601 100644
--- a/doc/Concat.3
+++ b/doc/Concat.3
@@ -49,3 +49,6 @@ by calling \fBTcl_Free\fR.
Tcl_ConcatObj
.SH KEYWORDS
concatenate, strings
+
+.SH CATEGORY
+Utilities \ No newline at end of file
diff --git a/doc/CrtChannel.3 b/doc/CrtChannel.3
index 57bb76e..5bbfc7a 100644
--- a/doc/CrtChannel.3
+++ b/doc/CrtChannel.3
@@ -926,3 +926,6 @@ When the above structure is registered as a channel type, the
Tcl_Close(3), Tcl_OpenFileChannel(3), Tcl_SetErrno(3), Tcl_QueueEvent(3), Tcl_StackChannel(3), Tcl_GetStdChannel(3)
.SH KEYWORDS
blocking, channel driver, channel registration, channel type, nonblocking
+
+.SH CATEGORY
+Input/Output \ No newline at end of file
diff --git a/doc/CrtChnlHdlr.3 b/doc/CrtChnlHdlr.3
index 1451e30..e7a7418 100644
--- a/doc/CrtChnlHdlr.3
+++ b/doc/CrtChnlHdlr.3
@@ -87,3 +87,6 @@ for which there are event handlers.
Notifier(3), Tcl_CreateChannel(3), Tcl_OpenFileChannel(3), vwait(n).
.SH KEYWORDS
blocking, callback, channel, events, handler, nonblocking.
+
+.SH CATEGORY
+Input/Output \ No newline at end of file
diff --git a/doc/CrtCloseHdlr.3 b/doc/CrtCloseHdlr.3
index a114f9c..82540c6 100644
--- a/doc/CrtCloseHdlr.3
+++ b/doc/CrtCloseHdlr.3
@@ -53,3 +53,6 @@ for a close handler for \fIchannel\fR.
close(n), Tcl_Close(3), Tcl_UnregisterChannel(3)
.SH KEYWORDS
callback, channel closing
+
+.SH CATEGORY
+Input/Output \ No newline at end of file
diff --git a/doc/CrtCommand.3 b/doc/CrtCommand.3
index c921999..befc500 100644
--- a/doc/CrtCommand.3
+++ b/doc/CrtCommand.3
@@ -141,3 +141,6 @@ Tcl_CreateObjCommand, Tcl_DeleteCommand, Tcl_GetCommandInfo,
Tcl_SetCommandInfo, Tcl_GetCommandName, Tcl_SetObjResult
.SH KEYWORDS
bind, command, create, delete, interpreter, namespace
+
+.SH CATEGORY
+Commands \ No newline at end of file
diff --git a/doc/CrtFileHdlr.3 b/doc/CrtFileHdlr.3
index cbc5e9f..856a40f 100644
--- a/doc/CrtFileHdlr.3
+++ b/doc/CrtFileHdlr.3
@@ -89,3 +89,6 @@ implementation of the Tcl notifier.
fileevent(n), Tcl_CreateTimerHandler(3), Tcl_DoWhenIdle(3)
.SH KEYWORDS
callback, file, handler
+
+.SH CATEGORY
+Input/Output \ No newline at end of file
diff --git a/doc/CrtInterp.3 b/doc/CrtInterp.3
index a248cf4..ce14bfe 100644
--- a/doc/CrtInterp.3
+++ b/doc/CrtInterp.3
@@ -147,3 +147,6 @@ due to inactivity.
Tcl_Preserve(3), Tcl_Release(3), tclvars(n)
.SH KEYWORDS
command, create, delete, interpreter
+
+.SH CATEGORY
+Initialization \ No newline at end of file
diff --git a/doc/CrtMathFnc.3 b/doc/CrtMathFnc.3
index cdde20b..d2a32f5 100644
--- a/doc/CrtMathFnc.3
+++ b/doc/CrtMathFnc.3
@@ -160,3 +160,6 @@ the math functions defined in the interpreter whose name matches
expr(n), info(n), Tcl_CreateObjCommand(3), Tcl_Free(3), Tcl_NewListObj(3)
.SH KEYWORDS
expression, mathematical function
+
+.SH CATEGORY
+Commands \ No newline at end of file
diff --git a/doc/CrtObjCmd.3 b/doc/CrtObjCmd.3
index faf8b74..65e404e 100644
--- a/doc/CrtObjCmd.3
+++ b/doc/CrtObjCmd.3
@@ -300,3 +300,6 @@ Returns NULL if the command is not found.
Tcl_CreateCommand(3), Tcl_ResetResult(3), Tcl_SetObjResult(3)
.SH KEYWORDS
bind, command, create, delete, namespace, value
+
+.SH CATEGORY
+Commands \ No newline at end of file
diff --git a/doc/CrtSlave.3 b/doc/CrtSlave.3
index 000ae58..9ea5684 100644
--- a/doc/CrtSlave.3
+++ b/doc/CrtSlave.3
@@ -234,3 +234,6 @@ interp
.SH KEYWORDS
alias, command, exposed commands, hidden commands, interpreter, invoke,
master, slave
+
+.SH CATEGORY
+Initialization \ No newline at end of file
diff --git a/doc/CrtTimerHdlr.3 b/doc/CrtTimerHdlr.3
index 2c9f90a..3ca6bbb 100644
--- a/doc/CrtTimerHdlr.3
+++ b/doc/CrtTimerHdlr.3
@@ -74,3 +74,6 @@ then the procedure does nothing.
after(n), Tcl_CreateFileHandler(3), Tcl_DoWhenIdle(3)
.SH KEYWORDS
callback, clock, handler, timer
+
+.SH CATEGORY
+The Event Loop \ No newline at end of file
diff --git a/doc/CrtTrace.3 b/doc/CrtTrace.3
index 3689add..78e6d31 100644
--- a/doc/CrtTrace.3
+++ b/doc/CrtTrace.3
@@ -189,3 +189,6 @@ associated with a call to \fBTcl_CreateTrace\fR to abort execution of
\fIcommand\fR.
.SH KEYWORDS
command, create, delete, interpreter, trace
+
+.SH CATEGORY
+Variables \ No newline at end of file
diff --git a/doc/DString.3 b/doc/DString.3
index a85b1cf..b6756ac 100644
--- a/doc/DString.3
+++ b/doc/DString.3
@@ -151,3 +151,6 @@ the string.
.SH KEYWORDS
append, dynamic string, free, result
+
+.SH CATEGORY
+Utilities \ No newline at end of file
diff --git a/doc/DetachPids.3 b/doc/DetachPids.3
index 0535cd8..0dbcc6d 100644
--- a/doc/DetachPids.3
+++ b/doc/DetachPids.3
@@ -73,3 +73,6 @@ the operating system.
.SH KEYWORDS
background, child, detach, process, wait
+
+.SH CATEGORY
+Operating System Interface \ No newline at end of file
diff --git a/doc/DictObj.3 b/doc/DictObj.3
index db8f39a..5f5455b 100644
--- a/doc/DictObj.3
+++ b/doc/DictObj.3
@@ -232,3 +232,6 @@ return TCL_OK;
Tcl_NewObj, Tcl_DecrRefCount, Tcl_IncrRefCount, Tcl_InitObjHashTable
.SH KEYWORDS
dict, dict value, dictionary, dictionary value, hash table, iteration, value
+
+.SH CATEGORY
+Objects \ No newline at end of file
diff --git a/doc/DoOneEvent.3 b/doc/DoOneEvent.3
index 9bdf926..45728e0 100644
--- a/doc/DoOneEvent.3
+++ b/doc/DoOneEvent.3
@@ -104,3 +104,6 @@ doing anything else.
.SH KEYWORDS
callback, event, handler, idle, timer
+
+.SH CATEGORY
+The Event Loop \ No newline at end of file
diff --git a/doc/DoWhenIdle.3 b/doc/DoWhenIdle.3
index 27a4b8c..b8f7929 100644
--- a/doc/DoWhenIdle.3
+++ b/doc/DoWhenIdle.3
@@ -85,3 +85,6 @@ better to use a timer handler with a zero timeout period.
after(n), Tcl_CreateFileHandler(3), Tcl_CreateTimerHandler(3)
.SH KEYWORDS
callback, defer, idle callback
+
+.SH CATEGORY
+The Event Loop \ No newline at end of file
diff --git a/doc/DoubleObj.3 b/doc/DoubleObj.3
index f811c89..a9ddc8b 100644
--- a/doc/DoubleObj.3
+++ b/doc/DoubleObj.3
@@ -62,3 +62,6 @@ calls to \fBTcl_GetDoubleFromObj\fR more efficient.
Tcl_NewObj, Tcl_DecrRefCount, Tcl_IncrRefCount, Tcl_GetObjResult
.SH KEYWORDS
double, double value, double type, internal representation, value, value type, string representation
+
+.SH CATEGORY
+Objects \ No newline at end of file
diff --git a/doc/DumpActiveMemory.3 b/doc/DumpActiveMemory.3
index 1f6cb46..e0a452d 100644
--- a/doc/DumpActiveMemory.3
+++ b/doc/DumpActiveMemory.3
@@ -66,3 +66,6 @@ TCL_MEM_DEBUG, memory
memory, debug
+
+.SH CATEGORY
+Utilities \ No newline at end of file
diff --git a/doc/Encoding.3 b/doc/Encoding.3
index 7bcb285..c2b7de5 100644
--- a/doc/Encoding.3
+++ b/doc/Encoding.3
@@ -590,3 +590,6 @@ for its script library. If the encoding file exists, but is
malformed, an error message will be left in \fIinterp\fR.
.SH KEYWORDS
utf, encoding, convert
+
+.SH CATEGORY
+Utilities \ No newline at end of file
diff --git a/doc/Ensemble.3 b/doc/Ensemble.3
index cd69bbd..b8db1d5 100644
--- a/doc/Ensemble.3
+++ b/doc/Ensemble.3
@@ -217,3 +217,6 @@ using \fBTcl_GetEnsembleNamespace\fR which returns a Tcl result code
namespace(n), Tcl_DeleteCommandFromToken(3)
.SH KEYWORDS
command, ensemble
+
+.SH CATEGORY
+Commands \ No newline at end of file
diff --git a/doc/Environment.3 b/doc/Environment.3
index 3753f43..7e496df 100644
--- a/doc/Environment.3
+++ b/doc/Environment.3
@@ -36,3 +36,6 @@ runtime.
tclvars(n)
.SH KEYWORDS
environment, variable
+
+.SH CATEGORY
+Operating System Interface \ No newline at end of file
diff --git a/doc/Eval.3 b/doc/Eval.3
index 0ecf7fa..558a6f2 100644
--- a/doc/Eval.3
+++ b/doc/Eval.3
@@ -209,3 +209,6 @@ from \fBTcl_EvalObjEx\fR other then \fBTCL_OK\fR or \fBTCL_ERROR\fR.
.SH KEYWORDS
execute, file, global, result, script, value
+
+.SH CATEGORY
+Invoking the Interpreter \ No newline at end of file
diff --git a/doc/Exit.3 b/doc/Exit.3
index fd251c7..e778df4 100644
--- a/doc/Exit.3
+++ b/doc/Exit.3
@@ -138,3 +138,6 @@ cast to a ClientData value.
exit(n)
.SH KEYWORDS
abort, callback, cleanup, dynamic loading, end application, exit, unloading, thread
+
+.SH CATEGORY
+Initialization \ No newline at end of file
diff --git a/doc/ExprLong.3 b/doc/ExprLong.3
index 4fa972e..07b872b 100644
--- a/doc/ExprLong.3
+++ b/doc/ExprLong.3
@@ -104,3 +104,6 @@ Tcl_ExprLongObj, Tcl_ExprDoubleObj, Tcl_ExprBooleanObj, Tcl_ExprObj
.SH KEYWORDS
boolean, double, evaluate, expression, integer, value, string
+
+.SH CATEGORY
+Invoking the Interpreter \ No newline at end of file
diff --git a/doc/ExprLongObj.3 b/doc/ExprLongObj.3
index 686c1cb..3fcaafa 100644
--- a/doc/ExprLongObj.3
+++ b/doc/ExprLongObj.3
@@ -104,3 +104,6 @@ Tcl_ExprLong, Tcl_ExprDouble, Tcl_ExprBoolean, Tcl_ExprString, Tcl_GetObjResult
.SH KEYWORDS
boolean, double, evaluate, expression, integer, value, string
+
+.SH CATEGORY
+Invoking the Interpreter \ No newline at end of file
diff --git a/doc/FileSystem.3 b/doc/FileSystem.3
index dd9eb77..5130776 100644
--- a/doc/FileSystem.3
+++ b/doc/FileSystem.3
@@ -1642,3 +1642,6 @@ directory to the value specified in \fIpathPtr\fR. The function returns
cd(n), file(n), filename(n), load(n), open(n), pwd(n), source(n), unload(n)
.SH KEYWORDS
stat, access, filesystem, vfs, virtual filesystem
+
+.SH CATEGORY
+Operating System Interface \ No newline at end of file
diff --git a/doc/FindExec.3 b/doc/FindExec.3
index e4b4ed0..51cd803 100644
--- a/doc/FindExec.3
+++ b/doc/FindExec.3
@@ -61,3 +61,6 @@ computed or unknown.
.SH KEYWORDS
binary, executable file
+
+.SH CATEGORY
+Initialization \ No newline at end of file
diff --git a/doc/GetCwd.3 b/doc/GetCwd.3
index 964e237..07b9ab6 100755
--- a/doc/GetCwd.3
+++ b/doc/GetCwd.3
@@ -50,3 +50,6 @@ must be UTF\-8. The function returns -1 on error or 0 on success.
.SH KEYWORDS
pwd
+
+.SH CATEGORY
+Operating System Interface \ No newline at end of file
diff --git a/doc/GetHostName.3 b/doc/GetHostName.3
index 28f3a4f..c26407e 100644
--- a/doc/GetHostName.3
+++ b/doc/GetHostName.3
@@ -25,3 +25,6 @@ not modify of free it.
.PP
.SH KEYWORDS
hostname
+
+.SH CATEGORY
+Operating System Interface \ No newline at end of file
diff --git a/doc/GetIndex.3 b/doc/GetIndex.3
index d32561a..2fa1f74 100644
--- a/doc/GetIndex.3
+++ b/doc/GetIndex.3
@@ -102,3 +102,6 @@ each of several array elements.
prefix(n), Tcl_WrongNumArgs(3)
.SH KEYWORDS
index, option, value, table lookup
+
+.SH CATEGORY
+Utilities \ No newline at end of file
diff --git a/doc/GetInt.3 b/doc/GetInt.3
index f77d337..ddbc511 100644
--- a/doc/GetInt.3
+++ b/doc/GetInt.3
@@ -84,3 +84,6 @@ are also acceptable.
.SH KEYWORDS
boolean, conversion, double, floating-point, integer
+
+.SH CATEGORY
+Utilities \ No newline at end of file
diff --git a/doc/GetOpnFl.3 b/doc/GetOpnFl.3
index 38aa976..32cbee4 100644
--- a/doc/GetOpnFl.3
+++ b/doc/GetOpnFl.3
@@ -56,3 +56,6 @@ Note that this interface is only supported on the Unix platform.
.SH KEYWORDS
channel, file handle, permissions, pipeline, read, write
+
+.SH CATEGORY
+Input/Output \ No newline at end of file
diff --git a/doc/GetStdChan.3 b/doc/GetStdChan.3
index e76ad66..0ce8194 100644
--- a/doc/GetStdChan.3
+++ b/doc/GetStdChan.3
@@ -84,3 +84,6 @@ Tcl_Close(3), Tcl_CreateChannel(3), Tcl_Main(3), tclsh(1)
.SH KEYWORDS
standard channel, standard input, standard output, standard error
+
+.SH CATEGORY
+Input/Output \ No newline at end of file
diff --git a/doc/GetTime.3 b/doc/GetTime.3
index f4da364..648346e 100644
--- a/doc/GetTime.3
+++ b/doc/GetTime.3
@@ -107,3 +107,6 @@ with regard to this situation, i.e. the existing behavior is retained.
clock(n)
.SH KEYWORDS
date, time
+
+.SH CATEGORY
+Operating System Interface \ No newline at end of file
diff --git a/doc/GetVersion.3 b/doc/GetVersion.3
index 47034d0..4960f5c 100755
--- a/doc/GetVersion.3
+++ b/doc/GetVersion.3
@@ -46,3 +46,6 @@ a NULL for the \fIpatchLevel\fR argument.
.SH KEYWORDS
version, patchlevel, major, minor, alpha, beta, release
+
+.SH CATEGORY
+Initialization \ No newline at end of file
diff --git a/doc/Hash.3 b/doc/Hash.3
index 73b89c5..7f74bc4 100644
--- a/doc/Hash.3
+++ b/doc/Hash.3
@@ -332,3 +332,6 @@ Tcl_Obj* keys use this function to decrement the reference count on the
value.
.SH KEYWORDS
hash table, key, lookup, search, value
+
+.SH CATEGORY
+Utilities \ No newline at end of file
diff --git a/doc/Init.3 b/doc/Init.3
index f421479..b4f0d97 100644
--- a/doc/Init.3
+++ b/doc/Init.3
@@ -32,3 +32,6 @@ Tcl_AppInit, Tcl_Main
.SH KEYWORDS
application, initialization, interpreter
+
+.SH CATEGORY
+Initialization \ No newline at end of file
diff --git a/doc/InitStubs.3 b/doc/InitStubs.3
index 4dc62c6..72ef1de 100644
--- a/doc/InitStubs.3
+++ b/doc/InitStubs.3
@@ -87,3 +87,6 @@ acceptable, does not support stubs, or any other error condition occurred.
Tk_InitStubs
.SH KEYWORDS
stubs
+
+.SH CATEGORY
+Initialization \ No newline at end of file
diff --git a/doc/IntObj.3 b/doc/IntObj.3
index 4b7b8a6..5d9ab16 100644
--- a/doc/IntObj.3
+++ b/doc/IntObj.3
@@ -150,3 +150,6 @@ Tcl_NewObj, Tcl_DecrRefCount, Tcl_IncrRefCount, Tcl_GetObjResult
.SH KEYWORDS
integer, integer value, integer type, internal representation, value,
value type, string representation
+
+.SH CATEGORY
+Objects \ No newline at end of file
diff --git a/doc/Interp.3 b/doc/Interp.3
index d908057..293fa4e 100644
--- a/doc/Interp.3
+++ b/doc/Interp.3
@@ -132,3 +132,6 @@ occurred.
.SH KEYWORDS
free, initialized, interpreter, malloc, result
+
+.SH CATEGORY
+Initialization \ No newline at end of file
diff --git a/doc/Limit.3 b/doc/Limit.3
index 2941ee8..5d1da0b 100644
--- a/doc/Limit.3
+++ b/doc/Limit.3
@@ -190,3 +190,6 @@ always invokes the \fIdeleteProc\fR on the \fIclientData\fR (unless
the \fIdeleteProc\fR was NULL or \fBTCL_STATIC\fR).
.SH KEYWORDS
interpreter, resource, limit, commands, time, callback
+
+.SH CATEGORY
+Invoking the Interpreter \ No newline at end of file
diff --git a/doc/LinkVar.3 b/doc/LinkVar.3
index dc71a45..05f25e3 100644
--- a/doc/LinkVar.3
+++ b/doc/LinkVar.3
@@ -205,3 +205,6 @@ to indicate to the thread hosting the interpreter that it is ready to run
Tcl_TraceVar(3)
.SH KEYWORDS
boolean, integer, link, read-only, real, string, trace, variable
+
+.SH CATEGORY
+Variables \ No newline at end of file
diff --git a/doc/ListObj.3 b/doc/ListObj.3
index bc6917d..66b4743 100644
--- a/doc/ListObj.3
+++ b/doc/ListObj.3
@@ -249,3 +249,6 @@ Tcl_NewObj(3), Tcl_DecrRefCount(3), Tcl_IncrRefCount(3), Tcl_GetObjResult(3)
.SH KEYWORDS
append, index, insert, internal representation, length, list, list value,
list type, value, value type, replace, string representation
+
+.SH CATEGORY
+Objects \ No newline at end of file
diff --git a/doc/Load.3 b/doc/Load.3
index bbfc662..2e277d6 100644
--- a/doc/Load.3
+++ b/doc/Load.3
@@ -64,6 +64,8 @@ operation on a handle that has been passed to \fBTcl_FSUnloadFile\fR.
Tcl_FSLoadFile(3), Tcl_FSUnloadFile(3), load(n), unload(n)
.SH KEYWORDS
binary code, loading, shared library
+.SH CATEGORY
+Operating System Interface
'\" Local Variables:
'\" mode: nroff
'\" fill-column: 78
diff --git a/doc/Method.3 b/doc/Method.3
index 43b3609..4e5132b 100644
--- a/doc/Method.3
+++ b/doc/Method.3
@@ -242,6 +242,8 @@ Class(3), oo::class(n), oo::define(n), oo::object(n)
.SH KEYWORDS
constructor, method, object
+.SH CATEGORY
+Object Orientation
.\" Local variables:
.\" mode: nroff
.\" fill-column: 78
diff --git a/doc/NRE.3 b/doc/NRE.3
index 4ad78b3..9e5b68a 100644
--- a/doc/NRE.3
+++ b/doc/NRE.3
@@ -324,5 +324,7 @@ and the second is for use when there is already a trampoline in place.
Tcl_CreateCommand(3), Tcl_CreateObjCommand(3), Tcl_EvalObjEx(3), Tcl_GetCommandFromObj(3), Tcl_ExprObj(3)
.SH KEYWORDS
stackless, nonrecursive, execute, command, global, value, result, script
+.SH CATEGORY
+Invoking the Interpreter
.SH COPYRIGHT
Copyright (c) 2008 by Kevin B. Kenny
diff --git a/doc/Namespace.3 b/doc/Namespace.3
index 2b47128..aff8bbf 100644
--- a/doc/Namespace.3
+++ b/doc/Namespace.3
@@ -163,3 +163,6 @@ its default.
Tcl_CreateCommand(3), Tcl_ListObjAppendList(3), Tcl_SetVar(3)
.SH KEYWORDS
namespace, command
+
+.SH CATEGORY
+Variables \ No newline at end of file
diff --git a/doc/Notifier.3 b/doc/Notifier.3
index f65d580..b3c1ee1 100644
--- a/doc/Notifier.3
+++ b/doc/Notifier.3
@@ -633,3 +633,6 @@ Tcl_CreateFileHandler(3), Tcl_DeleteFileHandler(3), Tcl_Sleep(3),
Tcl_DoOneEvent(3), Thread(3)
.SH KEYWORDS
event, notifier, event queue, event sources, file events, timer, idle, service mode, threads
+
+.SH CATEGORY
+The Event Loop \ No newline at end of file
diff --git a/doc/Object.3 b/doc/Object.3
index 3d52f61..8696f67 100644
--- a/doc/Object.3
+++ b/doc/Object.3
@@ -350,3 +350,6 @@ Tcl_ConvertToType(3), Tcl_GetIntFromObj(3), Tcl_ListObjAppendElement(3), Tcl_Lis
.SH KEYWORDS
internal representation, value, value creation, value type,
reference counting, string representation, type conversion
+
+.SH CATEGORY
+Objects \ No newline at end of file
diff --git a/doc/ObjectType.3 b/doc/ObjectType.3
index ca2c7a0..5ffcfcb 100644
--- a/doc/ObjectType.3
+++ b/doc/ObjectType.3
@@ -254,3 +254,6 @@ member.
Tcl_NewObj(3), Tcl_DecrRefCount(3), Tcl_IncrRefCount(3)
.SH KEYWORDS
internal representation, value, value type, string representation, type conversion
+
+.SH CATEGORY
+Objects \ No newline at end of file
diff --git a/doc/OpenFileChnl.3 b/doc/OpenFileChnl.3
index 82f51ce..5a6f862 100644
--- a/doc/OpenFileChnl.3
+++ b/doc/OpenFileChnl.3
@@ -646,3 +646,6 @@ DString(3), fconfigure(n), filename(n), fopen(3), Tcl_CreateChannel(3)
.SH KEYWORDS
access point, blocking, buffered I/O, channel, channel driver, end of file,
flush, input, nonblocking, output, read, seek, write
+
+.SH CATEGORY
+Input/Output \ No newline at end of file
diff --git a/doc/OpenTcp.3 b/doc/OpenTcp.3
index 78ac70b..e045689 100644
--- a/doc/OpenTcp.3
+++ b/doc/OpenTcp.3
@@ -167,3 +167,6 @@ socket handle is a \fBSOCKET\fR as defined in the WinSock API.
Tcl_OpenFileChannel(3), Tcl_RegisterChannel(3), vwait(n)
.SH KEYWORDS
channel, client, server, socket, TCP
+
+.SH CATEGORY
+Input/Output \ No newline at end of file
diff --git a/doc/Panic.3 b/doc/Panic.3
index 48aed2b..b1a73f3 100644
--- a/doc/Panic.3
+++ b/doc/Panic.3
@@ -87,3 +87,6 @@ taking a variable number of arguments it takes an argument list.
abort(3), printf(3), exec(n), format(n)
.SH KEYWORDS
abort, fatal, error
+
+.SH CATEGORY
+Commands \ No newline at end of file
diff --git a/doc/ParseArgs.3 b/doc/ParseArgs.3
index 1ceafe5..4a5617f 100644
--- a/doc/ParseArgs.3
+++ b/doc/ParseArgs.3
@@ -193,6 +193,8 @@ came from, and so should be copied if it needs to be retained. The
Tcl_GetIndexFromObj(3), Tcl_Main(3), Tcl_CreateObjCommand(3)
.SH KEYWORDS
argument, parse
+.SH CATEGORY
+Utilities
'\" Local Variables:
'\" fill-column: 78
'\" End:
diff --git a/doc/ParseCmd.3 b/doc/ParseCmd.3
index 5fd9b9c..9bd7a18 100644
--- a/doc/ParseCmd.3
+++ b/doc/ParseCmd.3
@@ -465,3 +465,6 @@ There are additional fields in the Tcl_Parse structure after the
referenced by code outside of these procedures.
.SH KEYWORDS
backslash substitution, braces, command, expression, parse, token, variable substitution
+
+.SH CATEGORY
+Invoking the Interpreter \ No newline at end of file
diff --git a/doc/PkgRequire.3 b/doc/PkgRequire.3
index d54d7af..87224b1 100644
--- a/doc/PkgRequire.3
+++ b/doc/PkgRequire.3
@@ -93,5 +93,7 @@ multiple requirements. The other forms are present for backward
compatibility and translate their invocations to this form.
.SH KEYWORDS
package, present, provide, require, version
+.SH CATEGORY
+Initialization
.SH "SEE ALSO"
package(n), Tcl_StaticPackage(3)
diff --git a/doc/Preserve.3 b/doc/Preserve.3
index 905a31d..75bab5c 100644
--- a/doc/Preserve.3
+++ b/doc/Preserve.3
@@ -108,3 +108,6 @@ counts in a separate structure.
Tcl_Interp, Tcl_Alloc
.SH KEYWORDS
free, reference count, storage
+
+.SH CATEGORY
+Utilities \ No newline at end of file
diff --git a/doc/PrintDbl.3 b/doc/PrintDbl.3
index 99b0113..f9d0c3b 100644
--- a/doc/PrintDbl.3
+++ b/doc/PrintDbl.3
@@ -49,3 +49,6 @@ will generate the same number when presented with the given string.
IEEE semantics of rounding to even apply to the conversion.
.SH KEYWORDS
conversion, double-precision, floating-point, string
+
+.SH CATEGORY
+Utilities \ No newline at end of file
diff --git a/doc/RecEvalObj.3 b/doc/RecEvalObj.3
index 44888f6..f075140 100644
--- a/doc/RecEvalObj.3
+++ b/doc/RecEvalObj.3
@@ -51,3 +51,6 @@ Tcl_EvalObjEx, Tcl_GetObjResult
.SH KEYWORDS
command, event, execute, history, interpreter, value, record
+
+.SH CATEGORY
+Invoking the Interpreter \ No newline at end of file
diff --git a/doc/RecordEval.3 b/doc/RecordEval.3
index a29f974..075d177 100644
--- a/doc/RecordEval.3
+++ b/doc/RecordEval.3
@@ -53,3 +53,6 @@ Tcl_RecordAndEvalObj
.SH KEYWORDS
command, event, execute, history, interpreter, record
+
+.SH CATEGORY
+Invoking the Interpreter \ No newline at end of file
diff --git a/doc/RegConfig.3 b/doc/RegConfig.3
index 063cc85..35568fe 100644
--- a/doc/RegConfig.3
+++ b/doc/RegConfig.3
@@ -109,3 +109,6 @@ typedef struct Tcl_Config {
.\" .SH "SEE ALSO"
.SH KEYWORDS
embedding, configuration, binary library
+
+.SH CATEGORY
+Initialization \ No newline at end of file
diff --git a/doc/RegExp.3 b/doc/RegExp.3
index 882976c..d2a95d0 100644
--- a/doc/RegExp.3
+++ b/doc/RegExp.3
@@ -381,3 +381,6 @@ to \-1.
re_syntax(n)
.SH KEYWORDS
match, pattern, regular expression, string, subexpression, Tcl_RegExpIndices, Tcl_RegExpInfo
+
+.SH CATEGORY
+Utilities \ No newline at end of file
diff --git a/doc/SaveResult.3 b/doc/SaveResult.3
index 8eaf38f..0775a12 100644
--- a/doc/SaveResult.3
+++ b/doc/SaveResult.3
@@ -118,3 +118,6 @@ result, either \fBTcl_RestoreResult\fR or
memory associated with the saved state.
.SH KEYWORDS
result, state, interp
+
+.SH CATEGORY
+Commands \ No newline at end of file
diff --git a/doc/SetChanErr.3 b/doc/SetChanErr.3
index 3d37f59..1587f6d 100644
--- a/doc/SetChanErr.3
+++ b/doc/SetChanErr.3
@@ -138,3 +138,6 @@ leave all their error information in the interpreter result.
Tcl_Close(3), Tcl_OpenFileChannel(3), Tcl_SetErrno(3)
.SH KEYWORDS
channel driver, error messages, channel type
+
+.SH CATEGORY
+Input/Output \ No newline at end of file
diff --git a/doc/SetErrno.3 b/doc/SetErrno.3
index 1735952..6264837 100644
--- a/doc/SetErrno.3
+++ b/doc/SetErrno.3
@@ -64,3 +64,6 @@ statically allocated and the caller must not free or modify them.
.SH KEYWORDS
errno, error code, global variables
+
+.SH CATEGORY
+Commands \ No newline at end of file
diff --git a/doc/SetRecLmt.3 b/doc/SetRecLmt.3
index e38ba2f..1e825f8 100644
--- a/doc/SetRecLmt.3
+++ b/doc/SetRecLmt.3
@@ -51,3 +51,6 @@ increasing the maximum size of the C stack.
.SH KEYWORDS
nesting depth, recursion
+
+.SH CATEGORY
+Invoking the Interpreter \ No newline at end of file
diff --git a/doc/SetResult.3 b/doc/SetResult.3
index bbeedf1..d9c6178 100644
--- a/doc/SetResult.3
+++ b/doc/SetResult.3
@@ -253,3 +253,6 @@ the value of \fIresult\fR passed to \fBTcl_SetResult\fR.
Tcl_AddErrorInfo, Tcl_CreateObjCommand, Tcl_SetErrorCode, Tcl_Interp
.SH KEYWORDS
append, command, element, list, value, result, return value, interpreter
+
+.SH CATEGORY
+Commands \ No newline at end of file
diff --git a/doc/SetVar.3 b/doc/SetVar.3
index 0605ff2..1d58460 100644
--- a/doc/SetVar.3
+++ b/doc/SetVar.3
@@ -247,3 +247,6 @@ Tcl_GetObjResult, Tcl_GetStringResult, Tcl_TraceVar
.SH KEYWORDS
array, get variable, interpreter, scalar, set, unset, value, variable
+
+.SH CATEGORY
+Variables \ No newline at end of file
diff --git a/doc/Signal.3 b/doc/Signal.3
index 5b12654..8cdb40c 100644
--- a/doc/Signal.3
+++ b/doc/Signal.3
@@ -39,3 +39,6 @@ statically allocated and the caller must not free or modify them.
.SH KEYWORDS
signals, signal numbers
+
+.SH CATEGORY
+Operating System Interface \ No newline at end of file
diff --git a/doc/Sleep.3 b/doc/Sleep.3
index 2423ba1..aad66c0 100644
--- a/doc/Sleep.3
+++ b/doc/Sleep.3
@@ -32,3 +32,6 @@ during the delay, the procedure \fBTcl_CreateTimerHandler\fR
should be used instead of \fBTcl_Sleep\fR.
.SH KEYWORDS
sleep, time, wait
+
+.SH CATEGORY
+The Event Loop \ No newline at end of file
diff --git a/doc/SourceRCFile.3 b/doc/SourceRCFile.3
index eabc47c..6805754 100644
--- a/doc/SourceRCFile.3
+++ b/doc/SourceRCFile.3
@@ -30,3 +30,6 @@ taken.
.SH KEYWORDS
application-specific initialization, main program, rc file
+
+.SH CATEGORY
+Initialization \ No newline at end of file
diff --git a/doc/SplitList.3 b/doc/SplitList.3
index 219dfc7..d77378b 100644
--- a/doc/SplitList.3
+++ b/doc/SplitList.3
@@ -186,3 +186,6 @@ argument, and the string may contain embedded nulls.
Tcl_ListObjGetElements(3)
.SH KEYWORDS
backslash, convert, element, list, merge, split, strings
+
+.SH CATEGORY
+Utilities \ No newline at end of file
diff --git a/doc/SplitPath.3 b/doc/SplitPath.3
index 3fd92ac..7affa74 100644
--- a/doc/SplitPath.3
+++ b/doc/SplitPath.3
@@ -95,3 +95,6 @@ each platform.
.SH KEYWORDS
file, filename, join, path, split, type
+
+.SH CATEGORY
+Utilities \ No newline at end of file
diff --git a/doc/StaticPkg.3 b/doc/StaticPkg.3
index fa6c32f..30831b9 100644
--- a/doc/StaticPkg.3
+++ b/doc/StaticPkg.3
@@ -66,5 +66,7 @@ be returned as the result of the \fBload\fR command that caused the
initialization procedure to be invoked.
.SH KEYWORDS
initialization procedure, package, static linking
+.SH CATEGORY
+Initialization
.SH "SEE ALSO"
load(n), package(n), Tcl_PkgRequire(3)
diff --git a/doc/StdChannels.3 b/doc/StdChannels.3
index b5b020e..9d365b9 100644
--- a/doc/StdChannels.3
+++ b/doc/StdChannels.3
@@ -118,3 +118,6 @@ uses method 2 to initialize the standard channels.
Tcl_CreateChannel(3), Tcl_RegisterChannel(3), Tcl_GetChannel(3), Tcl_GetStdChannel(3), Tcl_SetStdChannel(3), Tk_InitConsoleChannels(3), tclsh(1), wish(1), Tcl_Main(3), Tk_MainEx(3)
.SH KEYWORDS
standard channels
+
+.SH CATEGORY
+Input/Output \ No newline at end of file
diff --git a/doc/StrMatch.3 b/doc/StrMatch.3
index 5adaf6e..84be357 100644
--- a/doc/StrMatch.3
+++ b/doc/StrMatch.3
@@ -47,3 +47,6 @@ pattern are essentially matched in the lower case.
.SH KEYWORDS
match, pattern, string
+
+.SH CATEGORY
+Utilities \ No newline at end of file
diff --git a/doc/StringObj.3 b/doc/StringObj.3
index e6f9d32..d8129e4 100644
--- a/doc/StringObj.3
+++ b/doc/StringObj.3
@@ -382,3 +382,6 @@ Tcl_NewObj(3), Tcl_IncrRefCount(3), Tcl_DecrRefCount(3), format(n), sprintf(3)
.SH KEYWORDS
append, internal representation, value, value type, string value,
string type, string representation, concat, concatenate, unicode
+
+.SH CATEGORY
+Objects \ No newline at end of file
diff --git a/doc/SubstObj.3 b/doc/SubstObj.3
index d5a52c3..3e1745f 100644
--- a/doc/SubstObj.3
+++ b/doc/SubstObj.3
@@ -66,3 +66,6 @@ performed after that point.
subst(n)
.SH KEYWORDS
backslash substitution, command substitution, variable substitution
+
+.SH CATEGORY
+Invoking the Interpreter \ No newline at end of file
diff --git a/doc/TCL_MEM_DEBUG.3 b/doc/TCL_MEM_DEBUG.3
index 5a3e08a..7460600 100644
--- a/doc/TCL_MEM_DEBUG.3
+++ b/doc/TCL_MEM_DEBUG.3
@@ -78,3 +78,6 @@ to remove the calls after you find the problem.
ckalloc, memory, Tcl_ValidateAllMemory, Tcl_DumpActiveMemory
.SH KEYWORDS
memory, debug
+
+.SH CATEGORY
+Utilities \ No newline at end of file
diff --git a/doc/Tcl.n b/doc/Tcl.n
index 68146ab..e6e97ee 100644
--- a/doc/Tcl.n
+++ b/doc/Tcl.n
@@ -264,6 +264,8 @@ the variable becomes part of a single word, even if the variable's
value contains spaces.
.SH KEYWORDS
backslash, command, comment, script, substitution, variable
+.SH CATEGORY
+General
'\" Local Variables:
'\" mode: nroff
'\" fill-column: 78
diff --git a/doc/TclZlib.3 b/doc/TclZlib.3
index 854a525..7b6c4a9 100644
--- a/doc/TclZlib.3
+++ b/doc/TclZlib.3
@@ -270,6 +270,8 @@ Tcl_NewByteArrayObj(3), zlib(n)
'\"Tcl_StackChannel(3)
.SH "KEYWORDS"
compress, decompress, deflate, gzip, inflate
+.SH CATEGORY
+Input/Output
'\" Local Variables:
'\" mode: nroff
'\" fill-column: 78
diff --git a/doc/Tcl_Main.3 b/doc/Tcl_Main.3
index 0a69835..324a854 100644
--- a/doc/Tcl_Main.3
+++ b/doc/Tcl_Main.3
@@ -194,3 +194,6 @@ tclsh(1), Tcl_GetStdChannel(3), Tcl_StandardChannels(3), Tcl_AppInit(3),
exit(n), encoding(n)
.SH KEYWORDS
application-specific initialization, command-line arguments, main program
+
+.SH CATEGORY
+Initialization \ No newline at end of file
diff --git a/doc/Thread.3 b/doc/Thread.3
index ca135ee..e245377 100644
--- a/doc/Thread.3
+++ b/doc/Thread.3
@@ -239,3 +239,6 @@ Tcl_ExitThread(3), Tcl_FinalizeThread(3), Tcl_CreateThreadExitHandler(3),
Tcl_DeleteThreadExitHandler(3), Thread
.SH KEYWORDS
thread, mutex, condition variable, thread local storage
+
+.SH CATEGORY
+The Event Loop \ No newline at end of file
diff --git a/doc/ToUpper.3 b/doc/ToUpper.3
index d6b3006..5c3b69f 100644
--- a/doc/ToUpper.3
+++ b/doc/ToUpper.3
@@ -86,3 +86,6 @@ routines.
.SH KEYWORDS
utf, unicode, toupper, tolower, totitle, case
+
+.SH CATEGORY
+Utilities \ No newline at end of file
diff --git a/doc/TraceCmd.3 b/doc/TraceCmd.3
index 5cc1337..71e7a01 100644
--- a/doc/TraceCmd.3
+++ b/doc/TraceCmd.3
@@ -161,3 +161,6 @@ from misusing the interpreter during traces with \fBTCL_INTERP_DESTROYED\fR
set.
.SH KEYWORDS
clientData, trace, command
+
+.SH CATEGORY
+Variables \ No newline at end of file
diff --git a/doc/TraceVar.3 b/doc/TraceVar.3
index 6201a4f..24b34a9 100644
--- a/doc/TraceVar.3
+++ b/doc/TraceVar.3
@@ -378,3 +378,6 @@ nor is there Tcl-level access to array traces.
trace(n)
.SH KEYWORDS
clientData, trace, variable
+
+.SH CATEGORY
+Variables \ No newline at end of file
diff --git a/doc/Translate.3 b/doc/Translate.3
index 55233c3..d280178 100644
--- a/doc/Translate.3
+++ b/doc/Translate.3
@@ -69,3 +69,6 @@ has its default empty value when \fBTcl_TranslateFileName\fR is invoked.
filename(n)
.SH KEYWORDS
file name, home directory, tilde, translate, user
+
+.SH CATEGORY
+Operating System Interface \ No newline at end of file
diff --git a/doc/UniCharIsAlpha.3 b/doc/UniCharIsAlpha.3
index 6029b2d..1de04e7 100644
--- a/doc/UniCharIsAlpha.3
+++ b/doc/UniCharIsAlpha.3
@@ -89,3 +89,6 @@ a connector punctuation mark.
.SH KEYWORDS
unicode, classification
+
+.SH CATEGORY
+Utilities \ No newline at end of file
diff --git a/doc/UpVar.3 b/doc/UpVar.3
index f1e6fe4..29f54fd 100644
--- a/doc/UpVar.3
+++ b/doc/UpVar.3
@@ -72,3 +72,6 @@ it must exist as a linked variable.
.SH KEYWORDS
linked variable, upvar, variable
+
+.SH CATEGORY
+Variables \ No newline at end of file
diff --git a/doc/Utf.3 b/doc/Utf.3
index 55906e7..401ebdb 100644
--- a/doc/Utf.3
+++ b/doc/Utf.3
@@ -257,3 +257,6 @@ supported by \fBTcl_UtfBackslash\fR.
.SH KEYWORDS
utf, unicode, backslash
+
+.SH CATEGORY
+Utilities \ No newline at end of file
diff --git a/doc/WrongNumArgs.3 b/doc/WrongNumArgs.3
index 15d5caf..89f97d9 100644
--- a/doc/WrongNumArgs.3
+++ b/doc/WrongNumArgs.3
@@ -77,3 +77,6 @@ wrong # args: should be "foo barfly fileName count"
Tcl_GetIndexFromObj(3)
.SH KEYWORDS
command, error message, wrong number of arguments
+
+.SH CATEGORY
+Utilities \ No newline at end of file
diff --git a/doc/after.n b/doc/after.n
index d6181c6..c7b2b95 100644
--- a/doc/after.n
+++ b/doc/after.n
@@ -146,6 +146,8 @@ doOneStep
concat(n), interp(n), update(n), vwait(n)
.SH KEYWORDS
cancel, delay, idle callback, sleep, time
+.SH CATEGORY
+Tcl Control Constructs
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/append.n b/doc/append.n
index 034068d..1d1dbd9 100644
--- a/doc/append.n
+++ b/doc/append.n
@@ -44,6 +44,9 @@ puts $var
concat(n), lappend(n)
.SH KEYWORDS
append, variable
+.SH CATEGORY
+Tcl String Handling
'\" Local Variables:
'\" mode: nroff
'\" End:
+'\" End:
diff --git a/doc/apply.n b/doc/apply.n
index 9d373e1..f45d663 100644
--- a/doc/apply.n
+++ b/doc/apply.n
@@ -97,6 +97,8 @@ set vbl abc
proc(n), uplevel(n)
.SH KEYWORDS
anonymous function, argument, lambda, procedure,
+.SH CATEGORY
+Tcl Control Constructs
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/array.n b/doc/array.n
index 47f9624..7e472ab 100644
--- a/doc/array.n
+++ b/doc/array.n
@@ -185,3 +185,6 @@ foreach color [lsort [\fBarray names\fR colorcount]] {
list(n), string(n), variable(n), trace(n), foreach(n)
.SH KEYWORDS
array, element names, search
+
+.SH CATEGORY
+Tcl Variables and Procedures \ No newline at end of file
diff --git a/doc/bgerror.n b/doc/bgerror.n
index ac53eca..247446f 100644
--- a/doc/bgerror.n
+++ b/doc/bgerror.n
@@ -88,3 +88,6 @@ proc bgerror {message} {
after(n), interp(n), tclvars(n)
.SH KEYWORDS
background error, reporting
+
+.SH CATEGORY
+Tcl Interpreter Routines \ No newline at end of file
diff --git a/doc/binary.n b/doc/binary.n
index 68bf9cc..50a2a91 100644
--- a/doc/binary.n
+++ b/doc/binary.n
@@ -887,6 +887,8 @@ puts [\fBbinary encode\fR base64 \-maxlen 64 $data]
format(n), scan(n), tclvars(n)
.SH KEYWORDS
binary, format, scan
+.SH CATEGORY
+Tcl String Handling
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/break.n b/doc/break.n
index cef37c6..da72287 100644
--- a/doc/break.n
+++ b/doc/break.n
@@ -42,6 +42,8 @@ for {set x 0} {$x<10} {incr x} {
catch(n), continue(n), for(n), foreach(n), return(n), while(n)
.SH KEYWORDS
abort, break, loop
+.SH CATEGORY
+Tcl Control Constructs
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/case.n b/doc/case.n
index 0155a61..ee9a86c 100644
--- a/doc/case.n
+++ b/doc/case.n
@@ -58,3 +58,6 @@ switch(n)
.SH KEYWORDS
case, match, regular expression
+
+.SH CATEGORY
+Tcl Control Constructs \ No newline at end of file
diff --git a/doc/catch.n b/doc/catch.n
index a05ca71..1c8e5ff 100644
--- a/doc/catch.n
+++ b/doc/catch.n
@@ -118,6 +118,8 @@ documentation for the \fBreturn\fR command.
break(n), continue(n), dict(n), error(n), info(n), return(n), tclvars(n)
.SH KEYWORDS
catch, error, exception
+.SH CATEGORY
+Tcl Control Constructs
'\" Local Variables:
'\" mode: nroff
'\" fill-column: 78
diff --git a/doc/cd.n b/doc/cd.n
index eb3854c..ceef31d 100644
--- a/doc/cd.n
+++ b/doc/cd.n
@@ -41,3 +41,6 @@ current one:
filename(n), glob(n), pwd(n)
.SH KEYWORDS
working directory
+
+.SH CATEGORY
+Tcl System Related \ No newline at end of file
diff --git a/doc/chan.n b/doc/chan.n
index c518455..231a220 100644
--- a/doc/chan.n
+++ b/doc/chan.n
@@ -831,6 +831,8 @@ fileevent(n), flush(n), gets(n), open(n), puts(n), read(n), seek(n),
socket(n), tell(n), refchan(n), transchan(n)
.SH KEYWORDS
channel, input, output, events, offset
+.SH CATEGORY
+Tcl Input/Output
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/class.n b/doc/class.n
index 88d1b44..f3d4e5d 100644
--- a/doc/class.n
+++ b/doc/class.n
@@ -130,6 +130,8 @@ $b eat \fI\(-> error "unknown command"\fR
oo::define(n), oo::object(n)
.SH KEYWORDS
class, metaclass, object
+.SH CATEGORY
+Tcl Object Orientation
.\" Local variables:
.\" mode: nroff
.\" fill-column: 78
diff --git a/doc/clock.n b/doc/clock.n
index 8708029..b6e91b6 100644
--- a/doc/clock.n
+++ b/doc/clock.n
@@ -930,6 +930,8 @@ of a long month to a short month.
msgcat(n)
.SH KEYWORDS
clock, date, time
+.SH CATEGORY
+Tcl System Related
.SH "COPYRIGHT"
Copyright (c) 2004 Kevin B. Kenny <kennykb@acm.org>. All rights reserved.
'\" Local Variables:
diff --git a/doc/close.n b/doc/close.n
index 2826d82..3929a86 100644
--- a/doc/close.n
+++ b/doc/close.n
@@ -102,6 +102,8 @@ proc withOpenFile {filename channelVar script} {
file(n), open(n), socket(n), eof(n), Tcl_StandardChannels(3)
.SH KEYWORDS
blocking, channel, close, nonblocking, half-close
+.SH CATEGORY
+Tcl Input/Output
'\" Local Variables:
'\" mode: nroff
'\" fill-column: 78
diff --git a/doc/concat.n b/doc/concat.n
index b079b30..a5f73ed 100644
--- a/doc/concat.n
+++ b/doc/concat.n
@@ -53,6 +53,8 @@ values, as can be seen here:
append(n), eval(n), join(n)
.SH KEYWORDS
concatenate, join, list
+.SH CATEGORY
+Tcl List Handling
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/continue.n b/doc/continue.n
index de2f07c..7ff72f8 100644
--- a/doc/continue.n
+++ b/doc/continue.n
@@ -42,6 +42,8 @@ for {set x 0} {$x<10} {incr x} {
break(n), for(n), foreach(n), return(n), while(n)
.SH KEYWORDS
continue, iteration, loop
+.SH CATEGORY
+Tcl Control Constructs
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/copy.n b/doc/copy.n
index f5002f8..ed3e5b2 100644
--- a/doc/copy.n
+++ b/doc/copy.n
@@ -60,6 +60,8 @@ dst msg \fI\(-> prints "foo"\fR
oo::class(n), oo::define(n), oo::object(n)
.SH KEYWORDS
clone, copy, duplication, object
+.SH CATEGORY
+Tcl Object Orientation
.\" Local variables:
.\" mode: nroff
.\" fill-column: 78
diff --git a/doc/coroutine.n b/doc/coroutine.n
index 035d58a..c153ff7 100644
--- a/doc/coroutine.n
+++ b/doc/coroutine.n
@@ -199,6 +199,8 @@ made inner 1 context=:: name=::demo::coroEg
apply(n), info(n), proc(n), return(n)
.SH KEYWORDS
coroutine, generator
+.SH CATEGORY
+Tcl Control Constructs
'\" Local Variables:
'\" mode: nroff
'\" fill-column: 78
diff --git a/doc/dde.n b/doc/dde.n
index 3fe0f87..7252211 100644
--- a/doc/dde.n
+++ b/doc/dde.n
@@ -184,6 +184,8 @@ package require dde
tk(n), winfo(n), send(n)
.SH KEYWORDS
application, dde, name, remote execution
+.SH CATEGORY
+Tcl Platform-specific
'\"Local Variables:
'\"mode: nroff
'\"End:
diff --git a/doc/define.n b/doc/define.n
index 1c36ca3..2f7c734 100644
--- a/doc/define.n
+++ b/doc/define.n
@@ -398,6 +398,8 @@ inst m2 \fI\(-> prints "blue brick"\fR
next(n), oo::class(n), oo::object(n)
.SH KEYWORDS
class, definition, method, object, slot
+.SH CATEGORY
+Tcl Object Orientation
.\" Local variables:
.\" mode: nroff
.\" fill-column: 78
diff --git a/doc/dict.n b/doc/dict.n
index c014448..33c620f 100644
--- a/doc/dict.n
+++ b/doc/dict.n
@@ -436,6 +436,8 @@ puts $foo
append(n), array(n), foreach(n), mapeach(n), incr(n), list(n), lappend(n), set(n)
.SH KEYWORDS
dictionary, create, update, lookup, iterate, filter, map
+.SH CATEGORY
+Tcl List Handling
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/encoding.n b/doc/encoding.n
index 5269a18..4f08598 100644
--- a/doc/encoding.n
+++ b/doc/encoding.n
@@ -93,3 +93,6 @@ which is the Hiragana letter HA.
Tcl_GetEncoding(3)
.SH KEYWORDS
encoding, unicode
+
+.SH CATEGORY
+Tcl Library Procedures \ No newline at end of file
diff --git a/doc/eof.n b/doc/eof.n
index 017b10e..8ad452b 100644
--- a/doc/eof.n
+++ b/doc/eof.n
@@ -59,3 +59,6 @@ while {1} {
file(n), open(n), close(n), fblocked(n), Tcl_StandardChannels(3)
.SH KEYWORDS
channel, end of file
+
+.SH CATEGORY
+Tcl Input/Output \ No newline at end of file
diff --git a/doc/error.n b/doc/error.n
index d61bd7b..1341882 100644
--- a/doc/error.n
+++ b/doc/error.n
@@ -73,6 +73,8 @@ if {1+2 != 3} {
catch(n), return(n)
.SH KEYWORDS
error, exception
+.SH CATEGORY
+Tcl Control Constructs
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/eval.n b/doc/eval.n
index da88757..d0788b6 100644
--- a/doc/eval.n
+++ b/doc/eval.n
@@ -78,6 +78,8 @@ set var [linsert $var 0 {*}$args]
catch(n), concat(n), error(n), interp(n), list(n), namespace(n), subst(n), tclvars(n), uplevel(n)
.SH KEYWORDS
concatenate, evaluate, script
+.SH CATEGORY
+Tcl Control Constructs
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/exec.n b/doc/exec.n
index 5072d61..f5777fc 100644
--- a/doc/exec.n
+++ b/doc/exec.n
@@ -511,6 +511,8 @@ file mkdir $secureDir
error(n), file(n), open(n)
.SH KEYWORDS
execute, pipeline, redirection, subprocess
+.SH CATEGORY
+Tcl System Related
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/exit.n b/doc/exit.n
index ceb0529..157ccfd 100644
--- a/doc/exit.n
+++ b/doc/exit.n
@@ -49,3 +49,6 @@ if {[catch {main} msg options]} {
exec(n)
.SH KEYWORDS
abort, exit, process
+
+.SH CATEGORY
+Tcl System Related \ No newline at end of file
diff --git a/doc/expr.n b/doc/expr.n
index 8698f5c..8eea47f 100644
--- a/doc/expr.n
+++ b/doc/expr.n
@@ -464,6 +464,8 @@ array(n), for(n), if(n), mathfunc(n), mathop(n), namespace(n), proc(n),
string(n), Tcl(n), while(n)
.SH KEYWORDS
arithmetic, boolean, compare, expression, fuzzy comparison
+.SH CATEGORY
+General
.SH COPYRIGHT
.nf
Copyright (c) 1993 The Regents of the University of California.
diff --git a/doc/fblocked.n b/doc/fblocked.n
index 2841aee..14786be 100644
--- a/doc/fblocked.n
+++ b/doc/fblocked.n
@@ -65,3 +65,6 @@ vwait forever
gets(n), open(n), read(n), socket(n), Tcl_StandardChannels(3)
.SH KEYWORDS
blocking, nonblocking
+
+.SH CATEGORY
+Tcl Input/Output \ No newline at end of file
diff --git a/doc/fconfigure.n b/doc/fconfigure.n
index 550d071..6145a57 100644
--- a/doc/fconfigure.n
+++ b/doc/fconfigure.n
@@ -284,6 +284,8 @@ Tcl_StandardChannels(3)
blocking, buffering, carriage return, end of line, flushing, linemode,
newline, nonblocking, platform, translation, encoding, filter, byte array,
binary
+.SH CATEGORY
+Tcl Input/Output
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/fcopy.n b/doc/fcopy.n
index 6a4bf1a..cfcb298 100644
--- a/doc/fcopy.n
+++ b/doc/fcopy.n
@@ -153,3 +153,6 @@ vwait done
eof(n), fblocked(n), fconfigure(n), file(n)
.SH KEYWORDS
blocking, channel, end of line, end of file, nonblocking, read, translation
+
+.SH CATEGORY
+Tcl Input/Output \ No newline at end of file
diff --git a/doc/file.n b/doc/file.n
index eef4647..74e038f 100644
--- a/doc/file.n
+++ b/doc/file.n
@@ -537,6 +537,8 @@ fblocked(n), flush(n)
.SH KEYWORDS
attributes, copy files, delete files, directory, file, move files, name,
rename files, stat, user
+.SH CATEGORY
+Tcl Input/Output
'\" Local Variables:
'\" mode: nroff
'\" fill-column: 78
diff --git a/doc/fileevent.n b/doc/fileevent.n
index df48d2a..f0f876f 100644
--- a/doc/fileevent.n
+++ b/doc/fileevent.n
@@ -151,3 +151,6 @@ fconfigure(n), gets(n), interp(n), puts(n), read(n), Tcl_StandardChannels(3)
.SH KEYWORDS
asynchronous I/O, blocking, channel, event handler, nonblocking, readable,
script, writable.
+
+.SH CATEGORY
+Tcl Input/Output \ No newline at end of file
diff --git a/doc/filename.n b/doc/filename.n
index d481fc9..1689090 100644
--- a/doc/filename.n
+++ b/doc/filename.n
@@ -176,3 +176,6 @@ file(n), glob(n)
.SH KEYWORDS
current directory, absolute file name, relative file name,
volume-relative file name, portability
+
+.SH CATEGORY
+General \ No newline at end of file
diff --git a/doc/flush.n b/doc/flush.n
index b8bf3e9..711cef7 100644
--- a/doc/flush.n
+++ b/doc/flush.n
@@ -43,3 +43,6 @@ puts "Hello there, $name!"
file(n), open(n), socket(n), Tcl_StandardChannels(3)
.SH KEYWORDS
blocking, buffer, channel, flush, nonblocking, output
+
+.SH CATEGORY
+Tcl Input/Output \ No newline at end of file
diff --git a/doc/for.n b/doc/for.n
index 4c65793..119ca6c 100644
--- a/doc/for.n
+++ b/doc/for.n
@@ -82,6 +82,8 @@ Print out the powers of two from 1 to 1024:
break(n), continue(n), foreach(n), while(n)
.SH KEYWORDS
boolean, for, iteration, loop
+.SH CATEGORY
+Tcl Control Constructs
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/foreach.n b/doc/foreach.n
index fb075d3..a0895b5 100644
--- a/doc/foreach.n
+++ b/doc/foreach.n
@@ -102,3 +102,6 @@ for(n), while(n), break(n), continue(n)
.SH KEYWORDS
foreach, iteration, list, loop
+
+.SH CATEGORY
+Tcl Control Constructs \ No newline at end of file
diff --git a/doc/format.n b/doc/format.n
index 23dfe60..1eba1f7 100644
--- a/doc/format.n
+++ b/doc/format.n
@@ -280,6 +280,8 @@ puts $sep
scan(n), sprintf(3), string(n)
.SH KEYWORDS
conversion specifier, format, sprintf, string, substitution
+.SH CATEGORY
+Tcl String Handling
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/gets.n b/doc/gets.n
index fe24058..f90ac40 100644
--- a/doc/gets.n
+++ b/doc/gets.n
@@ -65,6 +65,8 @@ file(n), eof(n), fblocked(n), Tcl_StandardChannels(3)
.SH KEYWORDS
blocking, channel, end of file, end of line, line, non-blocking, read
+.SH CATEGORY
+Tcl Input/Output
'\" Local Variables:
'\" mode: nroff
'\" fill-column: 78
diff --git a/doc/glob.n b/doc/glob.n
index 7b71189..a0a5f71 100644
--- a/doc/glob.n
+++ b/doc/glob.n
@@ -268,6 +268,8 @@ or the sequence
file(n)
.SH KEYWORDS
exist, file, glob, pattern
+.SH CATEGORY
+Tcl System Related
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/global.n b/doc/global.n
index c17c370..fae5b05 100644
--- a/doc/global.n
+++ b/doc/global.n
@@ -56,3 +56,6 @@ proc accum {string} {
namespace(n), upvar(n), variable(n)
.SH KEYWORDS
global, namespace, procedure, variable
+
+.SH CATEGORY
+Tcl Variables and Procedures \ No newline at end of file
diff --git a/doc/history.n b/doc/history.n
index ba507b4..57298da 100644
--- a/doc/history.n
+++ b/doc/history.n
@@ -100,3 +100,6 @@ the \fBevent\fR operation to retrieve some event,
and the \fBadd\fR operation to add it to history and execute it.
.SH KEYWORDS
event, history, record
+
+.SH CATEGORY
+Tcl Interpreter Routines \ No newline at end of file
diff --git a/doc/http.n b/doc/http.n
index 631a141..f6d630b 100644
--- a/doc/http.n
+++ b/doc/http.n
@@ -641,6 +641,8 @@ proc httpCopyProgress {args} {
safe(n), socket(n), safesock(n)
.SH KEYWORDS
internet, security policy, socket, www
+.SH CATEGORY
+Tcl Library Procedures
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/if.n b/doc/if.n
index 700f325..cf7046c 100644
--- a/doc/if.n
+++ b/doc/if.n
@@ -83,6 +83,8 @@ good idea to use the optional \fBthen\fR keyword for clarity:
expr(n), for(n), foreach(n)
.SH KEYWORDS
boolean, conditional, else, false, if, true
+.SH CATEGORY
+Tcl Control Constructs
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/incr.n b/doc/incr.n
index 595cc27..3f68769 100644
--- a/doc/incr.n
+++ b/doc/incr.n
@@ -59,3 +59,6 @@ an error if it is not):
expr(n), set(n)
.SH KEYWORDS
add, increment, variable, value
+
+.SH CATEGORY
+Tcl Variables and Procedures \ No newline at end of file
diff --git a/doc/info.n b/doc/info.n
index e65a083..ae3362f 100644
--- a/doc/info.n
+++ b/doc/info.n
@@ -771,6 +771,8 @@ command, information, interpreter, introspection, level, namespace,
object,
.VE 8.6
procedure, variable
+.SH CATEGORY
+Tcl Interpreter Routines
'\" Local Variables:
'\" mode: nroff
'\" fill-column: 78
diff --git a/doc/interp.n b/doc/interp.n
index 6ce10ee..32aa91c 100644
--- a/doc/interp.n
+++ b/doc/interp.n
@@ -905,6 +905,8 @@ set i [\fBinterp create\fR]
bgerror(n), load(n), safe(n), Tcl_CreateSlave(3), Tcl_Eval(3), Tcl_BackgroundException(3)
.SH KEYWORDS
alias, master interpreter, safe interpreter, slave interpreter
+.SH CATEGORY
+Tcl Interpreter Routines
'\"Local Variables:
'\"mode: nroff
'\"End:
diff --git a/doc/join.n b/doc/join.n
index 1b23667..0908950 100644
--- a/doc/join.n
+++ b/doc/join.n
@@ -42,3 +42,6 @@ set data {1 {2 3} 4 {5 {6 7} 8}}
list(n), lappend(n), split(n)
.SH KEYWORDS
element, join, list, separator
+
+.SH CATEGORY
+Tcl List Handling \ No newline at end of file
diff --git a/doc/lappend.n b/doc/lappend.n
index 9bfab72..15e8039 100644
--- a/doc/lappend.n
+++ b/doc/lappend.n
@@ -47,3 +47,6 @@ list(n), lindex(n), linsert(n), llength(n), lset(n),
lsort(n), lrange(n)
.SH KEYWORDS
append, element, list, variable
+
+.SH CATEGORY
+Tcl List Handling Procedures \ No newline at end of file
diff --git a/doc/lassign.n b/doc/lassign.n
index 6f5042b..d7276a7 100644
--- a/doc/lassign.n
+++ b/doc/lassign.n
@@ -55,6 +55,10 @@ set ::argv [\fBlassign\fR $::argv argumentToReadOff]
lindex(n), list(n), lrange(n), lset(n), set(n)
.SH KEYWORDS
assign, element, list, multiple, set, variable
+.SH CATEGORY
+Tcl List Handling
'\"Local Variables:
'\"mode: nroff
'\"End:
+ff
+'\"End:
diff --git a/doc/library.n b/doc/library.n
index 2413692..7ba409e 100644
--- a/doc/library.n
+++ b/doc/library.n
@@ -309,6 +309,8 @@ Unix, words are comprised of numbers, letters or underscores.
info(n), re_syntax(n), tclvars(n)
.SH KEYWORDS
auto-exec, auto-load, library, unknown, word, whitespace
+.SH CATEGORY
+Tcl Packages and Source files
'\"Local Variables:
'\"mode: nroff
'\"End:
diff --git a/doc/lindex.n b/doc/lindex.n
index bb272a6..018fa7d 100644
--- a/doc/lindex.n
+++ b/doc/lindex.n
@@ -120,6 +120,8 @@ lset(n), lsort(n), lrange(n), lreplace(n),
string(n)
.SH KEYWORDS
element, index, list
+.SH CATEGORY
+Tcl List Handling
'\"Local Variables:
'\"mode: nroff
'\"End:
diff --git a/doc/linsert.n b/doc/linsert.n
index c722e4f..71f7f41 100644
--- a/doc/linsert.n
+++ b/doc/linsert.n
@@ -50,6 +50,8 @@ lset(n), lsort(n), lrange(n), lreplace(n),
string(n)
.SH KEYWORDS
element, insert, list
+.SH CATEGORY
+Tcl List Handling
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/list.n b/doc/list.n
index 5705254..a1cdcef 100644
--- a/doc/list.n
+++ b/doc/list.n
@@ -51,6 +51,8 @@ lrepeat(n),
lreplace(n), lsearch(n), lset(n), lsort(n)
.SH KEYWORDS
element, list, quoting
+.SH CATEGORY
+Tcl List Handling
'\"Local Variables:
'\"mode: nroff
'\"End:
diff --git a/doc/llength.n b/doc/llength.n
index b0ee4d9..7581593 100644
--- a/doc/llength.n
+++ b/doc/llength.n
@@ -53,3 +53,6 @@ list(n), lappend(n), lindex(n), linsert(n), lsearch(n),
lset(n), lsort(n), lrange(n), lreplace(n)
.SH KEYWORDS
element, list, length
+
+.SH CATEGORY
+Tcl List Handling \ No newline at end of file
diff --git a/doc/lmap.n b/doc/lmap.n
index 880b05a..39db10d 100644
--- a/doc/lmap.n
+++ b/doc/lmap.n
@@ -80,6 +80,8 @@ set prefix [\fBlmap\fR x $values {expr {
break(n), continue(n), for(n), foreach(n), while(n)
.SH KEYWORDS
foreach, iteration, list, loop, map
+.SH CATEGORY
+Tcl List Handling
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/load.n b/doc/load.n
index 350a2ae..4325ad5 100644
--- a/doc/load.n
+++ b/doc/load.n
@@ -191,6 +191,8 @@ foo
info sharedlibextension, package(n), Tcl_StaticPackage(3), safe(n)
.SH KEYWORDS
binary code, dynamic library, load, safe interpreter, shared library
+.SH CATEGORY
+Tcl Packages and Source files
'\"Local Variables:
'\"mode: nroff
'\"End:
diff --git a/doc/lrange.n b/doc/lrange.n
index 4f4816a..a52aff1 100644
--- a/doc/lrange.n
+++ b/doc/lrange.n
@@ -76,3 +76,6 @@ lset(n), lreplace(n), lsort(n),
string(n)
.SH KEYWORDS
element, list, range, sublist
+
+.SH CATEGORY
+Tcl List Handling \ No newline at end of file
diff --git a/doc/lrepeat.n b/doc/lrepeat.n
index 59a1edf..93acfca 100644
--- a/doc/lrepeat.n
+++ b/doc/lrepeat.n
@@ -36,3 +36,6 @@ list(n), lappend(n), linsert(n), llength(n), lset(n)
.SH KEYWORDS
element, index, list
+
+.SH CATEGORY
+Tcl List Handling \ No newline at end of file
diff --git a/doc/lreplace.n b/doc/lreplace.n
index 6e6c3ea..51464c4 100644
--- a/doc/lreplace.n
+++ b/doc/lreplace.n
@@ -84,3 +84,6 @@ lset(n), lrange(n), lsort(n),
string(n)
.SH KEYWORDS
element, list, replace
+
+.SH CATEGORY
+Tcl List Handling \ No newline at end of file
diff --git a/doc/lreverse.n b/doc/lreverse.n
index f52db9b..adac7ad 100644
--- a/doc/lreverse.n
+++ b/doc/lreverse.n
@@ -29,6 +29,8 @@ list(n), lsearch(n), lsort(n)
.SH KEYWORDS
element, list, reverse
+.SH CATEGORY
+Tcl List Handling
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/lsearch.n b/doc/lsearch.n
index 7835352..29c63e2 100644
--- a/doc/lsearch.n
+++ b/doc/lsearch.n
@@ -215,6 +215,8 @@ string(n)
.SH KEYWORDS
binary search, linear search,
list, match, pattern, regular expression, search, string
+.SH CATEGORY
+Tcl List Handling
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/lset.n b/doc/lset.n
index 805de16..6810396 100755
--- a/doc/lset.n
+++ b/doc/lset.n
@@ -141,6 +141,10 @@ lsort(n), lrange(n), lreplace(n),
string(n)
.SH KEYWORDS
element, index, list, replace, set
+.SH CATEGORY
+Tcl List Handling
'\"Local Variables:
'\"mode: nroff
'\"End:
+ff
+'\"End:
diff --git a/doc/lsort.n b/doc/lsort.n
index 312048e..da431ac 100644
--- a/doc/lsort.n
+++ b/doc/lsort.n
@@ -269,6 +269,8 @@ list(n), lappend(n), lindex(n), linsert(n), llength(n), lsearch(n),
lset(n), lrange(n), lreplace(n)
.SH KEYWORDS
element, list, order, sort
+.SH CATEGORY
+Tcl List Handling
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/mathfunc.n b/doc/mathfunc.n
index 14b448e..05d37e5 100644
--- a/doc/mathfunc.n
+++ b/doc/mathfunc.n
@@ -293,6 +293,8 @@ is determined, and then the low order 64 bits of that integer value
are returned as an integer value.
.SH "SEE ALSO"
expr(n), mathop(n), namespace(n)
+.SH "CATEGORY"
+General
.SH "COPYRIGHT"
.nf
Copyright (c) 1993 The Regents of the University of California.
diff --git a/doc/mathop.n b/doc/mathop.n
index ac2ebc1..51dfcbe 100644
--- a/doc/mathop.n
+++ b/doc/mathop.n
@@ -305,6 +305,8 @@ set sorted [\fB<=\fR {*}$list]
expr(n), mathfunc(n), namespace(n)
.SH KEYWORDS
command, expression, operator
+.SH CATEGORY
+General
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/memory.n b/doc/memory.n
index f82c5b4..1626c79 100644
--- a/doc/memory.n
+++ b/doc/memory.n
@@ -110,6 +110,8 @@ occur long after the overwrite occurred.
ckalloc, ckfree, Tcl_ValidateAllMemory, Tcl_DumpActiveMemory, TCL_MEM_DEBUG
.SH KEYWORDS
memory, debug
+.SH CATEGORY
+Tcl Interpreter Routines
'\"Local Variables:
'\"mode: nroff
'\"End:
diff --git a/doc/msgcat.n b/doc/msgcat.n
index 57fbb78..6b8f311 100644
--- a/doc/msgcat.n
+++ b/doc/msgcat.n
@@ -379,6 +379,8 @@ The message catalog code was developed by Mark Harrison.
format(n), scan(n), namespace(n), package(n)
.SH KEYWORDS
internationalization, i18n, localization, l10n, message, text, translation
+.SH CATEGORY
+Tcl Library Procedures
.\" Local Variables:
.\" mode: nroff
.\" End:
diff --git a/doc/my.n b/doc/my.n
index b5afc67..2bf04fa 100644
--- a/doc/my.n
+++ b/doc/my.n
@@ -50,6 +50,8 @@ next(n), oo::object(n), self(n)
.SH KEYWORDS
method, method visibility, object, private method, public method
+.SH CATEGORY
+Tcl Object Orientation
.\" Local variables:
.\" mode: nroff
.\" fill-column: 78
diff --git a/doc/namespace.n b/doc/namespace.n
index b06d27a..ad433b1 100644
--- a/doc/namespace.n
+++ b/doc/namespace.n
@@ -964,6 +964,8 @@ puts [do 1 plus [do 9 minus 7]]
interp(n), upvar(n), variable(n)
.SH KEYWORDS
command, ensemble, exported, internal, variable
+.SH CATEGORY
+Tcl Variables and Procedures
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/next.n b/doc/next.n
index 0ad752a..f5e74cf 100644
--- a/doc/next.n
+++ b/doc/next.n
@@ -197,6 +197,8 @@ puts [demo compute 1 2 3] \fI\(-> prints "7" after delay\fR
oo::class(n), oo::define(n), oo::object(n), self(n)
.SH KEYWORDS
call, method, method chain
+.SH CATEGORY
+Tcl Object Orientation
.\" Local variables:
.\" mode: nroff
.\" fill-column: 78
diff --git a/doc/object.n b/doc/object.n
index 6737e7e..62d6b14 100644
--- a/doc/object.n
+++ b/doc/object.n
@@ -122,6 +122,8 @@ $obj foo \fI\(-> error "unknown command obj"\fR
my(n), oo::class(n)
.SH KEYWORDS
base class, class, object, root class
+.SH CATEGORY
+Tcl Object Orientation
.\" Local variables:
.\" mode: nroff
.\" fill-column: 78
diff --git a/doc/open.n b/doc/open.n
index d4842f2..d32cc7d 100644
--- a/doc/open.n
+++ b/doc/open.n
@@ -460,6 +460,8 @@ puts(n), exec(n), pid(n), fopen(3)
.SH KEYWORDS
access mode, append, create, file, non-blocking, open, permissions,
pipeline, process, serial
+.SH CATEGORY
+Tcl Input/Output
'\"Local Variables:
'\"mode: nroff
'\"End:
diff --git a/doc/package.n b/doc/package.n
index 6cf8991..fef5a32 100644
--- a/doc/package.n
+++ b/doc/package.n
@@ -365,6 +365,8 @@ if {[catch {\fBpackage require\fR Snack}]} {
msgcat(n), packagens(n), pkgMkIndex(n)
.SH KEYWORDS
package, version
+.SH CATEGORY
+Tcl Packages and Source files
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/packagens.n b/doc/packagens.n
index 30617a3..7857c34 100644
--- a/doc/packagens.n
+++ b/doc/packagens.n
@@ -48,3 +48,6 @@ At least one \fB\-load\fR or \fB\-source\fR parameter must be given.
package(n)
.SH KEYWORDS
auto-load, index, package, version
+
+.SH CATEGORY
+Tcl Packages and Source files \ No newline at end of file
diff --git a/doc/pid.n b/doc/pid.n
index 97a42a7..93ca4dc 100644
--- a/doc/pid.n
+++ b/doc/pid.n
@@ -46,3 +46,6 @@ exec(n), open(n)
.SH KEYWORDS
file, pipeline, process identifier
+
+.SH CATEGORY
+Tcl System Related \ No newline at end of file
diff --git a/doc/pkgMkIndex.n b/doc/pkgMkIndex.n
index 2753208..a0a0d20 100644
--- a/doc/pkgMkIndex.n
+++ b/doc/pkgMkIndex.n
@@ -228,6 +228,8 @@ the binary file may mask the package defined by the scripts.
package(n)
.SH KEYWORDS
auto-load, index, package, version
+.SH CATEGORY
+Tcl Packages and Source files
'\"Local Variables:
'\"mode: nroff
'\"End:
diff --git a/doc/platform.n b/doc/platform.n
index 1553698..c2d540c 100644
--- a/doc/platform.n
+++ b/doc/platform.n
@@ -81,6 +81,8 @@ load [file join $platLibDir support[info sharedlibextension]]
.CE
.SH KEYWORDS
operating system, cpu architecture, platform, architecture
+.SH CATEGORY
+Tcl System Related
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/platform_shell.n b/doc/platform_shell.n
index eef4d4e..7a50fb7 100644
--- a/doc/platform_shell.n
+++ b/doc/platform_shell.n
@@ -55,3 +55,6 @@ This command returns the contents of \fBtcl_platform(platform)\fR for
the specified Tcl shell.
.SH KEYWORDS
operating system, cpu architecture, platform, architecture
+
+.SH CATEGORY
+Tcl System Related \ No newline at end of file
diff --git a/doc/prefix.n b/doc/prefix.n
index eb79996..cb77f9f 100644
--- a/doc/prefix.n
+++ b/doc/prefix.n
@@ -111,6 +111,8 @@ switch [\fBprefix match\fR {apa bepa cepa} $arg] {
lsearch(n), namespace(n), string(n), Tcl_GetIndexFromObj(3)
.SH "KEYWORDS"
prefix, table lookup
+.SH CATEGORY
+Tcl String Handling
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/proc.n b/doc/proc.n
index 570a37d..a136a38 100644
--- a/doc/proc.n
+++ b/doc/proc.n
@@ -105,6 +105,8 @@ defaults to \fB2\fR:
info(n), unknown(n)
.SH KEYWORDS
argument, procedure
+.SH CATEGORY
+Tcl Variables and Procedures
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/puts.n b/doc/puts.n
index 4a53d44..d48b4a4 100644
--- a/doc/puts.n
+++ b/doc/puts.n
@@ -96,3 +96,6 @@ close $chan
file(n), fileevent(n), Tcl_StandardChannels(3)
.SH KEYWORDS
channel, newline, output, write
+
+.SH CATEGORY
+Tcl Input/Output \ No newline at end of file
diff --git a/doc/pwd.n b/doc/pwd.n
index 65fed84..2bd83ac 100644
--- a/doc/pwd.n
+++ b/doc/pwd.n
@@ -37,3 +37,6 @@ cd $savedDir
file(n), cd(n), glob(n), filename(n)
.SH KEYWORDS
working directory
+
+.SH CATEGORY
+Tcl System Related \ No newline at end of file
diff --git a/doc/re_syntax.n b/doc/re_syntax.n
index 46a180d..6990ff6 100644
--- a/doc/re_syntax.n
+++ b/doc/re_syntax.n
@@ -829,6 +829,8 @@ respectively; no other escapes are available.
RegExp(3), regexp(n), regsub(n), lsearch(n), switch(n), text(n)
.SH KEYWORDS
match, regular expression, string
+.SH CATEGORY
+Tcl String Handling
.\" Local Variables:
.\" mode: nroff
.\" End:
diff --git a/doc/read.n b/doc/read.n
index 007c0ac..b4f2ba1 100644
--- a/doc/read.n
+++ b/doc/read.n
@@ -84,6 +84,8 @@ set lines [split $data \en]
file(n), eof(n), fblocked(n), fconfigure(n), Tcl_StandardChannels(3)
.SH KEYWORDS
blocking, channel, end of line, end of file, nonblocking, read, translation, encoding
+.SH CATEGORY
+Tcl Input/Output
'\"Local Variables:
'\"mode: nroff
'\"End:
diff --git a/doc/refchan.n b/doc/refchan.n
index a51c3d7..df7b2d0 100644
--- a/doc/refchan.n
+++ b/doc/refchan.n
@@ -406,6 +406,8 @@ puts [read $ch]; # Prints just the last word
chan(n), transchan(n)
.SH KEYWORDS
API, channel, ensemble, prefix, reflection
+.SH CATEGORY
+Tcl Input/Output
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/regexp.n b/doc/regexp.n
index 5e857f8..66cc183 100644
--- a/doc/regexp.n
+++ b/doc/regexp.n
@@ -203,6 +203,8 @@ characters) in a string, and is useful as a more powerful version of the
re_syntax(n), regsub(n), string(n)
.SH KEYWORDS
match, parsing, pattern, regular expression, splitting, string
+.SH CATEGORY
+Tcl String Handling
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/registry.n b/doc/registry.n
index 2e69b1e..71d336a 100644
--- a/doc/registry.n
+++ b/doc/registry.n
@@ -213,6 +213,8 @@ puts "$ext opens with $command"
.CE
.SH KEYWORDS
registry
+.SH CATEGORY
+Tcl Platform-specific
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/regsub.n b/doc/regsub.n
index fe473d9..3b35d0e 100644
--- a/doc/regsub.n
+++ b/doc/regsub.n
@@ -187,6 +187,8 @@ set quoted [subst [string map {\en {\e\eu000a}} \e
regexp(n), re_syntax(n), subst(n), string(n)
.SH KEYWORDS
match, pattern, quoting, regular expression, substitution
+.SH CATEGORY
+Tcl String Handling
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/rename.n b/doc/rename.n
index 77dc095..3bf488a 100644
--- a/doc/rename.n
+++ b/doc/rename.n
@@ -43,3 +43,6 @@ proc ::source args {
namespace(n), proc(n)
.SH KEYWORDS
command, delete, namespace, rename
+
+.SH CATEGORY
+Tcl Variables and Procedures \ No newline at end of file
diff --git a/doc/return.n b/doc/return.n
index b59a93d..2e03a70 100644
--- a/doc/return.n
+++ b/doc/return.n
@@ -321,6 +321,8 @@ break(n), catch(n), continue(n), dict(n), error(n), proc(n),
source(n), tclvars(n), throw(n), try(n)
.SH KEYWORDS
break, catch, continue, error, exception, procedure, result, return
+.SH CATEGORY
+Tcl Control Constructs
.\" Local Variables:
.\" mode: nroff
.\" End:
diff --git a/doc/safe.n b/doc/safe.n
index ebd9b4d..6c0754d 100644
--- a/doc/safe.n
+++ b/doc/safe.n
@@ -354,6 +354,8 @@ interp(n), library(n), load(n), package(n), source(n), unknown(n)
.SH KEYWORDS
alias, auto\-loading, auto_mkindex, load, master interpreter, safe
interpreter, slave interpreter, source
+.SH CATEGORY
+General
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/scan.n b/doc/scan.n
index cc5ed79..20186cc 100644
--- a/doc/scan.n
+++ b/doc/scan.n
@@ -288,6 +288,8 @@ values determined by size modifiers:
format(n), sscanf(3)
.SH KEYWORDS
conversion specifier, parse, scan
+.SH CATEGORY
+Tcl String Handling
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/seek.n b/doc/seek.n
index 96d5c4e..3193679 100644
--- a/doc/seek.n
+++ b/doc/seek.n
@@ -86,6 +86,8 @@ close $f
file(n), open(n), close(n), gets(n), tell(n), Tcl_StandardChannels(3)
.SH KEYWORDS
access position, file, seek
+.SH CATEGORY
+Tcl Input/Output
'\" Local Variables:
'\" mode: nroff
'\" fill-column: 78
diff --git a/doc/self.n b/doc/self.n
index 2a04157..4816145 100644
--- a/doc/self.n
+++ b/doc/self.n
@@ -146,6 +146,8 @@ a x \fI\(-> Obj: {{method x object method} {method x ::c method}} 0\fR
info(n), next(n)
.SH KEYWORDS
call, introspection, object
+.SH CATEGORY
+Tcl Object Orientation
.\" Local variables:
.\" mode: nroff
.\" fill-column: 78
diff --git a/doc/set.n b/doc/set.n
index 32a788e..a1253e6 100644
--- a/doc/set.n
+++ b/doc/set.n
@@ -73,3 +73,6 @@ practice instead of doing double-dereferencing):
expr(n), global(n), namespace(n), proc(n), trace(n), unset(n), upvar(n), variable(n)
.SH KEYWORDS
read, write, variable
+
+.SH CATEGORY
+Tcl Variables and Procedures \ No newline at end of file
diff --git a/doc/socket.n b/doc/socket.n
index 0a60457..ad7a0b8 100644
--- a/doc/socket.n
+++ b/doc/socket.n
@@ -222,6 +222,8 @@ Support for IPv6 was added in Tcl 8.6.
chan(n), flush(n), open(n), read(n)
.SH KEYWORDS
asynchronous I/O, bind, channel, connection, domain name, host, network address, socket, tcp
+.SH CATEGORY
+Tcl Input/Output
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/source.n b/doc/source.n
index 57a9fa2..4c9fd06 100644
--- a/doc/source.n
+++ b/doc/source.n
@@ -67,3 +67,6 @@ foreach scriptFile {foo.tcl bar.tcl} {
file(n), cd(n), encoding(n), info(n)
.SH KEYWORDS
file, script
+
+.SH CATEGORY
+Tcl Packages and Source files \ No newline at end of file
diff --git a/doc/split.n b/doc/split.n
index e3259df..0d73391 100644
--- a/doc/split.n
+++ b/doc/split.n
@@ -88,6 +88,8 @@ foreach rec $records {
join(n), list(n), string(n)
.SH KEYWORDS
list, split, string
+.SH CATEGORY
+Tcl List Handling
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/string.n b/doc/string.n
index f5eae39..579ffa4 100644
--- a/doc/string.n
+++ b/doc/string.n
@@ -444,6 +444,8 @@ expr(n), list(n)
.SH KEYWORDS
case conversion, compare, index, match, pattern, string, word, equal,
ctype, character, reverse
+.SH CATEGORY
+Tcl String Handling
.\" Local Variables:
.\" mode: nroff
.\" End:
diff --git a/doc/subst.n b/doc/subst.n
index aba2bc9..03f8e13 100644
--- a/doc/subst.n
+++ b/doc/subst.n
@@ -159,6 +159,8 @@ not
Tcl(n), eval(n), break(n), continue(n)
.SH KEYWORDS
backslash substitution, command substitution, quoting, substitution, variable substitution
+.SH CATEGORY
+Tcl String Handling
.\" Local Variables:
.\" mode: nroff
.\" End:
diff --git a/doc/switch.n b/doc/switch.n
index acde6cb..2342e71 100644
--- a/doc/switch.n
+++ b/doc/switch.n
@@ -181,6 +181,8 @@ exactly matched is easily obtained using the \fB\-matchvar\fR option:
for(n), if(n), regexp(n)
.SH KEYWORDS
switch, match, regular expression
+.SH CATEGORY
+Tcl Control Constructs
.\" Local Variables:
.\" mode: nroff
.\" End:
diff --git a/doc/tailcall.n b/doc/tailcall.n
index 6a88aca..0e8acf1 100644
--- a/doc/tailcall.n
+++ b/doc/tailcall.n
@@ -63,6 +63,8 @@ proc printList2 {theList} {
apply(n), proc(n), uplevel(n)
.SH KEYWORDS
call, recursion, tail recursion
+.SH CATEGORY
+Tcl Control Constructs
'\" Local Variables:
'\" mode: nroff
'\" fill-column: 78
diff --git a/doc/tclsh.1 b/doc/tclsh.1
index 8e7fb9e..1894e6d 100644
--- a/doc/tclsh.1
+++ b/doc/tclsh.1
@@ -145,3 +145,6 @@ See \fBTcl_StandardChannels\fR for more explanations.
encoding(n), fconfigure(n), tclvars(n)
.SH KEYWORDS
application, argument, interpreter, prompt, script file, shell
+
+.SH CATEGORY
+General \ No newline at end of file
diff --git a/doc/tcltest.n b/doc/tcltest.n
index 731bed7..1e98cfb 100644
--- a/doc/tcltest.n
+++ b/doc/tcltest.n
@@ -1252,6 +1252,8 @@ options to \fBtest\fR is useful only for pure Tcl applications
that use \fBputs\fR to produce output.
.SH KEYWORDS
test, test harness, test suite
+.SH CATEGORY
+General
.\" Local Variables:
.\" mode: nroff
.\" End:
diff --git a/doc/tclvars.n b/doc/tclvars.n
index 44a8e11..81722fc 100644
--- a/doc/tclvars.n
+++ b/doc/tclvars.n
@@ -561,6 +561,8 @@ eval(n), library(n), tclsh(1), tkvars(n), wish(1)
.SH KEYWORDS
arithmetic, bytecode, compiler, error, environment, POSIX, precision,
subprocess, user, variables
+.SH CATEGORY
+Predefined variables
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/tell.n b/doc/tell.n
index 87e63b0..9ac1639 100644
--- a/doc/tell.n
+++ b/doc/tell.n
@@ -46,3 +46,6 @@ if {[read $chan 6] eq "foobar"} {
file(n), open(n), close(n), gets(n), seek(n), Tcl_StandardChannels(3)
.SH KEYWORDS
access position, channel, seeking
+
+.SH CATEGORY
+Tcl Input/Output \ No newline at end of file
diff --git a/doc/throw.n b/doc/throw.n
index d49fb24..a3c50b0 100644
--- a/doc/throw.n
+++ b/doc/throw.n
@@ -43,6 +43,8 @@ The following produces an error that is identical to that produced by
catch(n), error(n), return(n), tclvars(n), try(n)
.SH "KEYWORDS"
error, exception
+.SH CATEGORY
+Tcl Control Constructs
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/time.n b/doc/time.n
index 52730a1..a0364c3 100644
--- a/doc/time.n
+++ b/doc/time.n
@@ -42,6 +42,8 @@ time {
clock(n)
.SH KEYWORDS
script, time
+.SH CATEGORY
+Tcl System Related
.\" Local Variables:
.\" mode: nroff
.\" End:
diff --git a/doc/tm.n b/doc/tm.n
index ddfbac2..0f2ccea 100644
--- a/doc/tm.n
+++ b/doc/tm.n
@@ -303,6 +303,8 @@ package(n), Tcl Improvement Proposal #189
(online at http://tip.tcl.tk/190.html)
.SH "KEYWORDS"
modules, package
+.SH CATEGORY
+Tcl Packages and Source files
.\" Local Variables:
.\" mode: nroff
.\" End:
diff --git a/doc/trace.n b/doc/trace.n
index 63ed1cb..7dd6582 100644
--- a/doc/trace.n
+++ b/doc/trace.n
@@ -421,6 +421,8 @@ x
set(n), unset(n)
.SH KEYWORDS
read, command, rename, variable, write, trace, unset
+.SH CATEGORY
+Tcl Variables and Procedures
.\" Local Variables:
.\" mode: nroff
.\" End:
diff --git a/doc/transchan.n b/doc/transchan.n
index e308e13..512caa9 100644
--- a/doc/transchan.n
+++ b/doc/transchan.n
@@ -155,6 +155,8 @@ and to defer the actual transformation until it has more data.
chan(n), refchan(n)
.SH KEYWORDS
API, channel, ensemble, prefix, transformation
+.SH CATEGORY
+Tcl Input/Output
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/try.n b/doc/try.n
index 393fe5b..4e6eede 100644
--- a/doc/try.n
+++ b/doc/try.n
@@ -98,6 +98,8 @@ Handle different reasons for a file to not be openable for reading:
catch(n), error(n), return(n), throw(n)
.SH "KEYWORDS"
cleanup, error, exception, final, resource management
+.SH CATEGORY
+Tcl Control Constructs
'\" Local Variables:
'\" mode: nroff
'\" End:
diff --git a/doc/unknown.n b/doc/unknown.n
index fc2a5a1..7da00d5 100644
--- a/doc/unknown.n
+++ b/doc/unknown.n
@@ -89,3 +89,6 @@ proc \fBunknown\fR args {
info(n), proc(n), interp(n), library(n), namespace(n)
.SH KEYWORDS
error, non-existent command, unknown
+
+.SH CATEGORY
+Tcl Interpreter Routines \ No newline at end of file
diff --git a/doc/unload.n b/doc/unload.n
index 4c0b292..a4c8485 100644
--- a/doc/unload.n
+++ b/doc/unload.n
@@ -167,6 +167,8 @@ without having to shut down the overall Tcl process.
info sharedlibextension, load(n), safe(n)
.SH KEYWORDS
binary code, unloading, safe interpreter, shared library
+.SH CATEGORY
+Tcl Packages and Source files
.\" Local Variables:
.\" mode: nroff
.\" End:
diff --git a/doc/unset.n b/doc/unset.n
index 64b334d..b9c7c65 100644
--- a/doc/unset.n
+++ b/doc/unset.n
@@ -62,6 +62,8 @@ parray squares
set(n), trace(n), upvar(n)
.SH KEYWORDS
remove, variable
+.SH CATEGORY
+Tcl Variables and Procedures
'\" Local Variables:
'\" mode: nroff
'\" fill-column: 78
diff --git a/doc/update.n b/doc/update.n
index 0c77c5f..190122a 100644
--- a/doc/update.n
+++ b/doc/update.n
@@ -63,3 +63,6 @@ while {!$done} {
after(n), interp(n)
.SH KEYWORDS
asynchronous I/O, event, flush, handler, idle, update
+
+.SH CATEGORY
+Tcl Control Constructs \ No newline at end of file
diff --git a/doc/uplevel.n b/doc/uplevel.n
index 6c8a957..e1eb0dc 100644
--- a/doc/uplevel.n
+++ b/doc/uplevel.n
@@ -98,6 +98,8 @@ proc do {body while condition} {
apply(n), namespace(n), upvar(n)
.SH KEYWORDS
context, level, namespace, stack frame, variable
+.SH CATEGORY
+Tcl Control Constructs
.\" Local Variables:
.\" mode: nroff
.\" End:
diff --git a/doc/upvar.n b/doc/upvar.n
index 60e5324..cdeb6c3 100644
--- a/doc/upvar.n
+++ b/doc/upvar.n
@@ -117,6 +117,8 @@ proc decr {varName {decrement 1}} {
global(n), namespace(n), uplevel(n), variable(n)
.SH KEYWORDS
context, frame, global, level, namespace, procedure, upvar, variable
+.SH CATEGORY
+Tcl Variables and Procedures
.\" Local Variables:
.\" mode: nroff
.\" End:
diff --git a/doc/variable.n b/doc/variable.n
index 96263b6..676b471 100644
--- a/doc/variable.n
+++ b/doc/variable.n
@@ -98,3 +98,6 @@ namespace eval foo {
global(n), namespace(n), upvar(n)
.SH KEYWORDS
global, namespace, procedure, variable
+
+.SH CATEGORY
+Tcl Variables and Procedures \ No newline at end of file
diff --git a/doc/vwait.n b/doc/vwait.n
index 38a8081..0fc323d 100644
--- a/doc/vwait.n
+++ b/doc/vwait.n
@@ -240,6 +240,8 @@ coroutine task-3 eval {
global(n), update(n)
.SH KEYWORDS
asynchronous I/O, event, variable, wait
+.SH CATEGORY
+Tcl Control Constructs
'\" Local Variables:
'\" mode: nroff
'\" fill-column: 78
diff --git a/doc/while.n b/doc/while.n
index 5416e25..b2b69ff 100644
--- a/doc/while.n
+++ b/doc/while.n
@@ -63,3 +63,6 @@ set lineCount 0
break(n), continue(n), for(n), foreach(n)
.SH KEYWORDS
boolean, loop, test, while
+
+.SH CATEGORY
+Tcl Control Constructs \ No newline at end of file
diff --git a/doc/zlib.n b/doc/zlib.n
index 951b713..77b1abd 100644
--- a/doc/zlib.n
+++ b/doc/zlib.n
@@ -455,6 +455,8 @@ $\fIstrm \fBclose\fR
binary(n), chan(n), encoding(n), Tcl_ZlibDeflate(3), RFC1950 \- RFC1952
.SH "KEYWORDS"
compress, decompress, deflate, gzip, inflate, zlib
+.SH CATEGORY
+Tcl Library Procedures
'\" Local Variables:
'\" mode: nroff
'\" End: