1SCREEN(1)                   General Commands Manual                  SCREEN(1)
2
3
4

NAME

6       screen - screen manager with VT100/ANSI terminal emulation
7
8
9

SYNOPSIS

11       screen [ -options ] [ cmd [ args ] ]
12       screen -r [[pid.]tty[.host]]
13       screen -r sessionowner/[[pid.]tty[.host]]
14
15
16

DESCRIPTION

18       Screen is a full-screen window manager that multiplexes a physical ter‐
19       minal between several processes (typically interactive  shells).   Each
20       virtual terminal provides the functions of a DEC VT100 terminal and, in
21       addition, several control functions from the ISO 6429  (ECMA  48,  ANSI
22       X3.64)  and ISO 2022 standards (e.g. insert/delete line and support for
23       multiple character sets).  There is a  scrollback  history  buffer  for
24       each virtual terminal and a copy-and-paste mechanism that allows moving
25       text regions between windows.
26
27       When screen is called, it creates a single window with a  shell  in  it
28       (or  the  specified  command) and then gets out of your way so that you
29       can use the program as you normally would.  Then, at any time, you  can
30       create new (full-screen) windows with other programs in them (including
31       more shells), kill existing windows, view a list of windows, turn  out‐
32       put  logging  on and off, copy-and-paste text between windows, view the
33       scrollback history, switch between windows in whatever manner you wish,
34       etc.  All  windows  run  their  programs completely independent of each
35       other. Programs continue to run when their window is currently not vis‐
36       ible and even when the whole screen session is detached from the user's
37       terminal.  When a program terminates, screen (per  default)  kills  the
38       window  that  contained  it.  If this window was in the foreground, the
39       display switches to the previous  window;  if  none  are  left,  screen
40       exits.  Shells  usually  distinguish  between running as login-shell or
41       sub-shell.  Screen runs them as sub-shells, unless told otherwise  (See
42       "shell" .screenrc command).
43
44       Everything  you type is sent to the program running in the current win‐
45       dow.  The only exception to this is the one keystroke that is  used  to
46       initiate  a  command  to  the window manager.  By default, each command
47       begins with a control-a (abbreviated C-a from now on), and is  followed
48       by one other keystroke.  The command character and all the key bindings
49       can be fully customized to be anything you like, though they are always
50       two characters in length.
51
52       Screen  does  not  understand the prefix "C-" to mean control, although
53       this notation is used in this manual for readability.  Please  use  the
54       caret  notation ("^A" instead of "C-a") as arguments to e.g. the escape
55       command or the -e option.  Screen will also print out  control  charac‐
56       ters in caret notation.
57
58       The  standard way to create a new window is to type "C-a c".  This cre‐
59       ates a new window running a shell and switches to that  window  immedi‐
60       ately,  regardless  of  the state of the process running in the current
61       window.  Similarly, you can create a new window with a  custom  command
62       in  it  by  first binding the command to a keystroke (in your .screenrc
63       file or at the "C-a :" command line) and then using it  just  like  the
64       "C-a  c" command.  In addition, new windows can be created by running a
65       command like:
66
67              screen emacs prog.c
68
69       from a shell prompt within a previously created window.  This will  not
70       run  another  copy  of screen, but will instead supply the command name
71       and its arguments to the window manager (specified in the $STY environ‐
72       ment  variable)  who  will  use it to create the new window.  The above
73       example would start the emacs editor (editing prog.c) and switch to its
74       window. - Note that you cannot transport environment variables from the
75       invoking shell to the application (emacs in this case), because  it  is
76       forked from the parent screen process, not from the invoking shell.
77
78       If  "/etc/utmp"  is  writable  by screen, an appropriate record will be
79       written to this file for each window, and removed when  the  window  is
80       terminated.   This  is useful for working with "talk", "script", "shut‐
81       down", "rsend", "sccs" and other similar programs  that  use  the  utmp
82       file to determine who you are. As long as screen is active on your ter‐
83       minal, the terminal's own record is removed from  the  utmp  file.  See
84       also "C-a L".
85
86
87

GETTING STARTED

89       Before  you  begin to use screen you'll need to make sure you have cor‐
90       rectly selected your terminal type, just as you  would  for  any  other
91       termcap/terminfo program.  (You can do this by using tset for example.)
92
93       If  you're  impatient  and want to get started without doing a lot more
94       reading, you should remember this one command:  "C-a ?".  Typing  these
95       two characters will display a list of the available screen commands and
96       their bindings. Each keystroke is discussed in the section "DEFAULT KEY
97       BINDINGS".  The  manual section "CUSTOMIZATION" deals with the contents
98       of your .screenrc.
99
100       If your terminal is a "true" auto-margin terminal (it doesn't allow the
101       last position on the screen to be updated without scrolling the screen)
102       consider using a version of your terminal's termcap that has  automatic
103       margins  turned off. This will ensure an accurate and optimal update of
104       the screen in all circumstances. Most terminals nowadays  have  "magic"
105       margins  (automatic margins plus usable last column). This is the VT100
106       style type and perfectly suited for screen.  If all  you've  got  is  a
107       "true"  auto-margin  terminal  screen  will  be  content to use it, but
108       updating a character put into the last position on the screen  may  not
109       be  possible  until the screen scrolls or the character is moved into a
110       safe position in some other way. This delay can be shortened by using a
111       terminal with insert-character capability.
112
113
114

COMMAND-LINE OPTIONS

