ALT Linux Bugzilla
– Attachment 3069 Details for
Bug 17918
shows empty window for the query "screen" (when scanning; because of manpage+locale)
New bug
|
Search
|
[?]
|
Help
Register
|
Log In
[x]
|
Forgot Password
Login:
[x]
|
EN
|
RU
stardict-empty.err of: "stardict > stardict-empty.out 2> stardict-empty.err"
stardict-empty.err (text/plain), 213.74 KB, created by
Ivan Zakharyaschev
on 2008-11-17 18:56:24 MSK
(
hide
)
Description:
stardict-empty.err of: "stardict > stardict-empty.out 2> stardict-empty.err"
Filename:
MIME Type:
Creator:
Ivan Zakharyaschev
Created:
2008-11-17 18:56:24 MSK
Size:
213.74 KB
patch
obsolete
>Illegal format hash table /usr/lib/ispell/russian.hash - expected magic2 0x9602, got 0xed >Illegal format hash table /usr/lib/ispell/russian.hash - expected magic2 0x9602, got 0xed > >(stardict:2594): Gtk-WARNING **: Failed to set text from markup due to error parsing markup: ïÛÉÂËÁ × ÓÔÒÏËÅ 2335 ÎÁ ÓÉÍ×ÏÌÅ 8: ôÅËÓÔ ÚÁËÏÄÉÒÏ×ÁÎ ËÁË UTF-8 ÎÅÄÏÐÕÓÔÉÍÙÍ ÏÂÒÁÚÏÍ ? ÎÅÄÏÐÕÓÔÉÍÁÑ ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔØ ?<b><span size="x-large">screen</span></b> ><span foreground="blue"><--- mueller ---></span> >[skri?n] 1. _n. 1> ÛÉÒÍÁ, ÜËÒÁÎ; ÝÉÔ, ÄÏÓËÁ (ÄÌÑ ÏÂßÑ×ÌÅÎÉÊ) 2> _ËÉÎ. _ÜÌ. _ÒÁÄ. ÜËÒÁÎ 3> (the screen) ËÉÎÏ 4> ÐÒÉËÒÙÔÉÅ, ÚÁÓÌÏÎ, ÚÁ×ÅÓÁ (ÔÖ. _×ÏÅÎ.); under (the) screen of night ÐÏÄ ÐÏËÒÏ×ÏÍ ÎÏÞÉ; to put on a screen of indifference ÐÒÉÎÑÔØ ÎÁÒÏÞÉÔÏ ÂÅÚÒÁÚÌÉÞÎÙÊ ×ÉÄ 5> ÓÅÔËÁ ÏÔ ÎÁÓÅËÏÍÙÈ 6> ÇÒÏÈÏÔ, ÓÉÔÏ, ÒÅÛÅÔÏ 7> _attr. screen adaptation ÜËÒÁÎÉÚÁÃÉÑ ÌÉÔÅÒÁÔÕÒÎÏÇÏ ÐÒÏÉÚ×ÅÄÅÎÉÑ; screen time ×ÒÅÍÑ ÄÅÍÏÎÓÔÒÁÃÉÉ ÆÉÌØÍÁ, ÐÒÏÄÏÌÖÉÔÅÌØÎÏÓÔØ ÓÅÁÎÓÁ 2. _v. 1> ÐÒÉËÒÙ×ÁÔØ, ÕËÒÙ×ÁÔØ, ÚÁÝÉÝÁÔØ 2> ÐÒÏÓÅÉ×ÁÔØ, ÓÏÒÔÉÒÏ×ÁÔØ, ÇÒÏÈÏÔÉÔØ 3> ÐÒÏÉÚ×ÏÄÉÔØ ÐÒÏ×ÅÒËÕ ÐÏÌÉÔÉÞÅÓËÏÊ ÂÌÁÇÏÎÁÄ£ÖÎÏÓÔÉ 4> _×ÏÅÎ. ÐÒÏ×ÏÄÉÔØ ÏÔÂÏÒ ÎÏ×ÏÂÒÁÎÃÅ× 5> ÜËÒÁÎÉÚÉÒÏ×ÁÔØ 6> to screen well (badly) Á> ÉÍÅÔØ ÕÓÐÅÈ (ÎÅ ÉÍÅÔØ ÕÓÐÅÈÁ) × ËÉÎÏ; Â> ÂÙÔØ ÆÏÔÏÇÅÎÉÞÎÙÍ (ÎÅÆÏÔÏÇÅÎÉÞÎÙÍ) 7> ÄÅÍÏÎÓÔÒÉÒÏ×ÁÔØ ÎÁ ÜËÒÁÎÅ 8> _ÒÁÄ. ÜËÒÁÎÉÒÏ×ÁÔØ ><span foreground="blue"><--- gcide ---></span> ><span foreground="purple">Screen</span> >Screen \Screen\ (skr[=e]n), v. t. [imp. & p. p. {Screened}; p. > pr. & vb. n. {Screening}.] > 1. To provide with a shelter or means of concealment; to > separate or cut off from inconvenience, injury, or danger; > to shelter; to protect; to protect by hiding; to conceal; > as, fruits screened from cold winds by a forest or hill. > [1913 Webster] > > They were encouraged and screened by some who were > in high commands. --Macaulay. > [1913 Webster] > > 2. To pass, as coal, gravel, ashes, etc., through a screen in > order to separate the coarse from the fine, or the > worthless from the valuable; to sift. > [1913 Webster] > > 3. to examine a group of objects methodically, to separate > them into groups or to select one or more for some > purpose. As: > (a) To inspect the qualifications of candidates for a job, > to select one or more to be hired. > (b) (Biochem., Med.) to test a large number of samples, in > order to find those having specific desirable > properties; as, to screen plant extracts for > anticancer agents. > [PJC] > >Screen \Screen\ (skr[=e]n), n. [OE. scren, OF. escrein, escran, > F. ['e]cran, of uncertain origin; cf. G. schirm a screen, > OHG. scirm, scerm a protection, shield, or G. schragen a > trestle, a stack of wood, or G. schranne a railing.] > 1. Anything that separates or cuts off inconvenience, injury, > or danger; that which shelters or conceals from view; a > shield or protection; as, a fire screen. > [1913 Webster] > > Your leavy screens throw down. --Shak. > [1913 Webster] > > Some ambitious men seem as screens to princes in > matters of danger and envy. --Bacon. > [1913 Webster] > > 2. (Arch.) A dwarf wall or partition carried up to a certain > height for separation and protection, as in a church, to > separate the aisle from the choir, or the like. > [1913 Webster] > > 3. A surface, as that afforded by a curtain, sheet, wall, > etc., upon which an image, as a picture, is thrown by a > magic lantern, solar microscope, etc. > [1913 Webster] > > 4. A long, coarse riddle or sieve, sometimes a revolving > perforated cylinder, used to separate the coarser from the > finer parts, as of coal, sand, gravel, and the like. > [1913 Webster] > > 5. (Cricket) An erection of white canvas or wood placed on > the boundary opposite a batsman to enable him to see ball > better. > [Webster 1913 Suppl.] > > 6. a netting, usu. of metal, contained in a frame, used > mostly in windows or doors to allow in fresh air while > excluding insects. > > {Screen door}, a door of which half or more is composed of a > screen. > > {Screen window}, a screen inside a frame, fitted for > insertion into a window frame. > [PJC] > > 7. The surface of an electronic device, as a television set > or computer monitor, on which a visible image is formed. > The screen is frequently the surface of a cathode-ray tube > containing phosphors excited by the electron beam, but > other methods for causing an image to appear on the screen > are also used, as in flat-panel displays. > [PJC] > > 8. The motion-picture industry; motion pictures. "A star of > stage and screen." > [PJC] ><span foreground="blue"><--- slovnyk_en-ru ---></span> >ÁÐÌÁÓÔÉÞÎÙÊ, ÂÌÅÎÄÁ, ÚÁ×ÅÓÁ, ÚÁÎÁ×ÅÓ, ÎÅ×ÉÄÉÍÙÊ, ÐÅÌÅÎÁ, ÐÒÉËÒÙ×ÁÔØ, ÐÒÉËÒÙÔØ, ÓÌÅÐÁÑ, ÓÌÅÐÏÅ, ÓÌÅÐÏÊ, ÛÉÒÍÁ, ÝÉÔ, ÜËÒÁÎ, ÜËÒÁÎÉÚÉÒÏ×ÁÔØ ><span foreground="blue"><--- wn ---></span> >screen > n 1: a white or silvered surface where pictures can be projected > for viewing [syn: {silver screen}, {projection screen}] > 2: something that keeps things out or hinders sight; "they had > just moved in and had not put up blinds yet" [syn: {blind}] > 3: display on the surface of the large end of a cathode-ray > tube on which is electronically created [syn: {CRT screen}] > 4: a covering that serves to conceal or shelter something; > "they crouched behind the screen"; "under cover of > darkness" [syn: {cover}, {covert}, {concealment}] > 5: protective covering consisting of a metallic netting mounted > in a frame and covering windows or doors (especially for > protection against insects) > 6: a strainer for separating lumps from powdered material or > grading particles [syn: {sieve}] > 7: a door that is a screen to keep insects from entering a > building through the open door; "he heard the screen slam > as she left" [syn: {screen door}] > 8: partition consisting of a decorative frame or panel that > serves to divide a space > v 1: test or examine for the presence of disease or infection; > "screen the blood for the HIV virus" [syn: {test}] > 2: examine methodically; "screen the suitcases" > 3: examine in order to test suitability; "screen these > samples"; "screen the job applicants" [syn: {screen out}, > {sieve}, {sort}] > 4: project onto a screen for viewing; "screen a film" > 5: prevent from entering; "block out the strong sunlight" [syn: > {block out}] > 6: separate with a riddle, as grain from chaff [syn: {riddle}] > 7: protect, hide, or conceal from danger or harm [syn: {shield}] ><span foreground="blue"><--- Man ---></span> >SCREEN(1) SCREEN(1) > > > ><b>N</b><b>A</b><b>M</b><b>E</b> > screen - screen manager with VT100/ANSI terminal emulation > > > ><b>S</b><b>Y</b><b>N</b><b>O</b><b>P</b><b>S</b><b>I</b><b>S</b> > <b>s</b><b>c</b><b>r</b><b>e</b><b>e</b><b>n</b> [ <b>-</b><u>o</u><u>p</u><u>t</u><u>i</u><u>o</u><u>n</u><u>s</u> ] [ <u>c</u><u>m</u><u>d</u> [ <u>a</u><u>r</u><u>g</u><u>s</u> ] ] > <b>s</b><b>c</b><b>r</b><b>e</b><b>e</b><b>n</b> <b>-</b><b>r</b> [[<u>p</u><u>i</u><u>d</u><b>.</b>]<u>t</u><u>t</u><u>y</u>[<b>.</b><u>h</u><u>o</u><u>s</u><u>t</u>]] > <b>s</b><b>c</b><b>r</b><b>e</b><b>e</b><b>n</b> <b>-</b><b>r</b> <u>s</u><u>e</u><u>s</u><u>s</u><u>i</u><u>o</u><u>n</u><u>o</u><u>w</u><u>n</u><u>e</u><u>r</u><b>/</b>[[<u>p</u><u>i</u><u>d</u><b>.</b>]<u>t</u><u>t</u><u>y</u>[<b>.</b><u>h</u><u>o</u><u>s</u><u>t</u>]] > > > ><b>D</b><b>E</b><b>S</b><b>C</b><b>R</b><b>I</b><b>P</b><b>T</b><b>I</b><b>O</b><b>N</b> > <u>S</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> is a full-screen window manager that multiplexes a physical ter- > minal between several processes (typically interactive shells). Each > virtual terminal provides the functions of a DEC VT100 terminal and, in > addition, several control functions from the ISO 6429 (ECMA 48, ANSI > X3.64) and ISO 2022 standards (e.g. insert/delete line and support for > multiple character sets). There is a scrollback history buffer for > each virtual terminal and a copy-and-paste mechanism that allows moving > text regions between windows. > > When <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> is called, it creates a single window with a shell in it > (or the specified command) and then gets out of your way so that you > can use the program as you normally would. Then, at any time, you can > create new (full-screen) windows with other programs in them (including > more shells), kill existing windows, view a list of windows, turn out- > put logging on and off, copy-and-paste text between windows, view the > scrollback history, switch between windows in whatever manner you wish, > etc. All windows run their programs completely independent of each > other. Programs continue to run when their window is currently not vis- > ible and even when the whole <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> session is detached from the user's > terminal. When a program terminates, <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> (per default) kills the > window that contained it. If this window was in the foreground, the > display switches to the previous window; if none are left, <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> > exits. > > Everything you type is sent to the program running in the current win- > dow. The only exception to this is the one keystroke that is used to > initiate a command to the window manager. By default, each command > begins with a control-a (abbreviated C-a from now on), and is followed > by one other keystroke. The command character and all the key bindings > can be fully customized to be anything you like, though they are always > two characters in length. > > <u>S</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> does not understand the prefix "C-" to mean control. Please use > the caret notation ("^A" instead of "C-a") as arguments to e.g. the > <u>e</u><u>s</u><u>c</u><u>a</u><u>p</u><u>e</u> command or the <u>-</u><u>e</u> option. <u>S</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> will also print out control > characters in caret notation. > > The standard way to create a new window is to type "C-a c". This cre- > ates a new window running a shell and switches to that window immedi- > ately, regardless of the state of the process running in the current > window. Similarly, you can create a new window with a custom command > in it by first binding the command to a keystroke (in your .screenrc > file or at the "C-a :" command line) and then using it just like the > "C-a c" command. In addition, new windows can be created by running a > command like: > > screen emacs prog.c > > from a shell prompt within a previously created window. This will not > run another copy of <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u>, but will instead supply the command name > and its arguments to the window manager (specified in the $STY environ- > ment variable) who will use it to create the new window. The above > example would start the emacs editor (editing prog.c) and switch to its > window. > > If "/var/run/utmp" is writable by <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u>, an appropriate record will be > written to this file for each window, and removed when the window is > terminated. This is useful for working with "talk", "script", "shut- > down", "rsend", "sccs" and other similar programs that use the utmp > file to determine who you are. As long as <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> is active on your ter- > minal, the terminal's own record is removed from the utmp file. See > also "C-a L". > > > ><b>G</b><b>E</b><b>T</b><b>T</b><b>I</b><b>N</b><b>G</b> <b>S</b><b>T</b><b>A</b><b>R</b><b>T</b><b>E</b><b>D</b> > Before you begin to use <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> you'll need to make sure you have cor- > rectly selected your terminal type, just as you would for any other > termcap/terminfo program. (You can do this by using <u>t</u><u>s</u><u>e</u><u>t</u> for example.) > > If you're impatient and want to get started without doing a lot more > reading, you should remember this one command: "C-a ?". Typing these > two characters will display a list of the available <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> commands and > their bindings. Each keystroke is discussed in the section "DEFAULT KEY > BINDINGS". The manual section "CUSTOMIZATION" deals with the contents > of your .screenrc. > > If your terminal is a "true" auto-margin terminal (it doesn't allow the > last position on the screen to be updated without scrolling the screen) > consider to use a version of your terminal's termcap that has automatic > margins turned <u>o</u><u>f</u><u>f</u>. This will ensure an accurate and optimal update of > the screen in all circumstances. Most terminals nowadays have "magic" > margins (automatic margins plus usable last column). This is the VT100 > style type and perfectly suited for <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u>. If all you've got is a > "true" auto-margin terminal <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> will be content to use it, but > updating a character put into the last position on the screen may not > be possible until the screen scrolls or the character is moved into a > safe position in some other way. This delay can be shortened by using a > terminal with insert-character capability. > > > ><b>C</b><b>O</b><b>M</b><b>M</b><b>A</b><b>N</b><b>D</b><b>-</b><b>L</b><b>I</b><b>N</b><b>E</b> <b>O</b><b>P</b><b>T</b><b>I</b><b>O</b><b>N</b><b>S</b> > Screen has the following command-line options: > > <b>-</b><b>a</b> include <u>a</u><u>l</u><u>l</u> capabilities (with some minor exceptions) in each win- > dow's termcap, even if <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> must redraw parts of the display in > order to implement a function. > > <b>-</b><b>A</b> Adapt the sizes of all windows to the size of the current termi- > nal. By default, <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> tries to restore its old window sizes > when attaching to resizable terminals (those with "WS" in its > description, e.g. suncmd or some xterm). > > <b>-</b><b>c</b> <u>f</u><u>i</u><u>l</u><u>e</u> > override the default configuration file from "$HOME/.screenrc" to > <u>f</u><u>i</u><u>l</u><u>e</u>. > > <b>-</b><b>d</b>|<b>-</b><b>D</b> [<u>p</u><u>i</u><u>d</u><u>.</u><u>t</u><u>t</u><u>y</u><u>.</u><u>h</u><u>o</u><u>s</u><u>t</u>] > does not start <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u>, but detaches the elsewhere running <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> > session. It has the same effect as typing "C-a d" from <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u>'s > controlling terminal. <b>-</b><b>D</b> is the equivalent to the power detach > key. If no session can be detached, this option is ignored. In > combination with the <b>-</b><b>r</b>/<b>-</b><b>R</b> option more powerful effects can be > achieved: > > <b>-</b><b>d</b> <b>-</b><b>r</b> Reattach a session and if necessary detach it first. > > <b>-</b><b>d</b> <b>-</b><b>R</b> Reattach a session and if necessary detach or even create it > first. > > <b>-</b><b>d</b> <b>-</b><b>R</b><b>R</b> Reattach a session and if necessary detach or create it. Use > the first session if more than one session is available. > > <b>-</b><b>D</b> <b>-</b><b>r</b> Reattach a session. If necessary detach and logout remotely > first. > > <b>-</b><b>D</b> <b>-</b><b>R</b> Attach here and now. In detail this means: If a session is run- > ning, then reattach. If necessary detach and logout remotely > first. If it was not running create it and notify the user. > This is the author's favorite. > > <b>-</b><b>D</b> <b>-</b><b>R</b><b>R</b> Attach here and now. Whatever that means, just do it. > > Note: It is always a good idea to check the status of your ses- > sions by means of "screen -list". > > <b>-</b><b>e</b> <u>x</u><u>y</u> > specifies the command character to be <u>x</u> and the character generat- > ing a literal command character to <u>y</u> (when typed after the command > character). The default is "C-a" and `a', which can be specified > as "-e^Aa". When creating a <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> session, this option sets the > default command character. In a multiuser session all users added > will start off with this command character. But when attaching to > an already running session, this option changes only the command > character of the attaching user. This option is equivalent to > either the commands "defescape" or "escape" respectively. > > <b>-</b><b>f</b>, <b>-</b><b>f</b><b>n</b>, and <b>-</b><b>f</b><b>a</b> > turns flow-control on, off, or "automatic switching mode". This > can also be defined through the "defflow" .screenrc command. > > <b>-</b><b>h</b> <u>n</u><u>u</u><u>m</u> > Specifies the history scrollback buffer to be <u>n</u><u>u</u><u>m</u> lines high. > > <b>-</b><b>i</b> will cause the interrupt key (usually C-c) to interrupt the dis- > play immediately when flow-control is on. See the "defflow" > .screenrc command for details. The use of this option is discour- > aged. > > <b>-</b><b>l</b> and <b>-</b><b>l</b><b>n</b> > turns login mode on or off (for /var/run/utmp updating). This can > also be defined through the "deflogin" .screenrc command. > > <b>-</b><b>l</b><b>s</b> and <b>-</b><b>l</b><b>i</b><b>s</b><b>t</b> > does not start <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u>, but prints a list of <u>p</u><u>i</u><u>d</u><u>.</u><u>t</u><u>t</u><u>y</u><u>.</u><u>h</u><u>o</u><u>s</u><u>t</u> strings > identifying your <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> sessions. Sessions marked `detached' can > be resumed with "screen -r". Those marked `attached' are running > and have a controlling terminal. If the session runs in multiuser > mode, it is marked `multi'. Sessions marked as `unreachable' > either live on a different host or are `dead'. An unreachable > session is considered dead, when its name matches either the name > of the local host, or the specified parameter, if any. See the <b>-</b><b>r</b> > flag for a description how to construct matches. Sessions marked > as `dead' should be thoroughly checked and removed. Ask your sys- > tem administrator if you are not sure. Remove sessions with the > <b>-</b><b>w</b><b>i</b><b>p</b><b>e</b> option. > > Note: > If sockets are missing (and because of this, your sessions are > not listed), you may send a SIGCHLD to its `SCREEN' process and > the process will re-establish the socket (think of someone clean- > ing /tmp thoroughly). > > <b>-</b><b>L</b> tells <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> your auto-margin terminal has a writable last-posi- > tion on the screen. This can also be set in your .screenrc by > specifying `LP' in a "termcap" command. > > <b>-</b><b>m</b> causes <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> to ignore the $STY environment variable. With > "screen -m" creation of a new session is enforced, regardless > whether <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> is called from within another <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> session or > not. This flag has a special meaning in connection with the `-d' > option: > > <b>-</b><b>d</b> <b>-</b><b>m</b> Start <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> in "detached" mode. This creates a new session but > doesn't attach to it. This is useful for system startup > scripts. > > <b>-</b><b>D</b> <b>-</b><b>m</b> This also starts screen in "detached" mode, but doesn't fork a > new process. The command exits if the session terminates. > > <b>-</b><b>O</b> selects a more optimal output mode for your terminal rather than > true VT100 emulation (only affects auto-margin terminals without > `LP'). This can also be set in your .screenrc by specifying `OP' > in a "termcap" command. > > <b>-</b><b>q</b> Suppress printing of error messages. In combination with "-ls" the > exit value is as follows: 9 indicates a directory without ses- > sions. 10 indicates a directory with running but not attachable > sessions. 11 (or more) indicates 1 (or more) usable sessions. In > combination with "-r" the exit value is as follows: 10 indicates > that there is no session to resume. 12 (or more) indicates that > there are 2 (or more) sessions to resume and you should specify > which one to choose. In all other cases "-q" has no effect. > > <b>-</b><b>r</b> [<u>p</u><u>i</u><u>d</u><u>.</u><u>t</u><u>t</u><u>y</u><u>.</u><u>h</u><u>o</u><u>s</u><u>t</u>] > <b>-</b><b>r</b> <u>s</u><u>e</u><u>s</u><u>s</u><u>i</u><u>o</u><u>n</u><u>o</u><u>w</u><u>n</u><u>e</u><u>r</u><u>/</u><u>[</u><u>p</u><u>i</u><u>d</u><u>.</u><u>t</u><u>t</u><u>y</u><u>.</u><u>h</u><u>o</u><u>s</u><u>t</u>] > resumes a detached <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> session. No other options (except com- > binations with <b>-</b><b>d</b>/<b>-</b><b>D</b>) may be specified, though an optional prefix > of [<u>p</u><u>i</u><u>d</u><u>.</u>]<u>t</u><u>t</u><u>y</u><u>.</u><u>h</u><u>o</u><u>s</u><u>t</u> may be needed to distinguish between multiple > detached <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> sessions. The second form is used to connect to > another user's screen session which runs in multiuser mode. This > indicates that screen should look for sessions in another user's > directory. This requires setuid-root. > > <b>-</b><b>R</b> attempts to resume the first detached <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> session it finds. If > successful, all other command-line options are ignored. If no > detached session exists, starts a new session using the specified > options, just as if <b>-</b><b>R</b> had not been specified. The option is set > by default if <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> is run as a login-shell (actually screen uses > "-xRR" in that case). For combinations with the <b>-</b><b>d</b>/<b>-</b><b>D</b> option see > there. > > <b>-</b><b>s</b> sets the default shell to the program specified, instead of the > value in the environment variable $SHELL (or "/bin/sh" if not > defined). This can also be defined through the "shell" .screenrc > command. > > <b>-</b><b>S</b> <u>s</u><u>e</u><u>s</u><u>s</u><u>i</u><u>o</u><u>n</u><u>n</u><u>a</u><u>m</u><u>e</u> > When creating a new session, this option can be used to specify a > meaningful name for the session. This name identifies the session > for "screen -list" and "screen -r" actions. It substitutes the > default [<u>t</u><u>t</u><u>y</u><u>.</u><u>h</u><u>o</u><u>s</u><u>t</u>] suffix. > > <b>-</b><b>t</b> <u>n</u><u>a</u><u>m</u><u>e</u> > sets the title (a.k.a.) for the default shell or specified pro- > gram. See also the "shelltitle" .screenrc command. > > <b>-</b><b>U</b> Run screen in UTF-8 mode. This option tells screen that your ter- > minal sends and understands UTF-8 encoded characters. It also sets > the default encoding for new windows to `utf8'. > > <b>-</b><b>v</b> Print version number. > > <b>-</b><b>w</b><b>i</b><b>p</b><b>e</b> [<u>m</u><u>a</u><u>t</u><u>c</u><u>h</u>] > does the same as "screen -ls", but removes destroyed sessions > instead of marking them as `dead'. An unreachable session is con- > sidered dead, when its name matches either the name of the local > host, or the explicitly given parameter, if any. See the <b>-</b><b>r</b> flag > for a description how to construct matches. > > <b>-</b><b>x</b> Attach to a not detached <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> session. (Multi display mode). > > <b>-</b><b>X</b> Send the specified command to a running screen session. You can > use the <b>-</b><b>d</b> or <b>-</b><b>r</b> option to tell screen to look only for attached > or detached screen sessions. Note that this command doesn't work > if the session is password protected. > > > ><b>D</b><b>E</b><b>F</b><b>A</b><b>U</b><b>L</b><b>T</b> <b>K</b><b>E</b><b>Y</b> <b>B</b><b>I</b><b>N</b><b>D</b><b>I</b><b>N</b><b>G</b><b>S</b> > As mentioned, each <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> command consists of a "C-a" followed by one > other character. For your convenience, all commands that are bound to > lower-case letters are also bound to their control character counter- > parts (with the exception of "C-a a"; see below), thus, "C-a c" as well > as "C-a C-c" can be used to create a window. See section "CUSTOMIZA- > TION" for a description of the command. > > > The following table shows the default key bindings: > > <b>C</b><b>-</b><b>a</b> <b>'</b> (select) Prompt for a window name or number to switch > to. > > <b>C</b><b>-</b><b>a</b> <b>"</b> (windowlist -b) > Present a list of all windows for selection. > > <b>C</b><b>-</b><b>a</b> <b>0</b> (select 0) > <b>.</b><b>.</b><b>.</b> ... > <b>C</b><b>-</b><b>a</b> <b>9</b> (select 9) > <b>C</b><b>-</b><b>a</b> <b>-</b> (select -) Switch to window number 0 - 9, or to the > blank window. > > <b>C</b><b>-</b><b>a</b> <b>t</b><b>a</b><b>b</b> (focus) Switch the input focus to the next region. > > <b>C</b><b>-</b><b>a</b> <b>C</b><b>-</b><b>a</b> (other) Toggle to the window displayed previously. > Note that this binding defaults to the com- > mand character typed twice, unless overrid- > den. For instance, if you use the option > "<b>-</b><b>e</b><b>]</b><b>x</b>", this command becomes "]]". > > <b>C</b><b>-</b><b>a</b> <b>a</b> (meta) Send the command character (C-a) to window. > See <u>e</u><u>s</u><u>c</u><u>a</u><u>p</u><u>e</u> command. > > <b>C</b><b>-</b><b>a</b> <b>A</b> (title) Allow the user to enter a name for the cur- > rent window. > > <b>C</b><b>-</b><b>a</b> <b>b</b> > <b>C</b><b>-</b><b>a</b> <b>C</b><b>-</b><b>b</b> (break) Send a break to window. > > <b>C</b><b>-</b><b>a</b> <b>B</b> (pow_break) Reopen the terminal line and send a break. > > <b>C</b><b>-</b><b>a</b> <b>c</b> > <b>C</b><b>-</b><b>a</b> <b>C</b><b>-</b><b>c</b> (screen) Create a new window with a shell and switch > to that window. > > <b>C</b><b>-</b><b>a</b> <b>C</b> (clear) Clear the screen. > > <b>C</b><b>-</b><b>a</b> <b>d</b> > <b>C</b><b>-</b><b>a</b> <b>C</b><b>-</b><b>d</b> (detach) Detach <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> from this terminal. > > <b>C</b><b>-</b><b>a</b> <b>D</b> <b>D</b> (pow_detach) Detach and logout. > > <b>C</b><b>-</b><b>a</b> <b>f</b> > <b>C</b><b>-</b><b>a</b> <b>C</b><b>-</b><b>f</b> (flow) Toggle flow <u>o</u><u>n</u>, <u>o</u><u>f</u><u>f</u> or <u>a</u><u>u</u><u>t</u><u>o</u>. > > <b>C</b><b>-</b><b>a</b> <b>F</b> (fit) Resize the window to the current region size. > > <b>C</b><b>-</b><b>a</b> <b>C</b><b>-</b><b>g</b> (vbell) Toggles <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u><u>'</u><u>s</u> visual bell mode. > > <b>C</b><b>-</b><b>a</b> <b>h</b> (hardcopy) Write a hardcopy of the current window to the > file "hardcopy.<u>n</u>". > > <b>C</b><b>-</b><b>a</b> <b>H</b> (log) Begins/ends logging of the current window to > the file "screenlog.<u>n</u>". > > <b>C</b><b>-</b><b>a</b> <b>i</b> > <b>C</b><b>-</b><b>a</b> <b>C</b><b>-</b><b>i</b> (info) Show info about this window. > > <b>C</b><b>-</b><b>a</b> <b>k</b> > <b>C</b><b>-</b><b>a</b> <b>C</b><b>-</b><b>k</b> (kill) Destroy current window. > > <b>C</b><b>-</b><b>a</b> <b>l</b> > <b>C</b><b>-</b><b>a</b> <b>C</b><b>-</b><b>l</b> (redisplay) Fully refresh current window. > > <b>C</b><b>-</b><b>a</b> <b>L</b> (login) Toggle this windows login slot. Available > only if <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> is configured to update the > utmp database. > > <b>C</b><b>-</b><b>a</b> <b>m</b> > <b>C</b><b>-</b><b>a</b> <b>C</b><b>-</b><b>m</b> (lastmsg) Repeat the last message displayed in the mes- > sage line. > > <b>C</b><b>-</b><b>a</b> <b>M</b> (monitor) Toggles monitoring of the current window. > > <b>C</b><b>-</b><b>a</b> <b>s</b><b>p</b><b>a</b><b>c</b><b>e</b> > <b>C</b><b>-</b><b>a</b> <b>n</b> > <b>C</b><b>-</b><b>a</b> <b>C</b><b>-</b><b>n</b> (next) Switch to the next window. > > <b>C</b><b>-</b><b>a</b> <b>N</b> (number) Show the number (and title) of the current > window. > > <b>C</b><b>-</b><b>a</b> <b>b</b><b>a</b><b>c</b><b>k</b><b>s</b><b>p</b><b>a</b><b>c</b><b>e</b> > <b>C</b><b>-</b><b>a</b> <b>C</b><b>-</b><b>h</b> > <b>C</b><b>-</b><b>a</b> <b>p</b> > <b>C</b><b>-</b><b>a</b> <b>C</b><b>-</b><b>p</b> (prev) Switch to the previous window (opposite of <b>C</b><b>-</b> > <b>a</b> <b>n</b>). > > <b>C</b><b>-</b><b>a</b> <b>q</b> > <b>C</b><b>-</b><b>a</b> <b>C</b><b>-</b><b>q</b> (xon) Send a control-q to the current window. > > <b>C</b><b>-</b><b>a</b> <b>Q</b> (only) Delete all regions but the current one. > > <b>C</b><b>-</b><b>a</b> <b>r</b> > <b>C</b><b>-</b><b>a</b> <b>C</b><b>-</b><b>r</b> (wrap) Toggle the current window's line-wrap setting > (turn the current window's automatic margins > on and off). > > <b>C</b><b>-</b><b>a</b> <b>s</b> > <b>C</b><b>-</b><b>a</b> <b>C</b><b>-</b><b>s</b> (xoff) Send a control-s to the current window. > > <b>C</b><b>-</b><b>a</b> <b>S</b> (split) Split the current region into two new ones. > > <b>C</b><b>-</b><b>a</b> <b>t</b> > <b>C</b><b>-</b><b>a</b> <b>C</b><b>-</b><b>t</b> (time) Show system information. > > <b>C</b><b>-</b><b>a</b> <b>v</b> (version) Display the version and compilation date. > > <b>C</b><b>-</b><b>a</b> <b>C</b><b>-</b><b>v</b> (digraph) Enter digraph. > > <b>C</b><b>-</b><b>a</b> <b>w</b> > <b>C</b><b>-</b><b>a</b> <b>C</b><b>-</b><b>w</b> (windows) Show a list of window. > > <b>C</b><b>-</b><b>a</b> <b>W</b> (width) Toggle 80/132 columns. > > <b>C</b><b>-</b><b>a</b> <b>x</b> > <b>C</b><b>-</b><b>a</b> <b>C</b><b>-</b><b>x</b> (lockscreen) Lock this terminal. > > <b>C</b><b>-</b><b>a</b> <b>X</b> (remove) Kill the current region. > > <b>C</b><b>-</b><b>a</b> <b>z</b> > <b>C</b><b>-</b><b>a</b> <b>C</b><b>-</b><b>z</b> (suspend) Suspend <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u>. Your system must support > BSD-style job-control. > > <b>C</b><b>-</b><b>a</b> <b>Z</b> (reset) Reset the virtual terminal to its "power-on" > values. > > <b>C</b><b>-</b><b>a</b> <b>.</b> (dumptermcap) Write out a ".termcap" file. > > <b>C</b><b>-</b><b>a</b> <b>?</b> (help) Show key bindings. > > <b>C</b><b>-</b><b>a</b> <b>\</b> (quit) Kill all windows and terminate <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u>. > > <b>C</b><b>-</b><b>a</b> <b>:</b> (colon) Enter command line mode. > > <b>C</b><b>-</b><b>a</b> <b>[</b> > <b>C</b><b>-</b><b>a</b> <b>C</b><b>-</b><b>[</b> > <b>C</b><b>-</b><b>a</b> <b>e</b><b>s</b><b>c</b> (copy) Enter copy/scrollback mode. > > <b>C</b><b>-</b><b>a</b> <b>]</b> (paste .) Write the contents of the paste buffer to the > stdin queue of the current window. > > <b>C</b><b>-</b><b>a</b> <b>{</b> > <b>C</b><b>-</b><b>a</b> <b>}</b> (history) Copy and paste a previous (command) line. > > <b>C</b><b>-</b><b>a</b> <b>></b> (writebuf) Write paste buffer to a file. > > <b>C</b><b>-</b><b>a</b> <b><</b> (readbuf) Reads the screen-exchange file into the paste > buffer. > > <b>C</b><b>-</b><b>a</b> <b>=</b> (removebuf) Removes the file used by <b>C</b><b>-</b><b>a</b> <b><</b> and <b>C</b><b>-</b><b>a</b> <b>></b>. > > <b>C</b><b>-</b><b>a</b> <b>,</b> (license) Shows where <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> comes from, where it went > to and why you can use it. > > <b>C</b><b>-</b><b>a</b> <b>_</b> (silence) Start/stop monitoring the current window for > inactivity. > > <b>C</b><b>-</b><b>a</b> <b>*</b> (displays) Show a listing of all currently attached dis- > plays. > > > ><b>C</b><b>U</b><b>S</b><b>T</b><b>O</b><b>M</b><b>I</b><b>Z</b><b>A</b><b>T</b><b>I</b><b>O</b><b>N</b> > The "socket directory" defaults either to $HOME/tmp/screen or simply to > /tmp/screens or preferably to /usr/local/screens chosen at compile- > time. If <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> is installed setuid-root, then the administrator should > compile <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> with an adequate (not NFS mounted) socket directory. If > <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> is not running setuid-root, the user can specify any mode 700 > directory in the environment variable $SCREENDIR. > > When <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> is invoked, it executes initialization commands from the > files "/etc/screenrc" and ".screenrc" in the user's home directory. > These are the "programmer's defaults" that can be overridden in the > following ways: for the global screenrc file <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> searches for the > environment variable $SYSSCREENRC (this override feature may be dis- > abled at compile-time). The user specific screenrc file is searched in > $SCREENRC, then $HOME/.screenrc. The command line option <b>-</b><b>c</b> takes > precedence over the above user screenrc files. > > Commands in these files are used to set options, bind functions to > keys, and to automatically establish one or more windows at the begin- > ning of your <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> session. Commands are listed one per line, with > empty lines being ignored. A command's arguments are separated by tabs > or spaces, and may be surrounded by single or double quotes. A `#' > turns the rest of the line into a comment, except in quotes. Unintel- > ligible lines are warned about and ignored. Commands may contain ref- > erences to environment variables. The syntax is the shell-like "$VAR " > or "${VAR}". Note that this causes incompatibility with previous <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> > versions, as now the '$'-character has to be protected with '\' if no > variable substitution shall be performed. A string in single-quotes is > also protected from variable substitution. > > Two configuration files are shipped as examples with your screen dis- > tribution: "etc/screenrc" and "etc/etcscreenrc". They contain a number > of useful examples for various commands. > > Customization can also be done 'on-line'. To enter the command mode > type `C-a :'. Note that commands starting with "def" change default > values, while others change current settings. > > The following commands are available: > > <b>a</b><b>c</b><b>l</b><b>a</b><b>d</b><b>d</b> <u>u</u><u>s</u><u>e</u><u>r</u><u>n</u><u>a</u><u>m</u><u>e</u><u>s</u> [<u>c</u><u>r</u><u>y</u><u>p</u><u>t</u><u>e</u><u>d</u><u>-</u><u>p</u><u>w</u>] > <b>a</b><b>d</b><b>d</b><b>a</b><b>c</b><b>l</b> <u>u</u><u>s</u><u>e</u><u>r</u><u>n</u><u>a</u><u>m</u><u>e</u><u>s</u> > > Enable users to fully access this screen session. <u>U</u><u>s</u><u>e</u><u>r</u><u>n</u><u>a</u><u>m</u><u>e</u><u>s</u> can be one > user or a comma separated list of users. This command enables to attach > to the <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> session and performs the equivalent of `aclchg <u>u</u><u>s</u><u>e</u><u>r</u><u>n</u><u>a</u><u>m</u><u>e</u><u>s</u> > +rwx "#?"'. executed. To add a user with restricted access, use the > `aclchg' command below. If an optional second parameter is supplied, > it should be a crypted password for the named user(s). `Addacl' is a > synonym to `acladd'. Multi user mode only. > > <b>a</b><b>c</b><b>l</b><b>c</b><b>h</b><b>g</b> <u>u</u><u>s</u><u>e</u><u>r</u><u>n</u><u>a</u><u>m</u><u>e</u><u>s</u> <u>p</u><u>e</u><u>r</u><u>m</u><u>b</u><u>i</u><u>t</u><u>s</u> <u>l</u><u>i</u><u>s</u><u>t</u> > <b>c</b><b>h</b><b>a</b><b>c</b><b>l</b> <u>u</u><u>s</u><u>e</u><u>r</u><u>n</u><u>a</u><u>m</u><u>e</u><u>s</u> <u>p</u><u>e</u><u>r</u><u>m</u><u>b</u><u>i</u><u>t</u><u>s</u> <u>l</u><u>i</u><u>s</u><u>t</u> > > Change permissions for a comma separated list of users. Permission bits > are represented as `r', `w' and `x'. Prefixing `+' grants the permis- > sion, `-' removes it. The third parameter is a comma separated list of > commands and/or windows (specified either by number or title). The spe- > cial list `#' refers to all windows, `?' to all commands. if <u>u</u><u>s</u><u>e</u><u>r</u><u>n</u><u>a</u><u>m</u><u>e</u><u>s</u> > consists of a single `*', all known users are affected. A command can > be executed when the user has the `x' bit for it. The user can type > input to a window when he has its `w' bit set and no other user obtains > a writelock for this window. Other bits are currently ignored. To > withdraw the writelock from another user in window 2: `aclchg <u>u</u><u>s</u><u>e</u><u>r</u><u>n</u><u>a</u><u>m</u><u>e</u> > -w+w 2'. To allow read-only access to the session: `aclchg <u>u</u><u>s</u><u>e</u><u>r</u><u>n</u><u>a</u><u>m</u><u>e</u> -w > "#"'. As soon as a user's name is known to <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> he can attach to the > session and (per default) has full permissions for all command and win- > dows. Execution permission for the acl commands, `at' and others should > also be removed or the user may be able to regain write permission. > Rights of the special username <b>n</b><b>o</b><b>b</b><b>o</b><b>d</b><b>y</b> cannot be changed (see the "su" > command). `Chacl' is a synonym to `aclchg'. Multi user mode only. > > <b>a</b><b>c</b><b>l</b><b>d</b><b>e</b><b>l</b> <u>u</u><u>s</u><u>e</u><u>r</u><u>n</u><u>a</u><u>m</u><u>e</u> > > Remove a user from <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u>'s access control list. If currently attached, > all the user's displays are detached from the session. He cannot attach > again. Multi user mode only. > > <b>a</b><b>c</b><b>l</b><b>g</b><b>r</b><b>p</b> <u>u</u><u>s</u><u>e</u><u>r</u><u>n</u><u>a</u><u>m</u><u>e</u> [<u>g</u><u>r</u><u>o</u><u>u</u><u>p</u><u>n</u><u>a</u><u>m</u><u>e</u>] > > Creates groups of users that share common access rights. The name of > the group is the username of the group leader. Each member of the group > inherits the permissions that are granted to the group leader. That > means, if a user fails an access check, another check is made for the > group leader. A user is removed from all groups the special value > "none" is used for <u>g</u><u>r</u><u>o</u><u>u</u><u>p</u><u>n</u><u>a</u><u>m</u><u>e</u>. If the second parameter is omitted all > groups the user is in are listed. > > <b>a</b><b>c</b><b>l</b><b>u</b><b>m</b><b>a</b><b>s</b><b>k</b> [[<u>u</u><u>s</u><u>e</u><u>r</u><u>s</u>]<u>+</u><u>b</u><u>i</u><u>t</u><u>s</u> |[<u>u</u><u>s</u><u>e</u><u>r</u><u>s</u>]<u>-</u><u>b</u><u>i</u><u>t</u><u>s</u> .... ] > <b>u</b><b>m</b><b>a</b><b>s</b><b>k</b> [[<u>u</u><u>s</u><u>e</u><u>r</u><u>s</u>]<u>+</u><u>b</u><u>i</u><u>t</u><u>s</u> |[<u>u</u><u>s</u><u>e</u><u>r</u><u>s</u>]<u>-</u><u>b</u><u>i</u><u>t</u><u>s</u> .... ] > > This specifies the access other users have to windows that will be cre- > ated by the caller of the command. <u>U</u><u>s</u><u>e</u><u>r</u><u>s</u> may be no, one or a comma > separated list of known usernames. If no users are specified, a list of > all currently known users is assumed. <u>B</u><u>i</u><u>t</u><u>s</u> is any combination of > access control bits allowed defined with the "aclchg" command. The spe- > cial username "?" predefines the access that not yet known users will > be granted to any window initially. The special username "??" prede- > fines the access that not yet known users are granted to any command. > Rights of the special username <b>n</b><b>o</b><b>b</b><b>o</b><b>d</b><b>y</b> cannot be changed (see the "su" > command). `Umask' is a synonym to `aclumask'. > > <b>a</b><b>c</b><b>t</b><b>i</b><b>v</b><b>i</b><b>t</b><b>y</b> <u>m</u><u>e</u><u>s</u><u>s</u><u>a</u><u>g</u><u>e</u> > > When any activity occurs in a background window that is being moni- > tored, <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> displays a notification in the message line. The notifi- > cation message can be re-defined by means of the "activity" command. > Each occurrence of `%' in <u>m</u><u>e</u><u>s</u><u>s</u><u>a</u><u>g</u><u>e</u> is replaced by the number of the win- > dow in which activity has occurred, and each occurrence of `^G' is > replaced by the definition for bell in your termcap (usually an audible > bell). The default message is > > 'Activity in window %n' > > Note that monitoring is off for all windows by default, but can be > altered by use of the "monitor" command (C-a M). > > <b>a</b><b>l</b><b>l</b><b>p</b><b>a</b><b>r</b><b>t</b><b>i</b><b>a</b><b>l</b> <b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b> > > If set to on, only the current cursor line is refreshed on window > change. This affects all windows and is useful for slow terminal > lines. The previous setting of full/partial refresh for each window is > restored with "allpartial off". This is a global flag that immediately > takes effect on all windows overriding the "partial" settings. It does > not change the default redraw behavior of newly created windows. > > <b>a</b><b>t</b> [<u>i</u><u>d</u><u>e</u><u>n</u><u>t</u><u>i</u><u>f</u><u>i</u><u>e</u><u>r</u>][<b>#</b>|<b>*</b>|<b>%</b>] <u>c</u><u>o</u><u>m</u><u>m</u><u>a</u><u>n</u><u>d</u> [<u>a</u><u>r</u><u>g</u><u>s</u> ... ] > > Execute a command at other displays or windows as if it had been > entered there. "At" changes the context (the `current window' or `cur- > rent display' setting) of the command. If the first parameter describes > a non-unique context, the command will be executed multiple times. If > the first parameter is of the form `<u>i</u><u>d</u><u>e</u><u>n</u><u>t</u><u>i</u><u>f</u><u>i</u><u>e</u><u>r</u>*' then identifier is > matched against user names. The command is executed once for each dis- > play of the selected user(s). If the first parameter is of the form > `<u>i</u><u>d</u><u>e</u><u>n</u><u>t</u><u>i</u><u>f</u><u>i</u><u>e</u><u>r</u>%' identifier is matched against displays. Displays are > named after the ttys they attach. The prefix `/dev/' or `/dev/tty' may > be omitted from the identifier. If <u>i</u><u>d</u><u>e</u><u>n</u><u>t</u><u>i</u><u>f</u><u>i</u><u>e</u><u>r</u> has a `#' or nothing > appended it is matched against window numbers and titles. Omitting an > identifier in front of the `#', `*' or `%'-character selects all users, > displays or windows because a prefix-match is performed. Note that on > the affected display(s) a short message will describe what happened. > Permission is checked for initiator of the "at" command, not for the > owners of the affected display(s). Note that the '#' character works > as a comment introducer when it is preceded by whitespace. This can be > escaped by prefixing a '\'. Permission is checked for the initiator of > the "at" command, not for the owners of the affected display(s). > Caveat: When matching against windows, the command is executed at least > once per window. Commands that change the internal arrangement of win- > dows (like "other") may be called again. In shared windows the command > will be repeated for each attached display. Beware, when issuing toggle > commands like "login"! Some commands (e.g. "stuff", "process" or > "paste") require that a display is associated with the target windows. > These commands may not work correctly under "at" looping over windows. > > <b>a</b><b>t</b><b>t</b><b>r</b><b>c</b><b>o</b><b>l</b><b>o</b><b>r</b> <u>a</u><u>t</u><u>t</u><u>r</u><u>i</u><u>b</u> [<u>a</u><u>t</u><u>t</u><u>r</u><u>i</u><u>b</u><u>u</u><u>t</u><u>e</u><u>/</u><u>c</u><u>o</u><u>l</u><u>o</u><u>r</u><u>-</u><u>m</u><u>o</u><u>d</u><u>i</u><u>f</u><u>i</u><u>e</u><u>r</u>] > > This command can be used to highlight attributes by changing the color > of the text. If the attribute <u>a</u><u>t</u><u>t</u><u>r</u><u>i</u><u>b</u> is in use, the specified > attribute/color modifier is also applied. If no modifier is given, the > current one is deleted. See the "STRING ESCAPES" chapter for the syntax > of the modifier. Screen understands two pseudo-attributes, "i" stands > for high-intensity foreground color and "I" for high-intensity back- > ground color. > > Examples: > > attrcolor b "R" > > Change the color to bright red if bold text is to be printed. > > attrcolor u "-u b" > > Use blue text instead of underline. > > attrcolor b "I" > > Use bright colors for bold text. Most terminal emulators do this > already. > > attrcolor i "+b" > > Make bright colored text also bold. > > <b>a</b><b>u</b><b>t</b><b>o</b><b>d</b><b>e</b><b>t</b><b>a</b><b>c</b><b>h</b> <b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b> > > Sets whether <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> will automatically detach upon hangup, which saves > all your running programs until they are resumed with a <b>s</b><b>c</b><b>r</b><b>e</b><b>e</b><b>n</b> <b>-</b><b>r</b> com- > mand. When turned off, a hangup signal will terminate <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> and all > the processes it contains. Autodetach is on by default. > > <b>a</b><b>u</b><b>t</b><b>o</b><b>n</b><b>u</b><b>k</b><b>e</b> <b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b> > > Sets whether a clear screen sequence should nuke all the output that > has not been written to the terminal. See also "obuflimit". > > <b>b</b><b>c</b><b>e</b> [<b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b>] > > Change background-color-erase setting. If "bce" is set to on, all char- > acters cleared by an erase/insert/scroll/clear operation will be dis- > played in the current background color. Otherwise the default back- > ground color is used. > > <b>b</b><b>e</b><b>l</b><b>l</b><b>_</b><b>m</b><b>s</b><b>g</b> [<u>m</u><u>e</u><u>s</u><u>s</u><u>a</u><u>g</u><u>e</u>] > > When a bell character is sent to a background window, <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> displays a > notification in the message line. The notification message can be re- > defined by this command. Each occurrence of `%' in <u>m</u><u>e</u><u>s</u><u>s</u><u>a</u><u>g</u><u>e</u> is replaced > by the number of the window to which a bell has been sent, and each > occurrence of `^G' is replaced by the definition for bell in your term- > cap (usually an audible bell). The default message is > > 'Bell in window %n' > > An empty message can be supplied to the "bell_msg" command to suppress > output of a message line (bell_msg ""). Without parameter, the current > message is shown. > > <b>b</b><b>i</b><b>n</b><b>d</b> [<b>-</b><b>c</b> <u>c</u><u>l</u><u>a</u><u>s</u><u>s</u>] <u>k</u><u>e</u><u>y</u> [<u>c</u><u>o</u><u>m</u><u>m</u><u>a</u><u>n</u><u>d</u> [<u>a</u><u>r</u><u>g</u><u>s</u>]] > > Bind a command to a key. By default, most of the commands provided by > <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> are bound to one or more keys as indicated in the "DEFAULT KEY > BINDINGS" section, e.g. the command to create a new window is bound to > "C-c" and "c". The "bind" command can be used to redefine the key > bindings and to define new bindings. The <u>k</u><u>e</u><u>y</u> argument is either a sin- > gle character, a two-character sequence of the form "^x" (meaning "C- > x"), a backslash followed by an octal number (specifying the ASCII code > of the character), or a backslash followed by a second character, such > as "\^" or "\\". The argument can also be quoted, if you like. If no > further argument is given, any previously established binding for this > key is removed. The <u>c</u><u>o</u><u>m</u><u>m</u><u>a</u><u>n</u><u>d</u> argument can be any command listed in this > section. > > If a command class is specified via the "-c" option, the key is bound > for the specified class. Use the "command" command to activate a class. > Command classes can be used to create multiple command keys or multi- > character bindings. > > Some examples: > > bind ' ' windows > bind ^k > bind k > bind K kill > bind ^f screen telnet foobar > bind \033 screen -ln -t root -h 1000 9 su > > would bind the space key to the command that displays a list of windows > (so that the command usually invoked by "C-a C-w" would also be avail- > able as "C-a space"). The next three lines remove the default kill > binding from "C-a C-k" and "C-a k". "C-a K" is then bound to the kill > command. Then it binds "C-f" to the command "create a window with a > TELNET connection to foobar", and bind "escape" to the command that > creates an non-login window with a.k.a. "root" in slot #9, with a supe- > ruser shell and a scrollback buffer of 1000 lines. > > bind -c demo1 0 select 10 > bind -c demo1 1 select 11 > bind -c demo1 2 select 12 > bindkey "^B" command -c demo1 > > makes "C-b 0" select window 10, "C-b 1" window 11, etc. > > bind -c demo2 0 select 10 > bind -c demo2 1 select 11 > bind -c demo2 2 select 12 > bind - command -c demo2 > > makes "C-a - 0" select window 10, "C-a - 1" window 11, etc. > > <b>b</b><b>i</b><b>n</b><b>d</b><b>k</b><b>e</b><b>y</b> [<b>-</b><b>d</b>] [<b>-</b><b>m</b>] [<b>-</b><b>a</b>] [[<b>-</b><b>k</b>|<b>-</b><b>t</b>] <u>s</u><u>t</u><u>r</u><u>i</u><u>n</u><u>g</u> [<u>c</u><u>m</u><u>d</u> <u>a</u><u>r</u><u>g</u><u>s</u>]] > > This command manages screen's input translation tables. Every entry in > one of the tables tells screen how to react if a certain sequence of > characters is encountered. There are three tables: one that should con- > tain actions programmed by the user, one for the default actions used > for terminal emulation and one for screen's copy mode to do cursor > movement. See section "INPUT TRANSLATION" for a list of default key > bindings. > If the <b>-</b><b>d</b> option is given, bindkey modifies the default table, <b>-</b><b>m</b> > changes the copy mode table and with neither option the user table is > selected. The argument <u>s</u><u>t</u><u>r</u><u>i</u><u>n</u><u>g</u> is the sequence of characters to which > an action is bound. This can either be a fixed string or a termcap key- > board capability name (selectable with the <b>-</b><b>k</b> option). > Some keys on a VT100 terminal can send a different string if applica- > tion mode is turned on (e.g the cursor keys). Such keys have two > entries in the translation table. You can select the application mode > entry by specifying the <b>-</b><b>a</b> option. > The <b>-</b><b>t</b> option tells screen not to do inter-character timing. One cannot > turn off the timing if a termcap capability is used. > <u>C</u><u>m</u><u>d</u> can be any of screen's commands with an arbitrary number of <u>a</u><u>r</u><u>g</u><u>s</u>. > If <u>c</u><u>m</u><u>d</u> is omitted the key-binding is removed from the table. > Here are some examples of keyboard bindings: > > bindkey -d > Show all of the default key bindings. The application mode entries are > marked with [A]. > > bindkey -k k1 select 1 > Make the "F1" key switch to window one. > > bindkey -t foo stuff barfoo > Make "foo" an abbreviation of the word "barfoo". Timeout is disabled so > that users can type slowly. > > bindkey "\024" mapdefault > This key-binding makes "^T" an escape character for key-bindings. If > you did the above "stuff barfoo" binding, you can enter the word "foo" > by typing "^Tfoo". If you want to insert a "^T" you have to press the > key twice (i.e. escape the escape binding). > > bindkey -k F1 command > Make the F11 (not F1!) key an alternative screen escape (besides ^A). > > <b>b</b><b>r</b><b>e</b><b>a</b><b>k</b> [<u>d</u><u>u</u><u>r</u><u>a</u><u>t</u><u>i</u><u>o</u><u>n</u>] > > Send a break signal for <u>d</u><u>u</u><u>r</u><u>a</u><u>t</u><u>i</u><u>o</u><u>n</u>*0.25 seconds to this window. For non- > Posix systems the time interval may be rounded up to full seconds. > Most useful if a character device is attached to the window rather than > a shell process (See also chapter "WINDOW TYPES"). The maximum duration > of a break signal is limited to 15 seconds. > > <b>b</b><b>r</b><b>e</b><b>a</b><b>k</b><b>t</b><b>y</b><b>p</b><b>e</b> [<u>t</u><u>c</u><u>s</u><u>e</u><u>n</u><u>d</u><u>b</u><u>r</u><u>e</u><u>a</u><u>k</u>|<u>T</u><u>I</u><u>O</u><u>C</u><u>S</u><u>B</u><u>R</u><u>K</u> |<u>T</u><u>C</u><u>S</u><u>B</u><u>R</u><u>K</u>] > > Choose one of the available methods of generating a break signal for > terminal devices. This command should affect the current window only. > But it still behaves identical to "defbreaktype". This will be changed > in the future. Calling "breaktype" with no parameter displays the > break method for the current window. > > <b>b</b><b>u</b><b>f</b><b>f</b><b>e</b><b>r</b><b>f</b><b>i</b><b>l</b><b>e</b> [<u>e</u><u>x</u><u>c</u><u>h</u><u>a</u><u>n</u><u>g</u><u>e</u><u>-</u><u>f</u><u>i</u><u>l</u><u>e</u>] > > Change the filename used for reading and writing with the paste buffer. > If the optional argument to the "bufferfile" command is omitted, the > default setting ("/tmp/screen-exchange") is reactivated. The following > example will paste the system's password file into the <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> window > (using the paste buffer, where a copy remains): > > C-a : bufferfile /etc/passwd > C-a < C-a ] > C-a : bufferfile > > <b>c</b><b>1</b> [<b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b>] > > Change c1 code processing. "C1 on" tells screen to treat the input > characters between 128 and 159 as control functions. Such an 8-bit > code is normally the same as ESC followed by the corresponding 7-bit > code. The default setting is to process c1 codes and can be changed > with the "defc1" command. Users with fonts that have usable characters > in the c1 positions may want to turn this off. > > <b>c</b><b>a</b><b>p</b><b>t</b><b>i</b><b>o</b><b>n</b> <b>a</b><b>l</b><b>w</b><b>a</b><b>y</b><b>s</b>|<b>s</b><b>p</b><b>l</b><b>i</b><b>t</b><b>o</b><b>n</b><b>l</b><b>y</b> [<u>s</u><u>t</u><u>r</u><u>i</u><u>n</u><u>g</u>] > <b>c</b><b>a</b><b>p</b><b>t</b><b>i</b><b>o</b><b>n</b> <b>s</b><b>t</b><b>r</b><b>i</b><b>n</b><b>g</b> [<u>s</u><u>t</u><u>r</u><u>i</u><u>n</u><u>g</u>] > > This command controls the display of the window captions. Normally a > caption is only used if more than one window is shown on the display > (split screen mode). But if the type is set to <b>a</b><b>l</b><b>w</b><b>a</b><b>y</b><b>s</b> screen shows a > caption even if only one window is displayed. The default is <b>s</b><b>p</b><b>l</b><b>i</b><b>t</b><b>o</b><b>n</b><b>l</b><b>y</b>. > > The second form changes the text used for the caption. You can use all > escapes from the "STRING ESCAPES" chapter. Screen uses a default of > `%3n %t'. > > You can mix both forms by providing a string as an additional argument. > > <b>c</b><b>h</b><b>a</b><b>r</b><b>s</b><b>e</b><b>t</b> <u>s</u><u>e</u><u>t</u> > > Change the current character set slot designation and charset mapping. > The first four character of <u>s</u><u>e</u><u>t</u> are treated as charset designators > while the fifth and sixth character must be in range '0' to '3' and set > the GL/GR charset mapping. On every position a '.' may be used to indi- > cate that the corresponding charset/mapping should not be changed (<u>s</u><u>e</u><u>t</u> > is padded to six characters internally by appending '.' chars). New > windows have "BBBB02" as default charset, unless a "encoding" command > is active. > The current setting can be viewed with the "info" command. > > <b>c</b><b>h</b><b>d</b><b>i</b><b>r</b> [<u>d</u><u>i</u><u>r</u><u>e</u><u>c</u><u>t</u><u>o</u><u>r</u><u>y</u>] > > Change the <u>c</u><u>u</u><u>r</u><u>r</u><u>e</u><u>n</u><u>t</u> <u>d</u><u>i</u><u>r</u><u>e</u><u>c</u><u>t</u><u>o</u><u>r</u><u>y</u> of <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> to the specified directory or, > if called without an argument, to your home directory (the value of the > environment variable $HOME). All windows that are created by means of > the "screen" command from within ".screenrc" or by means of "C-a : > screen ..." or "C-a c" use this as their default directory. Without a > chdir command, this would be the directory from which <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> was > invoked. Hardcopy and log files are always written to the <u>w</u><u>i</u><u>n</u><u>d</u><u>o</u><u>w</u><u>'</u><u>s</u> > default directory, <u>n</u><u>o</u><u>t</u> the current directory of the process running in > the window. You can use this command multiple times in your .screenrc > to start various windows in different default directories, but the last > chdir value will affect all the windows you create interactively. > > <b>c</b><b>l</b><b>e</b><b>a</b><b>r</b> > > Clears the current window and saves its image to the scrollback buffer. > > <b>c</b><b>o</b><b>l</b><b>o</b><b>n</b> [<u>p</u><u>r</u><u>e</u><u>f</u><u>i</u><u>x</u>] > > Allows you to enter ".screenrc" command lines. Useful for on-the-fly > modification of key bindings, specific window creation and changing > settings. Note that the "set" keyword no longer exists! Usually com- > mands affect the current window rather than default settings for future > windows. Change defaults with commands starting with 'def...'. > > If you consider this as the `Ex command mode' of <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u>, you may regard > "C-a esc" (copy mode) as its `Vi command mode'. > > <b>c</b><b>o</b><b>m</b><b>m</b><b>a</b><b>n</b><b>d</b> [<b>-</b><b>c</b> <u>c</u><u>l</u><u>a</u><u>s</u><u>s</u>] > > This command has the same effect as typing the screen escape character > (^A). It is probably only useful for key bindings. If the "-c" option > is given, select the specified command class. See also "bind" and > "bindkey". > > <b>c</b><b>o</b><b>m</b><b>p</b><b>a</b><b>c</b><b>t</b><b>h</b><b>i</b><b>s</b><b>t</b> [<b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b>] > > This tells screen weather to suppress trailing blank lines when > scrolling up text into the history buffer. > > <b>c</b><b>o</b><b>n</b><b>s</b><b>o</b><b>l</b><b>e</b> [<b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b>] > > Grabs or un-grabs the machines console output to a window. <u>N</u><u>o</u><u>t</u><u>e</u>: Only > the owner of /dev/console can grab the console output. This command is > only available if the machine supports the ioctl TIOCCONS. > > <b>c</b><b>o</b><b>p</b><b>y</b> > > Enter copy/scrollback mode. This allows you to copy text from the cur- > rent window and its history into the paste buffer. In this mode a vi- > like `full screen editor' is active: > <u>M</u><u>o</u><u>v</u><u>e</u><u>m</u><u>e</u><u>n</u><u>t</u> <u>k</u><u>e</u><u>y</u><u>s</u>: > <b>h</b>, <b>j</b>, <b>k</b>, <b>l</b> move the cursor line by line or column by column. > <b>0</b>, <b>^</b> and <b>$</b> move to the leftmost column, to the first or last non- > whitespace character on the line. > <b>H</b>, <b>M</b> and <b>L</b> move the cursor to the leftmost column of the top, center > or bottom line of the window. > <b>+</b> and <b>-</b> positions one line up and down. > <b>G</b> moves to the specified absolute line (default: end of buffer). > <b>|</b> moves to the specified absolute column. > <b>w</b>, <b>b</b>, <b>e</b> move the cursor word by word. > <b>C</b><b>-</b><b>u</b> and <b>C</b><b>-</b><b>d</b> scroll the display up/down by the specified amount of > lines while preserving the cursor position. (Default: half screen- > full). > <b>C</b><b>-</b><b>b</b> and <b>C</b><b>-</b><b>f</b> scroll the display up/down a full screen. > <b>g</b> moves to the beginning of the buffer. > <b>%</b> jumps to the specified percentage of the buffer. > > <u>N</u><u>o</u><u>t</u><u>e</u>: > Emacs style movement keys can be customized by a .screenrc command. > (E.g. markkeys "h=^B:l=^F:$=^E") There is no simple method for a > full emacs-style keymap, as this involves multi-character codes. > > <u>M</u><u>a</u><u>r</u><u>k</u><u>i</u><u>n</u><u>g</u>: > The copy range is specified by setting two marks. The text between > these marks will be highlighted. Press > <b>s</b><b>p</b><b>a</b><b>c</b><b>e</b> to set the first or second mark respectively. > <b>Y</b> and <b>y</b> used to mark one whole line or to mark from start of line. > <b>W</b> marks exactly one word. > <u>R</u><u>e</u><u>p</u><u>e</u><u>a</u><u>t</u> <u>c</u><u>o</u><u>u</u><u>n</u><u>t</u>: > Any of these commands can be prefixed with a repeat count number by > pressing digits > <b>0</b>..<b>9</b> which is taken as a repeat count. > Example: "C-a C-[ H 10 j 5 Y" will copy lines 11 to 15 into the > paste buffer. > <u>S</u><u>e</u><u>a</u><u>r</u><u>c</u><u>h</u><u>i</u><u>n</u><u>g</u>: > <b>/</b> <u>V</u><u>i</u>-like search forward. > <b>?</b> <u>V</u><u>i</u>-like search backward. > <b>C</b><b>-</b><b>a</b> <b>s</b> <u>E</u><u>m</u><u>a</u><u>c</u><u>s</u> style incremental search forward. > <b>C</b><b>-</b><b>r</b> <u>E</u><u>m</u><u>a</u><u>c</u><u>s</u> style reverse i-search. > <u>S</u><u>p</u><u>e</u><u>c</u><u>i</u><u>a</u><u>l</u><u>s</u>: > There are however some keys that act differently than in <u>v</u><u>i</u>. <u>V</u><u>i</u> > does not allow one to yank rectangular blocks of text, but <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> > does. Press > <b>c</b> or <b>C</b> to set the left or right margin respectively. If no repeat > count is given, both default to the current cursor position. > Example: Try this on a rather full text screen: "C-a [ M 20 l SPACE > c 10 l 5 j C SPACE". > > This moves one to the middle line of the screen, moves in 20 > columns left, marks the beginning of the paste buffer, sets the > left column, moves 5 columns down, sets the right column, and then > marks the end of the paste buffer. Now try: > "C-a [ M 20 l SPACE 10 l 5 j SPACE" > > and notice the difference in the amount of text copied. > <b>J</b> joins lines. It toggles between 4 modes: lines separated by a new- > line character (012), lines glued seamless, lines separated by a > single whitespace and comma separated lines. Note that you can > prepend the newline character with a carriage return character, by > issuing a "crlf on". > <b>v</b> is for all the <u>v</u><u>i</u> users with ":set numbers" - it toggles the left > margin between column 9 and 1. Press > <b>a</b> before the final space key to toggle in append mode. Thus the con- > tents of the paste buffer will not be overwritten, but is appended > to. > <b>A</b> toggles in append mode and sets a (second) mark. > <b>></b> sets the (second) mark and writes the contents of the paste buffer > to the screen-exchange file (/tmp/screen-exchange per default) once > copy-mode is finished. > This example demonstrates how to dump the whole scrollback buffer > to that file: "C-A [ g SPACE G $ >". > <b>C</b><b>-</b><b>g</b> gives information about the current line and column. > <b>x</b> exchanges the first mark and the current cursor position. You can > use this to adjust an already placed mark. > <b>@</b> does nothing. Does not even exit copy mode. > All keys not described here exit copy mode. > > <b>c</b><b>o</b><b>p</b><b>y</b><b>_</b><b>r</b><b>e</b><b>g</b> [<u>k</u><u>e</u><u>y</u>] > > No longer exists, use "readreg" instead. > > <b>c</b><b>r</b><b>l</b><b>f</b> [<b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b>] > > This affects the copying of text regions with the `C-a [' command. If > it is set to `on', lines will be separated by the two character > sequence `CR' - `LF'. Otherwise (default) only `LF' is used. When no > parameter is given, the state is toggled. > > <b>d</b><b>e</b><b>b</b><b>u</b><b>g</b> <b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b> > > Turns runtime debugging on or off. If <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> has been compiled with > option -DDEBUG debugging available and is turned on per default. Note > that this command only affects debugging output from the main "SCREEN" > process correctly. Debug output from attacher processes can only be > turned off once and forever. > > <b>d</b><b>e</b><b>f</b><b>c</b><b>1</b> <b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b> > > Same as the <b>c</b><b>1</b> command except that the default setting for new windows > is changed. Initial setting is `on'. > > <b>d</b><b>e</b><b>f</b><b>a</b><b>u</b><b>t</b><b>o</b><b>n</b><b>u</b><b>k</b><b>e</b> <b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b> > > Same as the <b>a</b><b>u</b><b>t</b><b>o</b><b>n</b><b>u</b><b>k</b><b>e</b> command except that the default setting for new > displays is changed. Initial setting is `off'. Note that you can use > the special `AN' terminal capability if you want to have a dependency > on the terminal type. > > <b>d</b><b>e</b><b>f</b><b>b</b><b>c</b><b>e</b> <b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b> > > Same as the <b>b</b><b>c</b><b>e</b> command except that the default setting for new windows > is changed. Initial setting is `off'. > > <b>d</b><b>e</b><b>f</b><b>b</b><b>r</b><b>e</b><b>a</b><b>k</b><b>t</b><b>y</b><b>p</b><b>e</b> [<u>t</u><u>c</u><u>s</u><u>e</u><u>n</u><u>d</u><u>b</u><u>r</u><u>e</u><u>a</u><u>k</u>|<u>T</u><u>I</u><u>O</u><u>C</u><u>S</u><u>B</u><u>R</u><u>K</u> |<u>T</u><u>C</u><u>S</u><u>B</u><u>R</u><u>K</u>] > > Choose one of the available methods of generating a break signal for > terminal devices. The preferred methods are <u>t</u><u>c</u><u>s</u><u>e</u><u>n</u><u>d</u><u>b</u><u>r</u><u>e</u><u>a</u><u>k</u> and <u>T</u><u>I</u><u>O</u><u>C</u><u>S</u><u>B</u><u>R</u><u>K</u>. > The third, <u>T</u><u>C</u><u>S</u><u>B</u><u>R</u><u>K</u>, blocks the complete <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> session for the duration > of the break, but it may be the only way to generate long breaks. > <u>T</u><u>c</u><u>s</u><u>e</u><u>n</u><u>d</u><u>b</u><u>r</u><u>e</u><u>a</u><u>k</u> and <u>T</u><u>I</u><u>O</u><u>C</u><u>S</u><u>B</u><u>R</u><u>K</u> may or may not produce long breaks with spikes > (e.g. 4 per second). This is not only system dependant, this also dif- > fers between serial board drivers. Calling "defbreaktype" with no > parameter displays the current setting. > > <b>d</b><b>e</b><b>f</b><b>c</b><b>h</b><b>a</b><b>r</b><b>s</b><b>e</b><b>t</b> [<u>s</u><u>e</u><u>t</u>] > > Like the <b>c</b><b>h</b><b>a</b><b>r</b><b>s</b><b>e</b><b>t</b> command except that the default setting for new win- > dows is changed. Shows current default if called without argument. > > <b>d</b><b>e</b><b>f</b><b>e</b><b>s</b><b>c</b><b>a</b><b>p</b><b>e</b> <u>x</u><u>y</u> > > Set the default command characters. This is equivalent to the "escape" > except that it is useful multiuser sessions only. In a multiuser ses- > sion "escape" changes the command character of the calling user, where > "defescape" changes the default command characters for users that will > be added later. > > <b>d</b><b>e</b><b>f</b><b>f</b><b>l</b><b>o</b><b>w</b> <b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b>|<b>a</b><b>u</b><b>t</b><b>o</b> [<b>i</b><b>n</b><b>t</b><b>e</b><b>r</b><b>r</b><b>u</b><b>p</b><b>t</b>] > > Same as the <b>f</b><b>l</b><b>o</b><b>w</b> command except that the default setting for new win- > dows is changed. Initial setting is `auto'. Specifying "defflow auto > interrupt" is the same as the command-line options <b>-</b><b>f</b><b>a</b> and <b>-</b><b>i</b>. > > <b>d</b><b>e</b><b>f</b><b>g</b><b>r</b> <b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b> > > Same as the <b>g</b><b>r</b> command except that the default setting for new windows > is changed. Initial setting is `off'. > > <b>d</b><b>e</b><b>f</b><b>h</b><b>s</b><b>t</b><b>a</b><b>t</b><b>u</b><b>s</b> [<u>s</u><u>t</u><u>a</u><u>t</u><u>u</u><u>s</u>] > > The hardstatus line that all new windows will get is set to <u>s</u><u>t</u><u>a</u><u>t</u><u>u</u><u>s</u>. > This command is useful to make the hardstatus of every window display > the window number or title or the like. <u>S</u><u>t</u><u>a</u><u>t</u><u>u</u><u>s</u> may contain the same > directives as in the window messages, but the directive escape charac- > ter is '^E' (octal 005) instead of '%'. This was done to make a misin- > terpretation of program generated hardstatus lines impossible. If the > parameter <u>s</u><u>t</u><u>a</u><u>t</u><u>u</u><u>s</u> is omitted, the current default string is displayed. > Per default the hardstatus line of new windows is empty. > > <b>d</b><b>e</b><b>f</b><b>e</b><b>n</b><b>c</b><b>o</b><b>d</b><b>i</b><b>n</b><b>g</b> <u>e</u><u>n</u><u>c</u> > > Same as the <b>e</b><b>n</b><b>c</b><b>o</b><b>d</b><b>i</b><b>n</b><b>g</b> command except that the default setting for new > windows is changed. Initial setting is the encoding taken from the ter- > minal. > > <b>d</b><b>e</b><b>f</b><b>l</b><b>o</b><b>g</b> <b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b> > > Same as the <b>l</b><b>o</b><b>g</b> command except that the default setting for new windows > is changed. Initial setting is `off'. > > <b>d</b><b>e</b><b>f</b><b>l</b><b>o</b><b>g</b><b>i</b><b>n</b> <b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b> > > Same as the <b>l</b><b>o</b><b>g</b><b>i</b><b>n</b> command except that the default setting for new win- > dows is changed. This is initialized with `on' as distributed (see con- > fig.h.in). > > <b>d</b><b>e</b><b>f</b><b>m</b><b>o</b><b>d</b><b>e</b> <u>m</u><u>o</u><u>d</u><u>e</u> > > The mode of each newly allocated pseudo-tty is set to <u>m</u><u>o</u><u>d</u><u>e</u>. <u>M</u><u>o</u><u>d</u><u>e</u> is an > octal number. When no "defmode" command is given, mode 0622 is used. > > <b>d</b><b>e</b><b>f</b><b>m</b><b>o</b><b>n</b><b>i</b><b>t</b><b>o</b><b>r</b> <b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b> > > Same as the <b>m</b><b>o</b><b>n</b><b>i</b><b>t</b><b>o</b><b>r</b> command except that the default setting for new > windows is changed. Initial setting is `off'. > > <b>d</b><b>e</b><b>f</b><b>o</b><b>b</b><b>u</b><b>f</b><b>l</b><b>i</b><b>m</b><b>i</b><b>t</b> <u>l</u><u>i</u><u>m</u><u>i</u><u>t</u> > > Same as the <b>o</b><b>b</b><b>u</b><b>f</b><b>l</b><b>i</b><b>m</b><b>i</b><b>t</b> command except that the default setting for new > displays is changed. Initial setting is 256 bytes. Note that you can > use the special 'OL' terminal capability if you want to have a > dependency on the terminal type. > > <b>d</b><b>e</b><b>f</b><b>s</b><b>c</b><b>r</b><b>o</b><b>l</b><b>l</b><b>b</b><b>a</b><b>c</b><b>k</b> <u>n</u><u>u</u><u>m</u> > > Same as the <b>s</b><b>c</b><b>r</b><b>o</b><b>l</b><b>l</b><b>b</b><b>a</b><b>c</b><b>k</b> command except that the default setting for new > windows is changed. Initial setting is 100. > > <b>d</b><b>e</b><b>f</b><b>s</b><b>h</b><b>e</b><b>l</b><b>l</b> <u>c</u><u>o</u><u>m</u><u>m</u><u>a</u><u>n</u><u>d</u> > > Synonym to the <b>s</b><b>h</b><b>e</b><b>l</b><b>l</b> command. See there. > > <b>d</b><b>e</b><b>f</b><b>s</b><b>i</b><b>l</b><b>e</b><b>n</b><b>c</b><b>e</b> <b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b> > > Same as the <b>s</b><b>i</b><b>l</b><b>e</b><b>n</b><b>c</b><b>e</b> command except that the default setting for new > windows is changed. Initial setting is `off'. > > <b>d</b><b>e</b><b>f</b><b>s</b><b>l</b><b>o</b><b>w</b><b>p</b><b>a</b><b>s</b><b>t</b><b>e</b> <u>m</u><u>s</u><u>e</u><u>c</u><u>"</u> > > Same as the <b>s</b><b>l</b><b>o</b><b>w</b><b>p</b><b>a</b><b>s</b><b>t</b><b>e</b> command except that the default setting for new > windows is changed. Initial setting is 0 milliseconds, meaning `off'. > > <b>d</b><b>e</b><b>f</b><b>u</b><b>t</b><b>f</b><b>8</b> <b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b> > > Same as the <b>u</b><b>t</b><b>f</b><b>8</b> command except that the default setting for new win- > dows is changed. Initial setting is `on' if screen was started with > "-U", otherwise `off'. > > <b>d</b><b>e</b><b>f</b><b>w</b><b>r</b><b>a</b><b>p</b> <b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b> > > Same as the <b>w</b><b>r</b><b>a</b><b>p</b> command except that the default setting for new win- > dows is changed. Initially line-wrap is on and can be toggled with the > "wrap" command ("C-a r") or by means of "C-a : wrap on|off". > > <b>d</b><b>e</b><b>f</b><b>w</b><b>r</b><b>i</b><b>t</b><b>e</b><b>l</b><b>o</b><b>c</b><b>k</b> <b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b>|<b>a</b><b>u</b><b>t</b><b>o</b> > > Same as the <b>w</b><b>r</b><b>i</b><b>t</b><b>e</b><b>l</b><b>o</b><b>c</b><b>k</b> command except that the default setting for new > windows is changed. Initially writelocks will off. > > <b>d</b><b>e</b><b>f</b><b>z</b><b>o</b><b>m</b><b>b</b><b>i</b><b>e</b> [<u>k</u><u>e</u><u>y</u><u>s</u>] > > Synonym to the <b>z</b><b>o</b><b>m</b><b>b</b><b>i</b><b>e</b> command. Both currently change the default. See > there. > > <b>d</b><b>e</b><b>t</b><b>a</b><b>c</b><b>h</b> [<b>-</b><b>h</b>] > > Detach the <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> session (disconnect it from the terminal and put it > into the background). This returns you to the shell where you invoked > <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u>. A detached <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> can be resumed by invoking <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> with the > <b>-</b><b>r</b> option (see also section "COMMAND-LINE OPTIONS"). The <b>-</b><b>h</b> option > tells screen to immediately close the connection to the terminal > ("hangup"). > > <b>d</b><b>i</b><b>n</b><b>f</b><b>o</b> > > Show what screen thinks about your terminal. Useful if you want to know > why features like color or the alternate charset don't work. > > <b>d</b><b>i</b><b>s</b><b>p</b><b>l</b><b>a</b><b>y</b><b>s</b> > > Shows a tabular listing of all currently connected user front-ends > (displays). This is most useful for multiuser sessions. > > <b>d</b><b>i</b><b>g</b><b>r</b><b>a</b><b>p</b><b>h</b> [<u>p</u><u>r</u><u>e</u><u>s</u><u>e</u><u>t</u>] > > This command prompts the user for a digraph sequence. The next two > characters typed are looked up in a builtin table and the resulting > character is inserted in the input stream. For example, if the user > enters 'a"', an a-umlaut will be inserted. If the first character > entered is a 0 (zero), <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> will treat the following characters (up > to three) as an octal number instead. The optional argument <u>p</u><u>r</u><u>e</u><u>s</u><u>e</u><u>t</u> is > treated as user input, thus one can create an "umlaut" key. For exam- > ple the command "bindkey ^K digraph '"'" enables the user to generate > an a-umlaut by typing CTRL-K a. > > <b>d</b><b>u</b><b>m</b><b>p</b><b>t</b><b>e</b><b>r</b><b>m</b><b>c</b><b>a</b><b>p</b> > > Write the termcap entry for the virtual terminal optimized for the cur- > rently active window to the file ".termcap" in the user's > "$HOME/tmp/screen" directory (or wherever <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> stores its sockets. > See the "FILES" section below). This termcap entry is identical to the > value of the environment variable $TERMCAP that is set up by <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> for > each window. For terminfo based systems you will need to run a con- > verter like <u>c</u><u>a</u><u>p</u><u>t</u><u>o</u><u>i</u><u>n</u><u>f</u><u>o</u> and then compile the entry with <u>t</u><u>i</u><u>c</u>. > > <b>e</b><b>c</b><b>h</b><b>o</b> [<b>-</b><b>n</b>] <u>m</u><u>e</u><u>s</u><u>s</u><u>a</u><u>g</u><u>e</u> > > The echo command may be used to annoy <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> users with a 'message of > the day'. Typically installed in a global /etc/screenrc. The option > "-n" may be used to suppress the line feed. See also "sleep". Echo is > also useful for online checking of environment variables. > > <b>e</b><b>s</b><b>c</b><b>a</b><b>p</b><b>e</b> <u>x</u><u>y</u> > > Set the command character to <u>x</u> and the character generating a literal > command character (by triggering the "meta" command) to <u>y</u> (similar to > the -e option). Each argument is either a single character, a two- > character sequence of the form "^x" (meaning "C-x"), a backslash fol- > lowed by an octal number (specifying the ASCII code of the character), > or a backslash followed by a second character, such as "\^" or "\\". > The default is "^Aa". > > <b>e</b><b>v</b><b>a</b><b>l</b> <u>c</u><u>o</u><u>m</u><u>m</u><u>a</u><u>n</u><u>d</u><u>1</u> [<u>c</u><u>o</u><u>m</u><u>m</u><u>a</u><u>n</u><u>d</u><u>2</u> <u>.</u><u>.</u><u>.</u>] > > Parses and executes each argument as seperate command. > > <b>e</b><b>x</b><b>e</b><b>c</b> [[<u>f</u><u>d</u><u>p</u><u>a</u><u>t</u>] <u>n</u><u>e</u><u>w</u><u>c</u><u>o</u><u>m</u><u>m</u><u>a</u><u>n</u><u>d</u> [<u>a</u><u>r</u><u>g</u><u>s</u> <u>.</u><u>.</u><u>.</u>]] > > Run a unix subprocess (specified by an executable path <u>n</u><u>e</u><u>w</u><u>c</u><u>o</u><u>m</u><u>m</u><u>a</u><u>n</u><u>d</u> and > its optional arguments) in the current window. The flow of data between > newcommands stdin/stdout/stderr, the process originally started in the > window (let us call it "application-process") and screen itself (win- > dow) is controlled by the filedescriptor pattern fdpat. This pattern > is basically a three character sequence representing stdin, stdout and > stderr of newcommand. A dot (.) connects the file descriptor to <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u>. > An exclamation mark (!) causes the file descriptor to be connected to > the application-process. A colon (:) combines both. User input will go > to newcommand unless newcommand receives the application-process' out- > put (fdpats first character is `!' or `:') or a pipe symbol (|) is > added (as a fourth character) to the end of fdpat. > Invoking `exec' without arguments shows name and arguments of the cur- > rently running subprocess in this window. Only one subprocess a time > can be running in each window. > When a subprocess is running the `kill' command will affect it instead > of the windows process. > Refer to the postscript file `doc/fdpat.ps' for a confusing illustra- > tion of all 21 possible combinations. Each drawing shows the digits > 2,1,0 representing the three file descriptors of newcommand. The box > marked `W' is the usual pty that has the application-process on its > slave side. The box marked `P' is the secondary pty that now has > <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> at its master side. > > Abbreviations: > Whitespace between the word `exec' and fdpat and the command can be > omitted. Trailing dots and a fdpat consisting only of dots can be omit- > ted. A simple `|' is synonymous for the pattern `!..|'; the word exec > can be omitted here and can always be replaced by `!'. > > Examples: > > exec ... /bin/sh > exec /bin/sh > !/bin/sh > > Creates another shell in the same window, while the original shell is > still running. Output of both shells is displayed and user input is > sent to the new /bin/sh. > > exec !.. stty 19200 > exec ! stty 19200 > !!stty 19200 > > Set the speed of the window's tty. If your stty command operates on > stdout, then add another `!'. > > exec !..| less > |less > > This adds a pager to the window output. The special character `|' is > needed to give the user control over the pager although it gets its > input from the window's process. This works, because <u>l</u><u>e</u><u>s</u><u>s</u> listens on > stderr (a behavior that <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> would not expect without the `|') when > its stdin is not a tty. <u>L</u><u>e</u><u>s</u><u>s</u> versions newer than 177 fail miserably > here; good old <u>p</u><u>g</u> still works. > > !:sed -n s/.*Error.*/\007/p > > Sends window output to both, the user and the sed command. The sed > inserts an additional bell character (oct. 007) to the window output > seen by <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u>. This will cause "Bell in window x" messages, whenever > the string "Error" appears in the window. > > <b>f</b><b>i</b><b>t</b> > > Change the window size to the size of the current region. This command > is needed because screen doesn't adapt the window size automatically if > the window is displayed more than once. > > <b>f</b><b>l</b><b>o</b><b>w</b> [<b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b>|<b>a</b><b>u</b><b>t</b><b>o</b>] > > Sets the flow-control mode for this window. Without parameters it > cycles the current window's flow-control setting from "automatic" to > "on" to "off". See the discussion on "FLOW-CONTROL" later on in this > document for full details and note, that this is subject to change in > future releases. Default is set by `defflow'. > > <b>f</b><b>o</b><b>c</b><b>u</b><b>s</b> [<b>u</b><b>p</b>|<b>d</b><b>o</b><b>w</b><b>n</b>|<b>t</b><b>o</b><b>p</b>|<b>b</b><b>o</b><b>t</b><b>t</b><b>o</b><b>m</b>] > > Move the input focus to the next region. This is done in a cyclic way > so that the top region is selected after the bottom one. If no subcom- > mand is given it defaults to `down'. `up' cycles in the opposite order, > `top' and `bottom' go to the top and bottom region respectively. Useful > bindings are (j and k as in vi) > bind j focus down > bind k focus up > bind t focus top > bind b focus bottom > > <b>g</b><b>r</b> [<b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b>] > > Turn GR charset switching on/off. Whenever screen sees an input charac- > ter with the 8th bit set, it will use the charset stored in the GR slot > and print the character with the 8th bit stripped. The default (see > also "defgr") is not to process GR switching because otherwise the > ISO88591 charset would not work. > > <b>h</b><b>a</b><b>r</b><b>d</b><b>c</b><b>o</b><b>p</b><b>y</b> [<b>-</b><b>h</b>] [<u>f</u><u>i</u><u>l</u><u>e</u>] > > Writes out the currently displayed image to the file <u>f</u><u>i</u><u>l</u><u>e</u>, or, if no > filename is specified, to <u>h</u><u>a</u><u>r</u><u>d</u><u>c</u><u>o</u><u>p</u><u>y</u><u>.</u><u>n</u> in the default directory, where <u>n</u> > is the number of the current window. This either appends or overwrites > the file if it exists. See below. If the option <b>-</b><b>h</b> is specified, dump > also the contents of the scrollback buffer. > > <b>h</b><b>a</b><b>r</b><b>d</b><b>c</b><b>o</b><b>p</b><b>y</b><b>_</b><b>a</b><b>p</b><b>p</b><b>e</b><b>n</b><b>d</b> <b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b> > > If set to "on", <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> will append to the "hardcopy.n" files created by > the command "C-a h", otherwise these files are overwritten each time. > Default is `off'. > > <b>h</b><b>a</b><b>r</b><b>d</b><b>c</b><b>o</b><b>p</b><b>y</b><b>d</b><b>i</b><b>r</b> <u>d</u><u>i</u><u>r</u><u>e</u><u>c</u><u>t</u><u>o</u><u>r</u><u>y</u> > > Defines a directory where hardcopy files will be placed. If unset, > hardcopys are dumped in <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u>'s current working directory. > > <b>h</b><b>a</b><b>r</b><b>d</b><b>s</b><b>t</b><b>a</b><b>t</b><b>u</b><b>s</b> [<b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b>] > <b>h</b><b>a</b><b>r</b><b>d</b><b>s</b><b>t</b><b>a</b><b>t</b><b>u</b><b>s</b> [<b>a</b><b>l</b><b>w</b><b>a</b><b>y</b><b>s</b>]<b>l</b><b>a</b><b>s</b><b>t</b><b>l</b><b>i</b><b>n</b><b>e</b>|<b>m</b><b>e</b><b>s</b><b>s</b><b>a</b><b>g</b><b>e</b>|<b>i</b><b>g</b><b>n</b><b>o</b><b>r</b><b>e</b> [<u>s</u><u>t</u><u>r</u><u>i</u><u>n</u><u>g</u>] > <b>h</b><b>a</b><b>r</b><b>d</b><b>s</b><b>t</b><b>a</b><b>t</b><b>u</b><b>s</b> <b>s</b><b>t</b><b>r</b><b>i</b><b>n</b><b>g</b> [<u>s</u><u>t</u><u>r</u><u>i</u><u>n</u><u>g</u>] > > This command configures the use and emulation of the terminal's hard- > status line. The first form toggles whether <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> will use the hard- > ware status line to display messages. If the flag is set to `off', > these messages are overlaid in reverse video mode at the display line. > The default setting is `on'. > > The second form tells <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> what to do if the terminal doesn't have a > hardstatus line (i.e. the termcap/terminfo capabilities "hs", "ts", > "fs" and "ds" are not set). If the type "lastline" is used, <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> will > reserve the last line of the display for the hardstatus. "message" uses > <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u><u>'</u><u>s</u> message mechanism and "ignore" tells <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> never to display > the hardstatus. If you prepend the word "always" to the type, <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> > will use the type even if the terminal supports a hardstatus. > > The third form specifies the contents of the hardstatus line. '%h' is > used as default string, i.e. the stored hardstatus of the current win- > dow (settable via "ESC]0;<string>^G" or "ESC_<string>ESC\") is dis- > played. You can customize this to any string you like including the > escapes from the "STRING ESCAPES" chapter. If you leave out the argu- > ment <u>s</u><u>t</u><u>r</u><u>i</u><u>n</u><u>g</u>, the current string is displayed. > > You can mix the second and third form by providing the string as addi- > tional argument. > > <b>h</b><b>e</b><b>i</b><b>g</b><b>h</b><b>t</b> [<b>-</b><b>w</b>|<b>-</b><b>d</b>] [<u>l</u><u>i</u><u>n</u><u>e</u><u>s</u> [<u>c</u><u>o</u><u>l</u><u>s</u>]] > > Set the display height to a specified number of lines. When no argument > is given it toggles between 24 and 42 lines display. You can also spec- > ify a width if you want to change both values. The <b>-</b><b>w</b> option tells > screen to leave the display size unchanged and just set the window > size, <b>-</b><b>d</b> vice versa. > > <b>h</b><b>e</b><b>l</b><b>p</b> [<b>-</b><b>c</b> <u>c</u><u>l</u><u>a</u><u>s</u><u>s</u>] > > Not really a online help, but displays a help <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> showing you all > the key bindings. The first pages list all the internal commands fol- > lowed by their current bindings. Subsequent pages will display the > custom commands, one command per key. Press space when you're done > reading each page, or return to exit early. All other characters are > ignored. If the "-c" option is given, display all bound commands for > the specified command class. See also "DEFAULT KEY BINDINGS" section. > > <b>h</b><b>i</b><b>s</b><b>t</b><b>o</b><b>r</b><b>y</b> > > Usually users work with a shell that allows easy access to previous > commands. For example csh has the command "!!" to repeat the last com- > mand executed. <u>S</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> allows you to have a primitive way of re-calling > "the command that started ...": You just type the first letter of that > command, then hit `C-a {' and <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> tries to find a previous line that > matches with the `prompt character' to the left of the cursor. This > line is pasted into this window's input queue. Thus you have a crude > command history (made up by the visible window and its scrollback > buffer). > > <b>h</b><b>s</b><b>t</b><b>a</b><b>t</b><b>u</b><b>s</b> <u>s</u><u>t</u><u>a</u><u>t</u><u>u</u><u>s</u> > > Change the window's hardstatus line to the string <u>s</u><u>t</u><u>a</u><u>t</u><u>u</u><u>s</u>. > > <b>i</b><b>g</b><b>n</b><b>o</b><b>r</b><b>e</b><b>c</b><b>a</b><b>s</b><b>e</b> [<b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b>] > > Tell screen to ignore the case of caracters in searches. Default is > `off'. > > <b>i</b><b>n</b><b>f</b><b>o</b> > > Uses the message line to display some information about the current > window: the cursor position in the form "(column,row)" starting with > "(1,1)", the terminal width and height plus the size of the scrollback > buffer in lines, like in "(80,24)+50", the current state of window > XON/XOFF flow control is shown like this (See also section FLOW CON- > TROL): > > +flow automatic flow control, currently on. > -flow automatic flow control, currently off. > +(+)flow flow control enabled. Agrees with automatic control. > -(+)flow flow control disabled. Disagrees with automatic control. > +(-)flow flow control enabled. Disagrees with automatic control. > -(-)flow flow control disabled. Agrees with automatic control. > > The current line wrap setting (`+wrap' indicates enabled, `-wrap' not) > is also shown. The flags `ins', `org', `app', `log', `mon' or `nored' > are displayed when the window is in insert mode, origin mode, applica- > tion-keypad mode, has output logging, insert mode, origin mode, appli- > cation-keypad mode, output logging, activity monitoring or partial > redraw enabled. > > The currently active character set (<u>G</u><u>0</u>, <u>G</u><u>1</u>, <u>G</u><u>2</u>, or <u>G</u><u>3</u>) and in square > brackets the terminal character sets that are currently designated as > <u>G</u><u>0</u> through <u>G</u><u>3</u> is shown. If the window is in UTF-8 mode, the string > "UTF-8" is shown instead. > > Additional modes depending on the type of the window are displayed at > the end of the status line (See also chapter "WINDOW TYPES"). > If the state machine of the terminal emulator is in a non-default > state, the info line is started with a string identifying the current > state. > For system information use the "time" command. > > <b>i</b><b>n</b><b>s</b><b>_</b><b>r</b><b>e</b><b>g</b> [<u>k</u><u>e</u><u>y</u>] > > No longer exists, use "paste" instead. > > <b>e</b><b>n</b><b>c</b><b>o</b><b>d</b><b>i</b><b>n</b><b>g</b> <u>e</u><u>n</u><u>c</u> [<u>e</u><u>n</u><u>c</u>] > > Tell <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> how to interpret the input/output. The first argument sets > the encoding of the current window. Each window can emulate a different > encoding. The optional second parameter overwrites the encoding of the > connected terminal. It should never be needed as screen uses the locale > setting to detect the encoding. There is also a way to select a termi- > nal encoding depending on the terminal type by using the "KJ" termcap > entry. > > Supported encodings are eucJP, SJIS, eucKR, eucCN, Big5, KOI8-R, > CP1251, UTF-8, ISO8859-2, ISO8859-3, ISO8859-4, ISO8859-5, ISO8859-6, > ISO8859-7, ISO8859-8, ISO8859-9, ISO8859-10, ISO8859-15, jis. > > See also "defencoding", which changes the default setting of a new win- > dow. > > <b>k</b><b>i</b><b>l</b><b>l</b> > > Kill current window. > If there is an `exec' command running then it is killed. Otherwise the > process (shell) running in the window receives a HANGUP condition, the > window structure is removed and <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> (your display) switches to > another window. When the last window is destroyed, <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> exits. > After a kill <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> switches to the previously displayed window. > Note: <u>E</u><u>m</u><u>a</u><u>c</u><u>s</u> users should keep this command in mind, when killing a > line. It is recommended not to use "C-a" as the <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> escape key or > to rebind kill to "C-a K". > > <b>l</b><b>a</b><b>s</b><b>t</b><b>m</b><b>s</b><b>g</b> > > Redisplay the last contents of the message/status line. Useful if > you're typing when a message appears, because the message goes away > when you press a key (unless your terminal has a hardware status line). > Refer to the commands "msgwait" and "msgminwait" for fine tuning. > > <b>l</b><b>i</b><b>c</b><b>e</b><b>n</b><b>s</b><b>e</b> > > Display the disclaimer page. This is done whenever <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> is started > without options, which should be often enough. See also the > "startup_message" command. > > <b>l</b><b>o</b><b>c</b><b>k</b><b>s</b><b>c</b><b>r</b><b>e</b><b>e</b><b>n</b> > > Lock this display. Call a screenlock program (/local/bin/lck or > /usr/bin/lock or a builtin if no other is available). Screen does not > accept any command keys until this program terminates. Meanwhile pro- > cesses in the windows may continue, as the windows are in the > `detached' state. The screenlock program may be changed through the > environment variable $LOCKPRG (which must be set in the shell from > which <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> is started) and is executed with the user's uid and gid. > Warning: When you leave other shells unlocked and you have no password > set on <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u>, the lock is void: One could easily re-attach from an > unlocked shell. This feature should rather be called `lockterminal'. > > <b>l</b><b>o</b><b>g</b> [<b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b>] > > Start/stop writing output of the current window to a file "screenlog.<u>n</u>" > in the window's default directory, where <u>n</u> is the number of the current > window. This filename can be changed with the `logfile' command. If no > parameter is given, the state of logging is toggled. The session log is > appended to the previous contents of the file if it already exists. The > current contents and the contents of the scrollback history are not > included in the session log. Default is `off'. > > <b>l</b><b>o</b><b>g</b><b>f</b><b>i</b><b>l</b><b>e</b> <u>f</u><u>i</u><u>l</u><u>e</u><u>n</u><u>a</u><u>m</u><u>e</u> > <b>l</b><b>o</b><b>g</b><b>f</b><b>i</b><b>l</b><b>e</b> <b>f</b><b>l</b><b>u</b><b>s</b><b>h</b> <u>s</u><u>e</u><u>c</u><u>s</u> > > Defines the name the logfiles will get. The default is "screenlog.%n". > The second form changes the number of seconds <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> will wait before > flushing the logfile buffer to the file-system. The default value is 10 > seconds. > > <b>l</b><b>o</b><b>g</b><b>i</b><b>n</b> [<b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b>] > > Adds or removes the entry in the utmp database file for the current > window. This controls if the window is `logged in'. When no parameter > is given, the login state of the window is toggled. Additionally to > that toggle, it is convenient having a `log in' and a `log out' key. > E.g. `bind I login on' and `bind O login off' will map these keys to be > C-a I and C-a O. The default setting (in config.h.in) should be "on" > for a <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> that runs under suid-root. Use the "deflogin" command to > change the default login state for new windows. Both commands are only > present when <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> has been compiled with utmp support. > > <b>l</b><b>o</b><b>g</b><b>t</b><b>s</b><b>t</b><b>a</b><b>m</b><b>p</b> [<b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b>] > <b>l</b><b>o</b><b>g</b><b>t</b><b>s</b><b>t</b><b>a</b><b>m</b><b>p</b> <b>a</b><b>f</b><b>t</b><b>e</b><b>r</b> [<u>s</u><u>e</u><u>c</u><u>s</u>] > <b>l</b><b>o</b><b>g</b><b>t</b><b>s</b><b>t</b><b>a</b><b>m</b><b>p</b> <b>s</b><b>t</b><b>r</b><b>i</b><b>n</b><b>g</b> [<u>s</u><u>t</u><u>r</u><u>i</u><u>n</u><u>g</u>] > > This command controls logfile time-stamp mechanism of <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u><u>.</u> If time- > stamps are turned "on", <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> adds a string containing the current > time to the logfile after two minutes of inactivity. When output con- > tinues and more than another two minutes have passed, a second time- > stamp is added to document the restart of the output. You can change > this timeout with the second form of the command. The third form is > used for customizing the time-stamp string (`-- %n:%t -- time-stamp -- > %M/%d/%y %c:%s --\n' by default). > > <b>m</b><b>a</b><b>p</b><b>d</b><b>e</b><b>f</b><b>a</b><b>u</b><b>l</b><b>t</b> > > Tell <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> that the next input character should only be looked up in > the default bindkey table. See also "bindkey". > > <b>m</b><b>a</b><b>p</b><b>n</b><b>o</b><b>t</b><b>n</b><b>e</b><b>x</b><b>t</b> > > Like mapdefault, but don't even look in the default bindkey table. > > <b>m</b><b>a</b><b>p</b><b>t</b><b>i</b><b>m</b><b>e</b><b>o</b><b>u</b><b>t</b> [<u>t</u><u>i</u><u>m</u><u>o</u>] > > Set the inter-character timer for input sequence detection to a timeout > of <u>t</u><u>i</u><u>m</u><u>o</u> ms. The default timeout is 300ms. Maptimeout with no arguments > shows the current setting. See also "bindkey". > > <b>m</b><b>a</b><b>r</b><b>k</b><b>k</b><b>e</b><b>y</b><b>s</b> <u>s</u><u>t</u><u>r</u><u>i</u><u>n</u><u>g</u> > > This is a method of changing the keymap used for copy/history mode. > The string is made up of <u>o</u><u>l</u><u>d</u><u>c</u><u>h</u><u>a</u><u>r</u>=<u>n</u><u>e</u><u>w</u><u>c</u><u>h</u><u>a</u><u>r</u> pairs which are separated by > `:'. Example: The string "B=^B:F=^F" will change the keys `C-b' and `C- > f' to the vi style binding (scroll up/down fill page). This happens to > be the default binding for `B' and `F'. The command "markkeys > h=^B:l=^F:$=^E" would set the mode for an emacs-style binding. If your > terminal sends characters, that cause you to abort copy mode, then this > command may help by binding these characters to do nothing. The no-op > character is `@' and is used like this: "markkeys @=L=H" if you do not > want to use the `H' or `L' commands any longer. As shown in this exam- > ple, multiple keys can be assigned to one function in a single state- > ment. > > <b>m</b><b>e</b><b>t</b><b>a</b> > > Insert the command character (C-a) in the current window's input > stream. > > <b>m</b><b>o</b><b>n</b><b>i</b><b>t</b><b>o</b><b>r</b> [<b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b>] > > Toggles activity monitoring of windows. When monitoring is turned on > and an affected window is switched into the background, you will > receive the activity notification message in the status line at the > first sign of output and the window will also be marked with an `@' in > the window-status display. Monitoring is initially off for all win- > dows. > > <b>m</b><b>s</b><b>g</b><b>m</b><b>i</b><b>n</b><b>w</b><b>a</b><b>i</b><b>t</b> <u>s</u><u>e</u><u>c</u> > > Defines the time <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> delays a new message when one message is cur- > rently displayed. The default is 1 second. > > <b>m</b><b>s</b><b>g</b><b>w</b><b>a</b><b>i</b><b>t</b> <u>s</u><u>e</u><u>c</u> > > Defines the time a message is displayed if <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> is not disturbed by > other activity. The default is 5 seconds. > > <b>m</b><b>u</b><b>l</b><b>t</b><b>i</b><b>u</b><b>s</b><b>e</b><b>r</b> <b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b> > > Switch between singleuser and multiuser mode. Standard <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> operation > is singleuser. In multiuser mode the commands `acladd', `aclchg', > `aclgrp' and `acldel' can be used to enable (and disable) other users > accessing this <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> session. > > <b>n</b><b>e</b><b>t</b><b>h</b><b>a</b><b>c</b><b>k</b> <b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b> > > Changes the kind of error messages used by <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u>. When you are famil- > iar with the game "nethack", you may enjoy the nethack-style messages > which will often blur the facts a little, but are much funnier to read. > Anyway, standard messages often tend to be unclear as well. > This option is only available if <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> was compiled with the NETHACK > flag defined. The default setting is then determined by the presence of > the environment variable $NETHACKOPTIONS. > > <b>n</b><b>e</b><b>x</b><b>t</b> > > Switch to the next window. This command can be used repeatedly to > cycle through the list of windows. > > <b>n</b><b>o</b><b>n</b><b>b</b><b>l</b><b>o</b><b>c</b><b>k</b> [<b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b>] > > Enable or disable flow control for the current user interface (dis- > play). It is used to prevent a slow display from slowing down the pro- > cessing of data output by a window. This command may be helpful when > multiple displays show the same window. Nonblock is initially off for > all displays. > > <b>n</b><b>u</b><b>m</b><b>b</b><b>e</b><b>r</b> [<u>n</u>] > > Change the current windows number. If the given number <u>n</u> is already > used by another window, both windows exchange their numbers. If no > argument is specified, the current window number (and title) is shown. > > <b>o</b><b>b</b><b>u</b><b>f</b><b>l</b><b>i</b><b>m</b><b>i</b><b>t</b> [<u>l</u><u>i</u><u>m</u><u>i</u><u>t</u>] > > If the output buffer contains more bytes than the specified limit, no > more data will be read from the windows. The default value is 256. If > you have a fast display (like xterm), you can set it to some higher > value. If no argument is specified, the current setting is displayed. > > <b>o</b><b>n</b><b>l</b><b>y</b> > > Kill all regions but the current one. > > <b>o</b><b>t</b><b>h</b><b>e</b><b>r</b> > > Switch to the window displayed previously. If this window does no > longer exist, <u>o</u><u>t</u><u>h</u><u>e</u><u>r</u> has the same effect as <u>n</u><u>e</u><u>x</u><u>t</u>. > > <b>p</b><b>a</b><b>r</b><b>t</b><b>i</b><b>a</b><b>l</b> <b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b> > > Defines whether the display should be refreshed (as with <u>r</u><u>e</u><u>d</u><u>i</u><u>s</u><u>p</u><u>l</u><u>a</u><u>y</u>) > after switching to the current window. This command only affects the > current window. To immediately affect all windows use the <u>a</u><u>l</u><u>l</u><u>p</u><u>a</u><u>r</u><u>t</u><u>i</u><u>a</u><u>l</u> > command. Default is `off', of course. This default is fixed, as there > is currently no <u>d</u><u>e</u><u>f</u><u>p</u><u>a</u><u>r</u><u>t</u><u>i</u><u>a</u><u>l</u> command. > > <b>p</b><b>a</b><b>s</b><b>s</b><b>w</b><b>o</b><b>r</b><b>d</b> [<u>c</u><u>r</u><u>y</u><u>p</u><u>t</u><u>e</u><u>d</u><b>_</b><u>p</u><u>w</u>] > > Present a crypted password in your ".screenrc" file and <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> will ask > for it, whenever someone attempts to resume a detached. This is useful > if you have privileged programs running under <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> and you want to > protect your session from reattach attempts by another user masquerad- > ing as your uid (i.e. any superuser.) If no crypted password is speci- > fied, <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> prompts twice for typing a password and places its encryp- > tion in the paste buffer. Default is `none', this disables password > checking. > > <b>p</b><b>a</b><b>s</b><b>t</b><b>e</b> [<u>r</u><u>e</u><u>g</u><u>i</u><u>s</u><u>t</u><u>e</u><u>r</u><u>s</u> [<u>d</u><u>e</u><u>s</u><u>t</u><b>_</b><u>r</u><u>e</u><u>g</u>]] > > Write the (concatenated) contents of the specified registers to the > stdin queue of the current window. The register '.' is treated as the > paste buffer. If no parameter is given the user is prompted for a sin- > gle register to paste. The paste buffer can be filled with the <u>c</u><u>o</u><u>p</u><u>y</u>, > <u>h</u><u>i</u><u>s</u><u>t</u><u>o</u><u>r</u><u>y</u> and <u>r</u><u>e</u><u>a</u><u>d</u><u>b</u><u>u</u><u>f</u> commands. Other registers can be filled with the > <u>r</u><u>e</u><u>g</u><u>i</u><u>s</u><u>t</u><u>e</u><u>r</u>, <u>r</u><u>e</u><u>a</u><u>d</u><u>r</u><u>e</u><u>g</u> and <u>p</u><u>a</u><u>s</u><u>t</u><u>e</u> commands. If <u>p</u><u>a</u><u>s</u><u>t</u><u>e</u> is called with a second > argument, the contents of the specified registers is pasted into the > named destination register rather than the window. If '.' is used as > the second argument, the displays paste buffer is the destination. > Note, that "paste" uses a wide variety of resources: Whenever a second > argument is specified no current window is needed. When the source > specification only contains registers (not the paste buffer) then there > need not be a current display (terminal attached), as the registers are > a global resource. The paste buffer exists once for every user. > > <b>p</b><b>a</b><b>s</b><b>t</b><b>e</b><b>f</b><b>o</b><b>n</b><b>t</b> [<b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b>] > > Tell <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> to include font information in the paste buffer. The > default is not to do so. This command is especially useful for multi > character fonts like kanji. > > <b>p</b><b>o</b><b>w</b><b>_</b><b>b</b><b>r</b><b>e</b><b>a</b><b>k</b> > > Reopen the window's terminal line and send a break condition. See > `break'. > > <b>p</b><b>o</b><b>w</b><b>_</b><b>d</b><b>e</b><b>t</b><b>a</b><b>c</b><b>h</b> > > Power detach. Mainly the same as <u>d</u><u>e</u><u>t</u><u>a</u><u>c</u><u>h</u>, but also sends a HANGUP sig- > nal to the parent process of <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u>. CAUTION: This will result in a > logout, when <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> was started from your login shell. > > <b>p</b><b>o</b><b>w</b><b>_</b><b>d</b><b>e</b><b>t</b><b>a</b><b>c</b><b>h</b><b>_</b><b>m</b><b>s</b><b>g</b> [<u>m</u><u>e</u><u>s</u><u>s</u><u>a</u><u>g</u><u>e</u>] > > The <u>m</u><u>e</u><u>s</u><u>s</u><u>a</u><u>g</u><u>e</u> specified here is output whenever a `Power detach' was per- > formed. It may be used as a replacement for a logout message or to > reset baud rate, etc. Without parameter, the current message is shown. > > <b>p</b><b>r</b><b>e</b><b>v</b> > > Switch to the window with the next lower number. This command can be > used repeatedly to cycle through the list of windows. > > <b>p</b><b>r</b><b>i</b><b>n</b><b>t</b><b>c</b><b>m</b><b>d</b> [<u>c</u><u>m</u><u>d</u>] > > If <u>c</u><u>m</u><u>d</u> is not an empty string, <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> will not use the terminal capa- > bilities "po/pf" if it detects an ansi print sequence <b>E</b><b>S</b><b>C</b> <b>[</b> <b>5</b> <b>i</b>, but > pipe the output into <u>c</u><u>m</u><u>d</u>. This should normally be a command like "lpr" > or "'cat > /tmp/scrprint'". <b>p</b><b>r</b><b>i</b><b>n</b><b>t</b><b>c</b><b>m</b><b>d</b> without a command displays the > current setting. The ansi sequence <b>E</b><b>S</b><b>C</b> <b>\</b> ends printing and closes the > pipe. > Warning: Be careful with this command! If other user have write access > to your terminal, they will be able to fire off print commands. > > <b>p</b><b>r</b><b>o</b><b>c</b><b>e</b><b>s</b><b>s</b> [<u>k</u><u>e</u><u>y</u>] > > Stuff the contents of the specified register into <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u>'s input queue. > If no argument is given you are prompted for a register name. The text > is parsed as if it had been typed in from the user's keyboard. This > command can be used to bind multiple actions to a single key. > > <b>q</b><b>u</b><b>i</b><b>t</b> > > Kill all windows and terminate <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u>. Note that on VT100-style termi- > nals the keys C-4 and C-\ are identical. This makes the default bind- > ings dangerous: Be careful not to type C-a C-4 when selecting window > no. 4. Use the empty bind command (as in "bind '^\'") to remove a key > binding. > > <b>r</b><b>e</b><b>a</b><b>d</b><b>b</b><b>u</b><b>f</b> [<b>-</b><b>e</b> <u>e</u><u>n</u><u>c</u><u>o</u><u>d</u><u>i</u><u>n</u><u>g</u>] [<u>f</u><u>i</u><u>l</u><u>e</u><u>n</u><u>a</u><u>m</u><u>e</u>] > > Reads the contents of the specified file into the paste buffer. You > can tell screen the encoding of the file via the <b>-</b><b>e</b> option. If no file > is specified, the screen-exchange filename is used. See also "buffer- > file" command. > > <b>r</b><b>e</b><b>a</b><b>d</b><b>r</b><b>e</b><b>g</b> [<b>-</b><b>e</b> <u>e</u><u>n</u><u>c</u><u>o</u><u>d</u><u>i</u><u>n</u><u>g</u>] [<u>r</u><u>e</u><u>g</u><u>i</u><u>s</u><u>t</u><u>e</u><u>r</u> [<u>f</u><u>i</u><u>l</u><u>e</u><u>n</u><u>a</u><u>m</u><u>e</u>]] > > Does one of two things, dependent on number of arguments: with zero or > one arguments it it duplicates the paste buffer contents into the reg- > ister specified or entered at the prompt. With two arguments it reads > the contents of the named file into the register, just as <u>r</u><u>e</u><u>a</u><u>d</u><u>b</u><u>u</u><u>f</u> reads > the screen-exchange file into the paste buffer. You can tell screen > the encoding of the file via the <b>-</b><b>e</b> option. The following example will > paste the system's password file into the <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> window (using register > p, where a copy remains): > > C-a : readreg p /etc/passwd > C-a : paste p > > <b>r</b><b>e</b><b>d</b><b>i</b><b>s</b><b>p</b><b>l</b><b>a</b><b>y</b> > > Redisplay the current window. Needed to get a full redisplay when in > partial redraw mode. > > <b>r</b><b>e</b><b>g</b><b>i</b><b>s</b><b>t</b><b>e</b><b>r</b> [<b>-</b><b>e</b> <u>e</u><u>n</u><u>c</u><u>o</u><u>d</u><u>i</u><u>n</u><u>g</u>] <u>k</u><u>e</u><u>y</u> <u>s</u><u>t</u><u>r</u><u>i</u><u>n</u><u>g</u> > > Save the specified <u>s</u><u>t</u><u>r</u><u>i</u><u>n</u><u>g</u> to the register <u>k</u><u>e</u><u>y</u>. The encoding of the > string can be specified via the <b>-</b><b>e</b> option. See also the "paste" com- > mand. > > <b>r</b><b>e</b><b>m</b><b>o</b><b>v</b><b>e</b> > > Kill the current region. This is a no-op if there is only one region. > > <b>r</b><b>e</b><b>m</b><b>o</b><b>v</b><b>e</b><b>b</b><b>u</b><b>f</b> > > Unlinks the screen-exchange file used by the commands "writebuf" and > "readbuf". > > <b>r</b><b>e</b><b>s</b><b>e</b><b>t</b> > > Reset the virtual terminal to its "power-on" values. Useful when > strange settings (like scroll regions or graphics character set) are > left over from an application. > > <b>r</b><b>e</b><b>s</b><b>i</b><b>z</b><b>e</b> > > Resize the current region. The space will be removed from or added to > the region below or if there's not enough space from the region above. > > resize +N increase current region height by N > > resize -N decrease current region height by N > > resize N set current region height to N > > resize = make all windows equally high > > resize max maximize current region height > > resize min minimize current region height > > > <b>s</b><b>c</b><b>r</b><b>e</b><b>e</b><b>n</b> [<u>-</u><u>o</u><u>p</u><u>t</u><u>s</u>] [<u>n</u>] [<u>c</u><u>m</u><u>d</u> [<u>a</u><u>r</u><u>g</u><u>s</u>]] > > Establish a new window. The flow-control options (<b>-</b><b>f</b>, <b>-</b><b>f</b><b>n</b> and <b>-</b><b>f</b><b>a</b>), > title (a.k.a.) option (<b>-</b><b>t</b>), login options (<b>-</b><b>l</b> and <b>-</b><b>l</b><b>n</b>) , terminal type > option (<b>-</b><b>T</b> <term>), the all-capability-flag (<b>-</b><b>a</b>) and scrollback option > (<b>-</b><b>h</b> <num>) may be specified with each command. The option (<b>-</b><b>M</b>) turns > monitoring on for this window. The option (<b>-</b><b>L</b>) turns output logging on > for this window. If an optional number <u>n</u> in the range 0..9 is given, > the window number <u>n</u> is assigned to the newly created window (or, if > this number is already in-use, the next available number). If a com- > mand is specified after "screen", this command (with the given argu- > ments) is started in the window; otherwise, a shell is created. Thus, > if your ".screenrc" contains the lines > > # example for .screenrc: > screen 1 > screen -fn -t foobar -L 2 telnet foobar > > <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> creates a shell window (in window #1) and a window with a TELNET > connection to the machine foobar (with no flow-control using the title > "foobar" in window #2) and will write a logfile ("screenlog.2") of the > telnet session. Note, that unlike previous versions of <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> no addi- > tional default window is created when "screen" commands are included in > your ".screenrc" file. When the initialization is completed, <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> > switches to the last window specified in your .screenrc file or, if > none, opens a default window #0. > Screen has built in some functionality of "cu" and "telnet". See also > chapter "WINDOW TYPES". > > <b>s</b><b>c</b><b>r</b><b>o</b><b>l</b><b>l</b><b>b</b><b>a</b><b>c</b><b>k</b> <u>n</u><u>u</u><u>m</u> > > Set the size of the scrollback buffer for the current windows to <u>n</u><u>u</u><u>m</u> > lines. The default scrollback is 100 lines. See also the "defscroll- > back" command and use "C-a i" to view the current setting. > > <b>s</b><b>e</b><b>l</b><b>e</b><b>c</b><b>t</b> [<u>W</u><u>i</u><u>n</u><u>d</u><u>o</u><u>w</u><u>I</u><u>D</u>] > > Switch to the window identified by <u>W</u><u>i</u><u>n</u><u>d</u><u>o</u><u>w</u><u>I</u><u>D</u>. This can be a prefix of a > window title (alphanumeric window name) or a window number. The param- > eter is optional and if omitted, you get prompted for an identifier. > When a new window is established, the first available number is > assigned to this window. Thus, the first window can be activated by > "select 0". The number of windows is limited at compile-time by the > MAXWIN configuration parameter. > > <b>s</b><b>e</b><b>s</b><b>s</b><b>i</b><b>o</b><b>n</b><b>n</b><b>a</b><b>m</b><b>e</b> [<u>n</u><u>a</u><u>m</u><u>e</u>] > > Rename the current session. Note, that for "screen -list" the name > shows up with the process-id prepended. If the argument "name" is omit- > ted, the name of this session is displayed. Caution: The $STY environ- > ment variables still reflects the old name. This may result in confu- > sion. The default is constructed from the tty and host names. > > <b>s</b><b>e</b><b>t</b><b>e</b><b>n</b><b>v</b> [<u>v</u><u>a</u><u>r</u> [<u>s</u><u>t</u><u>r</u><u>i</u><u>n</u><u>g</u>]] > > Set the environment variable <u>v</u><u>a</u><u>r</u> to value <u>s</u><u>t</u><u>r</u><u>i</u><u>n</u><u>g</u>. If only <u>v</u><u>a</u><u>r</u> is spec- > ified, the user will be prompted to enter a value. If no parameters > are specified, the user will be prompted for both variable and value. > The environment is inherited by all subsequently forked shells. > > <b>s</b><b>e</b><b>t</b><b>s</b><b>i</b><b>d</b> [<b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b>] > > Normally screen uses different sessions and process groups for the win- > dows. If setsid is turned <u>o</u><u>f</u><u>f</u>, this is not done anymore and all windows > will be in the same process group as the screen backend process. This > also breaks job-control, so be careful. The default is <u>o</u><u>n</u>, of course. > This command is probably useful only in rare circumstances. > > <b>s</b><b>h</b><b>e</b><b>l</b><b>l</b> <u>c</u><u>o</u><u>m</u><u>m</u><u>a</u><u>n</u><u>d</u> > > Set the command to be used to create a new shell. This overrides the > value of the environment variable $SHELL. This is useful if you'd like > to run a tty-enhancer which is expecting to execute the program speci- > fied in $SHELL. If the command begins with a '-' character, the shell > will be started as a login-shell. > > <b>s</b><b>h</b><b>e</b><b>l</b><b>l</b><b>t</b><b>i</b><b>t</b><b>l</b><b>e</b> <u>t</u><u>i</u><u>t</u><u>l</u><u>e</u> > > Set the title for all shells created during startup or by the C-A C-c > command. For details about what a title is, see the discussion enti- > tled "TITLES (naming windows)". > > <b>s</b><b>i</b><b>l</b><b>e</b><b>n</b><b>c</b><b>e</b> [<b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b>|<u>s</u><u>e</u><u>c</u>] > > Toggles silence monitoring of windows. When silence is turned on and > an affected window is switched into the background, you will receive > the silence notification message in the status line after a specified > period of inactivity (silence). The default timeout can be changed with > the `silencewait' command or by specifying a number of seconds instead > of `on' or `off'. Silence is initially off for all windows. > > <b>s</b><b>i</b><b>l</b><b>e</b><b>n</b><b>c</b><b>e</b><b>w</b><b>a</b><b>i</b><b>t</b> <u>s</u><u>e</u><u>c</u> > > Define the time that all windows monitored for silence should wait > before displaying a message. Default 30 seconds. > > <b>s</b><b>l</b><b>e</b><b>e</b><b>p</b> <u>n</u><u>u</u><u>m</u> > > This command will pause the execution of a .screenrc file for <u>n</u><u>u</u><u>m</u> sec- > onds. Keyboard activity will end the sleep. It may be used to give > users a chance to read the messages output by "echo". > > <b>s</b><b>l</b><b>o</b><b>w</b><b>p</b><b>a</b><b>s</b><b>t</b><b>e</b> <u>m</u><u>s</u><u>e</u><u>c</u> > > Define the speed at which text is inserted into the current window by > the paste ("C-a ]") command. If the slowpaste value is nonzero text is > written character by character. <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> will make a pause of <u>m</u><u>s</u><u>e</u><u>c</u> mil- > liseconds after each single character write to allow the application to > process its input. Only use slowpaste if your underlying system exposes > flow control problems while pasting large amounts of text. > > <b>s</b><b>o</b><b>u</b><b>r</b><b>c</b><b>e</b> <u>f</u><u>i</u><u>l</u><u>e</u> > > Read and execute commands from file <u>f</u><u>i</u><u>l</u><u>e</u>. Source commands may be nested > to a maximum recursion level of ten. If file is not an absolute path > and screen already processes a source command, the parent directory of > the running source command file is used to search for the new command > file before screen's current directory. > > Note that termcap/terminfo/termcapinfo commands only work at startup > and reattach time, so they must be reached via the default screenrc > files to have an effect. > > <b>s</b><b>o</b><b>r</b><b>e</b><b>n</b><b>d</b><b>i</b><b>t</b><b>i</b><b>o</b><b>n</b> [<u>a</u><u>t</u><u>t</u><u>r</u> [<u>c</u><u>o</u><u>l</u><u>o</u><u>r</u>]] > > Change the way <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> does highlighting for text marking and printing > messages. See the "STRING ESCAPES" chapter for the syntax of the > modifiers. The default is currently "=s dd" (standout, default col- > ors). > > <b>s</b><b>p</b><b>l</b><b>i</b><b>t</b> > > Split the current region into two new ones. All regions on the display > are resized to make room for the new region. The blank window is dis- > played on the new region. > > <b>s</b><b>t</b><b>a</b><b>r</b><b>t</b><b>u</b><b>p</b><b>_</b><b>m</b><b>e</b><b>s</b><b>s</b><b>a</b><b>g</b><b>e</b> <b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b> > > Select whether you want to see the copyright notice during startup. > Default is `on', as you probably noticed. > > <b>s</b><b>t</b><b>u</b><b>f</b><b>f</b> <u>s</u><u>t</u><u>r</u><u>i</u><u>n</u><u>g</u> > > Stuff the string <u>s</u><u>t</u><u>r</u><u>i</u><u>n</u><u>g</u> in the input buffer of the current window. > This is like the "paste" command but with much less overhead. You can- > not paste large buffers with the "stuff" command. It is most useful for > key bindings. See also "bindkey". > > <b>s</b><b>u</b> [<b>u</b><b>s</b><b>e</b><b>r</b><b>n</b><b>a</b><b>m</b><b>e</b> [<b>p</b><b>a</b><b>s</b><b>s</b><b>w</b><b>o</b><b>r</b><b>d</b> [<b>p</b><b>a</b><b>s</b><b>s</b><b>w</b><b>o</b><b>r</b><b>d</b><b>2</b>]] > > Substitute the user of a display. The command prompts for all parame- > ters that are omitted. If passwords are specified as parameters, they > have to be specified un-crypted. The first password is matched against > the systems passwd database, the second password is matched against the > <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> password as set with the commands "acladd" or "password". "Su" > may be useful for the <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> administrator to test multiuser setups. > When the identification fails, the user has access to the commands > available for user <b>n</b><b>o</b><b>b</b><b>o</b><b>d</b><b>y</b>. These are "detach", "license", "version", > "help" and "displays". > > <b>s</b><b>u</b><b>s</b><b>p</b><b>e</b><b>n</b><b>d</b> > > Suspend <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u>. The windows are in the `detached' state, while <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> > is suspended. This feature relies on the shell being able to do job > control. > > <b>t</b><b>e</b><b>r</b><b>m</b> <u>t</u><u>e</u><u>r</u><u>m</u> > > In each window's environment <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> opens, the $TERM variable is set to > "screen" by default. But when no description for "screen" is installed > in the local termcap or terminfo data base, you set $TERM to - say - > "vt100". This won't do much harm, as <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> is VT100/ANSI compatible. > The use of the "term" command is discouraged for non-default purpose. > That is, one may want to specify special $TERM settings (e.g. vt100) > for the next "screen rlogin othermachine" command. Use the command > "screen -T vt100 rlogin othermachine" rather than setting and resetting > the default. > > <b>t</b><b>e</b><b>r</b><b>m</b><b>c</b><b>a</b><b>p</b> <u>t</u><u>e</u><u>r</u><u>m</u> <u>t</u><u>e</u><u>r</u><u>m</u><u>i</u><u>n</u><u>a</u><u>l</u><u>-</u><u>t</u><u>w</u><u>e</u><u>a</u><u>k</u><u>s</u> [<u>w</u><u>i</u><u>n</u><u>d</u><u>o</u><u>w</u><u>-</u><u>t</u><u>w</u><u>e</u><u>a</u><u>k</u><u>s</u>] > <b>t</b><b>e</b><b>r</b><b>m</b><b>i</b><b>n</b><b>f</b><b>o</b> <u>t</u><u>e</u><u>r</u><u>m</u> <u>t</u><u>e</u><u>r</u><u>m</u><u>i</u><u>n</u><u>a</u><u>l</u><u>-</u><u>t</u><u>w</u><u>e</u><u>a</u><u>k</u><u>s</u> [<u>w</u><u>i</u><u>n</u><u>d</u><u>o</u><u>w</u><u>-</u><u>t</u><u>w</u><u>e</u><u>a</u><u>k</u><u>s</u>] > <b>t</b><b>e</b><b>r</b><b>m</b><b>c</b><b>a</b><b>p</b><b>i</b><b>n</b><b>f</b><b>o</b> <u>t</u><u>e</u><u>r</u><u>m</u> <u>t</u><u>e</u><u>r</u><u>m</u><u>i</u><u>n</u><u>a</u><u>l</u><u>-</u><u>t</u><u>w</u><u>e</u><u>a</u><u>k</u><u>s</u> [<u>w</u><u>i</u><u>n</u><u>d</u><u>o</u><u>w</u><u>-</u><u>t</u><u>w</u><u>e</u><u>a</u><u>k</u><u>s</u>] > > Use this command to modify your terminal's termcap entry without going > through all the hassles involved in creating a custom termcap entry. > Plus, you can optionally customize the termcap generated for the win- > dows. You have to place these commands in one of the screenrc startup > files, as they are meaningless once the terminal emulator is booted. > If your system works uses the terminfo database rather than termcap, > <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> will understand the `terminfo' command, which has the same > effects as the `termcap' command. Two separate commands are provided, > as there are subtle syntactic differences, e.g. when parameter interpo- > lation (using `%') is required. Note that termcap names of the capabil- > ities have to be used with the `terminfo' command. > In many cases, where the arguments are valid in both terminfo and term- > cap syntax, you can use the command `termcapinfo', which is just a > shorthand for a pair of `termcap' and `terminfo' commands with identi- > cal arguments. > > The first argument specifies which terminal(s) should be affected by > this definition. You can specify multiple terminal names by separating > them with `|'s. Use `*' to match all terminals and `vt*' to match all > terminals that begin with "vt". > > Each <u>t</u><u>w</u><u>e</u><u>a</u><u>k</u> argument contains one or more termcap defines (separated by > `:'s) to be inserted at the start of the appropriate termcap entry, > enhancing it or overriding existing values. The first tweak modifies > your terminal's termcap, and contains definitions that your terminal > uses to perform certain functions. Specify a null string to leave this > unchanged (e.g. ''). The second (optional) tweak modifies all the win- > dow termcaps, and should contain definitions that <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> understands > (see the "VIRTUAL TERMINAL" section). > > Some examples: > > termcap xterm* LP:hs@ > > Informs <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> that all terminals that begin with `xterm' have firm > auto-margins that allow the last position on the screen to be updated > (LP), but they don't really have a status line (no 'hs' - append `@' to > turn entries off). Note that we assume `LP' for all terminal names > that start with "vt", but only if you don't specify a termcap command > for that terminal. > > termcap vt* LP > termcap vt102|vt220 Z0=\E[?3h:Z1=\E[?3l > > Specifies the firm-margined `LP' capability for all terminals that > begin with `vt', and the second line will also add the escape-sequences > to switch into (Z0) and back out of (Z1) 132-character-per-line mode if > this is a VT102 or VT220. (You must specify Z0 and Z1 in your termcap > to use the width-changing commands.) > > termcap vt100 "" l0=PF1:l1=PF2:l2=PF3:l3=PF4 > > This leaves your vt100 termcap alone and adds the function key labels > to each window's termcap entry. > > termcap h19|z19 am@:im=\E@:ei=\EO dc=\E[P > > Takes a h19 or z19 termcap and turns off auto-margins (am@) and enables > the insert mode (im) and end-insert (ei) capabilities (the `@' in the > `im' string is after the `=', so it is part of the string). Having the > `im' and `ei' definitions put into your terminal's termcap will cause > <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> to automatically advertise the character-insert capability in > each window's termcap. Each window will also get the delete-character > capability (dc) added to its termcap, which <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> will translate into > a line-update for the terminal (we're pretending it doesn't support > character deletion). > > If you would like to fully specify each window's termcap entry, you > should instead set the $SCREENCAP variable prior to running <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u>. > See the discussion on the "VIRTUAL TERMINAL" in this manual, and the > termcap(5) man page for more information on termcap definitions. > > <b>t</b><b>i</b><b>m</b><b>e</b> [<u>s</u><u>t</u><u>r</u><u>i</u><u>n</u><u>g</u>] > > Uses the message line to display the time of day, the host name, and > the load averages over 1, 5, and 15 minutes (if this is available on > your system). For window specific information use "info". > > If a string is specified, it changes the format of the time report like > it is described in the "STRING ESCAPES" chapter. Screen uses a default > of "%c:%s %M %d %H%? %l%?". > > <b>t</b><b>i</b><b>t</b><b>l</b><b>e</b> [<u>w</u><u>i</u><u>n</u><u>d</u><u>o</u><u>w</u><u>a</u><u>l</u><u>i</u><u>a</u><u>s</u>] > > Set the name of the current window to <u>w</u><u>i</u><u>n</u><u>d</u><u>o</u><u>w</u><u>a</u><u>l</u><u>i</u><u>a</u><u>s</u>. If no name is speci- > fied, <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> prompts for one. This command was known as `aka' in previ- > ous releases. > > <b>u</b><b>n</b><b>s</b><b>e</b><b>t</b><b>e</b><b>n</b><b>v</b> <u>v</u><u>a</u><u>r</u> > > Unset an environment variable. > > <b>u</b><b>t</b><b>f</b><b>8</b> [<b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b> [<b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b>]] > > Change the encoding used in the current window. If utf8 is enabled, the > strings sent to the window will be UTF-8 encoded and vice versa. Omit- > ting the parameter toggles the setting. If a second parameter is given, > the display's encoding is also changed (this should rather be done with > screen's "-U" option). See also "defutf8", which changes the default > setting of a new window. > > <b>v</b><b>b</b><b>e</b><b>l</b><b>l</b> [<b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b>] > > Sets the visual bell setting for this window. Omitting the parameter > toggles the setting. If vbell is switched on, but your terminal does > not support a visual bell, a `vbell-message' is displayed in the status > line when the bell character (^G) is received. Visual bell support of > a terminal is defined by the termcap variable `vb' (terminfo: 'flash'). > Per default, vbell is off, thus the audible bell is used. See also > `bell_msg'. > > <b>v</b><b>b</b><b>e</b><b>l</b><b>l</b><b>_</b><b>m</b><b>s</b><b>g</b> [<u>m</u><u>e</u><u>s</u><u>s</u><u>a</u><u>g</u><u>e</u>] > > Sets the visual bell message. <u>m</u><u>e</u><u>s</u><u>s</u><u>a</u><u>g</u><u>e</u> is printed to the status line if > the window receives a bell character (^G), vbell is set to "on", but > the terminal does not support a visual bell. The default message is > "Wuff, Wuff!!". Without parameter, the current message is shown. > > <b>v</b><b>b</b><b>e</b><b>l</b><b>l</b><b>w</b><b>a</b><b>i</b><b>t</b> <u>s</u><u>e</u><u>c</u> > > Define a delay in seconds after each display of <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u>'s visual bell > message. The default is 1 second. > > <b>v</b><b>e</b><b>r</b><b>b</b><b>o</b><b>s</b><b>e</b> [<b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b>] > > If verbose is switched on, the command name is echoed, whenever a win- > dow is created (or resurrected from zombie state). Default is off. > Without parameter, the current setting is shown. > > <b>v</b><b>e</b><b>r</b><b>s</b><b>i</b><b>o</b><b>n</b> > > Print the current version and the compile date in the status line. > > <b>w</b><b>a</b><b>l</b><b>l</b> <u>m</u><u>e</u><u>s</u><u>s</u><u>a</u><u>g</u><u>e</u> > > Write a message to all displays. The message will appear in the termi- > nal's status line. > > <b>w</b><b>i</b><b>d</b><b>t</b><b>h</b> [<b>-</b><b>w</b>|<b>-</b><b>d</b>] [<u>c</u><u>o</u><u>l</u><u>s</u> [<u>l</u><u>i</u><u>n</u><u>e</u><u>s</u>]] > > Toggle the window width between 80 and 132 columns or set it to <u>c</u><u>o</u><u>l</u><u>s</u> > columns if an argument is specified. This requires a capable terminal > and the termcap entries "Z0" and "Z1". See the "termcap" command for > more information. You can also specify a new height if you want to > change both values. The <b>-</b><b>w</b> option tells screen to leave the display > size unchanged and just set the window size, <b>-</b><b>d</b> vice versa. > > <b>w</b><b>i</b><b>n</b><b>d</b><b>o</b><b>w</b><b>l</b><b>i</b><b>s</b><b>t</b> [<b>-</b><b>b</b>] | <b>s</b><b>t</b><b>r</b><b>i</b><b>n</b><b>g</b> [<u>s</u><u>t</u><u>r</u><u>i</u><u>n</u><u>g</u>] | <b>t</b><b>i</b><b>t</b><b>l</b><b>e</b> [<u>t</u><u>i</u><u>t</u><u>l</u><u>e</u>] > > Display all windows in a table for visual window selection. The desired > window can be selected via the standard movement keys (see the "copy" > command) and activated via the return key. If the <b>-</b><b>b</b> option is given, > screen will switch to the blank window before presenting the list, so > that the current window is also selectable. > > The table format can be changed with the <b>s</b><b>t</b><b>r</b><b>i</b><b>n</b><b>g</b> and <b>t</b><b>i</b><b>t</b><b>l</b><b>e</b> option, the > title is displayed as table heading, while the lines are made by using > the string setting. The default setting is "Num Name%=Flags" for the > title and "%3n %t%=%f" for the lines. See the "STRING ESCAPES" chapter > for more codes (e.g. color settings). > > <b>w</b><b>i</b><b>n</b><b>d</b><b>o</b><b>w</b><b>s</b> > > Uses the message line to display a list of all the windows. Each win- > dow is listed by number with the name of process that has been started > in the window (or its title); the current window is marked with a `*'; > the previous window is marked with a `-'; all the windows that are > "logged in" are marked with a `$'; a background window that has > received a bell is marked with a `!'; a background window that is being > monitored and has had activity occur is marked with an `@'; a window > which has output logging turned on is marked with `(L)'; windows occu- > pied by other users are marked with `&'; windows in the zombie state > are marked with `Z'. If this list is too long to fit on the terminal's > status line only the portion around the current window is displayed. > > <b>w</b><b>r</b><b>a</b><b>p</b> [<b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b>] > > Sets the line-wrap setting for the current window. When line-wrap is > on, the second consecutive printable character output at the last col- > umn of a line will wrap to the start of the following line. As an > added feature, backspace (^H) will also wrap through the left margin to > the previous line. Default is `on'. > > <b>w</b><b>r</b><b>i</b><b>t</b><b>e</b><b>b</b><b>u</b><b>f</b> [<b>-</b><b>e</b> <u>e</u><u>n</u><u>c</u><u>o</u><u>d</u><u>i</u><u>n</u><u>g</u>] [<u>f</u><u>i</u><u>l</u><u>e</u><u>n</u><u>a</u><u>m</u><u>e</u>] > > Writes the contents of the paste buffer to the specified file, or the > public accessible screen-exchange file if no filename is given. This is > thought of as a primitive means of communication between <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> users > on the same host. If an encoding is specified the paste buffer is > recoded on the fly to match the encoding. The filename can be set with > the <u>b</u><u>u</u><u>f</u><u>f</u><u>e</u><u>r</u><u>f</u><u>i</u><u>l</u><u>e</u> command and defaults to "/tmp/screen-exchange". > > <b>w</b><b>r</b><b>i</b><b>t</b><b>e</b><b>l</b><b>o</b><b>c</b><b>k</b> [<b>o</b><b>n</b>|<b>o</b><b>f</b><b>f</b>|<b>a</b><b>u</b><b>t</b><b>o</b>] > > In addition to access control lists, not all users may be able to write > to the same window at once. Per default, writelock is in `auto' mode > and grants exclusive input permission to the user who is the first to > switch to the particular window. When he leaves the window, other users > may obtain the writelock (automatically). The writelock of the current > window is disabled by the command "writelock off". If the user issues > the command "writelock on" he keeps the exclusive write permission > while switching to other windows. > > <b>x</b><b>o</b><b>f</b><b>f</b> > <b>x</b><b>o</b><b>n</b> > > Insert a CTRL-s / CTRL-q character to the stdin queue of the current > window. > > <b>z</b><b>o</b><b>m</b><b>b</b><b>i</b><b>e</b> [<u>k</u><u>e</u><u>y</u><u>s</u>] > <b>d</b><b>e</b><b>f</b><b>z</b><b>o</b><b>m</b><b>b</b><b>i</b><b>e</b> [<u>k</u><u>e</u><u>y</u><u>s</u>] > > Per default <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> windows are removed from the window list as soon as > the windows process (e.g. shell) exits. When a string of two keys is > specified to the zombie command, `dead' windows will remain in the > list. The <b>k</b><b>i</b><b>l</b><b>l</b> command may be used to remove such a window. Pressing > the first key in the dead window has the same effect. When pressing the > second key, <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> will attempt to resurrect the window. The process > that was initially running in the window will be launched again. Call- > ing <b>z</b><b>o</b><b>m</b><b>b</b><b>i</b><b>e</b> without parameters will clear the zombie setting, thus mak- > ing windows disappear when their process exits. > > As the zombie-setting is manipulated globally for all windows, this > command should only be called <b>d</b><b>e</b><b>f</b><b>z</b><b>o</b><b>m</b><b>b</b><b>i</b><b>e</b>. Until we need this as a per > window setting, the commands <b>z</b><b>o</b><b>m</b><b>b</b><b>i</b><b>e</b> and <b>d</b><b>e</b><b>f</b><b>z</b><b>o</b><b>m</b><b>b</b><b>i</b><b>e</b> are synonymous. > > ><b>T</b><b>H</b><b>E</b> <b>M</b><b>E</b><b>S</b><b>S</b><b>A</b><b>G</b><b>E</b> <b>L</b><b>I</b><b>N</b><b>E</b> > <u>S</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> displays informational messages and other diagnostics in a <u>m</u><u>e</u><u>s</u><u>-</u> > <u>s</u><u>a</u><u>g</u><u>e</u> <u>l</u><u>i</u><u>n</u><u>e</u>. While this line is distributed to appear at the bottom of > the screen, it can be defined to appear at the top of the screen during > compilation. If your terminal has a status line defined in its term- > cap, <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> will use this for displaying its messages, otherwise a line > of the current screen will be temporarily overwritten and output will > be momentarily interrupted. The message line is automatically removed > after a few seconds delay, but it can also be removed early (on termi- > nals without a status line) by beginning to type. > > The message line facility can be used by an application running in the > current window by means of the ANSI <u>P</u><u>r</u><u>i</u><u>v</u><u>a</u><u>c</u><u>y</u> <u>m</u><u>e</u><u>s</u><u>s</u><u>a</u><u>g</u><u>e</u> control sequence. > For instance, from within the shell, try something like: > > echo '<esc>^Hello world from window '$WINDOW'<esc>\\' > > where '<esc>' is an <u>e</u><u>s</u><u>c</u><u>a</u><u>p</u><u>e</u>, '^' is a literal up-arrow, and '\\' turns > into a single backslash. > > ><b>W</b><b>I</b><b>N</b><b>D</b><b>O</b><b>W</b> <b>T</b><b>Y</b><b>P</b><b>E</b><b>S</b> > Screen provides three different window types. New windows are created > with <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u>'s <b>s</b><b>c</b><b>r</b><b>e</b><b>e</b><b>n</b> command (see also the entry in chapter "CUSTOMIZA- > TION"). The first parameter to the <b>s</b><b>c</b><b>r</b><b>e</b><b>e</b><b>n</b> command defines which type of > window is created. The different window types are all special cases of > the normal type. They have been added in order to allow <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> to be > used efficiently as a console multiplexer with 100 or more windows. > > > ? The normal window contains a shell (default, if no parameter is > given) or any other system command that could be executed from a > shell (e.g. <b>s</b><b>l</b><b>o</b><b>g</b><b>i</b><b>n</b>, etc...) > > > ? If a tty (character special device) name (e.g. "/dev/ttya") is spec- > ified as the first parameter, then the window is directly connected > to this device. This window type is similar to "screen cu -l > /dev/ttya". Read and write access is required on the device node, > an exclusive open is attempted on the node to mark the connection > line as busy. An optional parameter is allowed consisting of a > comma separated list of flags in the notation used by stty(1): > > <baud_rate> > Usually 300, 1200, 9600 or 19200. This affects transmission > as well as receive speed. > > cs8 or cs7 > Specify the transmission of eight (or seven) bits per byte. > > ixon or -ixon > Enables (or disables) software flow-control (CTRL-S/CTRL-Q) > for sending data. > > ixoff or -ixon > Enables (or disables) software flow-control for receiving > data. > > istrip or -istrip > Clear (or keep) the eight bit in each received byte. > > You may want to specify as many of these options as applicable. > Unspecified options cause the terminal driver to make up the parame- > ter values of the connection. These values are system dependant and > may be in defaults or values saved from a previous connection. > > For tty windows, the <b>i</b><b>n</b><b>f</b><b>o</b> command shows some of the modem control > lines in the status line. These may include `RTS', `CTS', 'DTR', > `DSR', `CD' and more. This depends on the available ioctl()'s and > system header files as well as the on the physical capabilities of > the serial board. Signals that are logical low (inactive) have > their name preceded by an exclamation mark (!), otherwise the signal > is logical high (active). Signals not supported by the hardware but > available to the ioctl() interface are usually shown low. > When the CLOCAL status bit is true, the whole set of modem signals > is placed inside curly braces ({ and }). When the CRTSCTS or TIOC- > SOFTCAR bit is set, the signals `CTS' or `CD' are shown in parenthe- > sis, respectively. > > > For tty windows, the command <b>b</b><b>r</b><b>e</b><b>a</b><b>k</b> causes the Data transmission line > (TxD) to go low for a specified period of time. This is expected to > be interpreted as break signal on the other side. No data is sent > and no modem control line is changed when a <b>b</b><b>r</b><b>e</b><b>a</b><b>k</b> is issued. > > ? If the first parameter is "//telnet", the second parameter is > expected to be a host name, and an optional third parameter may > specify a TCP port number (default decimal 23). Screen will connect > to a server listening on the remote host and use the telnet protocol > to communicate with that server. > For telnet windows, the command <b>i</b><b>n</b><b>f</b><b>o</b> shows details about the connec- > tion in square brackets ([ and ]) at the end of the status line. > > b BINARY. The connection is in binary mode. > > e ECHO. Local echo is disabled. > > c SGA. The connection is in `character mode' (default: `line > mode'). > > t TTYPE. The terminal type has been requested by the remote > host. Screen sends the name "screen" unless instructed oth- > erwise (see also the command `term'). > > w NAWS. The remote site is notified about window size changes. > > f LFLOW. The remote host will send flow control information. > (Ignored at the moment.) > > Additional flags for debugging are x, t and n (XDISPLOC, TSPEED and > NEWENV). > > For telnet windows, the command <b>b</b><b>r</b><b>e</b><b>a</b><b>k</b> sends the telnet code IAC > BREAK (decimal 243) to the remote host. > > > This window type is only available if <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> was compiled with the > BUILTIN_TELNET option defined. > > > ><b>S</b><b>T</b><b>R</b><b>I</b><b>N</b><b>G</b> <b>E</b><b>S</b><b>C</b><b>A</b><b>P</b><b>E</b><b>S</b> > Screen provides an escape mechanism to insert information like the cur- > rent time into messages or file names. The escape character is '%' with > one exception: inside of a window's hardstatus '^%' ('^E') is used > instead. > > Here is the full list of supported escapes: > > % the escape character itself > > a either 'am' or 'pm' > > A either 'AM' or 'PM' > > c current time HH:MM in 24h format > > C current time HH:MM in 12h format > > d day number > > D weekday name > > f flags of the window > > F sets %? to true if the window has the focus > > h hardstatus of the window > > H hostname of the system > > l current load of the system > > m month number > > M month name > > n window number > > s seconds > > t window title > > u all other users on this window > > w all window numbers and names. With '-' quailifier: up to the > current window; with '+' qualifier: starting with the window > after the current one. > > W all window numbers and names except the current one > > y last two digits of the year number > > Y full year number > > ? the part to the next '%?' is displayed only if an escape expands > to an nonempty string > > : else part of '%?' > > = pad the string to the display's width (like TeX's hfill). If a > number is specified, pad to the percentage of the window's > width. A '0' qualifier tells screen to treat the number as > absolute position. You can specify to pad relative to the last > absolute pad position by adding a '+' qualifier or to pad rela- > tive to the right margin by using '-'. The padding truncates the > string if the specified position lies before the current posi- > tion. Add the 'L' qualifier to change this. > > < same as '%=' but just do truncation, do not fill with spaces > > > mark the current text position for the next truncation. When > screen needs to do truncation, it tries to do it in a way that > the marked position gets moved to the specified percentage of > the output area. (The area starts from the last absolute pad > position and ends with the position specified by the truncation > operator.) The 'L' qualifier tells screen to mark the truncated > parts with '...'. > > { attribute/color modifier string terminated by the next "}" > > The 'c' and 'C' escape may be qualified with a '0' to make <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> use > zero instead of space as fill character. The '0' qualifier also makes > the '=' escape use absolute positions. The 'n' and '=' escapes under- > stand a length qualifier (e.g. '%3n'), 'D' and 'M' can be prefixed with > 'L' to generate long names, 'w' and 'W' also show the window flags if > 'L' is given. > > An attribute/color modifier is is used to change the attributes or the > color settings. Its format is "[attribute modifier] [color descrip- > tion]". The attribute modifier must be prefixed by a change type indi- > cator if it can be confused with a color desciption. The following > change types are known: > > + add the specified set to the current attributes > > - remove the set from the current attributes > > ! invert the set in the current attributes > > = change the current attributes to the specified set > > The attribute set can either be specified as a hexadecimal number or a > combination of the following letters: > > u underline > b bold > r reverse > s standout > B blinking > > Colors are coded either as a hexadecimal number or two letters specify- > ing the desired background and foreground color (in that order). The > following colors are known: > > k black > r red > g green > y yellow > b blue > m magenta > c cyan > w white > d default color > . leave color unchanged > > The capitalized versions of the letter specify bright colors. You can > also use the pseudo-color 'i' to set just the brightness and leave the > color unchanged. > A one digit/letter color description is treated as foreground or back- > ground color dependant on the current attributes: if reverse mode is > set, the background color is changed instead of the foreground color. > If you don't like this, prefix the color with a ".". If you want the > same behaviour for two-letter color descriptions, also prefix them with > a ".". > As a special case, "%{-}" restores the attributes and colors that were > set before the last change was made (i.e. pops one level of the color- > change stack). > > Examples: > > "G" set color to bright green > > "+b r" use bold red > > "= yd" clear all attributes, write in default color on yellow back- > ground. > > %-Lw%{= BW}%50>%n%f* %t%{-}%+Lw%< > The available windows centered at the current window and trun- > cated to the available width. The current window is displayed > white on blue. This can be used with "hardstatus alwayslast- > line". > > %?%F%{.R.}%?%3n %t%? [%h]%? > The window number and title and the window's hardstatus, if one > is set. Also use a red background if this is the active focus. > Useful for "caption string". > ><b>F</b><b>L</b><b>O</b><b>W</b><b>-</b><b>C</b><b>O</b><b>N</b><b>T</b><b>R</b><b>O</b><b>L</b> > Each window has a flow-control setting that determines how <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> deals > with the XON and XOFF characters (and perhaps the interrupt character). > When flow-control is turned off, <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> ignores the XON and XOFF char- > acters, which allows the user to send them to the current program by > simply typing them (useful for the <u>e</u><u>m</u><u>a</u><u>c</u><u>s</u> editor, for instance). The > trade-off is that it will take longer for output from a "normal" pro- > gram to pause in response to an XOFF. With flow-control turned on, XON > and XOFF characters are used to immediately pause the output of the > current window. You can still send these characters to the current > program, but you must use the appropriate two-character <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> commands > (typically "C-a q" (xon) and "C-a s" (xoff)). The xon/xoff commands > are also useful for typing C-s and C-q past a terminal that intercepts > these characters. > > Each window has an initial flow-control value set with either the <b>-</b><b>f</b> > option or the "defflow" .screenrc command. Per default the windows are > set to automatic flow-switching. It can then be toggled between the > three states 'fixed on', 'fixed off' and 'automatic' interactively with > the "flow" command bound to "C-a f". > > The automatic flow-switching mode deals with flow control using the > TIOCPKT mode (like "rlogin" does). If the tty driver does not support > TIOCPKT, <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> tries to find out the right mode based on the current > setting of the application keypad - when it is enabled, flow-control is > turned off and visa versa. Of course, you can still manipulate flow- > control manually when needed. > > If you're running with flow-control enabled and find that pressing the > interrupt key (usually C-c) does not interrupt the display until > another 6-8 lines have scrolled by, try running <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> with the "inter- > rupt" option (add the "interrupt" flag to the "flow" command in your > .screenrc, or use the <b>-</b><b>i</b> command-line option). This causes the output > that <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> has accumulated from the interrupted program to be flushed. > One disadvantage is that the virtual terminal's memory contains the > non-flushed version of the output, which in rare cases can cause minor > inaccuracies in the output. For example, if you switch screens and > return, or update the screen with "C-a l" you would see the version of > the output you would have gotten without "interrupt" being on. Also, > you might need to turn off flow-control (or use auto-flow mode to turn > it off automatically) when running a program that expects you to type > the interrupt character as input, as it is possible to interrupt the > output of the virtual terminal to your physical terminal when flow-con- > trol is enabled. If this happens, a simple refresh of the screen with > "C-a l" will restore it. Give each mode a try, and use whichever mode > you find more comfortable. > > > ><b>T</b><b>I</b><b>T</b><b>L</b><b>E</b><b>S</b> <b>(</b><b>n</b><b>a</b><b>m</b><b>i</b><b>n</b><b>g</b> <b>w</b><b>i</b><b>n</b><b>d</b><b>o</b><b>w</b><b>s</b><b>)</b> > You can customize each window's name in the window display (viewed with > the "windows" command (C-a w)) by setting it with one of the title com- > mands. Normally the name displayed is the actual command name of the > program created in the window. However, it is sometimes useful to dis- > tinguish various programs of the same name or to change the name on- > the-fly to reflect the current state of the window. > > The default name for all shell windows can be set with the "shelltitle" > command in the .screenrc file, while all other windows are created with > a "screen" command and thus can have their name set with the <b>-</b><b>t</b> option. > Interactively, there is the title-string escape-sequence > (<esc>k<u>n</u><u>a</u><u>m</u><u>e</u><esc>\) and the "title" command (C-a A). The former can be > output from an application to control the window's name under software > control, and the latter will prompt for a name when typed. You can > also bind pre-defined names to keys with the "title" command to set > things quickly without prompting. > > Finally, <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> has a shell-specific heuristic that is enabled by set- > ting the window's name to "<u>s</u><u>e</u><u>a</u><u>r</u><u>c</u><u>h</u><u>|</u><u>n</u><u>a</u><u>m</u><u>e</u>" and arranging to have a null > title escape-sequence output as a part of your prompt. The <u>s</u><u>e</u><u>a</u><u>r</u><u>c</u><u>h</u> por- > tion specifies an end-of-prompt search string, while the <u>n</u><u>a</u><u>m</u><u>e</u> portion > specifies the default shell name for the window. If the <u>n</u><u>a</u><u>m</u><u>e</u> ends in a > `:' <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> will add what it believes to be the current command running > in the window to the end of the window's shell name (e.g. "<u>n</u><u>a</u><u>m</u><u>e</u><u>:</u><u>c</u><u>m</u><u>d</u>"). > Otherwise the current command name supersedes the shell name while it > is running. > > Here's how it works: you must modify your shell prompt to output a > null title-escape-sequence (<esc>k<esc>\) as a part of your prompt. > The last part of your prompt must be the same as the string you speci- > fied for the <u>s</u><u>e</u><u>a</u><u>r</u><u>c</u><u>h</u> portion of the title. Once this is set up, <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> > will use the title-escape-sequence to clear the previous command name > and get ready for the next command. Then, when a newline is received > from the shell, a search is made for the end of the prompt. If found, > it will grab the first word after the matched string and use it as the > command name. If the command name begins with either '!', '%', or '^' > <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> will use the first word on the following line (if found) in > preference to the just-found name. This helps csh users get better > command names when using job control or history recall commands. > > Here's some .screenrc examples: > > screen -t top 2 nice top > > Adding this line to your .screenrc would start a nice-d version of the > "top" command in window 2 named "top" rather than "nice". > > shelltitle '> |csh' > screen 1 > > These commands would start a shell with the given shelltitle. The > title specified is an auto-title that would expect the prompt and the > typed command to look something like the following: > > /usr/joe/src/dir> trn > > (it looks after the '> ' for the command name). The window status > would show the name "trn" while the command was running, and revert to > "csh" upon completion. > > bind R screen -t '% |root:' su > > Having this command in your .screenrc would bind the key sequence "C-a > R" to the "su" command and give it an auto-title name of "root:". For > this auto-title to work, the screen could look something like this: > > % !em > emacs file.c > > Here the user typed the csh history command "!em" which ran the previ- > ously entered "emacs" command. The window status would show > "root:emacs" during the execution of the command, and revert to simply > "root:" at its completion. > > bind o title > bind E title "" > bind u title (unknown) > > The first binding doesn't have any arguments, so it would prompt you > for a title. when you type "C-a o". The second binding would clear an > auto-title's current setting (C-a E). The third binding would set the > current window's title to "(unknown)" (C-a u). > > One thing to keep in mind when adding a null title-escape-sequence to > your prompt is that some shells (like the csh) count all the non-con- > trol characters as part of the prompt's length. If these invisible > characters aren't a multiple of 8 then backspacing over a tab will > result in an incorrect display. One way to get around this is to use a > prompt like this: > > set prompt='^[[0000m^[k^[\% ' > > The escape-sequence "<esc>[0000m" not only normalizes the character > attributes, but all the zeros round the length of the invisible charac- > ters up to 8. Bash users will probably want to echo the escape > sequence in the PROMPT_COMMAND: > > PROMPT_COMMAND='echo -n -e "\033k\033\134"' > > (I used "134" to output a `\' because of a bug in bash v1.04). > > > ><b>T</b><b>H</b><b>E</b> <b>V</b><b>I</b><b>R</b><b>T</b><b>U</b><b>A</b><b>L</b> <b>T</b><b>E</b><b>R</b><b>M</b><b>I</b><b>N</b><b>A</b><b>L</b> > Each window in a <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> session emulates a VT100 terminal, with some > extra functions added. The VT100 emulator is hard-coded, no other ter- > minal types can be emulated. > Usually <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> tries to emulate as much of the VT100/ANSI standard as > possible. But if your terminal lacks certain capabilities, the emula- > tion may not be complete. In these cases <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> has to tell the appli- > cations that some of the features are missing. This is no problem on > machines using termcap, because <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> can use the $TERMCAP variable to > customize the standard <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> termcap. > > But if you do a rlogin on another machine or your machine supports only > terminfo this method fails. Because of this, <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> offers a way to > deal with these cases. Here is how it works: > > When <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> tries to figure out a terminal name for itself, it first > looks for an entry named "screen.<term>", where <term> is the contents > of your $TERM variable. If no such entry exists, <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> tries "screen" > (or "screen-w" if the terminal is wide (132 cols or more)). If even > this entry cannot be found, "vt100" is used as a substitute. > > The idea is that if you have a terminal which doesn't support an impor- > tant feature (e.g. delete char or clear to EOS) you can build a new > termcap/terminfo entry for <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> (named "screen.<dumbterm>") in which > this capability has been disabled. If this entry is installed on your > machines you are able to do a rlogin and still keep the correct term- > cap/terminfo entry. The terminal name is put in the $TERM variable of > all new windows. <u>S</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> also sets the $TERMCAP variable reflecting the > capabilities of the virtual terminal emulated. Notice that, however, on > machines using the terminfo database this variable has no effect. Fur- > thermore, the variable $WINDOW is set to the window number of each win- > dow. > > The actual set of capabilities supported by the virtual terminal > depends on the capabilities supported by the physical terminal. If, > for instance, the physical terminal does not support underscore mode, > <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> does not put the `us' and `ue' capabilities into the window's > $TERMCAP variable, accordingly. However, a minimum number of > capabilities must be supported by a terminal in order to run <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u>; > namely scrolling, clear screen, and direct cursor addressing (in addi- > tion, <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> does not run on hardcopy terminals or on terminals that > over-strike). > > Also, you can customize the $TERMCAP value used by <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> by using the > "termcap" .screenrc command, or by defining the variable $SCREENCAP > prior to startup. When the is latter defined, its value will be copied > verbatim into each window's $TERMCAP variable. This can either be the > full terminal definition, or a filename where the terminal "screen" > (and/or "screen-w") is defined. > > Note that <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> honors the "terminfo" .screenrc command if the system > uses the terminfo database rather than termcap. > > When the boolean `G0' capability is present in the termcap entry for > the terminal on which <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> has been called, the terminal emulation of > <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> supports multiple character sets. This allows an application to > make use of, for instance, the VT100 graphics character set or national > character sets. The following control functions from ISO 2022 are sup- > ported: <u>l</u><u>o</u><u>c</u><u>k</u> <u>s</u><u>h</u><u>i</u><u>f</u><u>t</u> <u>G</u><u>0</u> (<u>S</u><u>I</u>), <u>l</u><u>o</u><u>c</u><u>k</u> <u>s</u><u>h</u><u>i</u><u>f</u><u>t</u> <u>G</u><u>1</u> (<u>S</u><u>O</u>), <u>l</u><u>o</u><u>c</u><u>k</u> <u>s</u><u>h</u><u>i</u><u>f</u><u>t</u> <u>G</u><u>2</u>, <u>l</u><u>o</u><u>c</u><u>k</u> > <u>s</u><u>h</u><u>i</u><u>f</u><u>t</u> <u>G</u><u>3</u>, <u>s</u><u>i</u><u>n</u><u>g</u><u>l</u><u>e</u> <u>s</u><u>h</u><u>i</u><u>f</u><u>t</u> <u>G</u><u>2</u>, and <u>s</u><u>i</u><u>n</u><u>g</u><u>l</u><u>e</u> <u>s</u><u>h</u><u>i</u><u>f</u><u>t</u> <u>G</u><u>3</u>. When a virtual termi- > nal is created or reset, the ASCII character set is designated as <u>G</u><u>0</u> > through <u>G</u><u>3</u>. When the `G0' capability is present, <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> evaluates the > capabilities `S0', `E0', and `C0' if present. `S0' is the sequence the > terminal uses to enable and start the graphics character set rather > than <u>S</u><u>I</u>. `E0' is the corresponding replacement for <u>S</u><u>O</u>. `C0' gives a > character by character translation string that is used during semi- > graphics mode. This string is built like the `acsc' terminfo capabil- > ity. > > When the `po' and `pf' capabilities are present in the terminal's term- > cap entry, applications running in a <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> window can send output to > the printer port of the terminal. This allows a user to have an appli- > cation in one window sending output to a printer connected to the ter- > minal, while all other windows are still active (the printer port is > enabled and disabled again for each chunk of output). As a side- > effect, programs running in different windows can send output to the > printer simultaneously. Data sent to the printer is not displayed in > the window. The <u>i</u><u>n</u><u>f</u><u>o</u> command displays a line starting `PRIN' while the > printer is active. > > <u>S</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> maintains a hardstatus line for every window. If a window gets > selected, the display's hardstatus will be updated to match the win- > dow's hardstatus line. If the display has no hardstatus the line will > be displayed as a standard <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> message. The hardstatus line can be > changed with the ANSI Application Program Command (APC): > "ESC_<string>ESC\". As a convenience for xterm users the sequence > "ESC]0..2;<string>^G" is also accepted. > > Some capabilities are only put into the $TERMCAP variable of the vir- > tual terminal if they can be efficiently implemented by the physical > terminal. For instance, `dl' (delete line) is only put into the $TERM- > CAP variable if the terminal supports either delete line itself or > scrolling regions. Note that this may provoke confusion, when the ses- > sion is reattached on a different terminal, as the value of $TERMCAP > cannot be modified by parent processes. > > The following is a list of control sequences recognized by <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u>. > "(V)" and "(A)" indicate VT100-specific and ANSI- or ISO-specific func- > tions, respectively. > > > <b>E</b><b>S</b><b>C</b> <b>E</b> Next Line > > <b>E</b><b>S</b><b>C</b> <b>D</b> Index > > <b>E</b><b>S</b><b>C</b> <b>M</b> Reverse Index > > <b>E</b><b>S</b><b>C</b> <b>H</b> Horizontal Tab Set > > <b>E</b><b>S</b><b>C</b> <b>Z</b> Send VT100 Identification String > > <b>E</b><b>S</b><b>C</b> <b>7</b> (V) Save Cursor and Attributes > > <b>E</b><b>S</b><b>C</b> <b>8</b> (V) Restore Cursor and Attributes > > <b>E</b><b>S</b><b>C</b> <b>[</b><b>s</b> (A) Save Cursor and Attributes > > <b>E</b><b>S</b><b>C</b> <b>[</b><b>u</b> (A) Restore Cursor and Attributes > > <b>E</b><b>S</b><b>C</b> <b>c</b> Reset to Initial State > > <b>E</b><b>S</b><b>C</b> <b>g</b> Visual Bell > > <b>E</b><b>S</b><b>C</b> Pn <b>p</b> Cursor Visibility (97801) > > Pn = <b>6</b> Invisible > > <b>7</b> Visible > > <b>E</b><b>S</b><b>C</b> <b>=</b> (V) Application Keypad Mode > > <b>E</b><b>S</b><b>C</b> <b>></b> (V) Numeric Keypad Mode > > <b>E</b><b>S</b><b>C</b> <b>#</b> <b>8</b> (V) Fill Screen with E's > > <b>E</b><b>S</b><b>C</b> <b>\</b> (A) String Terminator > > <b>E</b><b>S</b><b>C</b> <b>^</b> (A) Privacy Message String (Message Line) > > <b>E</b><b>S</b><b>C</b> <b>!</b> Global Message String (Message Line) > > <b>E</b><b>S</b><b>C</b> <b>k</b> A.k.a. Definition String > > <b>E</b><b>S</b><b>C</b> <b>P</b> (A) Device Control String. Outputs a string > directly to the host terminal without inter- > pretation. > > <b>E</b><b>S</b><b>C</b> <b>_</b> (A) Application Program Command (Hardstatus) > > <b>E</b><b>S</b><b>C</b> <b>]</b> <b>0</b> <b>;</b> <b>s</b><b>t</b><b>r</b><b>i</b><b>n</b><b>g</b> <b>^</b><b>G</b> (A) Operating System Command (Hardstatus, xterm > title hack) > > <b>E</b><b>S</b><b>C</b> <b>]</b> <b>8</b><b>3</b> <b>;</b> <b>c</b><b>m</b><b>d</b> <b>^</b><b>G</b> (A) Execute screen command. This only works if > multi-user support is compiled into screen. > The pseudo-user ":window:" is used to check > the access control list. Use "addacl :win- > dow: -rwx #?" to create a user with no > rights and allow only the needed commands. > > <b>C</b><b>o</b><b>n</b><b>t</b><b>r</b><b>o</b><b>l</b><b>-</b><b>N</b> (A) Lock Shift G1 (SO) > > <b>C</b><b>o</b><b>n</b><b>t</b><b>r</b><b>o</b><b>l</b><b>-</b><b>O</b> (A) Lock Shift G0 (SI) > > <b>E</b><b>S</b><b>C</b> <b>n</b> (A) Lock Shift G2 > > <b>E</b><b>S</b><b>C</b> <b>o</b> (A) Lock Shift G3 > > <b>E</b><b>S</b><b>C</b> <b>N</b> (A) Single Shift G2 > > <b>E</b><b>S</b><b>C</b> <b>O</b> (A) Single Shift G3 > > <b>E</b><b>S</b><b>C</b> <b>(</b> Pcs (A) Designate character set as G0 > > <b>E</b><b>S</b><b>C</b> <b>)</b> Pcs (A) Designate character set as G1 > > <b>E</b><b>S</b><b>C</b> <b>*</b> Pcs (A) Designate character set as G2 > > <b>E</b><b>S</b><b>C</b> <b>+</b> Pcs (A) Designate character set as G3 > > <b>E</b><b>S</b><b>C</b> <b>[</b> Pn <b>;</b> Pn <b>H</b> Direct Cursor Addressing > > <b>E</b><b>S</b><b>C</b> <b>[</b> Pn <b>;</b> Pn <b>f</b> same as above > > <b>E</b><b>S</b><b>C</b> <b>[</b> Pn <b>J</b> Erase in Display > > Pn = None or <b>0</b> From Cursor to End of Screen > > <b>1</b> From Beginning of Screen to Cursor > > <b>2</b> Entire Screen > > <b>E</b><b>S</b><b>C</b> <b>[</b> Pn <b>K</b> Erase in Line > > Pn = None or <b>0</b> From Cursor to End of Line > > <b>1</b> From Beginning of Line to Cursor > > <b>2</b> Entire Line > > <b>E</b><b>S</b><b>C</b> <b>[</b> Pn <b>X</b> Erase character > > <b>E</b><b>S</b><b>C</b> <b>[</b> Pn <b>A</b> Cursor Up > > <b>E</b><b>S</b><b>C</b> <b>[</b> Pn <b>B</b> Cursor Down > > <b>E</b><b>S</b><b>C</b> <b>[</b> Pn <b>C</b> Cursor Right > > <b>E</b><b>S</b><b>C</b> <b>[</b> Pn <b>D</b> Cursor Left > > <b>E</b><b>S</b><b>C</b> <b>[</b> Pn <b>E</b> Cursor next line > > <b>E</b><b>S</b><b>C</b> <b>[</b> Pn <b>F</b> Cursor previous line > > <b>E</b><b>S</b><b>C</b> <b>[</b> Pn <b>G</b> Cursor horizontal position > > <b>E</b><b>S</b><b>C</b> <b>[</b> Pn <b>`</b> same as above > > <b>E</b><b>S</b><b>C</b> <b>[</b> Pn <b>d</b> Cursor vertical position > > <b>E</b><b>S</b><b>C</b> <b>[</b> Ps <b>;</b>...<b>;</b> Ps <b>m</b> Select Graphic Rendition > > Ps = None or <b>0</b> Default Rendition > > <b>1</b> Bold > > <b>2</b> (A) Faint > > <b>3</b> (A) <u>S</u><u>t</u><u>a</u><u>n</u><u>d</u><u>o</u><u>u</u><u>t</u> Mode (ANSI: Italicized) > > <b>4</b> Underlined > > <b>5</b> Blinking > > <b>7</b> Negative Image > > <b>2</b><b>2</b> (A) Normal Intensity > > <b>2</b><b>3</b> (A) <u>S</u><u>t</u><u>a</u><u>n</u><u>d</u><u>o</u><u>u</u><u>t</u> Mode off (ANSI: Italicized off) > > <b>2</b><b>4</b> (A) Not Underlined > > <b>2</b><b>5</b> (A) Not Blinking > > <b>2</b><b>7</b> (A) Positive Image > > <b>3</b><b>0</b> (A) Foreground Black > > <b>3</b><b>1</b> (A) Foreground Red > > <b>3</b><b>2</b> (A) Foreground Green > > <b>3</b><b>3</b> (A) Foreground Yellow > > <b>3</b><b>4</b> (A) Foreground Blue > > <b>3</b><b>5</b> (A) Foreground Magenta > > <b>3</b><b>6</b> (A) Foreground Cyan > > <b>3</b><b>7</b> (A) Foreground White > > <b>3</b><b>9</b> (A) Foreground Default > > <b>4</b><b>0</b> (A) Background Black > > <b>.</b><b>.</b><b>.</b> > > <b>4</b><b>9</b> (A) Background Default > > <b>E</b><b>S</b><b>C</b> <b>[</b> Pn <b>g</b> Tab Clear > > Pn = None or <b>0</b> Clear Tab at Current Position > > <b>3</b> Clear All Tabs > > <b>E</b><b>S</b><b>C</b> <b>[</b> Pn <b>;</b> Pn <b>r</b> (V) Set Scrolling Region > > <b>E</b><b>S</b><b>C</b> <b>[</b> Pn <b>I</b> (A) Horizontal Tab > > <b>E</b><b>S</b><b>C</b> <b>[</b> Pn <b>Z</b> (A) Backward Tab > > <b>E</b><b>S</b><b>C</b> <b>[</b> Pn <b>L</b> (A) Insert Line > > <b>E</b><b>S</b><b>C</b> <b>[</b> Pn <b>M</b> (A) Delete Line > > <b>E</b><b>S</b><b>C</b> <b>[</b> Pn <b>@</b> (A) Insert Character > > <b>E</b><b>S</b><b>C</b> <b>[</b> Pn <b>P</b> (A) Delete Character > > <b>E</b><b>S</b><b>C</b> <b>[</b> Pn <b>S</b> Scroll Scrolling Region Up > > <b>E</b><b>S</b><b>C</b> <b>[</b> Pn <b>T</b> Scroll Scrolling Region Down > > <b>E</b><b>S</b><b>C</b> <b>[</b> Pn <b>^</b> same as above > > <b>E</b><b>S</b><b>C</b> <b>[</b> Ps <b>;</b>...<b>;</b> Ps <b>h</b> Set Mode > > <b>E</b><b>S</b><b>C</b> <b>[</b> Ps <b>;</b>...<b>;</b> Ps <b>l</b> Reset Mode > > Ps = <b>4</b> (A) Insert Mode > > <b>2</b><b>0</b> (A) <u>A</u><u>u</u><u>t</u><u>o</u><u>m</u><u>a</u><u>t</u><u>i</u><u>c</u> <u>L</u><u>i</u><u>n</u><u>e</u><u>f</u><u>e</u><u>e</u><u>d</u> Mode > > <b>3</b><b>4</b> Normal Cursor Visibility > > <b>?</b><b>1</b> (V) Application Cursor Keys > > <b>?</b><b>3</b> (V) Change Terminal Width to 132 columns > > <b>?</b><b>5</b> (V) Reverse Video > > <b>?</b><b>6</b> (V) <u>O</u><u>r</u><u>i</u><u>g</u><u>i</u><u>n</u> Mode > > <b>?</b><b>7</b> (V) <u>W</u><u>r</u><u>a</u><u>p</u> Mode > > <b>?</b><b>9</b> X10 mouse tracking > > <b>?</b><b>2</b><b>5</b> (V) Visible Cursor > > <b>?</b><b>1</b><b>0</b><b>0</b><b>0</b> (V) VT200 mouse tracking > > <b>E</b><b>S</b><b>C</b> <b>[</b> <b>5</b> <b>i</b> (A) Start relay to printer (ANSI Media Copy) > > <b>E</b><b>S</b><b>C</b> <b>[</b> <b>4</b> <b>i</b> (A) Stop relay to printer (ANSI Media Copy) > > <b>E</b><b>S</b><b>C</b> <b>[</b> <b>8</b> <b>;</b> Ph <b>;</b> Pw <b>t</b> Resize the window to `Ph' lines and `Pw' > columns (SunView special) > > <b>E</b><b>S</b><b>C</b> <b>[</b> <b>c</b> Send VT100 Identification String > > <b>E</b><b>S</b><b>C</b> <b>[</b> <b>x</b> Send Terminal Parameter Report > > <b>E</b><b>S</b><b>C</b> <b>[</b> <b>></b> <b>c</b> Send VT220 Secondary Device Attributes > String > > <b>E</b><b>S</b><b>C</b> <b>[</b> <b>6</b> <b>n</b> Send Cursor Position Report > > > ><b>I</b><b>N</b><b>P</b><b>U</b><b>T</b> <b>T</b><b>R</b><b>A</b><b>N</b><b>S</b><b>L</b><b>A</b><b>T</b><b>I</b><b>O</b><b>N</b> > In order to do a full VT100 emulation <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> has to detect that a > sequence of characters in the input stream was generated by a keypress > on the user's keyboard and insert the VT100 style escape sequence. > <u>S</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> has a very flexible way of doing this by making it possible to > map arbitrary commands on arbitrary sequences of characters. For stan- > dard VT100 emulation the command will always insert a string in the > input buffer of the window (see also command <b>s</b><b>t</b><b>u</b><b>f</b><b>f</b> in the command ta- > ble). Because the sequences generated by a keypress can change after a > reattach from a different terminal type, it is possible to bind com- > mands to the termcap name of the keys. <u>S</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> will insert the correct > binding after each reattach. See the <b>b</b><b>i</b><b>n</b><b>d</b><b>k</b><b>e</b><b>y</b> command for further > details on the syntax and examples. > > Here is the table of the default key bindings. (A) means that the com- > mand is executed if the keyboard is switched into application mode. > > Key name Termcap name Command > ______________________________________________________ > Cursor up ku stuff \033[A > stuff \033OA (A) > Cursor down kd stuff \033[B > stuff \033OB (A) > Cursor right kr stuff \033[C > stuff \033OC (A) > Cursor left kl stuff \033[D > stuff \033OD (A) > Function key 0 k0 stuff \033[10~ > Function key 1 k1 stuff \033OP > Function key 2 k2 stuff \033OQ > Function key 3 k3 stuff \033OR > Function key 4 k4 stuff \033OS > Function key 5 k5 stuff \033[15~ > Function key 6 k6 stuff \033[17~ > Function key 7 k7 stuff \033[18~ > Function key 8 k8 stuff \033[19~ > Function key 9 k9 stuff \033[20~ > Function key 10 k; stuff \033[21~ > Function key 11 F1 stuff \033[23~ > Function key 12 F2 stuff \033[24~ > Home kh stuff \033[1~ > End kH stuff \033[4~ > Insert kI stuff \033[2~ > Delete kD stuff \033[3~ > Page up kP stuff \033[5~ > Page down kN stuff \033[6~ > Keypad 0 f0 stuff 0 > stuff \033Op (A) > Keypad 1 f1 stuff 1 > stuff \033Oq (A) > Keypad 2 f2 stuff 2 > stuff \033Or (A) > Keypad 3 f3 stuff 3 > stuff \033Os (A) > Keypad 4 f4 stuff 4 > stuff \033Ot (A) > Keypad 5 f5 stuff 5 > stuff \033Ou (A) > Keypad 6 f6 stuff 6 > stuff \033Ov (A) > Keypad 7 f7 stuff 7 > stuff \033Ow (A) > Keypad 8 f8 stuff 8 > stuff \033Ox (A) > Keypad 9 f9 stuff 9 > stuff \033Oy (A) > Keypad + f+ stuff + > stuff \033Ok (A) > Keypad - f- stuff - > stuff \033Om (A) > Keypad * f* stuff * > stuff \033Oj (A) > Keypad / f/ stuff / > stuff \033Oo (A) > Keypad = fq stuff = > stuff \033OX (A) > Keypad . f. stuff . > stuff \033On (A) > Keypad , f, stuff , > stuff \033Ol (A) > Keypad enter fe stuff \015 > stuff \033OM (A) > > > ><b>S</b><b>P</b><b>E</b><b>C</b><b>I</b><b>A</b><b>L</b> <b>T</b><b>E</b><b>R</b><b>M</b><b>I</b><b>N</b><b>A</b><b>L</b> <b>C</b><b>A</b><b>P</b><b>A</b><b>B</b><b>I</b><b>L</b><b>I</b><b>T</b><b>I</b><b>E</b><b>S</b> > The following table describes all terminal capabilities that are recog- > nized by <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> and are not in the termcap(5) manual. You can place > these capabilities in your termcap entries (in `/etc/termcap') or use > them with the commands `termcap', `terminfo' and `termcapinfo' in your > screenrc files. It is often not possible to place these capabilities in > the terminfo database. > > > <b>L</b><b>P</b> <u>(</u><u>b</u><u>o</u><u>o</u><u>l</u><u>)</u> Terminal has VT100 style margins (`magic margins'). Note > that this capability is obsolete because <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> uses the > standard 'xn' instead. > > <b>Z</b><b>0</b> <u>(</u><u>s</u><u>t</u><u>r</u><u>)</u> Change width to 132 columns. > > <b>Z</b><b>1</b> <u>(</u><u>s</u><u>t</u><u>r</u><u>)</u> Change width to 80 columns. > > <b>W</b><b>S</b> <u>(</u><u>s</u><u>t</u><u>r</u><u>)</u> Resize display. This capability has the desired width and > height as arguments. <u>S</u><u>u</u><u>n</u><u>V</u><u>i</u><u>e</u><u>w</u><u>(</u><u>t</u><u>m</u><u>)</u> example: '\E[8;%d;%dt'. > > <b>N</b><b>F</b> <u>(</u><u>b</u><u>o</u><u>o</u><u>l</u><u>)</u> Terminal doesn't need flow control. Send ^S and ^Q direct > to the application. Same as 'flow off'. The opposite of > this capability is 'nx'. > > <b>G</b><b>0</b> <u>(</u><u>b</u><u>o</u><u>o</u><u>l</u><u>)</u> Terminal can deal with ISO 2022 font selection sequences. > > <b>S</b><b>0</b> <u>(</u><u>s</u><u>t</u><u>r</u><u>)</u> Switch charset 'G0' to the specified charset. Default is > '\E(%.'. > > <b>E</b><b>0</b> <u>(</u><u>s</u><u>t</u><u>r</u><u>)</u> Switch charset 'G0' back to standard charset. Default is > '\E(B'. > > <b>C</b><b>0</b> <u>(</u><u>s</u><u>t</u><u>r</u><u>)</u> Use the string as a conversion table for font '0'. See the > 'ac' capability for more details. > > <b>C</b><b>S</b> <u>(</u><u>s</u><u>t</u><u>r</u><u>)</u> Switch cursor-keys to application mode. > > <b>C</b><b>E</b> <u>(</u><u>s</u><u>t</u><u>r</u><u>)</u> Switch cursor-keys back to normal mode. > > <b>A</b><b>N</b> <u>(</u><u>b</u><u>o</u><u>o</u><u>l</u><u>)</u> Turn on autonuke. See the 'autonuke' command for more > details. > > <b>O</b><b>L</b> <u>(</u><u>n</u><u>u</u><u>m</u><u>)</u> Set the output buffer limit. See the 'obuflimit' command > for more details. > > <b>K</b><b>J</b> <u>(</u><u>s</u><u>t</u><u>r</u><u>)</u> Set the encoding of the terminal. See the 'encoding' com- > mand for valid encodings. > > <b>A</b><b>F</b> <u>(</u><u>s</u><u>t</u><u>r</u><u>)</u> Change character foreground color in an ANSI conform way. > This capability will almost always be set to '\E[3%dm' > ('\E[3%p1%dm' on terminfo machines). > > <b>A</b><b>B</b> <u>(</u><u>s</u><u>t</u><u>r</u><u>)</u> Same as 'AF', but change background color. > > <b>A</b><b>X</b> <u>(</u><u>b</u><u>o</u><u>o</u><u>l</u><u>)</u> Does understand ANSI set default fg/bg color (\E[39m / > \E[49m). > > <b>X</b><b>C</b> <u>(</u><u>s</u><u>t</u><u>r</u><u>)</u> Describe a translation of characters to strings depending > on the current font. More details follow in the next sec- > tion. > > <b>X</b><b>T</b> <u>(</u><u>b</u><u>o</u><u>o</u><u>l</u><u>)</u> Terminal understands special xterm sequences (OSC, mouse > tracking). > > <b>C</b><b>8</b> <u>(</u><u>b</u><u>o</u><u>o</u><u>l</u><u>)</u> Terminal needs bold to display high-intensity colors (e.g. > Eterm). > > <b>T</b><b>F</b> <u>(</u><u>b</u><u>o</u><u>o</u><u>l</u><u>)</u> Add missing capabilities to the termcap/info entry. (Set > by default). > > ><b>C</b><b>H</b><b>A</b><b>R</b><b>A</b><b>C</b><b>T</b><b>E</b><b>R</b> <b>T</b><b>R</b><b>A</b><b>N</b><b>S</b><b>L</b><b>A</b><b>T</b><b>I</b><b>O</b><b>N</b> > <u>S</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> has a powerful mechanism to translate characters to arbitrary > strings depending on the current font and terminal type. Use this fea- > ture if you want to work with a common standard character set (say > ISO8851-latin1) even on terminals that scatter the more unusual charac- > ters over several national language font pages. > > Syntax: > <b>X</b><b>C</b><b>=</b><u><</u><u>c</u><u>h</u><u>a</u><u>r</u><u>s</u><u>e</u><u>t</u><u>-</u><u>m</u><u>a</u><u>p</u><u>p</u><u>i</u><u>n</u><u>g</u><u>></u>{<b>,</b><b>,</b><u><</u><u>c</u><u>h</u><u>a</u><u>r</u><u>s</u><u>e</u><u>t</u><u>-</u><u>m</u><u>a</u><u>p</u><u>p</u><u>i</u><u>n</u><u>g</u><u>></u>} > <u><</u><u>c</u><u>h</u><u>a</u><u>r</u><u>s</u><u>e</u><u>t</u><u>-</u><u>m</u><u>a</u><u>p</u><u>p</u><u>i</u><u>n</u><u>g</u><u>></u> := <u><</u><u>d</u><u>e</u><u>s</u><u>i</u><u>g</u><u>n</u><u>a</u><u>t</u><u>o</u><u>r</u><u>></u><u><</u><u>t</u><u>e</u><u>m</u><u>p</u><u>l</u><u>a</u><u>t</u><u>e</u><u>></u>{<b>,</b><u><</u><u>m</u><u>a</u><u>p</u><u>p</u><u>i</u><u>n</u><u>g</u><u>></u>} > <u><</u><u>m</u><u>a</u><u>p</u><u>p</u><u>i</u><u>n</u><u>g</u><u>></u> := <u><</u><u>c</u><u>h</u><u>a</u><u>r</u><u>-</u><u>t</u><u>o</u><u>-</u><u>b</u><u>e</u><u>-</u><u>m</u><u>a</u><u>p</u><u>p</u><u>e</u><u>d</u><u>></u><u><</u><u>t</u><u>e</u><u>m</u><u>p</u><u>l</u><u>a</u><u>t</u><u>e</u><u>-</u><u>a</u><u>r</u><u>g</u><u>></u> > > The things in braces may be repeated any number of times. > > A <u><</u><u>c</u><u>h</u><u>a</u><u>r</u><u>s</u><u>e</u><u>t</u><u>-</u><u>m</u><u>a</u><u>p</u><u>p</u><u>i</u><u>n</u><u>g</u><u>></u> tells <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> how to map characters in font <u><</u><u>d</u><u>e</u><u>s</u><u>i</u><u>g</u><u>-</u> > <u>n</u><u>a</u><u>t</u><u>o</u><u>r</u><u>></u> ('B': Ascii, 'A': UK, 'K': german, etc.) to strings. Every > <u><</u><u>m</u><u>a</u><u>p</u><u>p</u><u>i</u><u>n</u><u>g</u><u>></u> describes to what string a single character will be trans- > lated. A template mechanism is used, as most of the time the codes have > a lot in common (for example strings to switch to and from another > charset). Each occurrence of '%' in <u><</u><u>t</u><u>e</u><u>m</u><u>p</u><u>l</u><u>a</u><u>t</u><u>e</u><u>></u> gets substituted with > the <u><</u><u>t</u><u>e</u><u>m</u><u>p</u><u>l</u><u>a</u><u>t</u><u>e</u><u>-</u><u>a</u><u>r</u><u>g</u><u>></u> specified together with the character. If your > strings are not similar at all, then use '%' as a template and place > the full string in <u><</u><u>t</u><u>e</u><u>m</u><u>p</u><u>l</u><u>a</u><u>t</u><u>e</u><u>-</u><u>a</u><u>r</u><u>g</u><u>></u>. A quoting mechanism was added to > make it possible to use a real '%'. The '\' character quotes the spe- > cial characters '\', '%', and ','. > > Here is an example: > > termcap hp700 'XC=B\E(K%\E(B,\304[,\326\\\\,\334]' > > This tells <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> how to translate ISOlatin1 (charset 'B') upper case > umlaut characters on a hp700 terminal that has a german charset. '\304' > gets translated to '\E(K[\E(B' and so on. Note that this line gets > parsed *three* times before the internal lookup table is built, > therefore a lot of quoting is needed to create a single '\'. > > Another extension was added to allow more emulation: If a mapping > translates the unquoted '%' char, it will be sent to the terminal when- > ever <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> switches to the corresponding <u><</u><u>d</u><u>e</u><u>s</u><u>i</u><u>g</u><u>n</u><u>a</u><u>t</u><u>o</u><u>r</u><u>></u>. In this special > case the template is assumed to be just '%' because the charset switch > sequence and the character mappings normally haven't much in common. > > This example shows one use of the extension: > > termcap xterm 'XC=K%,%\E(B,[\304,\\\\\326,]\334' > > Here, a part of the german ('K') charset is emulated on an xterm. If > <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> has to change to the 'K' charset, '\E(B' will be sent to the > terminal, i.e. the ASCII charset is used instead. The template is just > '%', so the mapping is straightforward: '[' to '\304', '\' to '\326', > and ']' to '\334'. > > ><b>E</b><b>N</b><b>V</b><b>I</b><b>R</b><b>O</b><b>N</b><b>M</b><b>E</b><b>N</b><b>T</b> > COLUMNS Number of columns on the terminal (overrides termcap > entry). > HOME Directory in which to look for .screenrc. > LINES Number of lines on the terminal (overrides termcap > entry). > LOCKPRG Screen lock program. > NETHACKOPTIONS Turns on nethack option. > PATH Used for locating programs to run. > SCREENCAP For customizing a terminal's TERMCAP value. > SCREENDIR Alternate socket directory. > SCREENRC Alternate user screenrc file. > SHELL Default shell program for opening windows (default > "/bin/sh"). > STY Alternate socket name. > SYSSCREENRC Alternate system screenrc file. > TERM Terminal name. > TERMCAP Terminal description. > WINDOW Window number of a window (at creation time). > ><b>F</b><b>I</b><b>L</b><b>E</b><b>S</b> > .../screen-3.?.??/etc/screenrc > .../screen-3.?.??/etc/etcscreenrc Examples in the <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> distribution > package for private and global ini- > tialization files. > $SYSSCREENRC > /etc/screenrc <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> initialization commands > $SCREENRC > $HOME/.screenrc Read in after /etc/screenrc > $SCREENDIR/S-<login> > /local/screens/S-<login> Socket directories (default) > /usr/tmp/screens/S-<login> Alternate socket directories. > <socket directory>/.termcap Written by the "termcap" output func- > tion > /usr/tmp/screens/screen-exchange or > /tmp/screen-exchange <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> `interprocess communication > buffer' > hardcopy.[0-9] Screen images created by the hardcopy > function > screenlog.[0-9] Output log files created by the log > function > /usr/lib/terminfo/?/* or > /etc/termcap Terminal capability databases > /var/run/utmp Login records > $LOCKPRG Program that locks a terminal. > > ><b>S</b><b>E</b><b>E</b> <b>A</b><b>L</b><b>S</b><b>O</b> > termcap(5), utmp(5), vi(1), captoinfo(1), tic(1) > > ><b>A</b><b>U</b><b>T</b><b>H</b><b>O</b><b>R</b><b>S</b> > Originally created by Oliver Laumann, this latest version was produced > by Wayne Davison, Juergen Weigert and Michael Schroeder. > ><b>C</b><b>O</b><b>P</b><b>Y</b><b>L</b><b>E</b><b>F</b><b>T</b> > Copyright (C) 1993-2002 > Juergen Weigert (jnweiger@immd4.informatik.uni-erlangen.de) > Michael Schroeder (mlschroe@immd4.informatik.uni-erlangen.de) > Copyright (C) 1987 Oliver Laumann > This program is free software; you can redistribute it and/or modify it > under the terms of the GNU General Public License as published by the > Free Software Foundation; either version 2, or (at your option) any > later version. > This program is distributed in the hope that it will be useful, but > WITHOUT ANY WARRANTY; without even the implied warranty of MER- > CHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General > Public License for more details. > You should have received a copy of the GNU General Public License along > with this program (see the file COPYING); if not, write to the Free > Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA > 02111-1307, USA > ><b>C</b><b>O</b><b>N</b><b>T</b><b>R</b><b>I</b><b>B</b><b>U</b><b>T</b><b>O</b><b>R</b><b>S</b> > Ken Beal (kbeal@amber.ssd.csd.harris.com), > Rudolf Koenig (rfkoenig@immd4.informatik.uni-erlangen.de), > Toerless Eckert (eckert@immd4.informatik.uni-erlangen.de), > Wayne Davison (davison@borland.com), > Patrick Wolfe (pat@kai.com, kailand!pat), > Bart Schaefer (schaefer@cse.ogi.edu), > Nathan Glasser (nathan@brokaw.lcs.mit.edu), > Larry W. Virden (lvirden@cas.org), > Howard Chu (hyc@hanauma.jpl.nasa.gov), > Tim MacKenzie (tym@dibbler.cs.monash.edu.au), > Markku Jarvinen (mta@{cc,cs,ee}.tut.fi), > Marc Boucher (marc@CAM.ORG), > Doug Siebert (dsiebert@isca.uiowa.edu), > Ken Stillson (stillson@tsfsrv.mitre.org), > Ian Frechett (frechett@spot.Colorado.EDU), > Brian Koehmstedt (bpk@gnu.ai.mit.edu), > Don Smith (djs6015@ultb.isc.rit.edu), > Frank van der Linden (vdlinden@fwi.uva.nl), > Martin Schweikert (schweik@cpp.ob.open.de), > David Vrona (dave@sashimi.lcu.com), > E. Tye McQueen (tye%spillman.UUCP@uunet.uu.net), > Matthew Green (mrg@mame.mu.oz.au), > Christopher Williams (cgw@unt.edu), > Matt Mosley (mattm@access.digex.net), > Gregory Neil Shapiro (gshapiro@wpi.WPI.EDU), > Johannes Zellner (johannes@zellner.org), > Pablo Averbuj (pablo@averbuj.com). > > ><b>V</b><b>E</b><b>R</b><b>S</b><b>I</b><b>O</b><b>N</b> > This is version 3.9.9. Its roots are a merge of a custom version 2.3PR7 > by Wayne Davison and several enhancements to Oliver Laumann's version > 2.0. Note that all versions numbered 2.x are copyright by Oliver Lau- > mann. > ><b>A</b><b>V</b><b>A</b><b>I</b><b>L</b><b>A</b><b>B</b><b>I</b><b>L</b><b>I</b><b>T</b><b>Y</b> > The latest official release of <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> available via anonymous ftp from > gnudist.gnu.org, nic.funet.fi or any other <u>G</u><u>N</u><u>U</u> distribution site. The > home site of <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> is ftp.uni-erlangen.de, in the directory pub/utili- > ties/screen. The subdirectory `private' contains the latest beta test- > ing release. If you want to help, send a note to screen@uni-erlan- > gen.de. > ><b>B</b><b>U</b><b>G</b><b>S</b> > ? `dm' (delete mode) and `xs' are not handled correctly (they are > ignored). `xn' is treated as a magic-margin indicator. > > ? <u>S</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> has no clue about double-high or double-wide characters. But > this is the only area where <u>v</u><u>t</u><u>t</u><u>e</u><u>s</u><u>t</u> is allowed to fail. > > ? It is not possible to change the environment variable $TERMCAP when > reattaching under a different terminal type. > > ? The support of terminfo based systems is very limited. Adding extra > capabilities to $TERMCAP may not have any effects. > > ? <u>S</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> does not make use of hardware tabs. > > ? <u>S</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> must be installed as set-uid with owner root on most systems > in order to be able to correctly change the owner of the tty device > file for each window. Special permission may also be required to > write the file "/var/run/utmp". > > ? Entries in "/var/run/utmp" are not removed when <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> is killed > with SIGKILL. This will cause some programs (like "w" or "rwho") to > advertise that a user is logged on who really isn't. > > ? <u>S</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> may give a strange warning when your tty has no utmp entry. > > ? When the modem line was hung up, <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> may not automatically detach > (or quit) unless the device driver is configured to send a HANGUP > signal. To detach a <u>s</u><u>c</u><u>r</u><u>e</u><u>e</u><u>n</u> session use the -D or -d command line > option. > > ? If a password is set, the command line options -d and -D still > detach a session without asking. > > ? Both "breaktype" and "defbreaktype" change the break generating > method used by all terminal devices. The first should change a win- > dow specific setting, where the latter should change only the > default for new windows. > > ? When attaching to a multiuser session, the user's .screenrc file is > not sourced. Each user's personal settings have to be included in > the .screenrc file from which the session is booted, or have to be > changed manually. > > ? A weird imagination is most useful to gain full advantage of all the > features. > > ? Send bug-reports, fixes, enhancements, t-shirts, money, beer & pizza > to <b>s</b><b>c</b><b>r</b><b>e</b><b>e</b><b>n</b><b>@</b><b>u</b><b>n</b><b>i</b><b>-</b><b>e</b><b>r</b><b>l</b><b>a</b><b>n</b><b>g</b><b>e</b><b>n</b><b>.</b><b>d</b><b>e</b>. > > > > >4th Berkeley Distribution Jan 2002 SCREEN(1) >?
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 17918
:
3068
| 3069