1 This is screen.info, produced by makeinfo version 4.5 from
4 INFO-DIR-SECTION General Commands
6 * Screen: (screen). Full-screen window manager.
9 This file documents the `Screen' virtual terminal manager.
11 Copyright (c) 1993-2003 Free Software Foundation, Inc.
13 Permission is granted to make and distribute verbatim copies of this
14 manual provided the copyright notice and this permission notice are
15 preserved on all copies.
17 Permission is granted to copy and distribute modified versions of
18 this manual under the conditions for verbatim copying, provided that
19 the entire resulting derived work is distributed under the terms of a
20 permission notice identical to this one.
22 Permission is granted to copy and distribute translations of this
23 manual into another language, under the above conditions for modified
24 versions, except that this permission notice may be stated in a
25 translation approved by the Foundation.
28 File: screen.info, Node: Files, Next: Credits, Prev: Environment, Up: Top
33 `.../screen-4.?.??/etc/screenrc'
34 `.../screen-4.?.??/etc/etcscreenrc'
35 Examples in the `screen' distribution package for private and
36 global initialization files.
40 `screen' initialization commands
45 Read in after /local/etc/screenrc
47 ``$SCREENDIR'/S-LOGIN'
49 `/local/screens/S-LOGIN'
50 Socket directories (default)
52 `/usr/tmp/screens/S-LOGIN'
53 Alternate socket directories.
55 `SOCKET DIRECTORY/.termcap'
56 Written by the `dumptermcap' command
58 `/usr/tmp/screens/screen-exchange or'
59 `/tmp/screen-exchange'
60 `screen' interprocess communication buffer
63 Screen images created by the hardcopy command
66 Output log files created by the log command
68 `/usr/lib/terminfo/?/* or'
70 Terminal capability databases
76 Program for locking the terminal.
79 File: screen.info, Node: Credits, Next: Bugs, Prev: Files, Up: Top
87 Originally created by Oliver Laumann, this latest version was
88 produced by Wayne Davison, Juergen Weigert and Michael Schroeder.
93 Ken Beal (kbeal@amber.ssd.csd.harris.com),
94 Rudolf Koenig (rfkoenig@informatik.uni-erlangen.de),
95 Toerless Eckert (eckert@informatik.uni-erlangen.de),
96 Wayne Davison (davison@borland.com),
97 Patrick Wolfe (pat@kai.com, kailand!pat),
98 Bart Schaefer (schaefer@cse.ogi.edu),
99 Nathan Glasser (nathan@brokaw.lcs.mit.edu),
100 Larry W. Virden (lvirden@cas.org),
101 Howard Chu (hyc@hanauma.jpl.nasa.gov),
102 Tim MacKenzie (tym@dibbler.cs.monash.edu.au),
103 Markku Jarvinen (mta@{cc,cs,ee}.tut.fi),
104 Marc Boucher (marc@CAM.ORG),
105 Doug Siebert (dsiebert@isca.uiowa.edu),
106 Ken Stillson (stillson@tsfsrv.mitre.org),
107 Ian Frechett (frechett@spot.Colorado.EDU),
108 Brian Koehmstedt (bpk@gnu.ai.mit.edu),
109 Don Smith (djs6015@ultb.isc.rit.edu),
110 Frank van der Linden (vdlinden@fwi.uva.nl),
111 Martin Schweikert (schweik@cpp.ob.open.de),
112 David Vrona (dave@sashimi.lcu.com),
113 E. Tye McQueen (tye%spillman.UUCP@uunet.uu.net),
114 Matthew Green (mrg@eterna.com.au),
115 Christopher Williams (cgw@pobox.com),
116 Matt Mosley (mattm@access.digex.net),
117 Gregory Neil Shapiro (gshapiro@wpi.WPI.EDU),
118 Jason Merrill (jason@jarthur.Claremont.EDU),
119 Johannes Zellner (johannes@zellner.org),
120 Pablo Averbuj (pablo@averbuj.com).
125 This manual describes version 4.0.2 of the `screen' program. Its
126 roots are a merge of a custom version 2.3PR7 by Wayne Davison and
127 several enhancements to Oliver Laumann's version 2.0. Note that all
128 versions numbered 2.x are copyright by Oliver Laumann.
130 See also *Note Availability::.
133 File: screen.info, Node: Bugs, Next: Installation, Prev: Credits, Up: Top
138 Just like any other significant piece of software, `screen' has a
139 few bugs and missing features. Please send in a bug report if you have
140 found a bug not mentioned here.
144 * Known Bugs:: Problems we know about.
145 * Reporting Bugs:: How to contact the maintainers.
146 * Availability:: Where to find the lastest screen version.
149 File: screen.info, Node: Known Bugs, Next: Reporting Bugs, Up: Bugs
154 * `dm' (delete mode) and `xs' are not handled correctly (they are
155 ignored). `xn' is treated as a magic-margin indicator.
157 * `screen' has no clue about double-high or double-wide characters.
158 But this is the only area where `vttest' is allowed to fail.
160 * It is not possible to change the environment variable `$TERMCAP'
161 when reattaching under a different terminal type.
163 * The support of terminfo based systems is very limited. Adding extra
164 capabilities to `$TERMCAP' may not have any effects.
166 * `screen' does not make use of hardware tabs.
168 * `screen' must be installed setuid root on most systems in order to
169 be able to correctly change the owner of the tty device file for
170 each window. Special permission may also be required to write the
173 * Entries in `/etc/utmp' are not removed when `screen' is killed
174 with SIGKILL. This will cause some programs (like "w" or "rwho")
175 to advertise that a user is logged on who really isn't.
177 * `screen' may give a strange warning when your tty has no utmp
180 * When the modem line was hung up, `screen' may not automatically
181 detach (or quit) unless the device driver sends a HANGUP signal.
182 To detach such a `screen' session use the -D or -d command line
185 * If a password is set, the command line options -d and -D still
186 detach a session without asking.
188 * Both `breaktype' and `defbreaktype' change the break generating
189 method used by all terminal devices. The first should change a
190 window specific setting, where the latter should change only the
191 default for new windows.
193 * When attaching to a multiuser session, the user's `.screenrc' file
194 is not sourced. Each users personal settings have to be included
195 in the `.screenrc' file from which the session is booted, or have
196 to be changed manually.
198 * A weird imagination is most useful to gain full advantage of all
202 File: screen.info, Node: Reporting Bugs, Next: Availability, Prev: Known Bugs, Up: Bugs
207 If you find a bug in `Screen', please send electronic mail to
208 `screen@uni-erlangen.de', and also to `bug-gnu-utils@prep.ai.mit.edu'.
209 Include the version number of `Screen' which you are using. Also
210 include in your message the hardware and operating system, the compiler
211 used to compile, a description of the bug behavior, and the conditions
212 that triggered the bug. Please recompile `screen' with the `-DDEBUG'
213 options enabled, reproduce the bug, and have a look at the debug output
214 written to the directory `/tmp/debug'. If necessary quote suspect
215 passages from the debug output and show the contents of your `config.h'
219 File: screen.info, Node: Availability, Prev: Reporting Bugs, Up: Bugs
224 `Screen' is available under the `GNU' copyleft.
226 The latest official release of `screen' available via anonymous ftp
227 from `prep.ai.mit.edu', `nic.funet.fi' or any other `GNU' distribution
228 site. The home site of `screen' is `ftp.uni-erlangen.de
229 (131.188.3.71)', in the directory `pub/utilities/screen'. The
230 subdirectory `private' contains the latest beta testing release. If
231 you want to help, send a note to screen@uni-erlangen.de.
234 File: screen.info, Node: Installation, Next: Concept Index, Prev: Bugs, Up: Top
239 Since `screen' uses pseudo-ttys, the select system call, and
240 UNIX-domain sockets/named pipes, it will not run under a system that
241 does not include these features of 4.2 and 4.3 BSD UNIX.
245 * Socket Directory:: Where screen stores its handle.
249 File: screen.info, Node: Socket Directory, Next: Compiling Screen, Up: Installation
254 The socket directory defaults either to `$HOME/.screen' or simply to
255 `/tmp/screens' or preferably to `/usr/local/screens' chosen at
256 compile-time. If `screen' is installed setuid root, then the
257 administrator should compile screen with an adequate (not NFS mounted)
258 `SOCKDIR'. If `screen' is not running setuid-root, the user can specify
259 any mode 700 directory in the environment variable `$SCREENDIR'.
262 File: screen.info, Node: Compiling Screen, Prev: Socket Directory, Up: Installation
267 To compile and install screen:
269 The `screen' package comes with a `GNU Autoconf' configuration
270 script. Before you compile the package run
273 This will create a `config.h' and `Makefile' for your
274 machine. If `configure' fails for some reason, then look at the
275 examples and comments found in the `Makefile.in' and `config.h.in'
276 templates. Rename `config.status' to `config.status.MACHINE' when you
277 want to keep configuration data for multiple architectures. Running `sh
278 ./config.status.MACHINE' recreates your configuration significantly
279 faster than rerunning `configure'.
280 Read through the "User Configuration" section of `config.h', and verify
281 that it suits your needs. A comment near the top of this section
282 explains why it's best to install screen setuid to root. Check for the
283 place for the global `screenrc'-file and for the socket directory.
284 Check the compiler used in `Makefile', the prefix path where to install
288 If `make' fails to produce one of the files `term.h', `comm.h'
289 or `tty.c', then use `FILENAME.X.dist' instead. For additional
290 information about installation of `screen' refer to the file
291 `INSTALLATION', coming with this package.
294 File: screen.info, Node: Concept Index, Next: Command Index, Prev: Installation, Up: Top
301 * .screenrc: Startup Files.
302 * availability: Availability.
303 * binding: Key Binding.
304 * bug report: Reporting Bugs.
306 * capabilities: Special Capabilities.
307 * command character: Command Character.
308 * command line options: Invoking Screen.
309 * command summary: Command Summary.
310 * compiling screen: Compiling Screen.
311 * control sequences: Control Sequences.
312 * copy and paste: Copy and Paste.
313 * customization: Customization.
314 * environment: Environment.
315 * escape character: Command Character.
317 * flow control: Flow Control.
318 * input translation: Input Translation.
319 * installation: Installation.
320 * introduction: Getting Started.
321 * invoking: Invoking Screen.
322 * key binding: Key Binding.
324 * message line: Message Line.
325 * multiuser session: Multiuser Session.
326 * options: Invoking Screen.
327 * overview: Overview.
329 * screenrc: Startup Files.
331 * socket directory: Socket Directory.
332 * string escapes: String Escapes.
333 * terminal capabilities: Special Capabilities.
334 * title: Naming Windows.
335 * window types: Window Types.
338 File: screen.info, Node: Command Index, Next: Keystroke Index, Prev: Concept Index, Up: Top
343 This is a list of all the commands supported by `screen'.
354 * allpartial: Redisplay.
355 * altscreen: Redisplay.
357 * attrcolor: Attrcolor.
358 * autodetach: Detach.
359 * autonuke: Autonuke.
360 * backtick: Backtick.
361 * bce: Character Processing.
365 * blanker: Screen Saver.
366 * blankerprg: Screen Saver.
369 * bufferfile: Screen Exchange.
370 * c1: Character Processing.
373 * charset: Character Processing.
377 * command: Command Character.
378 * compacthist: Scrollback.
381 * copy_reg: Registers.
382 * crlf: Line Termination.
384 * defautonuke: Autonuke.
385 * defbce: Character Processing.
386 * defbreaktype: Break.
387 * defc1: Character Processing.
388 * defcharset: Character Processing.
389 * defencoding: Character Processing.
390 * defescape: Command Character.
392 * defgr: Character Processing.
393 * defhstatus: Hardstatus.
397 * defmonitor: Monitor.
398 * defnonblock: Nonblock.
399 * defobuflimit: Obuflimit.
400 * defscrollback: Scrollback.
402 * defsilence: Silence.
403 * defslowpaste: Paste.
404 * defutf8: Character Processing.
406 * defwritelock: Writelock.
411 * displays: Displays.
412 * dumptermcap: Dump Termcap.
414 * encoding: Character Processing.
415 * escape: Command Character.
421 * gr: Character Processing.
422 * hardcopy: Hardcopy.
423 * hardcopy_append: Hardcopy.
424 * hardcopydir: Hardcopy.
425 * hardstatus: Hardware Status Line.
426 * height: Window Size.
429 * hstatus: Hardstatus.
430 * idle: Screen Saver.
431 * ignorecase: Searching.
433 * ins_reg: Registers.
435 * lastmsg: Last Message.
442 * mapdefault: Bindkey Control.
443 * mapnotnext: Bindkey Control.
444 * maptimeout: Bindkey Control.
445 * markkeys: Copy Mode Keys.
447 * meta: Command Character.
449 * msgminwait: Message Wait.
450 * msgwait: Message Wait.
451 * multiuser: Multiuser.
453 * next: Next and Previous.
454 * nonblock: Nonblock.
456 * obuflimit: Obuflimit.
458 * other: Other Window.
459 * partial: Redisplay.
464 * pow_detach: Power Detach.
465 * pow_detach_msg: Power Detach.
466 * prev: Next and Previous.
467 * printcmd: Printcmd.
468 * process: Registers.
470 * readbuf: Screen Exchange.
472 * redisplay: Redisplay.
473 * register: Registers.
475 * removebuf: Screen Exchange.
478 * screen: Screen Command.
479 * scrollback: Scrollback.
481 * sessionname: Session Name.
487 * silencewait: Silence.
490 * sorendition: Sorendition.
493 * startup_message: Startup Message.
498 * termcap: Termcap Syntax.
499 * termcapinfo: Termcap Syntax.
500 * terminfo: Termcap Syntax.
502 * title: Title Command.
505 * utf8: Character Processing.
512 * width: Window Size.
513 * windowlist: Windowlist.
516 * writebuf: Screen Exchange.
517 * writelock: Writelock.
524 File: screen.info, Node: Keystroke Index, Prev: Command Index, Up: Top
529 This is a list of the default key bindings.
531 The leading escape character (*note Command Character::) has been
532 omitted from the key sequences, since it is the same for all bindings.
542 * <: Screen Exchange.
543 * =: Screen Exchange.
544 * >: Screen Exchange.
548 * a: Command Character.
556 * C-c: Screen Command.
565 * C-n: Next and Previous.
566 * C-p: Next and Previous.
589 * n: Next and Previous.
590 * p: Next and Previous.
596 * SPC: Next and Previous.