116       Screen has the following command-line options:
117
118       -a   include all capabilities (with some minor exceptions) in each win‐
119            dow's termcap, even if screen must redraw parts of the display  in
120            order to implement a function.
121
122       -A   Adapt  the  sizes of all windows to the size of the current termi‐
123            nal.  By default, screen tries to restore  its  old  window  sizes
124            when  attaching  to  resizable  terminals  (those with "WS" in its
125            description, e.g. suncmd or some xterm).
126
127       -c file
128            override the default configuration file from "$HOME/.screenrc"  to
129            file.
130
131       -d|-D [pid.tty.host]
132            does  not  start screen, but detaches the elsewhere running screen
133            session. It has the same effect as typing "C-a  d"  from  screen's
134            controlling  terminal.  -D  is  the equivalent to the power detach
135            key.  If no session can be detached, this option  is  ignored.  In
136            combination  with  the  -r/-R  option more powerful effects can be
137            achieved:
138
139       -d -r   Reattach a session and if necessary detach it first.
140
141       -d -R   Reattach a session and if necessary detach or  even  create  it
142               first.
143
144       -d -RR  Reattach  a  session  and if necessary detach or create it. Use
145               the first session if more than one session is available.
146
147       -D -r   Reattach a session. If necessary  detach  and  logout  remotely
148               first.
149
150       -D -R   Attach here and now. In detail this means: If a session is run‐
151               ning, then reattach. If necessary detach  and  logout  remotely
152               first.   If  it  was not running create it and notify the user.
153               This is the author's favorite.
154
155       -D -RR  Attach here and now. Whatever that means, just do it.
156
157            Note: It is always a good idea to check the status  of  your  ses‐
158            sions by means of "screen -list".
159
160       -e xy
161            specifies the command character to be x and the character generat‐
162            ing a literal command character to y (when typed after the command
163            character).   The default is "C-a" and `a', which can be specified
164            as "-e^Aa".  When creating a screen session, this option sets  the
165            default  command character. In a multiuser session all users added
166            will start off with this command character. But when attaching  to
167            an  already  running session, this option changes only the command
168            character of the attaching user.  This  option  is  equivalent  to
169            either the commands "defescape" or "escape" respectively.
170
171       -f, -fn, and -fa
172            turns  flow-control  on, off, or "automatic switching mode".  This
173            can also be defined through the "defflow" .screenrc command.
174
175       -h num
176            Specifies the history scrollback buffer to be num lines high.
177
178       -i   will cause the interrupt key (usually C-c) to interrupt  the  dis‐
179            play  immediately  when  flow-control  is  on.   See the "defflow"
180            .screenrc command for details.  The use of this option is discour‐
181            aged.
182
183       -l and -ln
184            turns  login  mode  on  or off (for /etc/utmp updating).  This can
185            also be defined through the "deflogin" .screenrc command.
186
187       -ls [match]
188       -list [match]
189            does not start screen, but prints a list of  pid.tty.host  strings
190            identifying  your screen sessions.  Sessions marked `detached' can
191            be resumed with "screen -r". Those marked `attached'  are  running
192            and  have a controlling terminal. If the session runs in multiuser
193            mode, it is  marked  `multi'.  Sessions  marked  as  `unreachable'
194            either  live  on  a  different host or are `dead'.  An unreachable
195            session is considered dead, when its name matches either the  name
196            of the local host, or the specified parameter, if any.  See the -r
197            flag for a description how to construct matches.  Sessions  marked
198            as `dead' should be thoroughly checked and removed.  Ask your sys‐
199            tem administrator if you are not sure. Remove  sessions  with  the
200            -wipe option.
201
202       -L   tells screen to turn on automatic output logging for the windows.
203
204       -Logfile file
205            By  default logfile name is "screenlog.0". You can set new logfile
206            name with the "-Logfile" option.
207
208       -m   causes screen  to  ignore  the  $STY  environment  variable.  With
209            "screen  -m"  creation  of  a  new session is enforced, regardless
210            whether screen is called from within  another  screen  session  or
211            not.  This  flag has a special meaning in connection with the `-d'
212            option:
213
214       -d -m   Start screen in "detached" mode. This creates a new session but
215               doesn't  attach  to  it.  This  is  useful  for  system startup
216               scripts.
217
218       -D -m   This also starts screen in "detached" mode, but doesn't fork  a
219               new process. The command exits if the session terminates.
220
221       -O   selects  an optimal output mode for your terminal rather than true
222            VT100 emulation (only affects auto-margin terminals without `LP').
223            This  can  also  be  set in your .screenrc by specifying `OP' in a
224            "termcap" command.
225
226       -p number_or_name|-|=|+
227            Preselect a window. This is useful when you want to reattach to  a
228            specific  window or you want to send a command via the "-X" option
229            to a specific window. As with screen's select command, "-" selects
230            the  blank  window.  As a special case for reattach, "=" brings up
231            the windowlist on the blank window, while a "+" will create a  new
232            window.  The  command will not be executed if the specified window
233            could not be found.
234
235       -q   Suppress printing of error messages. In combination with "-ls" the
236            exit  value  is  as  follows: 9 indicates a directory without ses‐
237            sions. 10 indicates a directory with running  but  not  attachable
238            sessions.  11 (or more) indicates 1 (or more) usable sessions.  In
239            combination with "-r" the exit value is as follows:  10  indicates
240            that  there  is  no session to resume. 12 (or more) indicates that
241            there are 2 (or more) sessions to resume and  you  should  specify
242            which one to choose.  In all other cases "-q" has no effect.
243
244       -Q   Some  commands now can be queried from a remote session using this
245            flag, e.g.  "screen  -Q  windows".  The  commands  will  send  the
246            response  to  the  stdout of the querying process. If there was an
247            error in the command, then the querying process will exit  with  a
248            non-zero status.
249
250            The commands that can be queried now are:
251             echo
252             info
253             lastmsg
254             number
255             select
256             time
257             title
258             windows
259
260       -r [pid.tty.host]
261       -r sessionowner/[pid.tty.host]
262            resumes  a detached screen session.  No other options (except com‐
263            binations with -d/-D) may be specified, though an optional  prefix
264            of  [pid.]tty.host  may  be needed to distinguish between multiple
265            detached screen sessions.  The second form is used to  connect  to
266            another  user's  screen session which runs in multiuser mode. This
267            indicates that screen should look for sessions in  another  user's
268            directory. This requires setuid-root.
269
270       -R   resumes  screen  only  when  it's unambiguous which one to attach,
271            usually when only one screen is detached. Otherwise  lists  avail‐
272            able  sessions.   -RR attempts to resume the first detached screen
273            session it finds.  If successful, all other  command-line  options
274            are  ignored.  If no detached session exists, starts a new session
275            using the specified options, just as if -R had not been specified.
276            The  option  is  set  by default if screen is run as a login-shell
277            (actually screen uses "-xRR" in that case).  For combinations with
278            the -d/-D option see there.
279
280       -s program
281            sets  the  default  shell to the program specified, instead of the
282            value in the environment variable  $SHELL  (or  "/bin/sh"  if  not
283            defined).   This can also be defined through the "shell" .screenrc
284            command.  See also there.
285
286       -S sessionname
287            When creating a new session, this option can be used to specify  a
288            meaningful  name for the session. This name identifies the session
289            for "screen -list" and "screen -r"  actions.  It  substitutes  the
290            default [tty.host] suffix.
291
292       -t name
293            sets  the  title  (a.k.a.) for the default shell or specified pro‐
294            gram.  See also the "shelltitle" .screenrc command.
295
296       -T term
297            Set the $TERM environment variable using  the  specified  term  as
298            opposed to the default setting of screen.
299
300       -U   Run  screen in UTF-8 mode. This option tells screen that your ter‐
301            minal sends and understands UTF-8 encoded characters. It also sets
302            the default encoding for new windows to `utf8'.
303
304       -v   Print version number.
305
306       -wipe [match]
307            does  the  same  as  "screen  -ls", but removes destroyed sessions
308            instead of marking them as `dead'.  An unreachable session is con‐
309            sidered  dead,  when its name matches either the name of the local
310            host, or the explicitly given parameter, if any.  See the -r  flag
311            for a description how to construct matches.
312
313       -x   Attach  to  a  not  detached screen session. (Multi display mode).
314            Screen refuses to attach from within itself.  But  when  cascading
315            multiple screens, loops are not detected; take care.
316
317       -X   Send  the  specified  command to a running screen session. You may
318            use the -S option to specify the screen session if you  have  sev‐
319            eral  screen  sessions running. You can use the -d or -r option to
320            tell screen to look only for attached or detached screen sessions.
321            Note  that  this  command  doesn't work if the session is password
322            protected.
323
324
325       -4   Resolve hostnames only to IPv4 addresses.
326
327       -6   Resolve hostnames only to IPv6 addresses.
328

DEFAULT KEY BINDINGS

330       As mentioned, each screen command consists of a "C-a" followed  by  one
331       other  character.  For your convenience, all commands that are bound to
332       lower-case letters are also bound to their control  character  counter‐
333       parts (with the exception of "C-a a"; see below), thus, "C-a c" as well
334       as "C-a C-c" can be used to create a window.  See  section  "CUSTOMIZA‐
335       TION" for a description of the command.
336
337       The following table shows the default key bindings. The trailing commas
338       in boxes with multiple keystroke entries are separators,  not  part  of
339       the bindings.
340
341       ─────────────────────────────────────────────────────────
342       C-a '              (select)          Prompt for a window
343                                            name or  number  to
344                                            switch to.
345       ─────────────────────────────────────────────────────────
346       C-a "              (windowlist -b)   Present  a  list of
347                                            all   windows   for
348                                            selection.
349       ─────────────────────────────────────────────────────────
350       C-a digit          (select 0-9)      Switch   to  window
351                                            number 0 - 9
352       ─────────────────────────────────────────────────────────
353       C-a -              (select -)        Switch  to   window
354                                            number 0 - 9, or to
355                                            the blank window.
356       ─────────────────────────────────────────────────────────
357       C-a tab            (focus)           Switch  the   input
358                                            focus  to  the next
359                                            region.   See  also
360                                            split,      remove,
361                                            only.
362       ─────────────────────────────────────────────────────────
363       C-a C-a            (other)           Toggle to the  win‐
364                                            dow  displayed pre‐
365                                            viously.  Note that
366                                            this        binding
367                                            defaults   to   the
368                                            command   character
369                                            typed twice, unless
370                                            overridden.     For
371                                            instance,  if   you
372                                            use    the   option
373                                            "-e]x",  this  com‐
374                                            mand becomes "]]".
375       ─────────────────────────────────────────────────────────
376       C-a a              (meta)            Send   the  command
377                                            character (C-a)  to
378                                            window.  See escape
379                                            command.
380       ─────────────────────────────────────────────────────────
381       C-a A              (title)           Allow the  user  to
382                                            enter  a  name  for
383                                            the current window.
384       ─────────────────────────────────────────────────────────
385       C-a b,             (break)           Send  a  break   to
386       C-a C-b                              window.
387       ─────────────────────────────────────────────────────────
388       C-a B              (pow_break)       Reopen the terminal
389                                            line  and  send   a
390                                            break.
391       ─────────────────────────────────────────────────────────
392       C-a c,             (screen)          Create a new window
393       C-a C-c                              with  a  shell  and
394                                            switch to that win‐
395                                            dow.
396       ─────────────────────────────────────────────────────────
397       C-a C              (clear)           Clear the screen.
398       ─────────────────────────────────────────────────────────
399
400
401
402       C-a d,             (detach)          Detach screen  from
403       C-a C-d                              this terminal.
404       ─────────────────────────────────────────────────────────
405       C-a D D            (pow_detach)      Detach and logout.
406       ─────────────────────────────────────────────────────────
407       C-a f,             (flow)            Toggle flow on, off
408       C-a C-f                              or auto.
409       ─────────────────────────────────────────────────────────
410       C-a F              (fit)             Resize  the  window
411                                            to    the   current
412                                            region size.
413       ─────────────────────────────────────────────────────────
414       C-a C-g            (vbell)           Toggles    screen's
415                                            visual bell mode.
416       ─────────────────────────────────────────────────────────
417       C-a h              (hardcopy)        Write a hardcopy of
418                                            the current  window
419                                            to  the file "hard‐
420                                            copy.n".
421       ─────────────────────────────────────────────────────────
422       C-a H              (log)             Begins/ends logging
423                                            of the current win‐
424                                            dow  to  the   file
425                                            "screenlog.n".
426       ─────────────────────────────────────────────────────────
427       C-a i,             (info)            Show   info   about
428       C-a C-i                              this window.
429       ─────────────────────────────────────────────────────────
430       C-a k,             (kill)            Destroy     current
431       C-a C-k                              window.
432       ─────────────────────────────────────────────────────────
433       C-a l,             (redisplay)       Fully  refresh cur‐
434       C-a C-l                              rent window.
435       ─────────────────────────────────────────────────────────
436       C-a L              (login)           Toggle this windows
437                                            login  slot. Avail‐
438                                            able only if screen
439                                            is   configured  to
440                                            update   the   utmp
441                                            database.
442       ─────────────────────────────────────────────────────────
443       C-a m,             (lastmsg)         Repeat   the   last
444       C-a C-m                              message   displayed
445                                            in    the   message
446                                            line.
447       ─────────────────────────────────────────────────────────
448       C-a M              (monitor)         Toggles  monitoring
449                                            of the current win‐
450                                            dow.
451       ─────────────────────────────────────────────────────────
452       C-a space,         (next)            Switch to the  next
453       C-a n,                               window.
454       C-a C-n
455       ─────────────────────────────────────────────────────────
456       C-a N              (number)          Show   the   number
457                                            (and title) of  the
458                                            current window.
459       ─────────────────────────────────────────────────────────
460       C-a backspace,     (prev)            Switch  to the pre‐
461       C-a C-h,                             vious window (oppo‐
462       C-a p,                               site of C-a n).
463       C-a C-p
464       ─────────────────────────────────────────────────────────
465       C-a q,             (xon)             Send a control-q to
466       C-a C-q                              the current window.
467       ─────────────────────────────────────────────────────────
468
469       C-a Q              (only)            Delete all  regions
470                                            but   the   current
471                                            one.    See    also
472                                            split,      remove,
473                                            focus.
474       ─────────────────────────────────────────────────────────
475       C-a r,             (wrap)            Toggle the  current
476       C-a C-r                              window's  line-wrap
477                                            setting  (turn  the
478                                            current    window's
479                                            automatic   margins
480                                            on and off).
481       ─────────────────────────────────────────────────────────
482       C-a s,             (xoff)            Send a control-s to
483       C-a C-s;                             the current window.
484       ─────────────────────────────────────────────────────────
485       C-a S              (split)           Split  the  current
486                                            region horizontally
487                                            into two new  ones.
488                                            See    also   only,
489                                            remove, focus.
490       ─────────────────────────────────────────────────────────
491       C-a t,             (time)            Show system  infor‐
492       C-a C-t                              mation.
493       ─────────────────────────────────────────────────────────
494       C-a v              (version)         Display the version
495                                            and     compilation
496                                            date.
497       ─────────────────────────────────────────────────────────
498       C-a C-v            (digraph)         Enter digraph.
499       C-a w,             (windows)         Show a list of win‐
500       C-a C-w                              dow.
501       ─────────────────────────────────────────────────────────
502       C-a W              (width)           Toggle 80/132  col‐
503                                            umns.
504       ─────────────────────────────────────────────────────────
505       C-a x or C-a C-x   (lockscreen)      Lock this terminal.
506       ─────────────────────────────────────────────────────────
507       C-a X              (remove)          Kill   the  current
508                                            region.   See  also
509                                            split, only, focus.
510       ─────────────────────────────────────────────────────────
511       C-a z,             (suspend)         Suspend     screen.
512       C-a C-z                              Your  system   must
513                                            support   BSD-style
514                                            job-control.
515       ─────────────────────────────────────────────────────────
516       C-a Z              (reset)           Reset  the  virtual
517                                            terminal   to   its
518                                            "power-on" values.
519       ─────────────────────────────────────────────────────────
520       C-a .              (dumptermcap)     Write out a ".term‐
521                                            cap" file.
522       ─────────────────────────────────────────────────────────
523       C-a ?              (help)            Show key bindings.
524       ─────────────────────────────────────────────────────────
525       C-a \              (quit)            Kill   all  windows
526                                            and       terminate
527                                            screen.
528       ─────────────────────────────────────────────────────────
529       C-a :              (colon)           Enter  command line
530                                            mode.
531       ─────────────────────────────────────────────────────────
532
533
534
535
536       C-a [,             (copy)            Enter  copy/scroll‐
537       C-a C-[,                             back mode.
538       C-a esc
539       ─────────────────────────────────────────────────────────
540       C-a C-],           (paste .)         Write  the contents
541       C-a ]                                of the paste buffer
542                                            to  the stdin queue
543                                            of the current win‐
544                                            dow.
545       ─────────────────────────────────────────────────────────
546       C-a {,             (history)         Copy  and  paste  a
547       C-a }                                previous  (command)
548                                            line.
549       ─────────────────────────────────────────────────────────
550       C-a >              (writebuf)        Write  paste buffer
551                                            to a file.
552       ─────────────────────────────────────────────────────────
553       C-a <              (readbuf)         Reads  the  screen-
554                                            exchange  file into
555                                            the paste buffer.
556       ─────────────────────────────────────────────────────────
557       C-a =              (removebuf)       Removes  the   file
558                                            used  by  C-a < and
559                                            C-a >.
560       ─────────────────────────────────────────────────────────
561       C-a ,              (license)         Shows where  screen
562                                            comes  from,  where
563                                            it went to and  why
564                                            you can use it.
565       ─────────────────────────────────────────────────────────
566       C-a _              (silence)         Start/stop monitor‐
567                                            ing   the   current
568                                            window for inactiv‐
569                                            ity.
570       ─────────────────────────────────────────────────────────
571       C-a |              (split -v)        Split  the  current
572                                            region   vertically
573                                            into two new ones.
574       ─────────────────────────────────────────────────────────
575       C-a *              (displays)        Show a  listing  of
576                                            all       currently
577                                            attached displays.
578       ─────────────────────────────────────────────────────────
579
580

CUSTOMIZATION

582       The "socket directory" defaults either to $HOME/.screen  or  simply  to
583       /tmp/screens  or  preferably  to  /usr/local/screens chosen at compile-
584       time. If screen is installed setuid-root, then the administrator should
585       compile  screen with an adequate (not NFS mounted) socket directory. If
586       screen is not running setuid-root, the user can specify  any  mode  700
587       directory in the environment variable $SCREENDIR.
588
589       When  screen  is  invoked, it executes initialization commands from the
590       files "/etc/screenrc" and ".screenrc" in  the  user's  home  directory.
591       These  are  the  "programmer's  defaults" that can be overridden in the
592       following ways: for the global screenrc file screen  searches  for  the
593       environment  variable  $SYSSCREENRC  (this override feature may be dis‐
594       abled at compile-time). The user specific screenrc file is searched  in
595       $SCREENRC,  then  $HOME/.screenrc.   The  command  line option -c takes
596       precedence over the above user screenrc files.
597
598       Commands in these files are used to  set  options,  bind  functions  to
599       keys,  and to automatically establish one or more windows at the begin‐
600       ning of your screen session.  Commands are listed one  per  line,  with
601       empty lines being ignored.  A command's arguments are separated by tabs
602       or spaces, and may be surrounded by single or  double  quotes.   A  `#'
603       turns  the rest of the line into a comment, except in quotes.  Unintel‐
604       ligible lines are warned about and ignored.  Commands may contain  ref‐
605       erences  to environment variables. The syntax is the shell-like "$VAR "
606       or "${VAR}". Note that this causes incompatibility with previous screen
607       versions,  as  now the '$'-character has to be protected with '\' if no
608       variable substitution shall be performed. A string in single-quotes  is
609       also protected from variable substitution.
610
611       Two  configuration  files are shipped as examples with your screen dis‐
612       tribution: "etc/screenrc" and "etc/etcscreenrc". They contain a  number
613       of useful examples for various commands.
614
615       Customization  can  also  be  done 'on-line'. To enter the command mode
616       type `C-a :'. Note that commands starting  with  "def"  change  default
617       values, while others change current settings.
618
619       The following commands are available:
620
621       acladd usernames [crypted-pw]
622
623       addacl usernames
624
625       Enable  users to fully access this screen session. Usernames can be one
626       user or a comma separated list of users. This command enables to attach
627       to  the screen session and performs the equivalent of `aclchg usernames
628       +rwx "#?"'.  executed. To add a user with restricted  access,  use  the
629       `aclchg'  command  below.  If an optional second parameter is supplied,
630       it should be a crypted password for the named user(s).  `Addacl'  is  a
631       synonym to `acladd'.  Multi user mode only.
632
633       aclchg usernames permbits list
634
635       chacl usernames permbits list
636
637       Change permissions for a comma separated list of users. Permission bits
638       are represented as `r', `w' and `x'. Prefixing `+' grants  the  permis‐
639       sion,  `-' removes it. The third parameter is a comma separated list of
640       commands and/or windows (specified either by number or title). The spe‐
641       cial  list `#' refers to all windows, `?' to all commands. if usernames
642       consists of a single `*', all known users are affected.
643
644       A command can be executed when the user has the `x' bit  for  it.   The
645       user  can  type  input  to  a window when he has its `w' bit set and no
646       other user obtains a writelock for this window.  Other  bits  are  cur‐
647       rently  ignored.  To withdraw the writelock from another user in window
648       2: `aclchg username -w+w 2'.  To allow read-only access to the session:
649       `aclchg  username  -w "#"'. As soon as a user's name is known to screen
650       he can attach to the session and (per default) has full permissions for
651       all  command  and  windows.  Execution permission for the acl commands,
652       `at' and others should also be removed or  the  user  may  be  able  to
653       regain  write permission.  Rights of the special username nobody cannot
654       be changed (see the "su" command).  `Chacl' is a synonym  to  `aclchg'.
655       Multi user mode only.
656
657       acldel username
658
659       Remove a user from screen's access control list. If currently attached,
660       all the user's displays are detached from the session. He cannot attach
661       again.  Multi user mode only.
662
663       aclgrp username [groupname]
664
665       Creates  groups  of  users that share common access rights. The name of
666       the group is the username of the group leader. Each member of the group
667       inherits  the  permissions  that  are granted to the group leader. That
668       means, if a user fails an access check, another check is made  for  the
669       group  leader.   A  user  is  removed from all groups the special value
670       "none" is used for groupname.  If the second parameter is  omitted  all
671       groups the user is in are listed.
672
673       aclumask [[ users ] +bits | [ users ] -bits... ]
674
675       umask [[ users ] +bits | [ users ] -bits... ]
676
677       This specifies the access other users have to windows that will be cre‐
678       ated by the caller of the command.  Users may be no,  one  or  a  comma
679       separated list of known usernames. If no users are specified, a list of
680       all currently known users is  assumed.   Bits  is  any  combination  of
681       access control bits allowed defined with the "aclchg" command. The spe‐
682       cial username "?" predefines the access that not yet known  users  will
683       be  granted  to any window initially.  The special username "??" prede‐
684       fines the access that not yet known users are granted to  any  command.
685       Rights  of  the special username nobody cannot be changed (see the "su"
686       command).  `Umask' is a synonym to `aclumask'.
687
688       activity message
689
690       When any activity occurs in a background window  that  is  being  moni‐
691       tored, screen displays a notification in the message line.  The notifi‐
692       cation message can be re-defined by means of  the  "activity"  command.
693       Each occurrence of `%' in message is replaced by the number of the win‐
694       dow in which activity has occurred, and  each  occurrence  of  `^G'  is
695       replaced by the definition for bell in your termcap (usually an audible
696       bell).  The default message is
697
698                       'Activity in window %n'
699
700       Note that monitoring is off for all windows  by  default,  but  can  be
701       altered by use of the "monitor" command (C-a M).
702
703       allpartial on|off
704
705       If  set  to  on,  only  the  current cursor line is refreshed on window
706       change.  This affects all windows  and  is  useful  for  slow  terminal
707       lines.  The previous setting of full/partial refresh for each window is
708       restored with "allpartial off".  This is a global flag that immediately
709       takes  effect on all windows overriding the "partial" settings. It does
710       not change the default redraw behavior of newly created windows.
711
712       altscreen on|off
713
714       If set to on, "alternate screen" support is enabled in  virtual  termi‐
715       nals, just like in xterm.  Initial setting is `off'.
716
717       at [identifier][#|*|%] command [args ... ]
718
719       Execute  a  command  at  other  displays  or  windows as if it had been
720       entered there.  "At" changes the context (the `current window' or `cur‐
721       rent display' setting) of the command. If the first parameter describes
722       a non-unique context, the command will be executed multiple  times.  If
723       the  first  parameter  is  of the form `identifier*' then identifier is
724       matched against user names.  The command is executed once for each dis‐
725       play  of  the  selected  user(s). If the first parameter is of the form
726       `identifier%' identifier is  matched  against  displays.  Displays  are
727       named  after the ttys they attach. The prefix `/dev/' or `/dev/tty' may
728       be omitted from the identifier.  If identifier has  a  `#'  or  nothing
729       appended  it  is matched against window numbers and titles. Omitting an
730       identifier in front of the `#', `*' or `%'-character selects all users,
731       displays  or  windows because a prefix-match is performed. Note that on
732       the affected display(s) a short message will  describe  what  happened.
733       Permission  is  checked  for initiator of the "at" command, not for the
734       owners of the affected display(s).  Note that the '#'  character  works
735       as  a comment introducer when it is preceded by whitespace. This can be
736       escaped by prefixing a '\'.  Permission is checked for the initiator of
737       the "at" command, not for the owners of the affected display(s).
738
739       Caveat: When matching against windows, the command is executed at least
740       once per window. Commands that change the internal arrangement of  win‐
741       dows  (like "other") may be called again. In shared windows the command
742       will be repeated for each attached display. Beware, when issuing toggle
743       commands  like  "login"!  Some commands (e.g. "process") require that a
744       display is associated with the target windows.  These commands may  not
745       work correctly under "at" looping over windows.
746
747       attrcolor attrib [attribute/color-modifier]
748
749       This  command can be used to highlight attributes by changing the color
750       of the  text.  If  the  attribute  attrib  is  in  use,  the  specified
751       attribute/color  modifier is also applied. If no modifier is given, the
752       current one is deleted. See the "STRING ESCAPES" chapter for the syntax
753       of  the  modifier. Screen understands two pseudo-attributes, "i" stands
754       for high-intensity foreground color and "I"  for  high-intensity  back‐
755       ground color.
756
757       Examples:
758
759              attrcolor b "R"
760
761       Change the color to bright red if bold text is to be printed.
762
763              attrcolor u "-u b"
764
765       Use blue text instead of underline.
766
767              attrcolor b ".I"
768
769       Use  bright  colors  for  bold  text.  Most  terminal emulators do this
770       already.
771
772              attrcolor i "+b"
773
774       Make bright colored text also bold.
775
776       autodetach on|off
777
778       Sets whether screen will automatically detach upon hangup, which  saves
779       all  your running programs until they are resumed with a screen -r com‐
780       mand.  When turned off, a hangup signal will terminate screen  and  all
781       the processes it contains. Autodetach is on by default.
782
783       autonuke on|off
784
785       Sets  whether  a  clear screen sequence should nuke all the output that
786       has not been written to the terminal. See also "obuflimit".
787
788       backtick id lifespan autorefresh cmd args...
789
790       backtick id
791
792       Program the backtick command with the numerical id id.  The  output  of
793       such  a command is used for substitution of the "%`" string escape. The
794       specified lifespan is the number of seconds the  output  is  considered
795       valid.  After  this  time,  the command is run again if a corresponding
796       string escape is encountered.  The autorefresh  parameter  triggers  an
797       automatic  refresh  for caption and hardstatus strings after the speci‐
798       fied number of seconds. Only the last line of output is used  for  sub‐
799       stitution.
800
801       If both the lifespan and the autorefresh parameters are zero, the back‐
802       tick program is expected to stay in the background and generate  output
803       once  in a while.  In this case, the command is executed right away and
804       screen stores the last line of output.  If  a  new  line  gets  printed
805       screen will automatically refresh the hardstatus or the captions.
806
807       The  second  form  of the command deletes the backtick command with the
808       numerical id id.
809
810       bce [on|off]
811
812       Change background-color-erase setting. If "bce" is set to on, all char‐
813       acters  cleared  by an erase/insert/scroll/clear operation will be dis‐
814       played in the current background color.  Otherwise  the  default  back‐
815       ground color is used.
816
817       bell_msg [message]
818
819       When a bell character is sent to a background window, screen displays a
820       notification in the message line.  The notification message can be  re-
821       defined by this command.  Each occurrence of `%' in message is replaced
822       by the number of the window to which a bell has  been  sent,  and  each
823       occurrence of `^G' is replaced by the definition for bell in your term‐
824       cap (usually an audible bell).  The default message is
825
826                              'Bell in window %n'
827
828       An empty message can be supplied to the "bell_msg" command to  suppress
829       output of a message line (bell_msg "").  Without parameter, the current
830       message is shown.
831
832       bind [class] key [command [args]]
833
834       Bind a command to a key.  By default, most of the commands provided  by
835       screen  are  bound to one or more keys as indicated in the "DEFAULT KEY
836       BINDINGS" section, e.g. the command to create a new window is bound  to
837       "C-c"  and  "c".   The  "bind"  command can be used to redefine the key
838       bindings and to define new bindings.  The key argument is either a sin‐
839       gle  character,  a two-character sequence of the form "^x" (meaning "C-
840       x"), a backslash followed by an octal number (specifying the ASCII code
841       of  the character), or a backslash followed by a second character, such
842       as "\^" or "\\".  The argument can also be quoted, if you like.  If  no
843       further  argument is given, any previously established binding for this
844       key is removed.  The command argument can be any command listed in this
845       section.
846
847       If  a  command class is specified via the "-c" option, the key is bound
848       for the specified class. Use the "command" command to activate a class.
849       Command  classes  can be used to create multiple command keys or multi-
850       character bindings.
851
852       Some examples:
853
854                       bind ' ' windows
855                       bind ^k
856                       bind k
857                       bind K kill
858                       bind ^f screen telnet foobar
859                       bind \033 screen -ln -t root -h 1000 9 su
860
861       would bind the space key to the command that displays a list of windows
862       (so  that the command usually invoked by "C-a C-w" would also be avail‐
863       able as "C-a space"). The next three  lines  remove  the  default  kill
864       binding  from "C-a C-k" and "C-a k".  "C-a K" is then bound to the kill
865       command. Then it binds "C-f" to the command "create  a  window  with  a
866       TELNET  connection  to  foobar",  and bind "escape" to the command that
867       creates an non-login window with a.k.a. "root" in slot #9, with a supe‐
868       ruser shell and a scrollback buffer of 1000 lines.
869
870                       bind -c demo1 0 select 10
871                       bind -c demo1 1 select 11
872                       bind -c demo1 2 select 12
873                       bindkey "^B" command -c demo1
874
875       makes "C-b 0" select window 10, "C-b 1" window 11, etc.
876
877                       bind -c demo2 0 select 10
878                       bind -c demo2 1 select 11
879                       bind -c demo2 2 select 12
880                       bind - command -c demo2
881
882       makes "C-a - 0" select window 10, "C-a - 1" window 11, etc.
883
884       bindkey [-d] [-m] [-a] [[-k|-t] string [cmd-args]]
885
886       This  command manages screen's input translation tables. Every entry in
887       one of the tables tells screen how to react if a  certain  sequence  of
888       characters is encountered. There are three tables: one that should con‐
889       tain actions programmed by the user, one for the default  actions  used
890       for  terminal  emulation  and  one  for screen's copy mode to do cursor
891       movement. See section "INPUT TRANSLATION" for a  list  of  default  key
892       bindings.
893
894       If  the  -d  option  is  given,  bindkey modifies the default table, -m
895       changes the copy mode table and with neither option the user  table  is
896       selected.   The  argument string is the sequence of characters to which
897       an action is bound. This can either be a fixed string or a termcap key‐
898       board capability name (selectable with the -k option).
899
900       Some  keys  on a VT100 terminal can send a different string if applica‐
901       tion mode is turned on (e.g the  cursor  keys).   Such  keys  have  two
902       entries  in  the translation table. You can select the application mode
903       entry by specifying the -a option.
904
905       The -t option tells screen not to do inter-character timing. One cannot
906       turn off the timing if a termcap capability is used.
907
908       Cmd  can  be any of screen's commands with an arbitrary number of args.
909       If cmd is omitted the key-binding is removed from the table.
910
911       Here are some examples of keyboard bindings:
912
913               bindkey -d
914
915       Show all of the default key bindings. The application mode entries  are
916       marked with [A].
917
918               bindkey -k k1 select 1
919
920       Make the "F1" key switch to window one.
921
922               bindkey -t foo stuff barfoo
923
924       Make "foo" an abbreviation of the word "barfoo". Timeout is disabled so
925       that users can type slowly.
926
927               bindkey "\024" mapdefault
928
929       This key-binding makes "^T" an escape character  for  key-bindings.  If
930       you  did the above "stuff barfoo" binding, you can enter the word "foo"
931       by typing "^Tfoo". If you want to insert a "^T" you have to  press  the
932       key twice (i.e., escape the escape binding).
933
934               bindkey -k F1 command
935
936       Make the F11 (not F1!) key an alternative screen escape (besides ^A).
937
938       break[duration]
939
940       Send a break signal for duration*0.25 seconds to this window.  For non-
941       Posix systems the time interval may be  rounded  up  to  full  seconds.
942       Most useful if a character device is attached to the window rather than
943       a shell process (See also chapter "WINDOW TYPES"). The maximum duration
944       of a break signal is limited to 15 seconds.
945
946       blanker
947
948       Activate the screen blanker. First the screen is cleared. If no blanker
949       program is defined, the cursor is turned off, otherwise, the program is
950       started  and  it's output is written to the screen.  The screen blanker
951       is killed with the first keypress, the read key is discarded.
952
953       This command is normally used together with the "idle" command.
954
955       blankerprg [program-args]
956
957       Defines a blanker program. Disables the blanker  program  if  an  empty
958       argument  is given. Shows the currently set blanker program if no argu‐
959       ments are given.
960
961       breaktype [tcsendbreak|TIOCSBRK|TCSBRK]
962
963       Choose one of the available methods of generating a  break  signal  for
964       terminal  devices.  This command should affect the current window only.
965       But it still behaves identical to "defbreaktype". This will be  changed
966       in  the  future.   Calling  "breaktype"  with no parameter displays the
967       break method for the current window.
968
969       bufferfile [exchange-file]
970
971       Change the filename used for reading and writing with the paste buffer.
972       If  the  optional  argument to the "bufferfile" command is omitted, the
973       default setting ("/tmp/screen-exchange") is reactivated.  The following
974       example  will  paste  the system's password file into the screen window
975       (using the paste buffer, where a copy remains):
976
977                       C-a : bufferfile /etc/passwd
978                       C-a < C-a ]
979                       C-a : bufferfile
980
981       bumpleft
982
983       Swaps window with previous one on window list.
984
985       bumpright
986
987       Swaps window with next one on window list.
988
989       c1 [on|off]
990
991       Change c1 code processing. "C1 on" tells  screen  to  treat  the  input
992       characters  between  128  and  159 as control functions.  Such an 8-bit
993       code is normally the same as ESC followed by  the  corresponding  7-bit
994       code.  The  default  setting  is to process c1 codes and can be changed
995       with the "defc1" command.  Users with fonts that have usable characters
996       in the c1 positions may want to turn this off.
997
998       caption [ top | bottom ] always|splitonly[string]
999
1000       caption string [string]
1001
1002       This  command  controls  the display of the window captions. Normally a
1003       caption is only used if more than one window is shown  on  the  display
1004       (split  screen  mode).  But if the type is set to always screen shows a
1005       caption even if only one window is displayed. The default is splitonly.
1006
1007       The second form changes the text used for the caption. You can use  all
1008       escapes  from  the  "STRING  ESCAPES" chapter. Screen uses a default of
1009       `%3n %t'.
1010
1011       You can mix both forms by providing a string as an additional argument.
1012
1013       You can have the caption displayed either at the top or bottom  of  the
1014       window.  The default is bottom.
1015
1016       charset set
1017
1018       Change  the current character set slot designation and charset mapping.
1019       The first four character of set  are  treated  as  charset  designators
1020       while the fifth and sixth character must be in range '0' to '3' and set
1021       the GL/GR charset mapping. On every position a '.' may be used to indi‐
1022       cate  that the corresponding charset/mapping should not be changed (set
1023       is padded to six characters internally by appending  '.'   chars).  New
1024       windows  have  "BBBB02" as default charset, unless a "encoding" command
1025       is active.
1026       The current setting can be viewed with the "info" command.
1027
1028       chdir [directory]
1029
1030       Change the current directory of screen to the specified  directory  or,
1031       if called without an argument, to your home directory (the value of the
1032       environment variable $HOME).  All windows that are created by means  of
1033       the  "screen"  command  from  within  ".screenrc" or by means of "C-a :
1034       screen ..." or "C-a c" use this as their default directory.  Without  a
1035       chdir  command,  this  would  be  the  directory  from which screen was
1036       invoked.
1037
1038       Hardcopy and log files are  always  written  to  the  window's  default
1039       directory, not the current directory of the process running in the win‐
1040       dow.  You can use this command multiple  times  in  your  .screenrc  to
1041       start  various  windows  in different default directories, but the last
1042       chdir value will affect all the windows you create interactively.
1043
1044       cjkwidth [ on | off ]
1045
1046       Treat ambiguous width characters as full/half width.
1047
1048       clear
1049
1050       Clears the current window and saves its image to the scrollback buffer.
1051
1052       collapse
1053
1054       Reorders window on window list, removing number gaps between them.
1055
1056       colon [prefix]
1057
1058       Allows you to enter ".screenrc" command lines.  Useful  for  on-the-fly
1059       modification  of  key  bindings,  specific window creation and changing
1060       settings. Note that the "set" keyword no longer  exists!  Usually  com‐
1061       mands affect the current window rather than default settings for future
1062       windows. Change defaults with commands starting with 'def...'.
1063
1064       If you consider this as the `Ex command mode' of screen, you may regard
1065       "C-a esc" (copy mode) as its `Vi command mode'.
1066
1067       command [-c class]
1068
1069       This  command has the same effect as typing the screen escape character
1070       (^A). It is probably only useful for key bindings.  If the "-c"  option
1071       is  given,  select  the  specified  command class.  See also "bind" and
1072       "bindkey".
1073
1074       compacthist [on|off]
1075
1076       This tells  screen  whether  to  suppress  trailing  blank  lines  when
1077       scrolling up text into the history buffer.
1078
1079       console [on|off]
1080
1081       Grabs  or un-grabs the machines console output to a window.  Note: Only
1082       the owner of /dev/console can grab the console output.  This command is
1083       only available if the machine supports the ioctl TIOCCONS.
1084
1085       copy
1086
1087       Enter  copy/scrollback mode. This allows you to copy text from the cur‐
1088       rent window and its history into the paste buffer. In this mode  a  vi-
1089       like `full screen editor' is active:
1090       The editor's movement keys are:
1091
1092
1093       ────────────────────────────────────────────────────────────────
1094       h, C-h,        move the cursor left.
1095       left arrow
1096       ────────────────────────────────────────────────────────────────
1097       j, C-n,        move the cursor down.
1098       down arrow
1099       ────────────────────────────────────────────────────────────────
1100       k, C-p,        move the cursor up.
1101       up arrow
1102       ────────────────────────────────────────────────────────────────
1103       l ('el'),      move the cursor right.
1104       right arrow
1105       ────────────────────────────────────────────────────────────────
1106       0 (zero) C-a   move to the leftmost column.
1107       ────────────────────────────────────────────────────────────────
1108       + and -        positions one line up and down.
1109       ────────────────────────────────────────────────────────────────
1110       H, M and L     move  the  cursor  to the leftmost column of the
1111                      top, center or bottom line of the window.
1112       ────────────────────────────────────────────────────────────────
1113       |              moves to the specified absolute column.
1114       ────────────────────────────────────────────────────────────────
1115       g or home      moves to the beginning of the buffer.
1116       ────────────────────────────────────────────────────────────────
1117       G or end       moves to the specified absolute  line  (default:
1118                      end of buffer).
1119       ────────────────────────────────────────────────────────────────
1120       %              jumps to the specified percentage of the buffer.
1121       ────────────────────────────────────────────────────────────────
1122       ^ or $         move  to  the  leftmost  column, to the first or
1123                      last non-whitespace character on the line.
1124       ────────────────────────────────────────────────────────────────
1125       w, b, and e    move the cursor word by word.
1126       ────────────────────────────────────────────────────────────────
1127       B, E           move the cursor WORD by WORD (as in vi).
1128       ────────────────────────────────────────────────────────────────
1129       f/F, t/T       move the cursor  forward/backward  to  the  next
1130                      occurence  of  the  target. (eg, '3fy' will move
1131                      the cursor to the 3rd 'y' to the right.)
1132       ────────────────────────────────────────────────────────────────
1133       ; and ,        Repeat  the  last   f/F/t/T   command   in   the
1134                      same/opposite direction.
1135       ────────────────────────────────────────────────────────────────
1136
1137
1138
1139       C-e and C-y    scroll  the  display  up/down  by one line while
1140                      preserving the cursor position.
1141       ────────────────────────────────────────────────────────────────
1142       C-u and C-d    scroll the  display  up/down  by  the  specified
1143                      amount  of  lines  while  preserving  the cursor
1144                      position. (Default: half screen-full).
1145       ────────────────────────────────────────────────────────────────
1146       C-b and C-f    scroll the display up/down a full screen.
1147       ────────────────────────────────────────────────────────────────
1148
1149
1150       Note: Emacs style movement keys can be customized by a  .screenrc  com‐
1151       mand.  (E.g. markkeys "h=^B:l=^F:$=^E") There is no simple method for a
1152       full emacs-style keymap, as this involves multi-character codes.
1153
1154       Some keys are defined to do mark and replace operations.
1155
1156       The copy range is specified by setting  two  marks.  The  text  between
1157       these marks will be highlighted. Press:
1158
1159              space  or enter to set the first or second mark respectively. If
1160              mousetrack is set to `on', marks can  also  be  set  using  left
1161              mouse click.
1162
1163              Y  and  y  used  to mark one whole line or to mark from start of
1164              line.
1165
1166              W marks exactly one word.
1167
1168       Any of these commands can be prefixed with a  repeat  count  number  by
1169       pressing digits
1170
1171              0..9 which is taken as a repeat count.
1172
1173       Example:  "C-a  C-[ H 10 j 5 Y" will copy lines 11 to 15 into the paste
1174       buffer.
1175
1176       The folllowing search keys are defined:
1177
1178              / Vi-like search forward.
1179
1180              ? Vi-like search backward.
1181
1182              C-a s Emacs style incremental search forward.
1183
1184              C-r Emacs style reverse i-search.
1185
1186              n Find next search pattern.
1187
1188              N Find previous search pattern.
1189
1190
1191       There are however some keys that act differently than in vi.   Vi  does
1192       not  allow  one  to  yank  rectangular blocks of text, but screen does.
1193       Press: c or C to set the left  or  right  margin  respectively.  If  no
1194       repeat count is given, both default to the current cursor position.
1195
1196       Example: Try this on a rather full text screen:
1197
1198              "C-a [ M 20 l SPACE c 10 l 5 j C SPACE".
1199
1200       This  moves  one  to the middle line of the screen, moves in 20 columns
1201       left, marks the beginning of the paste buffer, sets  the  left  column,
1202       moves  5 columns down, sets the right column, and then marks the end of
1203       the paste buffer. Now try:
1204
1205              "C-a [ M 20 l SPACE 10 l 5 j SPACE"
1206
1207       and notice the difference in the amount of text copied.
1208
1209       J joins lines. It toggles between 4 modes: lines separated by a newline
1210       character  (012),  lines  glued  seamless,  lines separated by a single
1211       whitespace and comma separated lines. Note that  you  can  prepend  the
1212       newline  character with a carriage return character, by issuing a "crlf
1213       on".
1214
1215       v or V is for all the vi users with ":set numbers"  -  it  toggles  the
1216       left margin between column 9 and 1. Press
1217
1218       a  before  the  final space key to toggle in append mode. Thus the con‐
1219       tents of the paste buffer will not be overwritten, but is appended to.
1220
1221       A toggles in append mode and sets a (second) mark.
1222
1223       > sets the (second) mark and writes the contents of the paste buffer to
1224       the  screen-exchange file (/tmp/screen-exchange per default) once copy-
1225       mode is finished.
1226
1227       This example demonstrates how to dump the whole  scrollback  buffer  to
1228       that file: "C-A [ g SPACE G $ >".
1229
1230       C-g gives information about the current line and column.
1231
1232       x  or  o  exchanges the first mark and the current cursor position. You
1233       can use this to adjust an already placed mark.
1234
1235       C-l ('el') will redraw the screen.
1236
1237       @ does nothing. Does not even exit copy mode.
1238
1239       All keys not described here exit copy mode.
1240
1241       copy_reg [key]
1242
1243       No longer exists, use "readreg" instead.
1244
1245       crlf [on|off]
1246
1247       This affects the copying of text regions with the `C-a ['  command.  If
1248       it  is  set  to  `on',  lines  will  be  separated by the two character
1249       sequence `CR' - `LF'.  Otherwise (default) only `LF' is used.  When  no
1250       parameter is given, the state is toggled.
1251
1252       debug on|off
1253
1254       Turns  runtime  debugging  on  or off. If screen has been compiled with
1255       option -DDEBUG debugging available and is turned on per  default.  Note
1256       that  this command only affects debugging output from the main "SCREEN"
1257       process correctly. Debug output from attacher  processes  can  only  be
1258       turned off once and forever.
1259
1260       defc1 on|off
1261
1262       Same  as the c1 command except that the default setting for new windows
1263       is changed. Initial setting is `on'.
1264
1265       defautonuke on|off
1266
1267       Same as the autonuke command except that the default  setting  for  new
1268       displays  is  changed. Initial setting is `off'.  Note that you can use
1269       the special `AN' terminal capability if you want to have  a  dependency
1270       on the terminal type.
1271
1272       defbce on|off
1273
1274       Same as the bce command except that the default setting for new windows
1275       is changed. Initial setting is `off'.
1276
1277       defbreaktype [tcsendbreak|TIOCSBRK|TCSBRK]
1278
1279       Choose one of the available methods of generating a  break  signal  for
1280       terminal  devices.  The preferred methods are tcsendbreak and TIOCSBRK.
1281       The third, TCSBRK, blocks the complete screen session for the  duration
1282       of  the  break,  but  it  may  be the only way to generate long breaks.
1283       Tcsendbreak and TIOCSBRK may or may not produce long breaks with spikes
1284       (e.g.  4 per second). This is not only system-dependent, this also dif‐
1285       fers between serial board  drivers.   Calling  "defbreaktype"  with  no
1286       parameter displays the current setting.
1287
1288       defcharset [set]
1289
1290       Like  the  charset command except that the default setting for new win‐
1291       dows is changed. Shows current default if called without argument.
1292
1293       defdynamictitle on|off
1294
1295       Set default behaviour for new windows regarding if screen should change
1296       window title when seeing proper escape sequence. See also "TITLES (nam‐
1297       ing windows)" section.
1298
1299       defescape xy
1300
1301       Set the default command characters. This is equivalent to the  "escape"
1302       except  that  it is useful multiuser sessions only. In a multiuser ses‐
1303       sion "escape" changes the command character of the calling user,  where
1304       "defescape"  changes the default command characters for users that will
1305       be added later.
1306
1307       defflow on|off|auto [interrupt]
1308
1309       Same as the flow command except that the default setting for  new  win‐
1310       dows  is  changed. Initial setting is `auto'.  Specifying "defflow auto
1311       interrupt" is the same as the command-line options -fa and -i.
1312
1313       defgr on|off
1314
1315       Same as the gr command except that the default setting for new  windows
1316       is changed. Initial setting is `off'.
1317
1318       defhstatus [status]
1319
1320       The  hardstatus  line  that  all new windows will get is set to status.
1321       This command is useful to make the hardstatus of every  window  display
1322       the  window  number  or title or the like.  Status may contain the same
1323       directives as in the window messages, but the directive escape  charac‐
1324       ter is '^E' (octal 005) instead of '%'.  This was done to make a misin‐
1325       terpretation of program generated hardstatus lines impossible.  If  the
1326       parameter  status  is omitted, the current default string is displayed.
1327       Per default the hardstatus line of new windows is empty.
1328
1329       defencoding enc
1330
1331       Same as the encoding command except that the default  setting  for  new
1332       windows is changed. Initial setting is the encoding taken from the ter‐
1333       minal.
1334
1335       deflog on|off
1336
1337       Same as the log command except that the default setting for new windows
1338       is changed. Initial setting is `off'.
1339
1340       deflogin on|off
1341
1342       Same  as the login command except that the default setting for new win‐
1343       dows is changed. This is initialized with `on' as distributed (see con‐
1344       fig.h.in).
1345
1346       defmode mode
1347
1348       The mode of each newly allocated pseudo-tty is set to mode.  Mode is an
1349       octal number.  When no "defmode" command is given, mode 0622 is used.
1350
1351       defmonitor on|off
1352
1353       Same as the monitor command except that the  default  setting  for  new
1354       windows is changed. Initial setting is `off'.
1355
1356       defmousetrack on|off
1357
1358       Same  as the mousetrack command except that the default setting for new
1359       windows is changed. Initial setting is `off'.
1360
1361       defnonblock on|off|numsecs
1362
1363       Same as the nonblock command except that the default setting  for  dis‐
1364       plays is changed. Initial setting is `off'.
1365
1366       defobuflimit limit
1367
1368       Same  as  the obuflimit command except that the default setting for new
1369       displays is changed. Initial setting is 256 bytes.  Note that  you  can
1370       use  the  special 'OL' terminal capability if you want to have a depen‐
1371       dency on the terminal type.
1372
1373       defscrollback num
1374
1375       Same as the scrollback command except that the default setting for  new
1376       windows is changed. Initial setting is 100.
1377
1378       defshell command
1379
1380       Synonym to the shell .screenrc command. See there.
1381
1382       defsilence on|off
1383
1384       Same  as  the  silence  command except that the default setting for new
1385       windows is changed. Initial setting is `off'.
1386
1387       defslowpaste msec
1388
1389       Same as the slowpaste command except that the default setting  for  new
1390       windows is changed. Initial setting is 0 milliseconds, meaning `off'.
1391
1392       defutf8 on|off
1393
1394       Same  as  the utf8 command except that the default setting for new win‐
1395       dows is changed. Initial setting is `on' if  screen  was  started  with
1396       "-U", otherwise `off'.
1397
1398       defwrap on|off
1399
1400       Same  as  the wrap command except that the default setting for new win‐
1401       dows is changed. Initially line-wrap is on and can be toggled with  the
1402       "wrap" command ("C-a r") or by means of "C-a : wrap on|off".
1403
1404       defwritelock on|off|auto
1405
1406       Same  as  the writelock command except that the default setting for new
1407       windows is changed. Initially writelocks will off.
1408
1409       detach [-h]
1410
1411       Detach the screen session (disconnect it from the terminal and  put  it
1412       into  the background).  This returns you to the shell where you invoked
1413       screen.  A detached screen can be resumed by invoking screen  with  the
1414       -r  option  (see  also  section  "COMMAND-LINE OPTIONS"). The -h option
1415       tells screen to  immediately  close  the  connection  to  the  terminal
1416       ("hangup").
1417
1418       dinfo
1419
1420       Show what screen thinks about your terminal. Useful if you want to know
1421       why features like color or the alternate charset don't work.
1422
1423       displays
1424
1425       Shows a tabular listing of  all  currently  connected  user  front-ends
1426       (displays).  This is most useful for multiuser sessions.  The following
1427       keys can be used in displays list:
1428
1429       ───────────────────────────────────────────────────────
1430       k, C-p, or up           Move up one line.
1431       ───────────────────────────────────────────────────────
1432       j, C-n, or down         Move down one line.
1433       ───────────────────────────────────────────────────────
1434       C-a or home             Move to the first line.
1435       ───────────────────────────────────────────────────────
1436       C-e or end              Move to the last line.
1437       ───────────────────────────────────────────────────────
1438       C-u or C-d              Move one half page up or down.
1439       ───────────────────────────────────────────────────────
1440       C-b or C-f              Move one full page up or down.
1441       ───────────────────────────────────────────────────────
1442       mouseclick              Move  to  the  selected  line.
1443                               Available when "mousetrack" is
1444                               set to on.
1445       ───────────────────────────────────────────────────────
1446       space                   Refresh the list
1447       ───────────────────────────────────────────────────────
1448       d                       Detach that display
1449       ───────────────────────────────────────────────────────
1450       D                       Power detach that display
1451       ───────────────────────────────────────────────────────
1452       C-g, enter, or escape   Exit the list
1453       ───────────────────────────────────────────────────────
1454
1455       The following is an example of what "displays" could look like:
1456              xterm 80x42 jnweiger@/dev/ttyp4     0(m11)   &rWx
1457              facit 80x24 mlschroe@/dev/ttyhf nb 11(tcsh)   rwx
1458              xterm 80x42 jnhollma@/dev/ttyp5     0(m11)   &R.x
1459               (A)   (B)     (C)     (D)     (E) (F)(G)   (H)(I)
1460
1461       The legend is as follows:
1462
1463              (A) The terminal type known by screen for this display.
1464
1465              (B) Displays geometry as width x height.
1466
1467              (C) Username who is logged in at the display.
1468
1469              (D) Device name of the display or the attached device
1470
1471              (E) Display is in blocking or nonblocking mode.   The  available
1472              modes are "nb", "NB", "Z<", "Z>", and "BL".
1473
1474              (F) Number of the window
1475
1476              (G) Name/title of window
1477
1478              (H) Whether the window is shared
1479
1480              (I) Window permissions. Made up of three characters.
1481
1482              ┌────────────────────────────────────────────────────────┐
1483              │             Window permissions indicators              │
1484              ├─────────────────┬──────────────────┬───────────────────┤
1485              │ 1st character   │  2nd character   │   3rd character   │
1486              ├────┬────────────┼─────┬────────────┼─────┬─────────────┤
1487-   │no read     │ -   │no write    │ -   │no execute   │
1488              ├────┼────────────┼─────┼────────────┼─────┼─────────────┤
1489r   │read        │ w   │write       │ x   │execute      │
1490              ├────┼────────────┼─────┼────────────┼─────┼─────────────┤
1491              │    │            │ W   │own wlock   │     │             │
1492              ├────┴────────────┴─────┴────────────┴─────┴─────────────┤
1493              │Indicators of permissions suppressed by a foreign wlock │
1494              ├────┬────────────┬─────┬────────────┬─────┬─────────────┤
1495R   │read only   │ .   │no write    │     │             │
1496              └────┴────────────┴─────┴────────────┴─────┴─────────────┘
1497              "displays"  needs  a  region size of at least 10 characters wide
1498              and 5 characters high in order to display.
1499
1500       digraph [preset[unicode-value]]
1501
1502       This command prompts the user for a  digraph  sequence.  The  next  two
1503       characters  typed  are  looked  up in a builtin table and the resulting
1504       character is inserted in the input stream. For  example,  if  the  user
1505       enters  'a"',  an  a-umlaut  will  be  inserted. If the first character
1506       entered is a 0 (zero), screen will treat the following  characters  (up
1507       to  three) as an octal number instead.  The optional argument preset is
1508       treated as user input, thus one can create an "umlaut" key.  For  exam‐
1509       ple  the  command "bindkey ^K digraph '"'" enables the user to generate
1510       an a-umlaut by typing CTRL-K a.  When a non-zero unicode-value is spec‐
1511       ified,  a new digraph is created with the specified preset. The digraph
1512       is unset if a zero value is provided for the unicode-value.
1513
1514       dumptermcap
1515
1516       Write the termcap entry for the virtual terminal optimized for the cur‐
1517       rently   active   window   to   the   file  ".termcap"  in  the  user's
1518       "$HOME/.screen" directory (or wherever screen stores its  sockets.  See
1519       the  "FILES"  section  below).   This termcap entry is identical to the
1520       value of the environment variable $TERMCAP that is set up by screen for
1521       each  window.  For  terminfo  based systems you will need to run a con‐
1522       verter like captoinfo and then compile the entry with tic.
1523
1524       dynamictitle on|off
1525
1526       Change behaviour for windows regarding if screen should  change  window
1527       title when seeing proper escape sequence. See also "TITLES (naming win‐
1528       dows)" section.
1529
1530       echo [-n] message
1531
1532       The echo command may be used to annoy screen users with a  'message  of
1533       the  day'.  Typically  installed in a global /etc/screenrc.  The option
1534       "-n" may be used to suppress the line feed.  See also "sleep".  Echo is
1535       also useful for online checking of environment variables.
1536
1537       encoding enc [enc]
1538
1539       Tell  screen how to interpret the input/output. The first argument sets
1540       the encoding of the current window. Each window can emulate a different
1541       encoding.  The optional second parameter overwrites the encoding of the
1542       connected terminal. It should never be needed as screen uses the locale
1543       setting to detect the encoding.  There is also a way to select a termi‐
1544       nal encoding depending on the terminal type by using the  "KJ"  termcap
1545       entry.
1546
1547       Supported  encodings  are eucJP, SJIS, eucKR, eucCN, Big5, GBK, KOI8-R,
1548       KOI8-U, CP1251,  UTF-8,  ISO8859-2,  ISO8859-3,  ISO8859-4,  ISO8859-5,
1549       ISO8859-6,  ISO8859-7,  ISO8859-8,  ISO8859-9,  ISO8859-10, ISO8859-15,
1550       jis.
1551
1552       See also "defencoding", which changes the default setting of a new win‐
1553       dow.
1554
1555       escape xy
1556
1557       Set  the  command character to x and the character generating a literal
1558       command character (by triggering the "meta" command) to y  (similar  to
1559       the  -e  option).   Each  argument is either a single character, a two-
1560       character sequence of the form "^x" (meaning "C-x"), a  backslash  fol‐
1561       lowed  by an octal number (specifying the ASCII code of the character),
1562       or a backslash followed by a second character, such as  "\^"  or  "\\".
1563       The default is "^Aa".
1564
1565       eval command1[command2 ...]
1566
1567       Parses and executes each argument as separate command.
1568
1569       exec [[fdpat]newcommand [args ...]]
1570
1571       Run  a  unix subprocess (specified by an executable path newcommand and
1572       its optional arguments) in the current window. The flow of data between
1573       newcommands  stdin/stdout/stderr, the process originally started in the
1574       window (let us call it "application-process") and screen  itself  (win‐
1575       dow)  is controlled by the file descriptor pattern fdpat.  This pattern
1576       is basically a three character sequence representing stdin, stdout  and
1577       stderr of newcommand. A dot (.) connects the file descriptor to screen.
1578       An exclamation mark (!) causes the file descriptor to be  connected  to
1579       the application-process. A colon (:) combines both.  User input will go
1580       to newcommand unless newcommand receives the application-process'  out‐
1581       put  (fdpats  first  character  is  `!' or `:') or a pipe symbol (|) is
1582       added (as a fourth character) to the end of fdpat.
1583
1584       Invoking `exec' without arguments shows name and arguments of the  cur‐
1585       rently  running  subprocess  in this window. Only one subprocess a time
1586       can be running in each window.
1587
1588       When a subprocess is running the `kill' command will affect it  instead
1589       of the windows process.
1590
1591       Refer  to  the postscript file `doc/fdpat.ps' for a confusing illustra‐
1592       tion of all 21 possible combinations. Each  drawing  shows  the  digits
1593       2,1,0  representing  the  three file descriptors of newcommand. The box
1594       marked `W' is the usual pty that has  the  application-process  on  its
1595       slave  side.   The  box  marked  `P'  is the secondary pty that now has
1596       screen at its master side.
1597
1598       Abbreviations: Whitespace between the word `exec'  and  fdpat  and  the
1599       command  can  be  omitted. Trailing dots and a fdpat consisting only of
1600       dots can be omitted. A simple `|' is synonymous for the pattern `!..|';
1601       the word exec can be omitted here and can always be replaced by `!'.
1602
1603       Examples:
1604
1605              exec ... /bin/sh
1606
1607              exec /bin/sh
1608
1609              !/bin/sh
1610
1611                     Creates another shell in the same window, while the orig‐
1612                     inal shell is still running. Output  of  both  shells  is
1613                     displayed and user input is sent to the new /bin/sh.
1614
1615              exec !.. stty 19200
1616
1617              exec ! stty 19200
1618
1619              !!stty 19200
1620
1621                     Set  the  speed of the window's tty. If your stty command
1622                     operates on stdout, then add another `!'.
1623
1624              exec !..| less
1625
1626              |less
1627
1628                     This adds a pager to the window output. The special char‐
1629                     acter  `|'  is  needed  to give the user control over the
1630                     pager although  it  gets  its  input  from  the  window's
1631                     process.  This  works,  because less listens on stderr (a
1632                     behavior that screen would not expect  without  the  `|')
1633                     when  its  stdin  is not a tty.  Less versions newer than
1634                     177 fail miserably here; good old pg still works.
1635
1636              !:sed -n s/.*Error.*/\007/p
1637
1638                     Sends window output to both, the user and  the  sed  com‐
1639                     mand.  The sed inserts an additional bell character (oct.
1640                     007) to the window output  seen  by  screen.   This  will
1641                     cause  "Bell  in  window x" messages, whenever the string
1642                     "Error" appears in the window.
1643
1644       fit
1645
1646       Change the window size to the size of the current region. This  command
1647       is needed because screen doesn't adapt the window size automatically if
1648       the window is displayed more than once.
1649
1650       flow   [on|off|auto]
1651
1652       Sets the flow-control mode for  this  window.   Without  parameters  it
1653       cycles  the  current  window's flow-control setting from "automatic" to
1654       "on" to "off".  See the discussion on "FLOW-CONTROL" later on  in  this
1655       document  for  full details and note, that this is subject to change in
1656       future releases.  Default is set by `defflow'.
1657
1658       focus [next|prev|up|down|left|right|top|bottom]
1659
1660       Move the input focus to the next region. This is done in a  cyclic  way
1661       so  that the top left region is selected after the bottom right one. If
1662       no option is given it  defaults  to  `next'.  The  next  region  to  be
1663       selected  is  determined by how the regions are layered.  Normally, the
1664       next region in the same layer would be selected.  However, if that next
1665       region  contains  one  or  more layers, the first region in the highest
1666       layer is selected first. If you are at the last region of  the  current
1667       layer, `next' will move the focus to the next region in the lower layer
1668       (if there is a lower layer).  `Prev' cycles in the opposite order.  See
1669       "split" for more information about layers.
1670
1671       The  rest  of  the  options  (`up', `down', `left', `right', `top', and
1672       `bottom') are more indifferent to layers. The option `up' will move the
1673       focus  upward  to  the region that is touching the upper left corner of
1674       the current region.  `Down' will move downward to the  region  that  is
1675       touching the lower left corner of the current region. The option `left'
1676       will move the focus leftward to the region that is touching  the  upper
1677       left corner of the current region, while `right' will move rightward to
1678       the region that is touching the  upper  right  corner  of  the  current
1679       region.  Moving  left  from  a  left most region or moving right from a
1680       right most region will result in no action.
1681
1682       The option `top' will move the focus to the very first  region  in  the
1683       upper  list  corner of the screen, and `bottom' will move to the region
1684       in the bottom right corner of the screen. Moving up  from  a  top  most
1685       region  or  moving  down  from  a  bottom most region will result in no
1686       action.
1687
1688       Useful bindings are (h, j, k, and l as in vi)
1689           bind h focus left
1690           bind j focus down
1691           bind k focus up
1692           bind l focus right
1693           bind t focus top
1694           bind b focus bottom
1695       Note that k is traditionally bound to the kill command.
1696
1697       focusminsize [ ( width|max|_ ) ( height|max|_ ) ]
1698
1699       This forces any currently selected region to be  automatically  resized
1700       at least a certain width and height. All other surrounding regions will
1701       be resized in order to accommodate.  This constraint follows  everytime
1702       the  "focus"  command  is  used.  The  "resize"  command can be used to
1703       increase either dimension of a region, but never below what is set with
1704       "focusminsize".  The  underscore  `_'  is  a synonym for max. Setting a
1705       width and height of `0 0' (zero zero) will  undo  any  constraints  and
1706       allow  for  manual resizing.  Without any parameters, the minimum width
1707       and height is shown.
1708
1709       gr [on|off]
1710
1711       Turn GR charset switching on/off. Whenever screen sees an input charac‐
1712       ter with the 8th bit set, it will use the charset stored in the GR slot
1713       and print the character with the 8th bit  stripped.  The  default  (see
1714       also  "defgr")  is  not  to  process GR switching because otherwise the
1715       ISO88591 charset would not work.
1716
1717       group [grouptitle]
1718
1719       Change or show the group the current window belongs to. Windows can  be
1720       moved  around  between  different  groups by specifying the name of the
1721       destination group. Without specifying a group, the title of the current
1722       group is displayed.
1723
1724       hardcopy [-h] [file]
1725
1726       Writes  out  the  currently displayed image to the file file, or, if no
1727       filename is specified, to hardcopy.n in the default directory, where  n
1728       is the number of the current window.  This either appends or overwrites
1729       the file if it exists. See below.  If the option -h is specified,  dump
1730       also the contents of the scrollback buffer.
1731
1732       hardcopy_append on|off
1733
1734       If set to "on", screen will append to the "hardcopy.n" files created by
1735       the command "C-a h", otherwise these files are overwritten  each  time.
1736       Default is `off'.
1737
1738       hardcopydir directory
1739
1740       Defines  a  directory  where  hardcopy  files will be placed. If unset,
1741       hardcopys are dumped in screen's current working directory.
1742
1743       hardstatus [on|off]
1744
1745       hardstatus [always]firstline|lastline|message|ignore[string]
1746
1747       hardstatus string[string]
1748
1749       This command configures the use and emulation of the  terminal's  hard‐
1750       status  line.  The first form toggles whether screen will use the hard‐
1751       ware status line to display messages. If the  flag  is  set  to  `off',
1752       these  messages are overlaid in reverse video mode at the display line.
1753       The default setting is `on'.
1754
1755       The second form tells screen what to do if the terminal doesn't have  a
1756       hardstatus  line  (i.e.  the  termcap/terminfo capabilities "hs", "ts",
1757       "fs" and "ds" are not set).  When "firstline/lastline" is used,  screen
1758       will  reserve  the  first/last  line of the display for the hardstatus.
1759       "message" uses screen's message mechanism  and  "ignore"  tells  screen
1760       never  to  display the hardstatus.  If you prepend the word "always" to
1761       the type (e.g., "alwayslastline"), screen will use the type even if the
1762       terminal supports a hardstatus.
1763
1764       The  third form specifies the contents of the hardstatus line.  '%h' is
1765       used as default string, i.e., the stored hardstatus of the current win‐
1766       dow  (settable  via  "ESC]0;<string>^G"  or "ESC_<string>ESC\") is dis‐
1767       played.  You can customize this to any string you  like  including  the
1768       escapes  from  the "STRING ESCAPES" chapter. If you leave out the argu‐
1769       ment string, the current string is displayed.
1770
1771       You can mix the second and third form by providing the string as  addi‐
1772       tional argument.
1773
1774       height [-w|-d] [lines [cols]]
1775
1776       Set the display height to a specified number of lines. When no argument
1777       is given it toggles between 24 and 42 lines display. You can also spec‐
1778       ify  a  width  if  you want to change both values.  The -w option tells
1779       screen to leave the display size unchanged  and  just  set  the  window
1780       size, -d vice versa.
1781
1782       help[class]
1783
1784       Not  really  a  online help, but displays a help screen showing you all
1785       the key bindings.  The first pages list all the internal commands  fol‐
1786       lowed  by  their  current  bindings.  Subsequent pages will display the
1787       custom commands, one command per key.  Press  space  when  you're  done
1788       reading  each  page, or return to exit early.  All other characters are
1789       ignored. If the "-c" option is given, display all  bound  commands  for
1790       the specified command class.  See also "DEFAULT KEY BINDINGS" section.
1791
1792       history
1793
1794       Usually  users  work  with  a shell that allows easy access to previous
1795       commands.  For example csh has the command "!!" to repeat the last com‐
1796       mand executed.  Screen allows you to have a primitive way of re-calling
1797       "the command that started ...": You just type the first letter of  that
1798       command, then hit `C-a {' and screen tries to find a previous line that
1799       matches with the `prompt character' to the left  of  the  cursor.  This
1800       line  is  pasted into this window's input queue.  Thus you have a crude
1801       command history (made up by the visible window and its scrollback  buf‐
1802       fer).
1803
1804       hstatus status
1805
1806       Change the window's hardstatus line to the string status.
1807
1808       idle [timeout[cmd-args]]
1809
1810       Sets  a command that is run after the specified number of seconds inac‐
1811       tivity is reached. This command will normally be the "blanker"  command
1812       to  create  a  screen blanker, but it can be any screen command.  If no
1813       command is specified, only the timeout is set. A timeout  of  zero  (or
1814       the  special  timeout  off)  disables  the  timer.  If no arguments are
1815       given, the current settings are displayed.
1816
1817       ignorecase [on|off]
1818
1819       Tell screen to ignore the case of characters in  searches.  Default  is
1820       `off'. Without any options, the state of ignorecase is toggled.
1821
1822       info
1823
1824       Uses  the  message  line  to display some information about the current
1825       window: the cursor position in the form  "(column,row)"  starting  with
1826       "(1,1)",  the terminal width and height plus the size of the scrollback
1827       buffer in lines, like in "(80,24)+50",  the  current  state  of  window
1828       XON/XOFF  flow  control  is shown like this (See also section FLOW CON‐
1829       TROL):
1830
1831       ┌─────────┬──────────────────────────────────────────────────────────┐
1832       │+flow    │ automatic flow control, currently on.                    │
1833       ├─────────┼──────────────────────────────────────────────────────────┤
1834       │-flow    │ automatic flow control, currently off.                   │
1835       ├─────────┼──────────────────────────────────────────────────────────┤
1836       │+(+)flow │ flow control enabled. Agrees with automatic control.     │
1837       ├─────────┼──────────────────────────────────────────────────────────┤
1838       │-(+)flow │ flow control disabled. Disagrees with automatic control. │
1839       ├─────────┼──────────────────────────────────────────────────────────┤
1840       │+(-)flow │ flow control enabled. Disagrees with automatic control.  │
1841       ├─────────┼──────────────────────────────────────────────────────────┤
1842       │-(-)flow │ flow control disabled. Agrees with automatic control.    │
1843       └─────────┴──────────────────────────────────────────────────────────┘
1844       The current line wrap setting (`+wrap' indicates enabled, `-wrap'  not)
1845       is  also  shown. The flags `ins', `org', `app', `log', `mon' or `nored'
1846       are displayed when the window is in insert mode, origin mode,  applica‐
1847       tion-keypad  mode,  has  output logging, activity monitoring or partial
1848       redraw enabled.
1849
1850       The currently active character set (G0, G1, G2, or G3)  and  in  square
1851       brackets  the  terminal character sets that are currently designated as
1852       G0 through G3 is shown. If the window is  in  UTF-8  mode,  the  string
1853       "UTF-8" is shown instead.
1854
1855       Additional  modes  depending on the type of the window are displayed at
1856       the end of the status line (See also chapter "WINDOW TYPES").
1857
1858       If the state machine of the  terminal  emulator  is  in  a  non-default
1859       state,  the  info line is started with a string identifying the current
1860       state.
1861
1862       For system information use the "time" command.
1863
1864       ins_reg [key]
1865
1866       No longer exists, use "paste" instead.
1867
1868       kill
1869
1870       Kill current window.
1871
1872       If there is an `exec' command running then it is killed. Otherwise  the
1873       process  (shell) running in the window receives a HANGUP condition, the
1874       window structure is removed  and  screen  (your  display)  switches  to
1875       another  window.   When  the  last  window  is destroyed, screen exits.
1876       After a kill screen switches to the previously displayed window.
1877
1878       Note: Emacs users should keep this command  in  mind,  when  killing  a
1879       line.   It  is recommended not to use "C-a" as the screen escape key or
1880       to rebind kill to "C-a K".
1881
1882       lastmsg
1883
1884       Redisplay the last contents of  the  message/status  line.   Useful  if
1885       you're  typing  when  a message appears, because  the message goes away
1886       when you press a key (unless your terminal has a hardware status line).
1887       Refer to the commands "msgwait" and "msgminwait" for fine tuning.
1888
1889       layout new [title]
1890
1891       Create  a new layout. The screen will change to one whole region and be
1892       switched to the blank window. From here, you build the regions and  the
1893       windows  they  show as you desire. The new layout will be numbered with
1894       the smallest available integer, starting with zero. You can  optionally
1895       give  a  title  to  your new layout.  Otherwise, it will have a default
1896       title of "layout". You can always change the title later by  using  the
1897       command layout title.
1898
1899       layout remove [n|title]
1900
1901       Remove, or in other words, delete the specified layout. Either the num‐
1902       ber or the title can be specified. Without either specification, screen
1903       will remove the current layout.
1904
1905       Removing a layout does not affect your set windows or regions.
1906
1907       layout next
1908
1909       Switch to the next layout available
1910
1911       layout prev
1912
1913       Switch to the previous layout available
1914
1915       layout select [n|title]
1916
1917       Select the desired layout. Either the number or the title can be speci‐
1918       fied. Without either specification, screen will prompt  and  ask  which
1919       screen  is  desired. To see which layouts are available, use the layout
1920       show command.
1921
1922       layout show
1923
1924       List on the message line the number(s) and title(s)  of  the  available
1925       layout(s). The current layout is flagged.
1926
1927       layout title [title]
1928
1929       Change  or display the title of the current layout. A string given will
1930       be used to name the layout. Without any options, the current title  and
1931       number is displayed on the message line.
1932
1933       layout number [n]
1934
1935       Change  or  display  the number of the current layout. An integer given
1936       will be used to number the layout. Without  any  options,  the  current
1937       number and title is displayed on the message line.
1938
1939       layout attach [title|:last]
1940
1941       Change  or  display  which  layout  to reattach back to. The default is
1942       :last, which tells screen to reattach back to the last used layout just
1943       before  detachment.  By  supplying  a title, You can instruct screen to
1944       reattach to a particular layout regardless which one was  used  at  the
1945       time of detachment. Without any options, the layout to reattach to will
1946       be shown in the message line.
1947
1948       layout save [n|title]
1949
1950       Remember the current arrangement of regions.  When  used,  screen  will
1951       remember  the arrangement of vertically and horizontally split regions.
1952       This arrangement is restored when a screen  session  is  reattached  or
1953       switched  back  from  a  different  layout.  If the session ends or the
1954       screen process dies, the layout arrangements are lost. The layout  dump
1955       command  should  help  in  this siutation. If a number or title is sup‐
1956       plied, screen will remember the arrangement of that particular  layout.
1957       Without any options, screen will remember the current layout.
1958
1959       Saving  your  regions  can  be  done  automatically by using the layout
1960       autosave command.
1961
1962       layout autosave [on|off]
1963
1964       Change or display  the  status  of  automatcally  saving  layouts.  The
1965       default  is on, meaning when screen is detached or changed to a differ‐
1966       ent layout, the arrangement of regions and windows will  be  remembered
1967       at  the time of change and restored upon return.  If autosave is set to
1968       off, that arrangement will only be restored to either to the last  man‐
1969       ual  save,  using layout save, or to when the layout was first created,
1970       to a single region with a single window. Without either an on  or  off,
1971       the current status is displayed on the message line.
1972
1973       layout dump [filename]
1974
1975       Write to a file the order of splits made in the current layout. This is
1976       useful to recreate the order of your regions used in your current  lay‐
1977       out.  Only  the  current  layout  is  recorded.  While the order of the
1978       regions are recorded, the sizes of those regions and which windows cor‐
1979       respond  to  which  regions  are  not. If no filename is specified, the
1980       default is layout-dump, saved in the directory that the screen  process
1981       was  started in. If the file already exists, layout dump will append to
1982       that file. As an example:
1983
1984                C-a : layout dump /home/user/.screenrc
1985
1986       will save or append the layout to the user's .screenrc file.
1987
1988       license
1989
1990       Display the disclaimer page. This is done whenever  screen  is  started
1991       without   options,   which   should  be  often  enough.  See  also  the
1992       "startup_message" command.
1993
1994       lockscreen
1995
1996       Lock this  display.   Call  a  screenlock  program  (/local/bin/lck  or
1997       /usr/bin/lock  or  a builtin if no other is available). Screen does not
1998       accept any command keys until this program terminates.  Meanwhile  pro‐
1999       cesses  in  the  windows  may  continue,  as  the  windows  are  in the
2000       `detached' state. The screenlock program may  be  changed  through  the
2001       environment  variable  $LOCKPRG  (which  must  be set in the shell from
2002       which screen is started) and is executed with the user's uid and gid.
2003
2004       Warning: When you leave other shells unlocked and you have no  password
2005       set  on  screen,  the  lock is void: One could easily re-attach from an
2006       unlocked shell. This feature should rather be called `lockterminal'.
2007
2008       log [on|off]
2009
2010       Start/stop writing output of the current window to a file "screenlog.n"
2011       in the window's default directory, where n is the number of the current
2012       window. This filename can be changed with the `logfile' command. If  no
2013       parameter is given, the state of logging is toggled. The session log is
2014       appended to the previous contents of the file if it already exists. The
2015       current  contents  and  the  contents of the scrollback history are not
2016       included in the session log.  Default is `off'.
2017
2018       logfile filename
2019
2020       logfile flush secs
2021
2022       Defines the name the log files will get. The default is "screenlog.%n".
2023       The  second  form changes the number of seconds screen will wait before
2024       flushing the logfile buffer to the file-system. The default value is 10
2025       seconds.
2026
2027       login [on|off]
2028
2029       Adds  or  removes  the  entry in the utmp database file for the current
2030       window.  This controls if the window is `logged in'.  When no parameter
2031       is  given,  the  login state of the window is toggled.  Additionally to
2032       that toggle, it is convenient having a `log in' and a  `log  out'  key.
2033       E.g. `bind I login on' and `bind O login off' will map these keys to be
2034       C-a I and C-a O.  The default setting (in config.h.in) should  be  "on"
2035       for  a screen that runs under suid-root.  Use the "deflogin" command to
2036       change the default login state for new windows. Both commands are  only
2037       present when screen has been compiled with utmp support.
2038
2039       logtstamp [on|off]
2040
2041       logtstamp after [secs]
2042
2043       logtstamp string
2044       [string]
2045
2046       This command controls logfile time-stamp mechanism of screen.  If time-
2047       stamps are turned "on", screen adds a  string  containing  the  current
2048       time  to the logfile after two minutes of inactivity.  When output con‐
2049       tinues and more than another two minutes have passed,  a  second  time-
2050       stamp  is  added  to document the restart of the output. You can change
2051       this timeout with the second form of the command.  The  third  form  is
2052       used  for customizing the time-stamp string (`-- %n:%t -- time-stamp --
2053       %M/%d/%y %c:%s --\n' by default).
2054
2055       mapdefault
2056
2057       Tell screen that the next input character should only be looked  up  in
2058       the default bindkey table. See also "bindkey".
2059
2060       mapnotnext
2061
2062       Like mapdefault, but don't even look in the default bindkey table.
2063
2064       maptimeout [timeout]
2065
2066       Set the inter-character timer for input sequence detection to a timeout
2067       of timeout ms. The default timeout is 300ms. Maptimeout with  no  argu‐
2068       ments shows the current setting.  See also "bindkey".
2069
2070       markkeys string
2071
2072       This  is  a  method  of changing the keymap used for copy/history mode.
2073       The string is made up of oldchar=newchar pairs which are  separated  by
2074       `:'. Example: The string "B=^B:F=^F" will change the keys `C-b' and `C-
2075       f' to the vi style binding (scroll up/down fill page).  This happens to
2076       be  the  default  binding  for  `B'  and  `F'.   The  command "markkeys
2077       h=^B:l=^F:$=^E" would set the mode for an emacs-style binding.  If your
2078       terminal sends characters, that cause you to abort copy mode, then this
2079       command may help by binding these characters to do nothing.  The  no-op
2080       character  is `@' and is used like this: "markkeys @=L=H" if you do not
2081       want to use the `H' or `L' commands any longer.  As shown in this exam‐
2082       ple,  multiple  keys can be assigned to one function in a single state‐
2083       ment.
2084
2085       maxwin num
2086
2087       Set the maximum  window  number  screen  will  create.  Doesn't  affect
2088       already  existing  windows. The number can be increased only when there
2089       are no existing windows.
2090
2091       meta
2092
2093       Insert the command  character  (C-a)  in  the  current  window's  input
2094       stream.
2095
2096       monitor [on|off]
2097
2098       Toggles  activity  monitoring of windows.  When monitoring is turned on
2099       and an affected window  is  switched  into  the  background,  you  will
2100       receive  the  activity  notification  message in the status line at the
2101       first sign of output and the window will also be marked with an `@'  in
2102       the  window-status  display.   Monitoring is initially off for all win‐
2103       dows.
2104
2105       mousetrack [on|off]
2106
2107       This command determines whether screen will  watch  for  mouse  clicks.
2108       When  this  command is enabled, regions that have been split in various
2109       ways can be selected by pointing to them with a mouse and left-clicking
2110       them. Without specifying on or off, the current state is displayed. The
2111       default state is determined by the "defmousetrack" command.
2112
2113       msgminwait sec
2114
2115       Defines the time screen delays a new message when one message  is  cur‐
2116       rently displayed.  The default is 1 second.
2117
2118       msgwait sec
2119
2120       Defines  the  time a message is displayed if screen is not disturbed by
2121       other activity. The default is 5 seconds.
2122
2123       multiuser on|off
2124
2125       Switch between singleuser and multiuser mode. Standard screen operation
2126       is  singleuser.  In  multiuser  mode  the  commands `acladd', `aclchg',
2127       `aclgrp' and `acldel' can be used to enable (and disable)  other  users
2128       accessing this screen session.
2129
2130       nethack on|off
2131
2132       Changes the kind of error messages used by screen.  When you are famil‐
2133       iar with the game "nethack", you may enjoy the  nethack-style  messages
2134       which will often blur the facts a little, but are much funnier to read.
2135       Anyway, standard messages often tend to be unclear as well.
2136       This option is only available if screen was compiled with  the  NETHACK
2137       flag defined. The default setting is then determined by the presence of
2138       the environment variable $NETHACKOPTIONS and the file ~/.nethackrc - if
2139       either one is present, the default is on.
2140
2141       next
2142
2143       Switch  to  the  next  window.   This command can be used repeatedly to
2144       cycle through the list of windows.
2145
2146       nonblock [on|off|numsecs]
2147
2148       Tell screen how to deal with user interfaces (displays) that  cease  to
2149       accept output. This can happen if a user presses ^S or a TCP/modem con‐
2150       nection gets cut but no hangup is received. If nonblock is off (this is
2151       the default) screen waits until the display restarts to accept the out‐
2152       put. If nonblock is on, screen waits until the timeout is  reached  (on
2153       is  treated  as  1s).  If the display still doesn't receive characters,
2154       screen will consider it "blocked" and stop sending characters to it. If
2155       at  some time it restarts to accept characters, screen will unblock the
2156       display and redisplay the updated window contents.
2157
2158       number [[+|-]n]
2159
2160       Change the current window's number. If the given number  n  is  already
2161       used  by  another  window,  both  windows exchange their numbers. If no
2162       argument is specified, the current window number (and title) is  shown.
2163       Using `+' or `-' will change the window's number by the relative amount
2164       specified.
2165
2166       obuflimit [limit]
2167
2168       If the output buffer contains more bytes than the specified  limit,  no
2169       more  data  will be read from the windows. The default value is 256. If
2170       you have a fast display (like xterm), you can set  it  to  some  higher
2171       value. If no argument is specified, the current setting is displayed.
2172
2173       only
2174
2175       Kill all regions but the current one.
2176
2177       other
2178
2179       Switch  to  the  window  displayed  previously.  If this window does no
2180       longer exist, other has the same effect as next.
2181
2182       partial on|off
2183
2184       Defines whether the display should be  refreshed  (as  with  redisplay)
2185       after  switching  to  the current window. This command only affects the
2186       current window.  To immediately affect all windows use  the  allpartial
2187       command.  Default is `off', of course.  This default is fixed, as there
2188       is currently no defpartial command.
2189
2190       password [crypted_pw]
2191
2192       Present a crypted password in your ".screenrc" file and screen will ask
2193       for  it, whenever someone attempts to resume a detached. This is useful
2194       if you have privileged programs running under screen and  you  want  to
2195       protect  your session from reattach attempts by another user masquerad‐
2196       ing as your uid (i.e. any superuser.)  If no crypted password is speci‐
2197       fied, screen prompts twice for typing a password and places its encryp‐
2198       tion in the paste buffer.  Default is `none',  this  disables  password
2199       checking.
2200
2201       paste [registers [dest_reg]]
2202
2203       Write  the  (concatenated)  contents  of the specified registers to the
2204       stdin queue of the current window. The register '.' is treated  as  the
2205       paste  buffer. If no parameter is given the user is prompted for a sin‐
2206       gle register to paste.  The paste buffer can be filled with  the  copy,
2207       history  and  readbuf commands.  Other registers can be filled with the
2208       register, readreg and paste commands.  If paste is called with a second
2209       argument,  the  contents  of the specified registers is pasted into the
2210       named destination register rather than the window. If '.'  is  used  as
2211       the  second  argument,  the  displays  paste buffer is the destination.
2212       Note, that "paste" uses a wide variety of resources: Whenever a  second
2213       argument  is  specified  no  current  window is needed. When the source
2214       specification only contains registers (not the paste buffer) then there
2215       need not be a current display (terminal attached), as the registers are
2216       a global resource. The paste buffer exists once for every user.
2217
2218       pastefont [on|off]
2219
2220       Tell screen to include  font  information  in  the  paste  buffer.  The
2221       default  is  not  to do so. This command is especially useful for multi
2222       character fonts like kanji.
2223
2224       pow_break
2225
2226       Reopen the window's terminal line  and  send  a  break  condition.  See
2227       `break'.
2228
2229       pow_detach
2230
2231       Power  detach.  Mainly the same as detach, but also sends a HANGUP sig‐
2232       nal to the parent process of screen.  CAUTION: This will  result  in  a
2233       logout, when screen was started from your login-shell.
2234
2235       pow_detach_msg [message]
2236
2237       The message specified here is output whenever a `Power detach' was per‐
2238       formed. It may be used as a replacement for  a  logout  message  or  to
2239       reset baud rate, etc.  Without parameter, the current message is shown.
2240
2241       prev
2242
2243       Switch  to  the window with the next lower number.  This command can be
2244       used repeatedly to cycle through the list of windows.
2245
2246       printcmd [cmd]
2247
2248       If cmd is not an empty string, screen will not use the  terminal  capa‐
2249       bilities  "po/pf"  if  it detects an ansi print sequence ESC [ 5 i, but
2250       pipe the output into cmd.  This should normally be a command like "lpr"
2251       or  "'cat  >  /tmp/scrprint'".  printcmd without a command displays the
2252       current setting.  The ansi sequence ESC \ ends printing and closes  the
2253       pipe.
2254
2255       Warning:  Be careful with this command! If other user have write access
2256       to your terminal, they will be able to fire off print commands.
2257
2258       process [key]
2259
2260       Stuff the contents of the specified register into screen's input queue.
2261       If  no argument is given you are prompted for a register name. The text
2262       is parsed as if it had been typed in from  the  user's  keyboard.  This
2263       command can be used to bind multiple actions to a single key.
2264
2265       quit
2266
2267       Kill all windows and terminate screen.  Note that on VT100-style termi‐
2268       nals the keys C-4 and C-\ are identical.  This makes the default  bind‐
2269       ings  dangerous:  Be  careful not to type C-a C-4 when selecting window
2270       no. 4.  Use the empty bind command (as in "bind '^\'") to remove a  key
2271       binding.
2272
2273       readbuf [encoding] [filename]
2274
2275       Reads  the  contents  of the specified file into the paste buffer.  You
2276       can tell screen the encoding of the file via the -e option.  If no file
2277       is  specified, the screen-exchange filename is used.  See also "buffer‐
2278       file" command.
2279
2280       readreg [encoding] [register [filename]]
2281
2282       Does one of two things, dependent on number of arguments: with zero  or
2283       one arguments it duplicates the paste buffer contents into the register
2284       specified or entered at the prompt. With two  arguments  it  reads  the
2285       contents of the named file into the register, just as readbuf reads the
2286       screen-exchange file into the paste buffer.  You can  tell  screen  the
2287       encoding  of  the  file  via the -e option.  The following example will
2288       paste the system's password file into the screen window (using register
2289       p, where a copy remains):
2290
2291                C-a : readreg p /etc/passwd
2292                C-a : paste p
2293
2294       redisplay
2295
2296       Redisplay  the  current  window. Needed to get a full redisplay when in
2297       partial redraw mode.
2298
2299       register [-eencoding]key-string
2300
2301       Save the specified string to the register key.   The  encoding  of  the
2302       string  can  be specified via the -e option.  See also the "paste" com‐
2303       mand.
2304
2305       remove
2306
2307       Kill the current region. This is a no-op if there is only one region.
2308
2309       removebuf
2310
2311       Unlinks the screen-exchange file used by the  commands  "writebuf"  and
2312       "readbuf".
2313
2314       rendition bell | monitor | silence | so  attr  [ color ]
2315
2316       Change  the  way screen renders the titles of windows that have monitor
2317       or bell flags set in caption  or  hardstatus  or  windowlist.  See  the
2318       "STRING  ESCAPES" chapter for the syntax of the modifiers.  The default
2319       for monitor is currently "=b " (bold, active colors), for bell  "=ub  "
2320       (underline, bold and active colors), and "=u " for silence.
2321
2322       reset
2323
2324       Reset  the  virtual  terminal  to  its  "power-on"  values. Useful when
2325       strange settings (like scroll regions or graphics  character  set)  are
2326       left over from an application.
2327
2328       resize [-h|-v|-b|-l|-p] [[+|-] n[%] |=|max|min|_|0]
2329
2330       Resize  the  current region. The space will be removed from or added to
2331       the surrounding regions depending on the  order  of  the  splits.   The
2332       available  options  for  resizing are `-h'(horizontal), `-v'(vertical),
2333       `-b'(both), `-l'(local to layer), and  `-p'(perpendicular).  Horizontal
2334       resizes  will  add  or  remove  width to a region, vertical will add or
2335       remove height, and both will add or remove size from  both  dimensions.
2336       Local  and  perpendicular  are  similar to horizontal and vertical, but
2337       they take in account of how a region was split.   If  a  region's  last
2338       split  was horizontal, a local resize will work like a vertical resize.
2339       If a region's last split was vertical, a local resize will work like  a
2340       horizontal  resize.  Perpendicular  resizes  work  in opposite of local
2341       resizes. If no option is specified, local is the default.
2342
2343       The amount of lines to add or remove can be expressed a couple of  dif‐
2344       ferent  ways. By specifying a number n by itself will resize the region
2345       by that absolute amount. You can specify a relative amount by prefixing
2346       a  plus  `+'  or  minus  `-'  to the amount, such as adding +n lines or
2347       removing -n lines. Resizing can also be expressed  as  an  absolute  or
2348       relative percentage by postfixing a percent sign `%'. Using zero `0' is
2349       a synonym for `min' and using an underscore `_' is a synonym for `max'.
2350
2351       Some examples are:
2352
2353       resize +N
2354              increase current region by N
2355
2356       resize -N
2357              decrease current region by N
2358
2359       resize  N
2360              set current region to N
2361
2362       resize 20%
2363              set current region to 20% of original size
2364
2365       resize +20%
2366              increase current region by 20%
2367
2368       resize -b =
2369              make all windows equally
2370
2371       resize  max
2372              maximize current region
2373
2374       resize  min
2375              minimize current region
2376
2377       Without any arguments, screen will prompt for how  you  would  like  to
2378       resize the current region.
2379
2380       See  "focusminsize"  if  you want to restrict the minimun size a region
2381       can have.
2382
2383       screen [-opts] [n] [cmd [args]|//group]
2384
2385       Establish a new window.  The flow-control options (-f,  -fn  and  -fa),
2386       title  (a.k.a.) option (-t), login options (-l and -ln) , terminal type
2387       option (-T <term>), the all-capability-flag (-a) and scrollback  option
2388       (-h  <num>)  may be specified with each command.  The option (-M) turns
2389       monitoring on for this window.  The option (-L) turns output logging on
2390       for  this  window.  If an optional number n in the range 0..MAXWIN-1 is
2391       given, the window number n is assigned to the newly created window (or,
2392       if  this  number  is  already in-use, the next available number).  If a
2393       command is specified after "screen", this command (with the given argu‐
2394       ments)  is  started  in  the window; otherwise, a shell is created.  If
2395       //group is supplied, a container-type window is created in which  other
2396       windows may be created inside it.
2397
2398       Thus, if your ".screenrc" contains the lines
2399
2400                # example for .screenrc:
2401                screen 1
2402                screen -fn -t foobar -L 2 telnet foobar
2403
2404       screen creates a shell window (in window #1) and a window with a TELNET
2405       connection to the machine foobar (with no flow-control using the  title
2406       "foobar"  in window #2) and will write a logfile ("screenlog.2") of the
2407       telnet session.  Note, that unlike previous versions of screen no addi‐
2408       tional default window is created when "screen" commands are included in
2409       your ".screenrc" file. When the  initialization  is  completed,  screen
2410       switches  to  the  last  window specified in your .screenrc file or, if
2411       none, opens a default window #0.
2412
2413       Screen has built in some functionality of "cu" and "telnet".  See  also
2414       chapter "WINDOW TYPES".
2415
2416       scrollback num
2417
2418       Set  the  size  of the scrollback buffer for the current windows to num
2419       lines. The default scrollback is 100 lines.  See also  the  "defscroll‐
2420       back" command and use "info" to view the current setting. To access and
2421       use the contents in the scrollback buffer, use the "copy" command.
2422
2423       select [WindowID]
2424
2425       Switch to the window identified by WindowID.  This can be a prefix of a
2426       window title (alphanumeric window name) or a window number.  The param‐
2427       eter is optional and if omitted, you get prompted  for  an  identifier.
2428       When  a  new  window  is  established,  the  first  available number is
2429       assigned to this window.  Thus, the first window can  be  activated  by
2430       "select  0".   The  number of windows is limited at compile-time by the
2431       MAXWIN configuration parameter (which defaults to 40).  There  are  two
2432       special  WindowIDs,  "-"  selects  the  internal  blank  window and "."
2433       selects the current window. The latter is useful if used with  screen's
2434       "-X" option.
2435
2436       sessionname [name]
2437
2438       Rename  the  current  session.  Note,  that for "screen -list" the name
2439       shows up with the process-id prepended. If the argument "name" is omit‐
2440       ted,  the name of this session is displayed. Caution: The $STY environ‐
2441       ment variables will still reflect the old name in pre-existing  shells.
2442       This may result in confusion. Use of this command is generally discour‐
2443       aged. Use the "-S" command-line option if you want to name a  new  ses‐
2444       sion.  The default is constructed from the tty and host names.
2445
2446       setenv [var [string]]
2447
2448       Set the environment variable var to value string.  If only var is spec‐
2449       ified, the user will be prompted to enter a value.   If  no  parameters
2450       are  specified,  the user will be prompted for both variable and value.
2451       The environment is inherited by all subsequently forked shells.
2452
2453       setsid [on|off]
2454
2455       Normally screen uses different sessions and process groups for the win‐
2456       dows. If setsid is turned off, this is not done anymore and all windows
2457       will be in the same process group as the screen backend  process.  This
2458       also  breaks job-control, so be careful.  The default is on, of course.
2459       This command is probably useful only in rare circumstances.
2460
2461       shell command
2462
2463       Set the command to be used to create a new shell.  This  overrides  the
2464       value of the environment variable $SHELL.  This is useful if you'd like
2465       to run a tty-enhancer which is expecting to execute the program  speci‐
2466       fied  in $SHELL.  If the command begins with a '-' character, the shell
2467       will be started as a login-shell. Typical shells do only  minimal  ini‐
2468       tialization when not started as a login-shell.  E.g. Bash will not read
2469       your "~/.bashrc" unless it is a login-shell.
2470
2471       shelltitle title
2472
2473       Set the title for all shells created during startup or by the  C-A  C-c
2474       command.   For  details about what a title is, see the discussion enti‐
2475       tled "TITLES (naming windows)".
2476
2477       silence [on|off|sec]
2478
2479       Toggles silence monitoring of windows.  When silence is turned  on  and
2480       an  affected  window  is switched into the background, you will receive
2481       the silence notification message in the status line after  a  specified
2482       period of inactivity (silence). The default timeout can be changed with
2483       the `silencewait' command or by specifying a number of seconds  instead
2484       of `on' or `off'.  Silence is initially off for all windows.
2485
2486       silencewait sec
2487
2488       Define  the  time  that  all  windows monitored for silence should wait
2489       before displaying a message. Default 30 seconds.
2490
2491       sleep num
2492
2493       This command will pause the execution of a .screenrc file for num  sec‐
2494       onds.   Keyboard  activity  will end the sleep.  It may be used to give
2495       users a chance to read the messages output by "echo".
2496
2497       slowpaste msec
2498
2499       Define the speed at which text is inserted into the current  window  by
2500       the paste ("C-a ]") command.  If the slowpaste value is nonzero text is
2501       written character by character.  screen will make a pause of msec  mil‐
2502       liseconds after each single character write to allow the application to
2503       process its input. Only use slowpaste if your underlying system exposes
2504       flow control problems while pasting large amounts of text.
2505
2506       sort
2507
2508       Sort the windows in alphabetical order of the window tiles.
2509
2510       source file
2511
2512       Read and execute commands from file file. Source commands may be nested
2513       to a maximum recursion level of ten. If file is not  an  absolute  path
2514       and screen is already processing a source command, the parent directory
2515       of the running source command file is used to search for the  new  com‐
2516       mand file before screen's current directory.
2517
2518       Note  that  termcap/terminfo/termcapinfo  commands only work at startup
2519       and reattach time, so they must be reached  via  the  default  screenrc
2520       files to have an effect.
2521
2522       sorendition [attr[color]]
2523
2524       This command is deprecated. See "rendition so" instead.
2525
2526       split[-v]
2527
2528       Split  the current region into two new ones. All regions on the display
2529       are resized to make room for the new region. The blank window  is  dis‐
2530       played  in the new region. The default is to create a horizontal split,
2531       putting the new regions on the top and bottom of each other. Using `-v'
2532       will create a vertical split, causing the new regions to appear side by
2533       side of each other.  Use the "remove" or the "only" command  to  delete
2534       regions.  Use "focus" to toggle between regions.
2535
2536       When  a  region  is split opposite of how it was previously split (that
2537       is, vertical then horizontal or horizontal then vertical), a new  layer
2538       is  created.  The  layer is used to group together the regions that are
2539       split the same. Normally, as a user, you should not  see  nor  have  to
2540       worry about layers, but they will affect how some commands ("focus" and
2541       "resize") behave.
2542
2543       With this current implementation of screen, scrolling data will  appear
2544       much  slower  in  a  vertically split region than one that is not. This
2545       should be taken into consideration if you need to use  system  commands
2546       such as "cat" or "tail -f".
2547
2548       startup_message on|off
2549
2550       Select  whether  you  want  to see the copyright notice during startup.
2551       Default is `on', as you probably noticed.
2552
2553       status [top|up|down|bottom] [left|right]
2554
2555       The status window by default is in bottom-left corner. This command can
2556       move  status  messages  to any corner of the screen. top is the same as
2557       up, down is the same as bottom.
2558
2559       stuff [string]
2560
2561       Stuff the string string in the input  buffer  of  the  current  window.
2562       This  is like the "paste" command but with much less overhead.  Without
2563       a parameter, screen will prompt for a  string  to  stuff.   You  cannot
2564       paste large buffers with the "stuff" command. It is most useful for key
2565       bindings. See also "bindkey".
2566
2567       su [username [password [password2]]]
2568
2569       Substitute the user of a display. The command prompts for  all  parame‐
2570       ters  that  are omitted. If passwords are specified as parameters, they
2571       have to be specified un-crypted. The first password is matched  against
2572       the systems passwd database, the second password is matched against the
2573       screen password as set with the commands "acladd" or "password".   "Su"
2574       may  be  useful  for the screen administrator to test multiuser setups.
2575       When the identification fails, the user  has  access  to  the  commands
2576       available  for  user nobody.  These are "detach", "license", "version",
2577       "help" and "displays".
2578
2579       suspend
2580
2581       Suspend screen.  The windows are in the `detached' state, while  screen
2582       is  suspended.  This  feature  relies on the shell being able to do job
2583       control.
2584
2585       term term
2586
2587       In each window's environment screen opens, the $TERM variable is set to
2588       "screen" by default.  But when no description for "screen" is installed
2589       in the local termcap or terminfo data base, you set $TERM to  -  say  -
2590       "vt100".  This  won't do much harm, as screen is VT100/ANSI compatible.
2591       The use of the "term" command is discouraged for  non-default  purpose.
2592       That  is,  one  may want to specify special $TERM settings (e.g. vt100)
2593       for the next "screen rlogin  othermachine"  command.  Use  the  command
2594       "screen -T vt100 rlogin othermachine" rather than setting and resetting
2595       the default.
2596
2597       termcap term terminal-tweaks[window-tweaks]
2598
2599       terminfo term terminal-tweaks[window-tweaks]
2600
2601       termcapinfo term terminal-tweaks[window-tweaks]
2602
2603       Use this command to modify your terminal's termcap entry without  going
2604       through  all  the  hassles involved in creating a custom termcap entry.
2605       Plus, you can optionally customize the termcap generated for  the  win‐
2606       dows.   You have to place these commands in one of the screenrc startup
2607       files, as they are meaningless once the terminal emulator is booted.
2608
2609       If your system uses the terminfo database rather than  termcap,  screen
2610       will  understand  the `terminfo' command, which has the same effects as
2611       the `termcap' command.  Two separate commands are  provided,  as  there
2612       are  subtle  syntactic  differences,  e.g. when parameter interpolation
2613       (using `%') is required. Note that termcap names  of  the  capabilities
2614       have to be used with the `terminfo' command.
2615
2616       In many cases, where the arguments are valid in both terminfo and term‐
2617       cap syntax, you can use the command  `termcapinfo',  which  is  just  a
2618       shorthand  for a pair of `termcap' and `terminfo' commands with identi‐
2619       cal arguments.
2620
2621       The first argument specifies which terminal(s) should  be  affected  by
2622       this definition.  You can specify multiple terminal names by separating
2623       them with `|'s.  Use `*' to match all terminals and `vt*' to match  all
2624       terminals that begin with "vt".
2625
2626       Each  tweak argument contains one or more termcap defines (separated by
2627       `:'s) to be inserted at the start of  the  appropriate  termcap  entry,
2628       enhancing  it  or overriding existing values.  The first tweak modifies
2629       your terminal's termcap, and contains definitions  that  your  terminal
2630       uses to perform certain functions.  Specify a null string to leave this
2631       unchanged (e.g. '').  The second (optional) tweak modifies all the win‐
2632       dow  termcaps,  and  should contain definitions that screen understands
2633       (see the "VIRTUAL TERMINAL" section).
2634
2635       Some examples:
2636
2637              termcap xterm*  LP:hs@
2638
2639       Informs screen that all terminals that begin  with  `xterm'  have  firm
2640       auto-margins  that  allow the last position on the screen to be updated
2641       (LP), but they don't really have a status line (no 'hs' - append `@' to
2642       turn  entries  off).   Note  that we assume `LP' for all terminal names
2643       that start with "vt", but only if you don't specify a  termcap  command
2644       for that terminal.
2645              termcap vt*  LP
2646
2647       termcap vt102|vt220  Z0=\E[?3h:Z1=\E[?3l
2648
2649       Specifies  the  firm-margined  `LP'  capability  for all terminals that
2650       begin with `vt', and the second line will also add the escape-sequences
2651       to switch into (Z0) and back out of (Z1) 132-character-per-line mode if
2652       this is a VT102 or VT220.  (You must specify Z0 and Z1 in your  termcap
2653       to use the width-changing commands.)
2654
2655              termcap vt100  ""  l0=PF1:l1=PF2:l2=PF3:l3=PF4
2656
2657       This  leaves  your vt100 termcap alone and adds the function key labels
2658       to each window's termcap entry.
2659
2660              termcap h19|z19  am@:im=\E@:ei=\EO  dc=\E[P
2661
2662       Takes a h19 or z19 termcap and turns off auto-margins (am@) and enables
2663       the  insert  mode (im) and end-insert (ei) capabilities (the `@' in the
2664       `im' string is after the `=', so it is part of the string).  Having the
2665       `im'  and  `ei' definitions put into your terminal's termcap will cause
2666       screen to automatically advertise the  character-insert  capability  in
2667       each  window's termcap.  Each window will also get the delete-character
2668       capability (dc) added to its termcap, which screen will translate  into
2669       a  line-update  for  the  terminal (we're pretending it doesn't support
2670       character deletion).
2671
2672       If you would like to fully specify each  window's  termcap  entry,  you
2673       should  instead  set  the  $SCREENCAP variable prior to running screen.
2674       See the discussion on the "VIRTUAL TERMINAL" in this  manual,  and  the
2675       termcap(5) man page for more information on termcap definitions.
2676
2677       time   [string]
2678
2679       Uses  the  message  line to display the time of day, the host name, and
2680       the load averages over 1, 5, and 15 minutes (if this  is  available  on
2681       your system).  For window specific information, use "info".
2682
2683       If a string is specified, it changes the format of the time report like
2684       it is described in the "STRING ESCAPES" chapter. Screen uses a  default
2685       of "%c:%s %M %d %H%? %l%?".
2686
2687       title [windowtitle]
2688
2689       Set the name of the current window to windowtitle. If no name is speci‐
2690       fied, screen prompts for one. This command was known as `aka' in previ‐
2691       ous releases.
2692
2693       unbindall
2694
2695       Unbind  all the bindings. This can be useful when screen is used solely
2696       for its detaching abilities, such as when letting a console application
2697       run  as a daemon. If, for some reason, it is necessary to bind commands
2698       after this, use 'screen -X'.
2699
2700       unsetenv var
2701
2702       Unset an environment variable.
2703
2704       utf8 [on|off[on|off]]
2705
2706       Change the encoding used in the current window. If utf8 is enabled, the
2707       strings  sent to the window will be UTF-8 encoded and vice versa. Omit‐
2708       ting the parameter toggles the setting. If a second parameter is given,
2709       the display's encoding is also changed (this should rather be done with
2710       screen's "-U" option).  See also "defutf8", which changes  the  default
2711       setting of a new window.
2712
2713       vbell [on|off]
2714
2715       Sets  the  visual  bell setting for this window. Omitting the parameter
2716       toggles the setting. If vbell is switched on, but  your  terminal  does
2717       not support a visual bell, a `vbell-message' is displayed in the status
2718       line when the bell character (^G) is received.  Visual bell support  of
2719       a terminal is defined by the termcap variable `vb' (terminfo: 'flash').
2720
2721       Per  default,  vbell  is  off, thus the audible bell is used.  See also
2722       `bell_msg'.
2723
2724       vbell_msg [message]
2725
2726       Sets the visual bell message. message is printed to the status line  if
2727       the  window  receives  a bell character (^G), vbell is set to "on", but
2728       the terminal does not support a visual bell.  The  default  message  is
2729       "Wuff, Wuff!!".  Without a parameter, the current message is shown.
2730
2731       vbellwait sec
2732
2733       Define  a  delay  in seconds after each display of screen's visual bell
2734       message. The default is 1 second.
2735
2736       verbose [on|off]
2737
2738       If verbose is switched on, the command name is echoed, whenever a  win‐
2739       dow  is  created  (or  resurrected  from zombie state). Default is off.
2740       Without a parameter, the current setting is shown.
2741
2742       version
2743
2744       Print the current version and the compile date in the status line.
2745
2746       wall message
2747
2748       Write a message to all displays. The message will appear in the  termi‐
2749       nal's status line.
2750
2751       width [-w|-d] [cols [lines]]
2752
2753       Toggle  the  window  width between 80 and 132 columns or set it to cols
2754       columns if an argument is specified.  This requires a capable  terminal
2755       and  the  termcap entries "Z0" and "Z1".  See the "termcap" command for
2756       more information. You can also specify a new  height  if  you  want  to
2757       change  both  values.   The -w option tells screen to leave the display
2758       size unchanged and just set the window size, -d vice versa.
2759
2760       windowlist [-b] [-m] [-g]
2761
2762       windowlist string [string]
2763
2764       windowlist title [title]
2765
2766       Display all windows in a table for visual window selection.  If  screen
2767       was  in a window group, screen will back out of the group and then dis‐
2768       play the windows in that group.  If the -b option is given, screen will
2769       switch to the blank window before presenting the list, so that the cur‐
2770       rent window is also selectable.  The -m option changes the order of the
2771       windows,  instead of sorting by window numbers screen uses its internal
2772       most-recently-used list.  The -g option will show  the  windows  inside
2773       any groups in that level and downwards.
2774
2775       The following keys are used to navigate in "windowlist":
2776
2777
2778       ─────────────────────────────────────────────────────────────────────
2779       k, C-p, or up      Move up one line.
2780       ─────────────────────────────────────────────────────────────────────
2781       j, C-n, or down    Move down one line.
2782       ─────────────────────────────────────────────────────────────────────
2783       C-g or escape      Exit windowlist.
2784       ─────────────────────────────────────────────────────────────────────
2785       C-a or home        Move to the first line.
2786       ─────────────────────────────────────────────────────────────────────
2787       C-e or end         Move to the last line.
2788       ─────────────────────────────────────────────────────────────────────
2789       C-u or C-d         Move one half page up or down.
2790       ─────────────────────────────────────────────────────────────────────
2791       C-b or C-f         Move one full page up or down.
2792       ─────────────────────────────────────────────────────────────────────
2793       0..9               Using the number keys, move to the selected line.
2794       ─────────────────────────────────────────────────────────────────────
2795       mouseclick         Move to the selected line. Available when "mouse‐
2796                          track" is set to "on"
2797       ─────────────────────────────────────────────────────────────────────
2798       /                  Search.
2799       ─────────────────────────────────────────────────────────────────────
2800       n                  Repeat search in the forward direction.
2801       ─────────────────────────────────────────────────────────────────────
2802       N                  Repeat search in the backward direction.
2803       ─────────────────────────────────────────────────────────────────────
2804       m                  Toggle MRU.
2805       ─────────────────────────────────────────────────────────────────────
2806       g                  Toggle group nesting.
2807       ─────────────────────────────────────────────────────────────────────
2808       a                  All window view.
2809       ─────────────────────────────────────────────────────────────────────
2810       C-h or backspace   Back out the group.
2811       ─────────────────────────────────────────────────────────────────────
2812       ,                  Switch numbers with the previous window.
2813       ─────────────────────────────────────────────────────────────────────
2814       .                  Switch numbers with the next window.
2815       ─────────────────────────────────────────────────────────────────────
2816
2817       K                  Kill that window.
2818       ─────────────────────────────────────────────────────────────────────
2819       space or enter     Select that window.
2820       ─────────────────────────────────────────────────────────────────────
2821
2822       The table format can be changed with the string and title  option,  the
2823       title  is displayed as table heading, while the lines are made by using
2824       the string setting. The default setting is "Num  Name%=Flags"  for  the
2825       title and "%3n %t%=%f" for the lines.  See the "STRING ESCAPES" chapter
2826       for more codes (e.g. color settings).
2827
2828       "Windowlist" needs a region size of at least 10 characters wide  and  6
2829       characters high in order to display.
2830
2831       windows [ string ]
2832
2833       Uses  the message line to display a list of all the windows.  Each win‐
2834       dow is listed by number with the name of process that has been  started
2835       in  the window (or its title); the current window is marked with a `*';
2836       the previous window is marked with a `-';  all  the  windows  that  are
2837       "logged  in"  are  marked  with  a  `$';  a  background window that has
2838       received a bell is marked with a `!'; a background window that is being
2839       monitored  and  has  had activity occur is marked with an `@'; a window
2840       which has output logging turned on is marked with `(L)'; windows  occu‐
2841       pied  by  other  users are marked with `&'; windows in the zombie state
2842       are marked with `Z'.  If this list is too long to fit on the terminal's
2843       status  line  only  the portion around the current window is displayed.
2844       The optional string parameter follows the "STRING ESCAPES" format.   If
2845       string  parameter is passed, the output size is unlimited.  The default
2846       command without any parameter is limited to a size of 1024 bytes.
2847
2848       wrap [on|off]
2849
2850       Sets the line-wrap setting for the current window.  When  line-wrap  is
2851       on,  the second consecutive printable character output at the last col‐
2852       umn of a line will wrap to the start of  the  following  line.   As  an
2853       added feature, backspace (^H) will also wrap through the left margin to
2854       the previous line.  Default is `on'. Without any options, the state  of
2855       wrap is toggled.
2856
2857       writebuf [-e encoding] [filename]
2858
2859       Writes  the  contents of the paste buffer to the specified file, or the
2860       public accessible screen-exchange file if no filename is given. This is
2861       thought  of  as a primitive means of communication between screen users
2862       on the same host. If an encoding  is  specified  the  paste  buffer  is
2863       recoded on the fly to match the encoding.  The filename can be set with
2864       the bufferfile command and defaults to "/tmp/screen-exchange".
2865
2866       writelock [on|off|auto]
2867
2868       In addition to access control lists, not all users may be able to write
2869       to  the  same  window at once. Per default, writelock is in `auto' mode
2870       and grants exclusive input permission to the user who is the  first  to
2871       switch to the particular window. When he leaves the window, other users
2872       may obtain the writelock (automatically). The writelock of the  current
2873       window  is  disabled by the command "writelock off". If the user issues
2874       the command "writelock on" he  keeps  the  exclusive  write  permission
2875       while switching to other windows.
2876
2877       xoff
2878
2879       xon
2880
2881       Insert  a  CTRL-s  / CTRL-q character to the stdin queue of the current
2882       window.
2883
2884       zmodem [off|auto|catch|pass]
2885
2886       zmodem sendcmd [string]
2887
2888       zmodem recvcmd [string]
2889
2890       Define zmodem support for  screen.  Screen  understands  two  different
2891       modes  when  it  detects  a zmodem request: "pass" and "catch".  If the
2892       mode is set to "pass", screen will relay all data to the attacher until
2893       the end of the transmission is reached.  In "catch" mode screen acts as
2894       a zmodem endpoint and starts the corresponding rz/sz commands.  If  the
2895       mode  is  set to "auto", screen will use "catch" if the window is a tty
2896       (e.g. a serial line), otherwise it will use "pass".
2897
2898       You can define the templates screen uses in "catch" mode via the second
2899       and the third form.
2900
2901       Note also that this is an experimental feature.
2902
2903       zombie [keys[onerror]]
2904
2905       Per  default screen windows are removed from the window list as soon as
2906       the windows process (e.g. shell) exits. When a string of  two  keys  is
2907       specified  to  the  zombie  command,  `dead' windows will remain in the
2908       list.  The kill command may be used to remove such a  window.  Pressing
2909       the first key in the dead window has the same effect. When pressing the
2910       second key, screen will attempt to resurrect the  window.  The  process
2911       that  was initially running in the window will be launched again. Call‐
2912       ing zombie without parameters will clear the zombie setting, thus  mak‐
2913       ing windows disappear when their process exits.
2914
2915       As  the  zombie-setting  is  manipulated globally for all windows, this
2916       command should probably be called defzombie, but it isn't.
2917
2918       Optionally you can put the word "onerror" after  the  keys.  This  will
2919       cause  screen to monitor exit status of the process running in the win‐
2920       dow. If it exits normally ('0'), the window disappears. Any other  exit
2921       value causes the window to become a zombie.
2922
2923       zombie_timeout[seconds]
2924
2925       Per  default screen windows are removed from the window list as soon as
2926       the windows process (e.g. shell) exits.  If  zombie  keys  are  defined
2927       (compare with above zombie command), it is possible to also set a time‐
2928       out when screen tries to automatically reconnect a dead screen window.
2929
2930

THE MESSAGE LINE

2932       Screen displays informational messages and other diagnostics in a  mes‐
2933       sage  line.   While this line is distributed to appear at the bottom of
2934       the screen, it can be defined to appear at the top of the screen during
2935       compilation.   If  your terminal has a status line defined in its term‐
2936       cap, screen will use this for displaying its messages, otherwise a line
2937       of  the  current screen will be temporarily overwritten and output will
2938       be momentarily interrupted. The message line is  automatically  removed
2939       after  a few seconds delay, but it can also be removed early (on termi‐
2940       nals without a status line) by beginning to type.
2941
2942       The message line facility can be used by an application running in  the
2943       current  window  by means of the ANSI Privacy message control sequence.
2944       For instance, from within the shell, try something like:
2945
2946              echo '<esc>^Hello world from window '$WINDOW'<esc>\\'
2947
2948       where '<esc>' is an escape, '^' is a literal up-arrow, and  '\\'  turns
2949       into a single backslash.
2950
2951

WINDOW TYPES

2953       Screen  provides  three different window types. New windows are created
2954       with screen's screen command (see also the entry in chapter "CUSTOMIZA‐
2955       TION"). The first parameter to the screen command defines which type of
2956       window is created. The different window types are all special cases  of
2957       the  normal  type.  They have been added in order to allow screen to be
2958       used efficiently as a console multiplexer with 100 or more windows.
2959
2960
2961       ·  The normal window contains a shell  (default,  if  no  parameter  is
2962          given)  or  any  other  system command that could be executed from a
2963          shell (e.g.  slogin, etc...)
2964
2965
2966       ·  If a tty (character special device) name (e.g. "/dev/ttya") is spec‐
2967          ified  as the first parameter, then the window is directly connected
2968          to this device.  This window  type  is  similar  to  "screen  cu  -l
2969          /dev/ttya".   Read  and write access is required on the device node,
2970          an exclusive open is attempted on the node to  mark  the  connection
2971          line  as  busy.   An  optional  parameter is allowed consisting of a
2972          comma separated list of flags in the notation used by stty(1):
2973
2974          <baud_rate>
2975                 Usually 300, 1200, 9600 or 19200. This  affects  transmission
2976                 as well as receive speed.
2977
2978          cs8 or cs7
2979                 Specify the transmission of eight (or seven) bits per byte.
2980
2981          ixon or -ixon
2982                 Enables  (or  disables) software flow-control (CTRL-S/CTRL-Q)
2983                 for sending data.
2984
2985          ixoff or -ixoff
2986                 Enables (or disables)  software  flow-control  for  receiving
2987                 data.
2988
2989          istrip or -istrip
2990                 Clear (or keep) the eight bit in each received byte.
2991
2992          You  may  want  to  specify  as many of these options as applicable.
2993          Unspecified options cause the terminal driver to make up the parame‐
2994          ter values of the connection.  These values are system dependent and
2995          may be in defaults or values saved from a previous connection.
2996
2997          For tty windows, the info command shows some of  the  modem  control
2998          lines  in  the  status  line. These may include `RTS', `CTS', 'DTR',
2999          `DSR', `CD' and more.  This depends on the available  ioctl()'s  and
3000          system  header  files as well as the on the physical capabilities of
3001          the serial board.  Signals that  are  logical  low  (inactive)  have
3002          their name preceded by an exclamation mark (!), otherwise the signal
3003          is logical high (active).  Signals not supported by the hardware but
3004          available to the ioctl() interface are usually shown low.
3005
3006          When  the  CLOCAL status bit is true, the whole set of modem signals
3007          is placed inside curly braces ({ and }).  When the CRTSCTS or  TIOC‐
3008          SOFTCAR bit is set, the signals `CTS' or `CD' are shown in parenthe‐
3009          sis, respectively.
3010
3011          For tty windows, the command break causes the Data transmission line
3012          (TxD)  to go low for a specified period of time. This is expected to
3013          be interpreted as break signal on the other side.  No data  is  sent
3014          and no modem control line is changed when a break is issued.
3015
3016
3017       ·  If  the  first  parameter  is  "//telnet",  the  second parameter is
3018          expected to be a host name, and  an  optional  third  parameter  may
3019          specify a TCP port number (default decimal 23).  Screen will connect
3020          to a server listening on the remote host and use the telnet protocol
3021          to communicate with that server.
3022
3023       For telnet windows, the command info shows details about the connection
3024       in square brackets ([ and ]) at the end of the status line.
3025
3026              b      BINARY. The connection is in binary mode.
3027
3028              e      ECHO. Local echo is disabled.
3029
3030              c      SGA. The connection  is  in  `character  mode'  (default:
3031                     `line mode').
3032
3033              t      TTYPE. The terminal type has been requested by the remote
3034                     host.  Screen sends the name "screen"  unless  instructed
3035                     otherwise (see also the command `term').
3036
3037              w      NAWS.  The  remote  site  is  notified  about window size
3038                     changes.
3039
3040              f      LFLOW. The remote host will send  flow  control  informa‐
3041                     tion.  (Ignored at the moment.)
3042
3043              Additional  flags for debugging are x, t and n (XDISPLOC, TSPEED
3044              and NEWENV).
3045
3046              For telnet windows, the command break sends the telnet code  IAC
3047              BREAK (decimal 243) to the remote host.
3048
3049
3050              This  window  type is only available if screen was compiled with
3051              the ENABLE_TELNET option defined.
3052
3053
3054

STRING ESCAPES

3056       Screen provides an escape mechanism to insert information like the cur‐
3057       rent time into messages or file names. The escape character is '%' with
3058       one exception: inside of a window's  hardstatus  '^%'  ('^E')  is  used
3059       instead.
3060
3061       Here is the full list of supported escapes:
3062
3063       %      the escape character itself
3064
3065       E      sets %? to true if the escape character has been pressed.
3066
3067       f      flags  of  the window, see "windows" for meanings of the various
3068              flags
3069
3070       F      sets %? to true if the window has the focus
3071
3072       h      hardstatus of the window
3073
3074       H      hostname of the system
3075
3076       n      window number
3077
3078       P      sets %? to true if the current region is in copy/paste mode
3079
3080       S      session name
3081
3082       s      window size
3083
3084       t      window title
3085
3086       u      all other users on this window
3087
3088       w      all window numbers and names. With '-' qualifier: up to the cur‐
3089              rent  window; with '+' qualifier: starting with the window after
3090              the current one.
3091
3092       W      all window numbers and names except the current one
3093
3094       x      the executed command including arguments running in this windows
3095
3096       X      the executed command without arguments running in this windows
3097
3098       ?      the part to the next '%?' is displayed  only  if  a  '%'  escape
3099              inside the part expands to a non-empty string
3100
3101       :      else part of '%?'
3102
3103       =      pad  the  string to the display's width (like TeX's hfill). If a
3104              number is specified, pad  to  the  percentage  of  the  window's
3105              width.   A  '0'  qualifier  tells  screen to treat the number as
3106              absolute position.  You can specify to pad relative to the  last
3107              absolute  pad position by adding a '+' qualifier or to pad rela‐
3108              tive to the right margin by using '-'. The padding truncates the
3109              string  if  the specified position lies before the current posi‐
3110              tion. Add the 'L' qualifier to change this.
3111
3112       <      same as '%=' but just do truncation, do not fill with spaces
3113
3114       >      mark the current text position for  the  next  truncation.  When
3115              screen  needs  to do truncation, it tries to do it in a way that
3116              the marked position gets moved to the  specified  percentage  of
3117              the  output  area.  (The  area starts from the last absolute pad
3118              position and ends with the position specified by the  truncation
3119              operator.)  The 'L' qualifier tells screen to mark the truncated
3120              parts with '...'.
3121
3122       {      attribute/color modifier string terminated by the next "}"
3123
3124       `      Substitute with the output of a 'backtick' command.  The  length
3125              qualifier is misused to identify one of the commands.
3126
3127       The  'c'  and 'C' escape may be qualified with a '0' to make screen use
3128       zero instead of space as fill character. The '0' qualifier  also  makes
3129       the  '='  escape use absolute positions. The 'n' and '=' escapes under‐
3130       stand a length qualifier (e.g. '%3n'), 'D' and 'M' can be prefixed with
3131       'L'  to  generate long names, 'w' and 'W' also show the window flags if
3132       'L' is given.
3133
3134       An attribute/color modifier is used to change  the  attributes  or  the
3135       color  settings.  Its  format  is "[attribute modifier] [color descrip‐
3136       tion]". The attribute modifier must be prefixed by a change type  indi‐
3137       cator  if  it  can  be confused with a color description. The following
3138       change types are known:
3139
3140       +      add the specified set to the current attributes
3141
3142       -      remove the set from the current attributes
3143
3144       !      invert the set in the current attributes
3145
3146       =      change the current attributes to the specified set
3147
3148       The attribute set can either be specified as a hexadecimal number or  a
3149       combination of the following letters:
3150
3151       d      dim
3152       u      underline
3153       b      bold
3154       r      reverse
3155       s      standout
3156       B      blinking
3157
3158       Colors are coded either as a hexadecimal number or two letters specify‐
3159       ing the desired background and foreground color (in  that  order).  The
3160       following colors are known:
3161
3162       k      black
3163       r      red
3164       g      green
3165       y      yellow
3166       b      blue
3167       m      magenta
3168       c      cyan
3169       w      white
3170       d      default color
3171       .      leave color unchanged
3172
3173       The  capitalized  versions of the letter specify bright colors. You can
3174       also use the pseudo-color 'i' to set just the brightness and leave  the
3175       color unchanged.
3176       A  one digit/letter color description is treated as foreground or back‐
3177       ground color dependent on the current attributes: if  reverse  mode  is
3178       set,  the  background color is changed instead of the foreground color.
3179       If you don't like this, prefix the color with a ".". If  you  want  the
3180       same  behavior for two-letter color descriptions, also prefix them with
3181       a ".".
3182       As a special case, "%{-}" restores the attributes and colors that  were
3183       set before the last change was made (i.e., pops one level of the color-
3184       change stack).
3185
3186       Examples:
3187
3188       "G"    set color to bright green
3189
3190       "+b r" use bold red
3191
3192       "= yd" clear all attributes, write in default  color  on  yellow  back‐
3193              ground.
3194
3195       %-Lw%{= BW}%50>%n%f* %t%{-}%+Lw%<
3196              The  available  windows centered at the current window and trun‐
3197              cated to the available width. The current  window  is  displayed
3198              white  on  blue.   This can be used with "hardstatus alwayslast‐
3199              line".
3200
3201       %?%F%{.R.}%?%3n %t%? [%h]%?
3202              The window number and title and the window's hardstatus, if  one
3203              is  set.  Also use a red background if this is the active focus.
3204              Useful for "caption string".
3205

FLOW-CONTROL

3207       Each window has a flow-control setting that determines how screen deals
3208       with the XON and XOFF characters (and perhaps the interrupt character).
3209       When flow-control is turned off, screen ignores the XON and XOFF  char‐
3210       acters,  which  allows  the user to send them to the current program by
3211       simply typing them (useful for the emacs editor,  for  instance).   The
3212       trade-off  is  that it will take longer for output from a "normal" pro‐
3213       gram to pause in response to an XOFF.  With flow-control turned on, XON
3214       and  XOFF  characters  are  used to immediately pause the output of the
3215       current window.  You can still send these  characters  to  the  current
3216       program, but you must use the appropriate two-character screen commands
3217       (typically "C-a q" (xon) and "C-a s" (xoff)).   The  xon/xoff  commands
3218       are  also useful for typing C-s and C-q past a terminal that intercepts
3219       these characters.
3220
3221       Each window has an initial flow-control value set with  either  the  -f
3222       option  or the "defflow" .screenrc command. Per default the windows are
3223       set to automatic flow-switching.  It can then be  toggled  between  the
3224       three states 'fixed on', 'fixed off' and 'automatic' interactively with
3225       the "flow" command bound to "C-a f".
3226
3227       The automatic flow-switching mode deals with  flow  control  using  the
3228       TIOCPKT  mode  (like "rlogin" does). If the tty driver does not support
3229       TIOCPKT, screen tries to find out the right mode based on  the  current
3230       setting of the application keypad - when it is enabled, flow-control is
3231       turned off and visa versa.  Of course, you can still  manipulate  flow-
3232       control manually when needed.
3233
3234       If  you're running with flow-control enabled and find that pressing the
3235       interrupt key (usually  C-c)  does  not  interrupt  the  display  until
3236       another 6-8 lines have scrolled by, try running screen with the "inter‐
3237       rupt" option (add the "interrupt" flag to the "flow"  command  in  your
3238       .screenrc,  or use the -i command-line option).  This causes the output
3239       that screen has accumulated from the interrupted program to be flushed.
3240       One  disadvantage  is  that  the virtual terminal's memory contains the
3241       non-flushed version of the output, which in rare cases can cause  minor
3242       inaccuracies  in  the  output.   For example, if you switch screens and
3243       return, or update the screen with "C-a l" you would see the version  of
3244       the  output  you would have gotten without "interrupt" being on.  Also,
3245       you might need to turn off flow-control (or use auto-flow mode to  turn
3246       it  off  automatically) when running a program that expects you to type
3247       the interrupt character as input, as it is possible  to  interrupt  the
3248       output of the virtual terminal to your physical terminal when flow-con‐
3249       trol is enabled.  If this happens, a simple refresh of the screen  with
3250       "C-a  l" will restore it.  Give each mode a try, and use whichever mode
3251       you find more comfortable.
3252
3253
3254

TITLES (naming windows)

3256       You can customize each window's name in the window display (viewed with
3257       the "windows" command (C-a w)) by setting it with one of the title com‐
3258       mands.  Normally the name displayed is the actual command name  of  the
3259       program created in the window.  However, it is sometimes useful to dis‐
3260       tinguish various programs of the same name or to change  the  name  on-
3261       the-fly to reflect the current state of the window.
3262
3263       The default name for all shell windows can be set with the "shelltitle"
3264       command in the .screenrc file, while all other windows are created with
3265       a "screen" command and thus can have their name set with the -t option.
3266       Interactively,    there    is    the    title-string    escape-sequence
3267       (<esc>kname<esc>\)  and the "title" command (C-a A).  The former can be
3268       output from an application to control the window's name under  software
3269       control,  and  the  latter  will prompt for a name when typed.  You can
3270       also bind pre-defined names to keys with the  "title"  command  to  set
3271       things  quickly  without  prompting.  Changing  title  by  this  escape
3272       sequence can be controlled by  defdynamictitle  and  dynamictitle  com‐
3273       mands.
3274
3275       Finally,  screen has a shell-specific heuristic that is enabled by set‐
3276       ting the window's name to "search|name" and arranging to  have  a  null
3277       title escape-sequence output as a part of your prompt.  The search por‐
3278       tion specifies an end-of-prompt search string, while the  name  portion
3279       specifies the default shell name for the window.  If the name ends in a
3280       `:' screen will add what it believes to be the current command  running
3281       in  the window to the end of the window's shell name (e.g. "name:cmd").
3282       Otherwise the current command name supersedes the shell name  while  it
3283       is running.
3284
3285       Here's  how  it  works:   you must modify your shell prompt to output a
3286       null title-escape-sequence (<esc>k<esc>\) as a  part  of  your  prompt.
3287       The  last part of your prompt must be the same as the string you speci‐
3288       fied for the search portion of the title.  Once this is set up,  screen
3289       will  use  the title-escape-sequence to clear the previous command name
3290       and get ready for the next command.  Then, when a newline  is  received
3291       from  the shell, a search is made for the end of the prompt.  If found,
3292       it will grab the first word after the matched string and use it as  the
3293       command  name.  If the command name begins with either '!', '%', or '^'
3294       screen will use the first word on the  following  line  (if  found)  in
3295       preference  to  the  just-found  name.  This helps csh users get better
3296       command names when using job control or history recall commands.
3297
3298       Here's some .screenrc examples:
3299
3300              screen -t top 2 nice top
3301
3302       Adding this line to your .screenrc would start a nice-d version of  the
3303       "top" command in window 2 named "top" rather than "nice".
3304
3305                       shelltitle '> |csh'
3306                       screen 1
3307
3308       These  commands  would  start  a  shell with the given shelltitle.  The
3309       title specified is an auto-title that would expect the prompt  and  the
3310       typed command to look something like the following:
3311
3312              /usr/joe/src/dir> trn
3313
3314       (it  looks  after  the  '>  ' for the command name).  The window status
3315       would show the name "trn" while the command was running, and revert  to
3316       "csh" upon completion.
3317
3318              bind R screen -t '% |root:' su
3319
3320       Having  this command in your .screenrc would bind the key sequence "C-a
3321       R" to the "su" command and give it an auto-title name of "root:".   For
3322       this auto-title to work, the screen could look something like this:
3323
3324                       % !em
3325                       emacs file.c
3326
3327       Here  the user typed the csh history command "!em" which ran the previ‐
3328       ously  entered  "emacs"  command.   The  window   status   would   show
3329       "root:emacs"  during the execution of the command, and revert to simply
3330       "root:" at its completion.
3331
3332                       bind o title
3333                       bind E title ""
3334                       bind u title (unknown)
3335
3336       The first binding doesn't have any arguments, so it  would  prompt  you
3337       for  a  title when you type "C-a o".  The second binding would clear an
3338       auto-title's current setting (C-a E).  The third binding would set  the
3339       current window's title to "(unknown)" (C-a u).
3340
3341       One  thing  to keep in mind when adding a null title-escape-sequence to
3342       your prompt is that some shells (like the csh) count all  the  non-con‐
3343       trol  characters  as  part  of the prompt's length.  If these invisible
3344       characters aren't a multiple of 8 then  backspacing  over  a  tab  will
3345       result in an incorrect display.  One way to get around this is to use a
3346       prompt like this:
3347
3348              set prompt='^[[0000m^[k^[\% '
3349
3350       The escape-sequence "<esc>[0000m" not  only  normalizes  the  character
3351       attributes, but all the zeros round the length of the invisible charac‐
3352       ters up to 8.  Bash  users  will  probably  want  to  echo  the  escape
3353       sequence in the PROMPT_COMMAND:
3354
3355              PROMPT_COMMAND='printf "\033k\033\134"'
3356
3357       (I used "\134" to output a `\' because of a bug in bash v1.04).
3358
3359
3360

THE VIRTUAL TERMINAL

3362       Each  window  in  a screen session emulates a VT100 terminal, with some
3363       extra functions added. The VT100 emulator is hard-coded, no other  ter‐
3364       minal types can be emulated.
3365       Usually  screen  tries to emulate as much of the VT100/ANSI standard as
3366       possible. But if your terminal lacks certain capabilities,  the  emula‐
3367       tion  may not be complete. In these cases screen has to tell the appli‐
3368       cations that some of the features are missing. This is  no  problem  on
3369       machines using termcap, because screen can use the $TERMCAP variable to
3370       customize the standard screen termcap.
3371
3372       But if you do a rlogin on another machine or your machine supports only
3373       terminfo  this  method  fails.  Because of this, screen offers a way to
3374       deal with these cases.  Here is how it works:
3375
3376       When screen tries to figure out a terminal name for  itself,  it  first
3377       looks  for an entry named "screen.<term>", where <term> is the contents
3378       of your $TERM variable.  If no such entry exists, screen tries "screen"
3379       (or  "screen-w"  if  the terminal is wide (132 cols or more)).  If even
3380       this entry cannot be found, "vt100" is used as a substitute.
3381
3382       The idea is that if you have a terminal which doesn't support an impor‐
3383       tant  feature  (e.g.  delete  char or clear to EOS) you can build a new
3384       termcap/terminfo entry for screen (named "screen.<dumbterm>") in  which
3385       this  capability  has been disabled. If this entry is installed on your
3386       machines you are able to do a rlogin and still keep the  correct  term‐
3387       cap/terminfo  entry.  The terminal name is put in the $TERM variable of
3388       all new windows.  Screen also sets the $TERMCAP variable reflecting the
3389       capabilities of the virtual terminal emulated. Notice that, however, on
3390       machines using the terminfo database this variable has no effect.  Fur‐
3391       thermore, the variable $WINDOW is set to the window number of each win‐
3392       dow.
3393
3394       The actual set  of  capabilities  supported  by  the  virtual  terminal
3395       depends  on  the  capabilities supported by the physical terminal.  If,
3396       for instance, the physical terminal does not support  underscore  mode,
3397       screen  does  not  put the `us' and `ue' capabilities into the window's
3398       $TERMCAP variable, accordingly.  However, a minimum number of capabili‐
3399       ties  must  be  supported  by a terminal in order to run screen; namely
3400       scrolling, clear screen, and direct  cursor  addressing  (in  addition,
3401       screen  does  not  run on hardcopy terminals or on terminals that over-
3402       strike).
3403
3404       Also, you can customize the $TERMCAP value used by screen by using  the
3405       "termcap"  .screenrc  command,  or  by defining the variable $SCREENCAP
3406       prior to startup.  When the latter is defined, its value will be copied
3407       verbatim  into each window's $TERMCAP variable.  This can either be the
3408       full terminal definition, or a filename  where  the  terminal  "screen"
3409       (and/or "screen-w") is defined.
3410
3411       Note  that screen honors the "terminfo" .screenrc command if the system
3412       uses the terminfo database rather than termcap.
3413
3414       When the boolean `G0' capability is present in the  termcap  entry  for
3415       the terminal on which screen has been called, the terminal emulation of
3416       screen supports multiple character sets.  This allows an application to
3417       make use of, for instance, the VT100 graphics character set or national
3418       character sets.  The following control functions from ISO 2022 are sup‐
3419       ported:  lock  shift  G0  (SI), lock shift G1 (SO), lock shift G2, lock
3420       shift G3, single shift G2, and single shift G3.  When a virtual  termi‐
3421       nal  is  created  or reset, the ASCII character set is designated as G0
3422       through G3.  When the `G0' capability is present, screen evaluates  the
3423       capabilities  `S0', `E0', and `C0' if present. `S0' is the sequence the
3424       terminal uses to enable and start the  graphics  character  set  rather
3425       than  SI.   `E0'  is the corresponding replacement for SO. `C0' gives a
3426       character by character translation string that  is  used  during  semi-
3427       graphics  mode.  This string is built like the `acsc' terminfo capabil‐
3428       ity.
3429
3430       When the `po' and `pf' capabilities are present in the terminal's term‐
3431       cap  entry,  applications running in a screen window can send output to
3432       the printer port of the terminal.  This allows a user to have an appli‐
3433       cation  in one window sending output to a printer connected to the ter‐
3434       minal, while all other windows are still active (the  printer  port  is
3435       enabled  and  disabled  again  for  each  chunk of output).  As a side-
3436       effect, programs running in different windows can send  output  to  the
3437       printer  simultaneously.   Data sent to the printer is not displayed in
3438       the window.  The info command displays a line starting `PRIN' while the
3439       printer is active.
3440
3441       Screen  maintains  a hardstatus line for every window. If a window gets
3442       selected, the display's hardstatus will be updated to  match  the  win‐
3443       dow's  hardstatus  line. If the display has no hardstatus the line will
3444       be displayed as a standard screen message.  The hardstatus line can  be
3445       changed    with   the   ANSI   Application   Program   Command   (APC):
3446       "ESC_<string>ESC\". As a  convenience  for  xterm  users  the  sequence
3447       "ESC]0..2;<string>^G" is also accepted.
3448
3449       Some  capabilities  are only put into the $TERMCAP variable of the vir‐
3450       tual terminal if they can be efficiently implemented  by  the  physical
3451       terminal.  For instance, `dl' (delete line) is only put into the $TERM‐
3452       CAP variable if the terminal supports  either  delete  line  itself  or
3453       scrolling  regions. Note that this may provoke confusion, when the ses‐
3454       sion is reattached on a different terminal, as the  value  of  $TERMCAP
3455       cannot be modified by parent processes.
3456
3457       The  "alternate  screen" capability is not enabled by default.  Set the
3458       altscreen .screenrc command to enable it.
3459
3460       The following is a list of  control  sequences  recognized  by  screen.
3461       "(V)" and "(A)" indicate VT100-specific and ANSI- or ISO-specific func‐
3462       tions, respectively.
3463
3464       ESC E                      Next Line
3465
3466       ESC D                      Index
3467
3468       ESC M                      Reverse Index
3469
3470       ESC H                      Horizontal Tab Set
3471
3472       ESC Z                      Send VT100 Identification String
3473
3474       ESC 7                 (V)  Save Cursor and Attributes
3475
3476       ESC 8                 (V)  Restore Cursor and Attributes
3477
3478       ESC [s                (A)  Save Cursor and Attributes
3479
3480       ESC [u                (A)  Restore Cursor and Attributes
3481
3482       ESC c                      Reset to Initial State
3483
3484       ESC g                      Visual Bell
3485
3486       ESC Pn p                   Cursor Visibility (97801)
3487
3488                                  Pn = 6                     Invisible
3489
3490                                  Pn = 7                     Visible
3491
3492       ESC =                 (V)  Application Keypad Mode
3493
3494       ESC >                 (V)  Numeric Keypad Mode
3495
3496       ESC # 8               (V)  Fill Screen with E's
3497
3498       ESC \                 (A)  String Terminator
3499
3500       ESC ^                 (A)  Privacy Message String (Message Line)
3501
3502       ESC !                      Global Message String (Message Line)
3503
3504       ESC k                      A.k.a. Definition String
3505
3506       ESC P                 (A)  Device Control  String.   Outputs  a  string
3507                                  directly to the host terminal without inter‐
3508                                  pretation.
3509
3510       ESC _                 (A)  Application Program Command (Hardstatus)
3511
3512       ESC ] 0 ; string ^G   (A)  Operating System Command (Hardstatus,  xterm
3513                                  title hack)
3514
3515       ESC ] 83 ; cmd ^G     (A)  Execute  screen  command. This only works if
3516                                  multi-user support is compiled into  screen.
3517                                  The  pseudo-user ":window:" is used to check
3518                                  the access control list. Use  "addacl  :win‐
3519                                  dow:  -rwx  #?"  to  create  a  user with no
3520                                  rights and allow only the needed commands.
3521
3522       Control-N             (A)  Lock Shift G1 (SO)
3523
3524       Control-O             (A)  Lock Shift G0 (SI)
3525
3526       ESC n                 (A)  Lock Shift G2
3527
3528       ESC o                 (A)  Lock Shift G3
3529
3530       ESC N                 (A)  Single Shift G2
3531
3532       ESC O                 (A)  Single Shift G3
3533
3534       ESC ( Pcs             (A)  Designate character set as G0
3535
3536       ESC ) Pcs             (A)  Designate character set as G1
3537
3538       ESC * Pcs             (A)  Designate character set as G2
3539
3540       ESC + Pcs             (A)  Designate character set as G3
3541
3542       ESC [ Pn ; Pn H            Direct Cursor Addressing
3543
3544       ESC [ Pn ; Pn f            same as above
3545
3546       ESC [ Pn J                 Erase in Display
3547
3548                                  Pn = None or 0             From  Cursor   to
3549                                                             End of Screen
3550
3551                                  Pn = 1                     From Beginning of
3552                                                             Screen to Cursor
3553
3554                                  Pn = 2                     Entire Screen
3555
3556       ESC [ Pn K                 Erase in Line
3557
3558                                  Pn = None or 0             From  Cursor   to
3559                                                             End of Line
3560
3561                                  Pn = 1                     From Beginning of
3562                                                             Line to Cursor
3563
3564                                  Pn = 2                     Entire Line
3565
3566       ESC [ Pn X                 Erase character
3567
3568       ESC [ Pn A                 Cursor Up
3569
3570       ESC [ Pn B                 Cursor Down
3571
3572       ESC [ Pn C                 Cursor Right
3573
3574       ESC [ Pn D                 Cursor Left
3575
3576       ESC [ Pn E                 Cursor next line
3577
3578       ESC [ Pn F                 Cursor previous line
3579
3580       ESC [ Pn G                 Cursor horizontal position
3581
3582       ESC [ Pn `                 same as above
3583
3584       ESC [ Pn d                 Cursor vertical position
3585
3586       ESC [ Ps ;...; Ps m        Select Graphic Rendition
3587
3588                                  Ps = None or 0             Default Rendition
3589
3590                                  Ps = 1                     Bold
3591
3592                                  Ps = 2                (A)  Faint
3593
3594                                  Ps = 3                (A)  Standout     Mode
3595                                                             (ANSI:     Itali‐
3596                                                             cized)
3597
3598                                  Ps = 4                     Underlined
3599
3600                                  Ps = 5                     Blinking
3601
3602                                  Ps = 7                     Negative Image
3603
3604                                  Ps = 22               (A)  Normal Intensity
3605
3606                                  Ps = 23               (A)  Standout Mode off
3607                                                             (ANSI: Italicized
3608                                                             off)
3609
3610                                  Ps = 24               (A)  Not Underlined
3611
3612                                  Ps = 25               (A)  Not Blinking
3613
3614                                  Ps = 27               (A)  Positive Image
3615
3616                                  Ps = 30               (A)  Foreground Black
3617
3618                                  Ps = 31               (A)  Foreground Red
3619
3620                                  Ps = 32               (A)  Foreground Green
3621
3622                                  Ps = 33               (A)  Foreground Yellow
3623
3624                                  Ps = 34               (A)  Foreground Blue
3625
3626                                  Ps = 35               (A)  Foreground
3627                                                             Magenta
3628
3629                                  Ps = 36               (A)  Foreground Cyan
3630
3631                                  Ps = 37               (A)  Foreground White
3632
3633                                  Ps = 39               (A)  Foreground
3634                                                             Default
3635
3636                                  Ps = 40               (A)  Background Black
3637
3638                                  Ps = ...
3639
3640                                  Ps = 49               (A)  Background
3641                                                             Default
3642
3643       ESC [ Pn g                 Tab Clear
3644
3645                                  Pn = None or 0             Clear Tab at Cur‐
3646                                                             rent Position
3647
3648                                  Pn = 3                     Clear All Tabs
3649
3650       ESC [ Pn ; Pn r       (V)  Set Scrolling Region
3651
3652       ESC [ Pn I            (A)  Horizontal Tab
3653
3654       ESC [ Pn Z            (A)  Backward Tab
3655
3656       ESC [ Pn L            (A)  Insert Line
3657
3658       ESC [ Pn M            (A)  Delete Line
3659
3660       ESC [ Pn @            (A)  Insert Character
3661
3662       ESC [ Pn P            (A)  Delete Character
3663
3664       ESC [ Pn S                 Scroll Scrolling Region Up
3665
3666       ESC [ Pn T                 Scroll Scrolling Region Down
3667
3668       ESC [ Pn ^                 same as above
3669
3670       ESC [ Ps ;...; Ps h        Set Mode
3671
3672       ESC [ Ps ;...; Ps l        Reset Mode
3673
3674                                  Ps = 4                (A)  Insert Mode
3675
3676                                  Ps = 20               (A)  Automatic   Line‐
3677                                                             feed Mode
3678
3679                                  Ps = 34                    Normal     Cursor
3680                                                             Visibility
3681
3682                                  Ps = ?1               (V)  Application  Cur‐
3683                                                             sor Keys
3684
3685                                  Ps = ?3               (V)  Change   Terminal
3686                                                             Width to 132 col‐
3687                                                             umns
3688
3689                                  Ps = ?5               (V)  Reverse Video
3690
3691                                  Ps = ?6               (V)  Origin Mode
3692
3693                                  Ps = ?7               (V)  Wrap Mode
3694
3695                                  Ps = ?9                    X10  mouse track‐
3696                                                             ing
3697
3698                                  Ps = ?25              (V)  Visible Cursor
3699
3700                                  Ps = ?47                   Alternate  Screen
3701                                                             (old xterm code)
3702
3703                                  Ps = ?1000            (V)  VT200       mouse
3704                                                             tracking
3705
3706                                  Ps = ?1047                 Alternate  Screen
3707                                                             (new xterm code)
3708
3709                                  Ps = ?1049                 Alternate  Screen
3710                                                             (new xterm code)
3711
3712       ESC [ 5 i             (A)  Start relay to printer (ANSI Media Copy)
3713
3714       ESC [ 4 i             (A)  Stop relay to printer (ANSI Media Copy)
3715
3716       ESC [ 8 ; Ph ; Pw t        Resize the window to  `Ph'  lines  and  `Pw'
3717                                  columns (SunView special)
3718
3719       ESC [ c                    Send VT100 Identification String
3720
3721       ESC [ x                    Send Terminal Parameter Report
3722
3723       ESC [ > c                  Send   VT220   Secondary  Device  Attributes
3724                                  String
3725
3726       ESC [ 6 n                  Send Cursor Position Report
3727
3728
3729

INPUT TRANSLATION

3731       In order to do a full VT100 emulation  screen  has  to  detect  that  a
3732       sequence  of characters in the input stream was generated by a keypress
3733       on the user's keyboard and insert  the  VT100  style  escape  sequence.
3734       Screen  has  a very flexible way of doing this by making it possible to
3735       map arbitrary commands on arbitrary sequences of characters. For  stan‐
3736       dard  VT100  emulation  the  command will always insert a string in the
3737       input buffer of the window (see also command stuff in the  command  ta‐
3738       ble).  Because the sequences generated by a keypress can change after a
3739       reattach from a different terminal type, it is possible  to  bind  com‐
3740       mands  to the termcap name of the keys.  Screen will insert the correct
3741       binding after each  reattach.  See  the  bindkey  command  for  further
3742       details on the syntax and examples.
3743
3744       Here  is the table of the default key bindings. The fourth is what com‐
3745       mand is executed if the keyboard is switched into application mode.
3746
3747       ┌────────────────┬──────────────┬──────────┬──────────┐
3748       │Key name        │ Termcap name │ Command  │ App mode │
3749       ├────────────────┼──────────────┼──────────┼──────────┤
3750       │Cursor up       │ ku           │ \033[A   │ \033OA   │
3751       ├────────────────┼──────────────┼──────────┼──────────┤
3752       │Cursor down     │ kd           │ \033[B   │ \033OB   │
3753       ├────────────────┼──────────────┼──────────┼──────────┤
3754       │Cursor right    │ kr           │ \033[C   │ \033OC   │
3755       ├────────────────┼──────────────┼──────────┼──────────┤
3756       │Cursor left     │ kl           │ \033[D   │ \033OD   │
3757       ├────────────────┼──────────────┼──────────┼──────────┤
3758       │Function key 0  │ k0           │ \033[10~ │          │
3759       ├────────────────┼──────────────┼──────────┼──────────┤
3760       │Function key 1  │ k1           │ \033OP   │          │
3761       ├────────────────┼──────────────┼──────────┼──────────┤
3762       │Function key 2  │ k2           │ \033OQ   │          │
3763       ├────────────────┼──────────────┼──────────┼──────────┤
3764       │Function key 3  │ k3           │ \033OR   │          │
3765       ├────────────────┼──────────────┼──────────┼──────────┤
3766       │Function key 4  │ k4           │ \033OS   │          │
3767       ├────────────────┼──────────────┼──────────┼──────────┤
3768       │Function key 5  │ k5           │ \033[15~ │          │
3769       ├────────────────┼──────────────┼──────────┼──────────┤
3770       │Function key 6  │ k6           │ \033[17~ │          │
3771       ├────────────────┼──────────────┼──────────┼──────────┤
3772       │Function key 7  │ k7           │ \033[18~ │          │
3773       ├────────────────┼──────────────┼──────────┼──────────┤
3774       │Function key 8  │ k8           │ \033[19~ │          │
3775       ├────────────────┼──────────────┼──────────┼──────────┤
3776       │Function key 9  │ k9           │ \033[20~ │          │
3777       ├────────────────┼──────────────┼──────────┼──────────┤
3778       │Function key 10 │ k;           │ \033[21~ │          │
3779       ├────────────────┼──────────────┼──────────┼──────────┤
3780       │Function key 11 │ F1           │ \033[23~ │          │
3781       ├────────────────┼──────────────┼──────────┼──────────┤
3782       │Function key 12 │ F2           │ \033[24~ │          │
3783       ├────────────────┼──────────────┼──────────┼──────────┤
3784       │Home            │ kh           │ \033[1~  │          │
3785       ├────────────────┼──────────────┼──────────┼──────────┤
3786       │End             │ kH           │ \033[4~  │          │
3787       ├────────────────┼──────────────┼──────────┼──────────┤
3788       │Insert          │ kI           │ \033[2~  │          │
3789       ├────────────────┼──────────────┼──────────┼──────────┤
3790       │Delete          │ kD           │ \033[3~  │          │
3791       ├────────────────┼──────────────┼──────────┼──────────┤
3792       │Page up         │ kP           │ \033[5~  │          │
3793       ├────────────────┼──────────────┼──────────┼──────────┤
3794       │Page down       │ kN           │ \033[6~  │          │
3795       ├────────────────┼──────────────┼──────────┼──────────┤
3796       │Keypad 0        │ f0           │ 0        │ \033Op   │
3797       ├────────────────┼──────────────┼──────────┼──────────┤
3798       │Keypad 1        │ f1           │ 1        │ \033Oq   │
3799       ├────────────────┼──────────────┼──────────┼──────────┤
3800       │Keypad 2        │ f2           │ 2        │ \033Or   │
3801       ├────────────────┼──────────────┼──────────┼──────────┤
3802       │Keypad 3        │ f3           │ 3        │ \033Os   │
3803       ├────────────────┼──────────────┼──────────┼──────────┤
3804       │Keypad 4        │ f4           │ 4        │ \033Ot   │
3805       ├────────────────┼──────────────┼──────────┼──────────┤
3806       │Keypad 5        │ f5           │ 5        │ \033Ou   │
3807       ├────────────────┼──────────────┼──────────┼──────────┤
3808       │Keypad 6        │ f6           │ 6        │ \033Ov   │
3809       ├────────────────┼──────────────┼──────────┼──────────┤
3810       │Keypad 7        │ f7           │ 7        │ \033Ow   │
3811       ├────────────────┼──────────────┼──────────┼──────────┤
3812       │Keypad 8        │ f8           │ 8        │ \033Ox   │
3813       ├────────────────┼──────────────┼──────────┼──────────┤
3814       │Keypad 9        │ f9           │ 9        │ \033Oy   │
3815       ├────────────────┼──────────────┼──────────┼──────────┤
3816       │Keypad +        │ f+           │ +        │ \033Ok   │
3817       ├────────────────┼──────────────┼──────────┼──────────┤
3818       │Keypad -        │ f-           │ -        │ \033Om   │
3819       ├────────────────┼──────────────┼──────────┼──────────┤
3820       │Keypad *        │ f*           │ *        │ \033Oj   │
3821       ├────────────────┼──────────────┼──────────┼──────────┤
3822       │Keypad /        │ f/           │ /        │ \033Oo   │
3823       ├────────────────┼──────────────┼──────────┼──────────┤
3824       │Keypad =        │ fq           │ =        │ \033OX   │
3825       ├────────────────┼──────────────┼──────────┼──────────┤
3826       │Keypad .        │ f.           │ .        │ \033On   │
3827       ├────────────────┼──────────────┼──────────┼──────────┤
3828       │Keypad ,        │ f,           │ ,        │ \033Ol   │
3829       ├────────────────┼──────────────┼──────────┼──────────┤
3830       │Keypad enter    │ fe           │ \015     │ \033OM   │
3831       └────────────────┴──────────────┴──────────┴──────────┘
3832

SPECIAL TERMINAL CAPABILITIES

3834       The following table describes all terminal capabilities that are recog‐
3835       nized  by  screen  and are not in the termcap(5) manual.  You can place
3836       these capabilities in your termcap entries (in `/etc/termcap')  or  use
3837       them  with the commands `termcap', `terminfo' and `termcapinfo' in your
3838       screenrc files. It is often not possible to place these capabilities in
3839       the terminfo database.
3840
3841       LP   (bool)  Terminal  has  VT100 style margins (`magic margins'). Note
3842                    that this capability is obsolete because screen  uses  the
3843                    standard 'xn' instead.
3844
3845       Z0   (str)   Change width to 132 columns.
3846
3847       Z1   (str)   Change width to 80 columns.
3848
3849       WS   (str)   Resize  display. This capability has the desired width and
3850                    height as arguments. SunView(tm) example: '\E[8;%d;%dt'.
3851
3852       NF   (bool)  Terminal doesn't need flow control. Send ^S and ^Q  direct
3853                    to  the  application.  Same as 'flow off'. The opposite of
3854                    this capability is 'nx'.
3855
3856       G0   (bool)  Terminal can deal with ISO 2022 font selection sequences.
3857
3858       S0   (str)   Switch charset 'G0' to the specified charset.  Default  is
3859                    '\E(%.'.
3860
3861       E0   (str)   Switch  charset  'G0' back to standard charset. Default is
3862                    '\E(B'.
3863
3864       C0   (str)   Use the string as a conversion table for font '0'. See the
3865                    'ac' capability for more details.
3866
3867       CS   (str)   Switch cursor-keys to application mode.
3868
3869       CE   (str)   Switch cursor-keys back to normal mode.
3870
3871       AN   (bool)  Turn  on  autonuke.  See  the  'autonuke' command for more
3872                    details.
3873
3874       OL   (num)   Set the output buffer limit. See the  'obuflimit'  command
3875                    for more details.
3876
3877       KJ   (str)   Set  the encoding of the terminal. See the 'encoding' com‐
3878                    mand for valid encodings.
3879
3880       AF   (str)   Change character foreground color in an ANSI conform  way.
3881                    This  capability  will  almost  always be set to '\E[3%dm'
3882                    ('\E[3%p1%dm' on terminfo machines).
3883
3884       AB   (str)   Same as 'AF', but change background color.
3885
3886       AX   (bool)  Does understand ANSI set default  fg/bg  color  (\E[39m  /
3887                    \E[49m).
3888
3889       XC   (str)   Describe  a translation of characters to strings depending
3890                    on the current font. More details follow in the next  sec‐
3891                    tion.
3892
3893       XT   (bool)  Terminal  understands  special xterm sequences (OSC, mouse
3894                    tracking).
3895
3896       C8   (bool)  Terminal needs bold to display high-intensity colors (e.g.
3897                    Eterm).
3898
3899       TF   (bool)  Add  missing  capabilities to the termcap/info entry. (Set
3900                    by default).
3901
3902

CHARACTER TRANSLATION

3904       Screen has a powerful mechanism to translate  characters  to  arbitrary
3905       strings depending on the current font and terminal type.  Use this fea‐
3906       ture if you want to work with a  common  standard  character  set  (say
3907       ISO8851-latin1) even on terminals that scatter the more unusual charac‐
3908       ters over several national language font pages.
3909
3910       Syntax:
3911           XC=<charset-mapping>{,,<charset-mapping>}
3912           <charset-mapping> := <designator><template>{,<mapping>}
3913           <mapping> := <char-to-be-mapped><template-arg>
3914
3915       The things in braces may be repeated any number of times.
3916
3917       A <charset-mapping> tells screen how to map characters in font  <desig‐
3918       nator>  ('B':  Ascii,  'A':  UK,  'K': German, etc.)  to strings. Every
3919       <mapping> describes to what string a single character  will  be  trans‐
3920       lated. A template mechanism is used, as most of the time the codes have
3921       a lot in common (for example strings to  switch  to  and  from  another
3922       charset).  Each  occurrence  of '%' in <template> gets substituted with
3923       the <template-arg> specified  together  with  the  character.  If  your
3924       strings  are  not  similar at all, then use '%' as a template and place
3925       the full string in <template-arg>. A quoting  mechanism  was  added  to
3926       make  it  possible to use a real '%'. The '\' character quotes the spe‐
3927       cial characters '\', '%', and ','.
3928
3929       Here is an example:
3930
3931           termcap hp700 'XC=B\E(K%\E(B,\304[,\326\\\\,\334]'
3932
3933       This tells screen how to translate ISOlatin1 (charset 'B')  upper  case
3934       umlaut characters on a hp700 terminal that has a German charset. '\304'
3935       gets translated to '\E(K[\E(B' and so on.  Note  that  this  line  gets
3936       parsed  *three* times before the internal lookup table is built, there‐
3937       fore a lot of quoting is needed to create a single '\'.
3938
3939       Another extension was added to  allow  more  emulation:  If  a  mapping
3940       translates the unquoted '%' char, it will be sent to the terminal when‐
3941       ever screen switches to the corresponding <designator>. In this special
3942       case  the template is assumed to be just '%' because the charset switch
3943       sequence and the character mappings normally haven't much in common.
3944
3945       This example shows one use of the extension:
3946
3947           termcap xterm 'XC=K%,%\E(B,[\304,\\\\\326,]\334'
3948
3949       Here, a part of the German ('K') charset is emulated on an  xterm.   If
3950       screen  has  to  change  to the 'K' charset, '\E(B' will be sent to the
3951       terminal, i.e. the ASCII charset is used instead. The template is  just
3952       '%',  so  the mapping is straightforward: '[' to '\304', '\' to '\326',
3953       and ']' to '\334'.
3954
3955

ENVIRONMENT

3957       COLUMNS        Number of columns on  the  terminal  (overrides  termcap
3958                      entry).
3959       HOME           Directory in which to look for .screenrc.
3960       LINES          Number  of  lines  on  the  terminal  (overrides termcap
3961                      entry).
3962       LOCKPRG        Screen lock program.
3963       NETHACKOPTIONS Turns on nethack option.
3964       PATH           Used for locating programs to run.
3965       SCREENCAP      For customizing a terminal's TERMCAP value.
3966       SCREENDIR      Alternate socket directory.
3967       SCREENRC       Alternate user screenrc file.
3968       SHELL          Default  shell  program  for  opening  windows  (default
3969                      "/bin/sh").  See also "shell" .screenrc command.
3970       STY            Alternate socket name.
3971       SYSSCREENRC    Alternate system screenrc file.
3972       TERM           Terminal name.
3973       TERMCAP        Terminal description.
3974       WINDOW         Window number of a window (at creation time).
3975

FILES

3977       .../screen-4.?.??/etc/screenrc
3978       .../screen-4.?.??/etc/etcscreenrc Examples  in  the screen distribution
3979                                         package for private and  global  ini‐
3980                                         tialization files.
3981       $SYSSCREENRC
3982       /etc/screenrc                     screen initialization commands
3983       $SCREENRC
3984       $HOME/.screenrc                   Read in after /etc/screenrc
3985       $SCREENDIR/S-<login>
3986       /local/screens/S-<login>          Socket directories (default)
3987       /usr/tmp/screens/S-<login>        Alternate socket directories.
3988       <socket directory>/.termcap       Written by the "termcap" output func‐
3989                                         tion
3990       /usr/tmp/screens/screen-exchange  or
3991       /tmp/screen-exchange              screen  `interprocess   communication
3992                                         buffer'
3993       hardcopy.[0-9]                    Screen images created by the hardcopy
3994                                         function
3995       screenlog.[0-9]                   Output log files created by  the  log
3996                                         function
3997       /usr/lib/terminfo/?/*             or
3998       /etc/termcap                      Terminal capability databases
3999       /etc/utmp                         Login records
4000       $LOCKPRG                          Program that locks a terminal.
4001
4002

SEE ALSO

4004       termcap(5), utmp(5), vi(1), captoinfo(1), tic(1)
4005
4006

AUTHORS

4008       Originally  created  by  Oliver Laumann. For a long time maintained and
4009       developed by Juergen Weigert, Michael Schroeder, Micah Cowan and Sadrul
4010       Habib  Chowdhury. Since 2015 maintained and developed by Amadeusz Slaw‐
4011       inski <amade@asmblr.net> and Alexander  Naumov  <alexander_naumov@open‐
4012       suse.org>.
4013

COPYLEFT

4015       Copyright (c) 2018-2020
4016            Alexander Naumov <alexander_naumov@opensuse.org>
4017            Amadeusz Slawinski <amade@asmblr.net>
4018       Copyright (c) 2015-2017
4019            Juergen Weigert <jnweiger@immd4.informatik.uni-erlangen.de>
4020            Alexander Naumov <alexander_naumov@opensuse.org>
4021            Amadeusz Slawinski <amade@asmblr.net>
4022       Copyright (c) 2010-2015
4023            Juergen Weigert <jnweiger@immd4.informatik.uni-erlangen.de>
4024            Sadrul Habib Chowdhury <sadrul@users.sourceforge.net>
4025       Copyright (c) 2008, 2009
4026            Juergen Weigert <jnweiger@immd4.informatik.uni-erlangen.de>
4027            Michael Schroeder <mlschroe@immd4.informatik.uni-erlangen.de>
4028            Micah Cowan <micah@cowan.name>
4029            Sadrul Habib Chowdhury <sadrul@users.sourceforge.net>
4030       Copyright (C) 1993-2003
4031            Juergen Weigert <jnweiger@immd4.informatik.uni-erlangen.de>
4032            Michael Schroeder <mlschroe@immd4.informatik.uni-erlangen.de>
4033       Copyright (C) 1987 Oliver Laumann
4034       This program is free software; you can redistribute it and/or modify it
4035       under the terms of the GNU General Public License as published  by  the
4036       Free  Software  Foundation;  either  version 3, or (at your option) any
4037       later version.
4038       This program is distributed in the hope that it  will  be  useful,  but
4039       WITHOUT  ANY  WARRANTY;  without  even  the  implied  warranty  of MER‐
4040       CHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU  General
4041       Public License for more details.
4042       You should have received a copy of the GNU General Public License along
4043       with this program (see the file COPYING); if not,  write  to  the  Free
4044       Software  Foundation,  Inc.,  59  Temple  Place - Suite 330, Boston, MA
4045       02111-1307, USA
4046

CONTRIBUTORS

4048       Maarten ter Huurne <maarten@treewalker.org>,
4049       Jussi Kukkonen <jussi.kukkonen@intel.com>,
4050       Eric S. Raymond <esr@thyrsus.com>,
4051       Thomas Renninger <treen@suse.com>,
4052       Axel Beckert <abe@deuxchevaux.org>,
4053       Ken Beal <kbeal@amber.ssd.csd.harris.com>,
4054       Rudolf Koenig <rfkoenig@immd4.informatik.uni-erlangen.de>,
4055       Toerless Eckert <eckert@immd4.informatik.uni-erlangen.de>,
4056       Wayne Davison <davison@borland.com>,
4057       Patrick Wolfe <pat@kai.com, kailand!pat>,
4058       Bart Schaefer <schaefer@cse.ogi.edu>,
4059       Nathan Glasser <nathan@brokaw.lcs.mit.edu>,
4060       Larry W. Virden <lvirden@cas.org>,
4061       Howard Chu <hyc@hanauma.jpl.nasa.gov>,
4062       Tim MacKenzie <tym@dibbler.cs.monash.edu.au>,
4063       Markku Jarvinen <mta@{cc,cs,ee}.tut.fi>,
4064       Marc Boucher <marc@CAM.ORG>,
4065       Doug Siebert <dsiebert@isca.uiowa.edu>,
4066       Ken Stillson <stillson@tsfsrv.mitre.org>,
4067       Ian Frechett <frechett@spot.Colorado.EDU>,
4068       Brian Koehmstedt <bpk@gnu.ai.mit.edu>,
4069       Don Smith <djs6015@ultb.isc.rit.edu>,
4070       Frank van der Linden <vdlinden@fwi.uva.nl>,
4071       Martin Schweikert <schweik@cpp.ob.open.de>,
4072       David Vrona <dave@sashimi.lcu.com>,
4073       E. Tye McQueen <tye%spillman.UUCP@uunet.uu.net>,
4074       Matthew Green <mrg@eterna.com.au>,
4075       Christopher Williams <cgw@pobox.com>,
4076       Matt Mosley <mattm@access.digex.net>,
4077       Gregory Neil Shapiro <gshapiro@wpi.WPI.EDU>,
4078       Johannes Zellner <johannes@zellner.org>,
4079       Pablo Averbuj <pablo@averbuj.com>.
4080

AVAILABILITY

4082       The latest official release of screen available via anonymous ftp  from
4083       ftp.gnu.org/gnu/screen/  or  any  other GNU distribution site. The home
4084       site of screen is savannah.gnu.org/projects/screen/.  If  you  want  to
4085       help, send a note to screen-devel@gnu.org.
4086

BUGS

4088       ·  `dm'  (delete  mode)  and  `xs'  are not handled correctly (they are
4089          ignored). `xn' is treated as a magic-margin indicator.
4090
4091       ·  Screen has no clue about double-high or double-wide characters.  But
4092          this is the only area where vttest is allowed to fail.
4093
4094       ·  It  is not possible to change the environment variable $TERMCAP when
4095          reattaching under a different terminal type.
4096
4097       ·  The support of terminfo based systems is very limited. Adding  extra
4098          capabilities to $TERMCAP may not have any effects.
4099
4100       ·  Screen does not make use of hardware tabs.
4101
4102       ·  Screen  must be installed as set-uid with owner root on most systems
4103          in order to be able to correctly change the owner of the tty  device
4104          file  for  each  window.  Special permission may also be required to
4105          write the file "/etc/utmp".
4106
4107       ·  Entries in "/etc/utmp" are not removed when screen  is  killed  with
4108          SIGKILL.   This  will  cause  some  programs (like "w" or "rwho") to
4109          advertise that a user is logged on who really isn't.
4110
4111       ·  Screen may give a strange warning when your tty has no utmp entry.
4112
4113       ·  When the modem line was hung up, screen may not automatically detach
4114          (or  quit)  unless  the device driver is configured to send a HANGUP
4115          signal.  To detach a screen session use the -D or  -d  command  line
4116          option.
4117
4118       ·  If  a  password  is  set,  the  command line options -d and -D still
4119          detach a session without asking.
4120
4121       ·  Both "breaktype" and  "defbreaktype"  change  the  break  generating
4122          method  used by all terminal devices. The first should change a win‐
4123          dow specific setting,  where  the  latter  should  change  only  the
4124          default for new windows.
4125
4126       ·  When  attaching to a multiuser session, the user's .screenrc file is
4127          not sourced. Each user's personal settings have to  be  included  in
4128          the  .screenrc  file from which the session is booted, or have to be
4129          changed manually.
4130
4131       ·  A weird imagination is most useful to gain full advantage of all the
4132          features.
4133
4134       ·  Send bug-reports, fixes, enhancements, t-shirts, money, beer & pizza
4135          to screen-devel@gnu.org.
4136
4137
4138
4139
41404th Berkeley Distribution          Feb 2020                          SCREEN(1)
Impressum