update NEWS
[manpages-zh.git] / raw / mann / after.n
blob89dc14f5973ef797c75010adb47bb95d56df51ab
1 '\"
2 '\" Copyright (c) 1990-1994 The Regents of the University of California.
3 '\" Copyright (c) 1994-1996 Sun Microsystems, Inc.
4 '\"
5 '\" See the file "license.terms" for information on usage and redistribution
6 '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
7 '\"
8 '\"
9 '\" The definitions below are for supplemental macros used in Tcl/Tk
10 '\" manual entries.
11 '\"
12 '\" .AP type name in/out ?indent?
13 '\" Start paragraph describing an argument to a library procedure.
14 '\" type is type of argument (int, etc.), in/out is either "in", "out",
15 '\" or "in/out" to describe whether procedure reads or modifies arg,
16 '\" and indent is equivalent to second arg of .IP (shouldn't ever be
17 '\" needed; use .AS below instead)
18 '\"
19 '\" .AS ?type? ?name?
20 '\" Give maximum sizes of arguments for setting tab stops. Type and
21 '\" name are examples of largest possible arguments that will be passed
22 '\" to .AP later. If args are omitted, default tab stops are used.
23 '\"
24 '\" .BS
25 '\" Start box enclosure. From here until next .BE, everything will be
26 '\" enclosed in one large box.
27 '\"
28 '\" .BE
29 '\" End of box enclosure.
30 '\"
31 '\" .CS
32 '\" Begin code excerpt.
33 '\"
34 '\" .CE
35 '\" End code excerpt.
36 '\"
37 '\" .VS ?version? ?br?
38 '\" Begin vertical sidebar, for use in marking newly-changed parts
39 '\" of man pages. The first argument is ignored and used for recording
40 '\" the version when the .VS was added, so that the sidebars can be
41 '\" found and removed when they reach a certain age. If another argument
42 '\" is present, then a line break is forced before starting the sidebar.
43 '\"
44 '\" .VE
45 '\" End of vertical sidebar.
46 '\"
47 '\" .DS
48 '\" Begin an indented unfilled display.
49 '\"
50 '\" .DE
51 '\" End of indented unfilled display.
52 '\"
53 '\" .SO
54 '\" Start of list of standard options for a Tk widget. The
55 '\" options follow on successive lines, in four columns separated
56 '\" by tabs.
57 '\"
58 '\" .SE
59 '\" End of list of standard options for a Tk widget.
60 '\"
61 '\" .OP cmdName dbName dbClass
62 '\" Start of description of a specific option. cmdName gives the
63 '\" option's name as specified in the class command, dbName gives
64 '\" the option's name in the option database, and dbClass gives
65 '\" the option's class in the option database.
66 '\"
67 '\" .UL arg1 arg2
68 '\" Print arg1 underlined, then print arg2 normally.
69 '\"
70 '\"
71 '\" # Set up traps and other miscellaneous stuff for Tcl/Tk man pages.
72 .if t .wh -1.3i ^B
73 .nr ^l \n(.l
74 .ad b
75 '\" # Start an argument description
76 .de AP
77 .ie !"\\$4"" .TP \\$4
78 .el \{\
79 . ie !"\\$2"" .TP \\n()Cu
80 . el .TP 15
81 .\}
82 .ta \\n()Au \\n()Bu
83 .ie !"\\$3"" \{\
84 \&\\$1 \\fI\\$2\\fP (\\$3)
85 .\".b
86 .\}
87 .el \{\
88 .br
89 .ie !"\\$2"" \{\
90 \&\\$1 \\fI\\$2\\fP
91 .\}
92 .el \{\
93 \&\\fI\\$1\\fP
94 .\}
95 .\}
97 '\" # define tabbing values for .AP
98 .de AS
99 .nr )A 10n
100 .if !"\\$1"" .nr )A \\w'\\$1'u+3n
101 .nr )B \\n()Au+15n
103 .if !"\\$2"" .nr )B \\w'\\$2'u+\\n()Au+3n
104 .nr )C \\n()Bu+\\w'(in/out)'u+2n
106 .AS Tcl_Interp Tcl_CreateInterp in/out
107 '\" # BS - start boxed text
108 '\" # ^y = starting y location
109 '\" # ^b = 1
110 .de BS
112 .mk ^y
113 .nr ^b 1u
114 .if n .nf
115 .if n .ti 0
116 .if n \l'\\n(.lu\(ul'
117 .if n .fi
119 '\" # BE - end boxed text (draw box now)
120 .de BE
122 .ti 0
123 .mk ^t
124 .ie n \l'\\n(^lu\(ul'
125 .el \{\
126 .\" Draw four-sided box normally, but don't draw top of
127 .\" box if the box started on an earlier page.
128 .ie !\\n(^b-1 \{\
129 \h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul'
131 .el \}\
132 \h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\l'|0u-1.5n\(ul'
137 .nr ^b 0
139 '\" # VS - start vertical sidebar
140 '\" # ^Y = starting y location
141 '\" # ^v = 1 (for troff; for nroff this doesn't matter)
142 .de VS
143 .if !"\\$2"" .br
144 .mk ^Y
145 .ie n 'mc \s12\(br\s0
146 .el .nr ^v 1u
148 '\" # VE - end of vertical sidebar
149 .de VE
150 .ie n 'mc
151 .el \{\
152 .ev 2
154 .ti 0
155 .mk ^t
156 \h'|\\n(^lu+3n'\L'|\\n(^Yu-1v\(bv'\v'\\n(^tu+1v-\\n(^Yu'\h'-|\\n(^lu+3n'
157 .sp -1
161 .nr ^v 0
163 '\" # Special macro to handle page bottom: finish off current
164 '\" # box/sidebar if in box/sidebar mode, then invoked standard
165 '\" # page bottom macro.
166 .de ^B
167 .ev 2
168 'ti 0
170 .mk ^t
171 .if \\n(^b \{\
172 .\" Draw three-sided box if this is the box's first page,
173 .\" draw two sides but no top otherwise.
174 .ie !\\n(^b-1 \h'-1.5n'\L'|\\n(^yu-1v'\l'\\n(^lu+3n\(ul'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c
175 .el \h'-1.5n'\L'|\\n(^yu-1v'\h'\\n(^lu+3n'\L'\\n(^tu+1v-\\n(^yu'\h'|0u'\c
177 .if \\n(^v \{\
178 .nr ^x \\n(^tu+1v-\\n(^Yu
179 \kx\h'-\\nxu'\h'|\\n(^lu+3n'\ky\L'-\\n(^xu'\v'\\n(^xu'\h'|0u'\c
184 .if \\n(^b \{\
185 .mk ^y
186 .nr ^b 2
188 .if \\n(^v \{\
189 .mk ^Y
192 '\" # DS - begin display
193 .de DS
198 '\" # DE - end display
199 .de DE
204 '\" # SO - start of list of standard options
205 .de SO
206 .SH "STANDARD OPTIONS"
209 .ta 5.5c 11c
210 .ft B
212 '\" # SE - end of list of standard options
213 .de SE
215 .ft R
217 See the \\fBoptions\\fR manual entry for details on the standard options.
219 '\" # OP - start of full description for a single option
220 .de OP
223 .ta 4c
224 Command-Line Name: \\fB\\$1\\fR
225 Database Name: \\fB\\$2\\fR
226 Database Class: \\fB\\$3\\fR
230 '\" # CS - begin code excerpt
231 .de CS
234 .ta .25i .5i .75i 1i
236 '\" # CE - end code excerpt
237 .de CE
241 .de UL
242 \\$1\l'|0\(ul'\\$2
244 .TH after n 7.5 Tcl "Tcl Built-In Commands"
246 '\" Note: do not modify the .SH NAME line immediately below!
247 .SH NAME
248 after \- Execute a command after a time delay
249 .SH SYNOPSIS
250 \fBafter \fIms\fR
252 \fBafter \fIms \fR?\fIscript script script ...\fR?
254 \fBafter cancel \fIid\fR
256 \fBafter cancel \fIscript script script ...\fR
258 \fBafter idle \fR?\fIscript script script ...\fR?
260 \fBafter info \fR?\fIid\fR?
263 .SH DESCRIPTION
265 This command is used to delay execution of the program or to execute
266 a command in background sometime in the future. It has several forms,
267 depending on the first argument to the command:
269 \fBafter \fIms\fR
270 \fIMs\fR must be an integer giving a time in milliseconds.
271 The command sleeps for \fIms\fR milliseconds and then returns.
272 While the command is sleeping the application does not respond to
273 events.
275 \fBafter \fIms \fR?\fIscript script script ...\fR?
276 In this form the command returns immediately, but it arranges
277 for a Tcl command to be executed \fIms\fR milliseconds later as an
278 event handler.
279 The command will be executed exactly once, at the given time.
280 The delayed command is formed by concatenating all the \fIscript\fR
281 arguments in the same fashion as the \fBconcat\fR command.
282 The command will be executed at global level (outside the context
283 of any Tcl procedure).
284 If an error occurs while executing the delayed command then the
285 \fBbgerror\fR mechanism is used to report the error.
286 The \fBafter\fR command returns an identifier that can be used
287 to cancel the delayed command using \fBafter cancel\fR.
289 \fBafter cancel \fIid\fR
290 Cancels the execution of a delayed command that
291 was previously scheduled.
292 \fIId\fR indicates which command should be canceled; it must have
293 been the return value from a previous \fBafter\fR command.
294 If the command given by \fIid\fR has already been executed then
295 the \fBafter cancel\fR command has no effect.
297 \fBafter cancel \fIscript script ...\fR
298 This command also cancels the execution of a delayed command.
299 The \fIscript\fR arguments are concatenated together with space
300 separators (just as in the \fBconcat\fR command).
301 If there is a pending command that matches the string, it is
302 cancelled and will never be executed; if no such command is
303 currently pending then the \fBafter cancel\fR command has no effect.
305 \fBafter idle \fIscript \fR?\fIscript script ...\fR?
306 Concatenates the \fIscript\fR arguments together with space
307 separators (just as in the \fBconcat\fR command), and arranges
308 for the resulting script to be evaluated later as an idle callback.
309 The script will be run exactly once, the next time the event
310 loop is entered and there are no events to process.
311 The command returns an identifier that can be used
312 to cancel the delayed command using \fBafter cancel\fR.
313 If an error occurs while executing the script then the
314 \fBbgerror\fR mechanism is used to report the error.
316 \fBafter info \fR?\fIid\fR?
317 This command returns information about existing event handlers.
318 If no \fIid\fR argument is supplied, the command returns
319 a list of the identifiers for all existing
320 event handlers created by the \fBafter\fR command for this
321 interpreter.
322 If \fIid\fR is supplied, it specifies an existing handler;
323 \fIid\fR must have been the return value from some previous call
324 to \fBafter\fR and it must not have triggered yet or been cancelled.
325 In this case the command returns a list with two elements.
326 The first element of the list is the script associated
327 with \fIid\fR, and the second element is either
328 \fBidle\fR or \fBtimer\fR to indicate what kind of event
329 handler it is.
331 The \fBafter \fIms\fR and \fBafter idle\fR forms of the command
332 assume that the application is event driven: the delayed commands
333 will not be executed unless the application enters the event loop.
334 In applications that are not normally event-driven, such as
335 \fBtclsh\fR, the event loop can be entered with the \fBvwait\fR
336 and \fBupdate\fR commands.
338 .SH "SEE ALSO"
339 bgerror(n), concat(n), update(n), vwait(n)
341 .SH KEYWORDS
342 cancel, delay, idle callback, sleep, time