163 lines
7.0 KiB
Plaintext
163 lines
7.0 KiB
Plaintext
'\"
|
|
'\" Copyright (c) 1993 The Regents of the University of California.
|
|
'\" All rights reserved.
|
|
'\"
|
|
'\" Permission is hereby granted, without written agreement and without
|
|
'\" license or royalty fees, to use, copy, modify, and distribute this
|
|
'\" documentation for any purpose, provided that the above copyright
|
|
'\" notice and the following two paragraphs appear in all copies.
|
|
'\"
|
|
'\" IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY
|
|
'\" FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
|
|
'\" ARISING OUT OF THE USE OF THIS DOCUMENTATION, EVEN IF THE UNIVERSITY OF
|
|
'\" CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
'\"
|
|
'\" THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES,
|
|
'\" INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
'\" AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
|
|
'\" ON AN "AS IS" BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATION TO
|
|
'\" PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
|
|
'\"
|
|
'\" $Header: /user6/ouster/tcl/man/RCS/info.n,v 1.2 93/06/18 13:58:33 ouster Exp $ SPRITE (Berkeley)
|
|
'\"
|
|
.so man.macros
|
|
.HS info tcl 7.0
|
|
.BS
|
|
'\" Note: do not modify the .SH NAME line immediately below!
|
|
.SH NAME
|
|
info \- Return information about the state of the Tcl interpreter
|
|
.SH SYNOPSIS
|
|
\fBinfo \fIoption \fR?\fIarg arg ...\fR?
|
|
.BE
|
|
|
|
.SH DESCRIPTION
|
|
.PP
|
|
This command provides information about various internals of the Tcl
|
|
interpreter.
|
|
The legal \fIoption\fR's (which may be abbreviated) are:
|
|
.TP
|
|
\fBinfo args \fIprocname\fR
|
|
Returns a list containing the names of the arguments to procedure
|
|
\fIprocname\fR, in order. \fIProcname\fR must be the name of a
|
|
Tcl command procedure.
|
|
.TP
|
|
\fBinfo body \fIprocname\fR
|
|
Returns the body of procedure \fIprocname\fR. \fIProcname\fR must be
|
|
the name of a Tcl command procedure.
|
|
.TP
|
|
\fBinfo cmdcount\fR
|
|
Returns a count of the total number of commands that have been invoked
|
|
in this interpreter.
|
|
.TP
|
|
\fBinfo commands \fR?\fIpattern\fR?
|
|
If \fIpattern\fR isn't specified, returns a list of names of all the
|
|
Tcl commands, including both the built-in commands written in C and
|
|
the command procedures defined using the \fBproc\fR command.
|
|
If \fIpattern\fR is specified, only those names matching \fIpattern\fR
|
|
are returned. Matching is determined using the same rules as for
|
|
\fBstring match\fR.
|
|
.TP
|
|
\fBinfo complete \fIcommand\fR
|
|
Returns 1 if \fIcommand\fR is a complete Tcl command in the sense of
|
|
having no unclosed quotes, braces, brackets or array element names,
|
|
If the command doesn't appear to be complete then 0 is returned.
|
|
This command is typically used in line-oriented input environments
|
|
to allow users to type in commands that span multiple lines; if the
|
|
command isn't complete, the script can delay evaluating it until additional
|
|
lines have been typed to complete the command.
|
|
.TP
|
|
\fBinfo default \fIprocname arg varname\fR
|
|
\fIProcname\fR must be the name of a Tcl command procedure and \fIarg\fR
|
|
must be the name of an argument to that procedure. If \fIarg\fR
|
|
doesn't have a default value then the command returns \fB0\fR.
|
|
Otherwise it returns \fB1\fR and places the default value of \fIarg\fR
|
|
into variable \fIvarname\fR.
|
|
.TP
|
|
\fBinfo exists \fIvarName\fR
|
|
Returns \fB1\fR if the variable named \fIvarName\fR exists in the
|
|
current context (either as a global or local variable), returns \fB0\fR
|
|
otherwise.
|
|
.TP
|
|
\fBinfo globals \fR?\fIpattern\fR?
|
|
If \fIpattern\fR isn't specified, returns a list of all the names
|
|
of currently-defined global variables.
|
|
If \fIpattern\fR is specified, only those names matching \fIpattern\fR
|
|
are returned. Matching is determined using the same rules as for
|
|
\fBstring match\fR.
|
|
.TP
|
|
\fBinfo level\fR ?\fInumber\fR?
|
|
If \fInumber\fR is not specified, this command returns a number
|
|
giving the stack level of the invoking procedure, or 0 if the
|
|
command is invoked at top-level. If \fInumber\fR is specified,
|
|
then the result is a list consisting of the name and arguments for the
|
|
procedure call at level \fInumber\fR on the stack. If \fInumber\fR
|
|
is positive then it selects a particular stack level (1 refers
|
|
to the top-most active procedure, 2 to the procedure it called, and
|
|
so on); otherwise it gives a level relative to the current level
|
|
(0 refers to the current procedure, -1 to its caller, and so on).
|
|
See the \fBuplevel\fR command for more information on what stack
|
|
levels mean.
|
|
.TP
|
|
\fBinfo library\fR
|
|
Returns the name of the library directory in which standard Tcl
|
|
scripts are stored.
|
|
The default value for the library is compiled into Tcl, but it
|
|
may be overridden by setting the TCL_LIBRARY environment variable.
|
|
If there is no TCL_LIBRARY variable and no compiled-in value then
|
|
and error is generated.
|
|
See the \fBlibrary\fR manual entry for details of the facilities
|
|
provided by the Tcl script library.
|
|
Normally each application will have its own application-specific
|
|
script library in addition to the Tcl script library; I suggest that
|
|
each application set a global variable with a name like
|
|
\fB$\fIapp\fB_library\fR (where \fIapp\fR is the application's name)
|
|
to hold the location of that application's library directory.
|
|
.TP
|
|
\fBinfo locals \fR?\fIpattern\fR?
|
|
If \fIpattern\fR isn't specified, returns a list of all the names
|
|
of currently-defined local variables, including arguments to the
|
|
current procedure, if any.
|
|
Variables defined with the \fBglobal\fR and \fBupvar\fR commands
|
|
will not be returned.
|
|
If \fIpattern\fR is specified, only those names matching \fIpattern\fR
|
|
are returned. Matching is determined using the same rules as for
|
|
\fBstring match\fR.
|
|
.TP
|
|
\fBinfo patchlevel\fR
|
|
.VS
|
|
Returns a decimal integer giving the current patch level for Tcl.
|
|
The patch level is incremented for each new release or patch, and
|
|
it uniquely identifies an official version of Tcl.
|
|
.VE
|
|
.TP
|
|
\fBinfo procs \fR?\fIpattern\fR?
|
|
If \fIpattern\fR isn't specified, returns a list of all the
|
|
names of Tcl command procedures.
|
|
If \fIpattern\fR is specified, only those names matching \fIpattern\fR
|
|
are returned. Matching is determined using the same rules as for
|
|
\fBstring match\fR.
|
|
.TP
|
|
\fBinfo script\fR
|
|
If a Tcl script file is currently being evaluated (i.e. there is a
|
|
call to \fBTcl_EvalFile\fR active or there is an active invocation
|
|
of the \fBsource\fR command), then this command returns the name
|
|
of the innermost file being processed. Otherwise the command returns an
|
|
empty string.
|
|
.TP
|
|
\fBinfo tclversion\fR
|
|
Returns the version number for this version of Tcl in the form \fIx.y\fR,
|
|
where changes to \fIx\fR represent major changes with probable
|
|
incompatibilities and changes to \fIy\fR represent small enhancements and
|
|
bug fixes that retain backward compatibility.
|
|
.TP
|
|
\fBinfo vars\fR ?\fIpattern\fR?
|
|
If \fIpattern\fR isn't specified,
|
|
returns a list of all the names of currently-visible variables, including
|
|
both locals and currently-visible globals.
|
|
If \fIpattern\fR is specified, only those names matching \fIpattern\fR
|
|
are returned. Matching is determined using the same rules as for
|
|
\fBstring match\fR.
|
|
|
|
.SH KEYWORDS
|
|
command, information, interpreter, level, procedure, variable
|