summaryrefslogtreecommitdiff
path: root/src/doc/screen.texinfo
diff options
context:
space:
mode:
Diffstat (limited to 'src/doc/screen.texinfo')
-rw-r--r--src/doc/screen.texinfo716
1 files changed, 611 insertions, 105 deletions
diff --git a/src/doc/screen.texinfo b/src/doc/screen.texinfo
index 2c60317..03dccdf 100644
--- a/src/doc/screen.texinfo
+++ b/src/doc/screen.texinfo
@@ -73,6 +73,9 @@ except that this permission notice may be stated in a translation approved
by the Foundation.
@end titlepage
+@shortcontents
+@contents
+
@node Top, Overview, (dir), (dir)
@ifinfo
@@ -175,6 +178,9 @@ run another copy of @code{screen}, but will instead supply the command
name and its arguments to the window manager (specified in the $STY environment
variable) who will use it to create the new window. The above example would
start the @code{emacs} editor (editing @file{prog.c}) and switch to its window.
+- Note that you cannot transport environment variables from
+the invoking shell to the application (emacs in this case), because it is
+forked from the parent screen process, not from the invoking shell.
If @file{/etc/utmp} is writable by @code{screen}, an appropriate record
will be written to this file for each window, and removed when the
@@ -344,12 +350,20 @@ This also starts @code{screen} in @emph{detached} mode, but doesn't fork
a new process. The command exits if the session terminates.
@end table
-@item -p @var{name_or_number}
+@item -O
+Select a more optimal output mode for your terminal rather than true VT100
+emulation (only affects auto-margin terminals without @samp{LP}). This
+can also be set in your @file{.screenrc} by specifying @samp{OP} in the
+@code{termcap} command.
+
+@item -p @var{name_or_number}|-|=|+
Preselect a window. This is useful when you want to reattach to a
specific window or you want to send a command via the @samp{-X}
option to a specific window. As with screen's select command, @samp{-}
selects the blank window. As a special case for reattach, @samp{=}
-brings up the windowlist on the blank window.
+brings up the windowlist on the blank window, while a @samp{+} will
+create new window. The command will not be executed if the specified
+window could not be found.
@item -q
Suppress printing of error messages. In combination with @samp{-ls} the exit
@@ -361,6 +375,23 @@ there is no session to resume. 12 (or more) indicates that there are 2 (or
more) sessions to resume and you should specify which one to choose.
In all other cases @samp{-q} has no effect.
+@item -Q
+Some commands now can be queried from a remote session using this
+flag, e.g. 'screen -Q windows'. The commands will send the
+response to the stdout of the querying process. If there was an
+error in the command, then the querying process will exit with
+a non-zero status.
+
+The commands that can be queried now are:
+ @code{echo}
+ @code{info}
+ @code{lastmsg}
+ @code{number}
+ @code{select}
+ @code{time}
+ @code{title}
+ @code{windows}
+
@item -r [@var{pid.sessionname}]
@itemx -r @var{sessionowner}/[@var{pid.sessionname}]
Resume a detached @code{screen} session. No other options (except
@@ -400,6 +431,10 @@ Set the title (name) for the default shell or specified program.
This option is equivalent to the @code{shelltitle} command
(@pxref{Shell}).
+@item -T @var{term}
+Set the $TERM enviroment varible using the spcified @emph{term} as
+opposed to the defualt setting of @code{screen}.
+
@item -U
Run screen in UTF-8 mode. This option tells screen that your terminal
sends and understands UTF-8 encoded characters. It also sets the default
@@ -620,7 +655,7 @@ Cycle flow among @samp{on}, @samp{off} or @samp{auto}. @xref{Flow}.
@item @kbd{C-a F}
(fit)@*
-Resize the window to the current region size. @xref{Window Size}.
+Resize the window to the current region size. @xref{Fit}.
@item @kbd{C-a C-g}
(vbell)@*
@@ -705,7 +740,7 @@ Send a ^S (ASCII XOFF) to the current window. @xref{XON/XOFF}.
@item @kbd{C-a S}
(split)@*
-Split the current region into two new ones. @xref{Regions}.
+Split the current region horizontally into two new ones. @xref{Regions}.
@item @kbd{C-a t}
@itemx @kbd{C-a C-t}
@@ -797,15 +832,19 @@ Delete the screen-exchange file. @xref{Screen Exchange}.
@item @kbd{C-a _}
(silence)@*
-Start/stop monitoring the current window for inactivity. @xref{Silence},
+Start/stop monitoring the current window for inactivity. @xref{Monitor}.
+
+@item @kbd{C-a |}
+(split -v)@*
+Split the current region vertically into two new ones. @xref{Regions}.
@item @kbd{C-a ,}
(license)@*
-Show the copyright page.
+Show the copyright page. @xref{License}.
@item @kbd{C-a *}
(displays)@*
-Show the listing of attached displays.
+Show the listing of attached displays. @xref{Displays}.
@end table
@node Command Summary, , Default Key Bindings, Commands
@@ -915,6 +954,8 @@ Select default utmp logging behavior. @xref{Login}.
Select default file mode for ptys. @xref{Mode}.
@item defmonitor @var{state}
Select default activity monitoring behavior. @xref{Monitor}.
+@item defmousetrack @var{on}|@var{off}
+Select the default mouse tracking behavior. @xref{Mousetrack}.
@item defnonblock @var{state}|@var{numsecs}
Select default nonblock mode. @xref{Nonblock}.
@item defobuflimit @var{limit}
@@ -924,7 +965,7 @@ Set default lines of scrollback. @xref{Scrollback}.
@item defshell @var{command}
Set the default program for new windows. @xref{Shell}.
@item defsilence @var{state}
-Select default idle monitoring behavior. @xref{Silence}.
+Select default idle monitoring behavior. @xref{Monitor}.
@item defslowpaste @var{msec}
Select the default inter-character timeout when pasting. @xref{Paste}.
@item defutf8 @var{state}
@@ -937,8 +978,8 @@ Set default writelock behavior. @xref{Multiuser Session}.
Keep dead windows. @xref{Zombie}.
@item detach [-h]
Disconnect @code{screen} from the terminal. @xref{Detach}.
-@item digraph
-Enter digraph sequence. @xref{Digraph}.
+@item digraph [@var{preset} [@var{unicode-value}]]
+Enter a digraph sequence. @xref{Digraph}.
@item dinfo
Display terminal information. @xref{Info}.
@item displays
@@ -961,8 +1002,12 @@ Change window size to current display size. @xref{Window Size}.
Set flow control behavior. @xref{Flow}.
@item focus
Move focus to next region. @xref{Regions}.
+@item focusminsize
+Force the current region to a certain size. @xref{Focusminsize}.
@item gr [@var{state}]
Change GR charset processing. @xref{Character Processing}.
+@item group [@var{grouptitle}]
+Change or show the group the current window belongs to. @xref{Window Groups}.
@item hardcopy [-h] [@var{file}]
Write out the contents of the current window. @xref{Hardcopy}.
@item hardcopy_append @var{state}
@@ -991,6 +1036,30 @@ Removed, use @code{paste} instead. @xref{Registers}.
Destroy the current window. @xref{Kill}.
@item lastmsg
Redisplay the last message. @xref{Last Message}.
+@item layout new [@var{title}]
+Create a layout. @xref{Layout}.
+@item layout remove [@var{n}|@var{title}]
+Delete a layout. @xref{Layout}.
+@item layout next
+Select the next layout. @xref{Layout}.
+@item layout prev
+Select the previous layout. @xref{Layout}.
+@item layout select [@var{n}|@var{title}]
+Jump to a layout. @xref{Layout}.
+@item layout show
+List the available layouts. @xref{Layout}.
+@item layout title [@var{title}]
+Show or set the title of a layout. @xref{Layout}.
+@item layout number [@var{n}]
+Show or set the number of a layout. @xref{Layout}.
+@item layout attach [@var{title}|:last]
+Show or set which layout to reattach to. @xref{Layout}.
+@item layout save [@var{n}|@var{title}]
+Remember the organization of a layout. @xref{Layout}.
+@item layout autosave [@var{on}|@var{off}]
+Show or set the status of layout saving. @xref{Layout}.
+@item layout dump [filename]
+Save the layout arrangement to a file. @xref{Layout}.
@item license
Display licensing information. @xref{Startup}.
@item lockscreen
@@ -1007,7 +1076,7 @@ Configure logfile time-stamps. @xref{Log}.
Use only the default mapping table for the next keystroke. @xref{Bindkey Control}.
@item mapnotnext
Don't try to do keymapping on the next keystroke. @xref{Bindkey Control}.
-@item maptimeout @var{timo}
+@item maptimeout @var{n}
Set the inter-character timeout used for keymapping. @xref{Bindkey Control}.
@item markkeys @var{string}
Rebind keys in copy mode. @xref{Copy Mode Keys}.
@@ -1017,6 +1086,8 @@ Set the maximum window number. @xref{Maxwin}.
Insert the command character. @xref{Command Character}.
@item monitor [@var{state}]
Monitor activity in window. @xref{Monitor}.
+@item mousetrack [@var{on}|@var{off}]
+Enable selecting split regions with mouse clicks. @xref{Mousetrack}.
@item msgminwait @var{sec}
Set minimum message wait. @xref{Message Wait}.
@item msgwait @var{sec}
@@ -1071,15 +1142,17 @@ Store a string to a register. @xref{Registers}.
Kill current region. @xref{Regions}.
@item removebuf
Delete the screen-exchange file. @xref{Screen Exchange}.
+@item rendition bell | monitor | silence | so @var{attr} [@var{color}]
+Change text attributes in caption for flagged windows. @xref{Rendition}.
@item reset
Reset the terminal settings for the window. @xref{Reset}.
@item resize [(+/-)lines]
Grow or shrink a region
-@item screen [@var{opts}] [@var{n}] [@var{cmd} [@var{args}]]
+@item screen [@var{opts}] [@var{n}] [@var{cmd} [@var{args}] | //group]
Create a new window. @xref{Screen Command}.
@item scrollback @var{num}
Set size of scrollback buffer. @xref{Scrollback}.
-@item select [@var{n}]
+@item select [@var{n}|-|.]
Switch to a specified window. @xref{Selecting}.
@item sessionname [@var{name}]
Name this session. @xref{Session Name}.
@@ -1092,9 +1165,9 @@ Set the default program for new windows. @xref{Shell}.
@item shelltitle @var{title}
Set the default name for new windows. @xref{Shell}.
@item silence [@var{state}|@var{seconds}]
-Monitor a window for inactivity. @xref{Silence}.
+Monitor a window for inactivity. @xref{Monitor}.
@item silencewait @var{seconds}
-Default timeout to trigger an inactivity notify. @xref{Silence}.
+Default timeout to trigger an inactivity notify. @xref{Monitor}.
@item sleep @var{num}
Pause during startup. @xref{Startup}.
@item slowpaste @var{msec}
@@ -1102,12 +1175,12 @@ Slow down pasting in windows. @xref{Paste}.
@item source @var{file}
Run commands from a file. @xref{Source}.
@item sorendition [@var{attr} [@var{color}]]
-Change text highlighting. @xref{Sorendition}.
+Deprecated. Use @code{rendition so} instead. @xref{Rendition}.
@item split
Split region into two parts. @xref{Regions}.
@item startup_message @var{state}
Display copyright notice on startup. @xref{Startup}.
-@item stuff @var{string}
+@item stuff [@var{string}]
Stuff a string in the input buffer of a window. @xref{Paste}.
@item su [@var{username} [@var{password} [@var{password2}]]]
Identify a user. @xref{Multiuser Session}.
@@ -1127,6 +1200,8 @@ Display time and load average. @xref{Time}.
Set the name of the current window. @xref{Title Command}.
@item umask [@var{users}]+/-@var{bits} ...
Synonym to @code{aclumask}. @xref{Umask}.
+@item unbindall
+Unset all keybindings. @xref{Bind}.
@item unsetenv @var{var}
Unset environment variable for new windows. @xref{Setenv}.
@item utf8 [@var{state} [@var{dstate}]]
@@ -1143,7 +1218,7 @@ Display @code{screen} version. @xref{Version}.
Write a message to all displays. @xref{Multiuser Session}.
@item width [@var{cols} [@var{lines}]]
Set the width of the window. @xref{Window Size}.
-@item windowlist [-b] | string [@var{string}] | title [@var{title}]
+@item windowlist [[-b] [-m] [-g]] | string [@var{string}] | title [@var{title}]
Present a list of all windows for selection. @xref{Windowlist}.
@item windows
List active windows. @xref{Windows}.
@@ -1168,9 +1243,9 @@ Keep dead windows. @xref{Zombie}.
This section describes the commands for creating a new window for
running programs. When a new window is created, the first available
-number from the range 0@dots{}9 is assigned to it.
+number is assigned to it.
The number of windows is limited at compile-time by the MAXWIN
-configuration parameter.
+configuration parameter (which defaults to 40).
@menu
* Chdir:: Change the working directory for new windows.
@@ -1179,6 +1254,7 @@ configuration parameter.
* Shell:: Parameters for shell windows.
* Term:: Set the terminal type for new windows.
* Window Types:: Creating different types of windows.
+* Window Groups:: Grouping windows together
@end menu
@node Chdir, Screen Command, , New Window
@@ -1203,7 +1279,7 @@ affect all the windows you create interactively.
@section Screen Command
@kindex c
@kindex C-c
-@deffn Command screen [opts] [n] [cmd [args]]
+@deffn Command screen [opts] [n] [cmd [args] @var{| //group}]
(@kbd{C-a c}, @kbd{C-a C-c})@*
Establish a new window. The flow-control options (@samp{-f}, @samp{-fn}
and @samp{-fa}), title option (@samp{-t}), login options
@@ -1212,11 +1288,13 @@ the all-capability-flag (@samp{-a}) and scrollback option
(@samp{-h @var{num}}) may be specified with each command.
The option (@samp{-M}) turns monitoring on for this window.
The option (@samp{-L}) turns output logging on for this window.
-If an optional number @var{n} in the range 0@dots{}9 is given,
+If an optional number @var{n} in the range 0@dots{}MAXWIN-1 is given,
the window number @var{n} is assigned to the newly created window (or,
if this number is already in-use, the next available number). If a
command is specified after @code{screen}, this command (with the given
arguments) is started in the window; otherwise, a shell is created.
+If @samp{//group} is supplied, a container-type window is created in
+which other windows may be created inside it. @xref{Window Groups}.
Screen has built in some functionality of @samp{cu} and @samp{telnet}.
@xref{Window Types}.
@@ -1292,7 +1370,7 @@ the next @code{screen rlogin othermachine} command. Use the command
and resetting the default.
@end deffn
-@node Window Types, , Term, New Window
+@node Window Types, Window Groups, Term, New Window
@section Window Types
@cindex window types
Screen provides three different window types. New windows are created
@@ -1392,6 +1470,37 @@ For telnet windows, the command @code{break} sends the telnet code
@end itemize
+@node Window Groups, , Window Types, New Window
+@section Window Groups
+@cindex window groups
+Screen provides a method for grouping windows together. Windows can be
+organized in a hierarchical fashion, resembling a tree structure. New
+screens are created using the @code{screen} command while new groups
+are created using @code{screen //group}. @xref{Screen Command}.
+
+Once a new group is created, it will act as a container for windows
+and even other groups. When a group is selected, you will see the
+output of the @code{windowlist} command, allowing you to select a
+window inside. If there are no windows inside a group, use the
+@code{screen} command to create one. Once inside a group, using the
+commands @code{next} and @code{prev} will switch between windows only
+in that group. Using the @code{windowlist} command will give you the
+opportunity to leave the group you are in. @xref{Windowlist}.
+
+@deffn Command group [grouptitle]
+(none)@*
+Change or show the group the current window belongs to. Windows can
+be moved around between different groups by specifying the name of
+the destination group. Without specifying a group, the title of the
+current group is displayed.
+@end deffn
+
+Using groups in combination with layouts will help create a
+multi-desktop experience. One group can be assigned for each
+layout made. Windows can be made, split, and organized within each
+group as desired. Afterwhich, switching between groups can be as easy
+as switching layouts.
+
@node Selecting, Session Management, New Window, Top
@chapter Selecting a Window
@@ -1421,8 +1530,10 @@ pressing space.)
@kindex p
@kindex C-p
+@kindex C-h
+@kindex Backspace
@deffn Command prev
-(@kbd{C-a p}, @kbd{C-a C-p})@*
+(@kbd{C-a p}, @kbd{C-a C-p}, @kbd{C-a C-h}, @kbd{C-a @key{Backspace}})@*
Switch to the previous window (the opposite of @kbd{C-a n}).
@end deffn
@@ -1441,7 +1552,7 @@ this command becomes @kbd{]]} (@pxref{Command Character}).
@section Select
@kindex 0@dots{}9
@kindex '
-@deffn Command select [n]
+@deffn Command select [n @var{|-|.}]
(@kbd{C-a @var{n}}, @kbd{C-a '})@*
Switch to the window with the number @var{n}.
If no window number is specified, you get prompted for an
@@ -1461,19 +1572,22 @@ current window. The latter is useful if used with screen's
@node Windowlist, , Select, Selecting
@section Windowlist
@kindex "
-@deffn Command windowlist [-b] [-m]
+@deffn Command windowlist [-b] [-m] [-g]
@deffnx Command windowlist string [@var{string}]
@deffnx Command windowlist title [@var{title}]
(@kbd{C-a "})@*
Display all windows in a table for visual window selection.
The desired window can be selected via the standard
movement keys (@pxref{Movement}) and activated via
-the return key. If the @code{-b} option is given, screen will
+the return key. If screen was in a window group, screen will
+back out of the group and then display the windows in that
+group. If the @code{-b} option is given, screen will
switch to the blank window before presenting the list, so
that the current window is also selectable.
The @code{-m} option changes the order of the windows, instead of
sorting by window numbers screen uses its internal most-recently-used
-list.
+list. The @code{-g} option will show the windows inside any groups
+in that level and downwards.
The table format can be changed with the string and title
option, the title is displayed as table heading, while the
@@ -1555,7 +1669,7 @@ logout if @code{screen} was started from your login shell.
The @var{message} specified here is output whenever a power detach is
performed. It may be used as a replacement for a logout message or to reset
baud rate, etc.
-Without parameter, the current message is shown.
+Without a parameter, the current message is shown.
@end deffn
@node Lock, Multiuser Session, Power Detach, Session Management
@@ -1758,8 +1872,11 @@ Rename the current session. Note that for @code{screen -list} the name
shows up with the process-id prepended. If the argument @var{name} is
omitted, the name of this session is displayed.@*
@emph{Caution}: The @code{$STY}
-environment variable still reflects the old name. This may result in
-confusion. The default is constructed from the tty and host names.
+environment variable will still reflect the old name in pre-existing
+shells. This may result in
+confusion. Use of this command is generally
+discouraged. Use the @code{-S} command-line option if you want to
+name a new session.The default is constructed from the tty and host names.
@end deffn
@node Suspend, Quit, Session Name, Session Management
@@ -1800,16 +1917,27 @@ which can contain different windows.
* Resize:: Grow or shrink a region
* Caption:: Control the window's caption
* Fit:: Resize a window to fit the region
+* Focusminsize:: Force a minimum size on a current region
+* Layout:: Manage groups of regions
@end menu
@node Split, Focus, , Regions
@section Split
@kindex S
-@deffn Command split
-(@kbd{C-a S})@*
+@kindex |
+@deffn Command split [-v]
+(@kbd{C-a S}, @kbd{C-a |})@*
Split the current region into two new ones. All regions on the
display are resized to make room for the new region. The blank
-window is displayed on the new region.
+window is displayed on the new region. The default is to create
+a horizontal split, putting the new regions on the top and
+bottom of each other. Using -v will create a vertical split,
+causing the new regions to appear side by side of each other.
+
+With this current implementation of @code{screen}, scrolling data
+will appear much slower in a vertically split region than one
+that is not. This should be taken into consideration if you need
+to use system commands such as @code{cat} or @code{tail -f}.
@end deffn
@node Focus, Only, Split, Regions
@@ -1882,7 +2010,7 @@ You can mix both forms by providing the string as an additional
argument.
@end deffn
-@node Fit, , Caption, Regions
+@node Fit, Focusminsize, Caption, Regions
@section Fit
@kindex F
@deffn Command fit
@@ -1892,6 +2020,154 @@ command is needed because screen doesn't adapt the window size
automatically if the window is displayed more than once.
@end deffn
+@node Focusminsize, Layout, Fit, Regions
+@section Focusminsize
+@deffn Command focusminsize [ (width|@code{max}|@code{_}) (height|@code{max}|@code{_}) ]
+(none)@*
+This forces any currently selected region to be automatically
+resized at least a certain @var{width} and @var{height}. All
+other surrounding regions will be resized in order to accommodate.
+This constraint follows every time the @code{focus} command is
+used. The @code{resize} command can be used to increase either
+dimension of a region, but never below what is set with
+@code{focusminsize}. The underscore @samp{_} is a synonym for
+@code{max}. Setting a @var{width} and @var{height} of @code{0 0}
+(zero zero) will undo any constraints and allow for manual resizing.
+Without any parameters, the minimum width and height is shown.
+@end deffn
+
+@node Layout, , Focusminsize, Regions
+@section Layout
+@cindex layout
+Using regions, and perhaps a large enough terminal, you can give
+@code{screen} more of a desktop feel. By being able to split
+regions horizontally or vertically, you can take advantage of the
+lesser used spaces of your terminal. The catch to these splits has
+been that they're not kept between screen detachments and reattachments.
+
+Layouts will help organize your regions. You can create one
+layout of four horizontal regions and then create a separate layout
+of regions in a two by two array. The regions could contain the same windows,
+but they don't have to. You can easily switch between layouts and keep
+them between detachments and reattachments.
+
+Note that there are several subcommands to @code{layout}.
+
+@deffn Command layout @code{new} [title]
+(none)@*
+Create a new layout. The screen will change to one whole region
+and be switched to the blank window. From here, you build the
+regions and the windows they show as you desire. The new layout
+will be numbered with the smallest available integer, starting
+with zero. You can optionally give a title to your new layout.
+Otherwise, it will have a default title of @code{layout}. You
+can always change the title later by using the command
+@code{layout title}.
+@end deffn
+
+@deffn Command layout @code{remove} [n|title]
+(none)@*
+Remove, or in other words, delete the specified layout. Either
+the number or the title can be specified. Without either
+specification, @code{screen} will remove the current layout.
+
+Removing a layout does not affect your set windows or regions.
+@end deffn
+
+@deffn Command layout @code{next}
+(none)@*
+Switch to the next layout available
+@end deffn
+
+@deffn Command layout @code{prev}
+(none)@*
+Switch to the previous layout available
+@end deffn
+
+@deffn Command layout @code{select} [n|title]
+(none)@*
+Select the desired layout. Either the number or the title can
+be specified. Without either specification, @code{screen} will
+prompt and ask which screen is desired. To see which layouts are
+available, use the @code{layout show} command.
+@end deffn
+
+@deffn Command layout @code{show}
+(none)@*
+List on the message line the number(s) and title(s) of the available
+layout(s). The current layout is flagged.
+@end deffn
+
+@deffn Command layout @code{title} [title]
+(none)@*
+Change or display the title of the current layout. A string given
+will be used to name the layout. Without any options, the current
+title and number is displayed on the message line.
+@end deffn
+
+@deffn Command layout @code{number} [n]
+(none)@*
+Change or display the number of the current layout. An integer given
+will be used to number the layout. Without any options, the current
+number and title is displayed on the message line.
+@end deffn
+
+@deffn Command layout @code{attach} [title|@code{:last}]
+(none)@*
+Change or display which layout to reattach back to. The default is
+@code{:last}, which tells @code{screen} to reattach back to the last
+used layout just before detachment. By supplying a title, You can
+instruct @code{screen} to reattach to a particular layout regardless
+which one was used at the time of detachment. Without any options,
+the layout to reattach to will be shown in the message line.
+@end deffn
+
+@deffn Command layout @code{save} [n|title]
+(none)@*
+Remember the current arrangement of regions. When used, @code{screen}
+will remember the arrangement of vertically and horizontally split
+regions. This arrangement is restored when a @code{screen} session
+is reattached or switched back from a different layout. If the
+session ends or the @code{screen} process dies, the layout
+arrangements are lost. The @code{layout dump} command should help
+in this siutation. If a number
+or title is supplied, @code{screen} will remember the arrangement of
+that particular layout. Without any options, @code{screen} will
+remember the current layout.
+
+Saving your regions can be done automatically by using the
+@code{layout autosave} command.
+@end deffn
+
+@deffn Command layout @code{autosave} [@code{on}|@code{off}]
+(none)@*
+Change or display the status of automatically saving layouts. The
+default is @code{on}, meaning when @code{screen} is detached or
+changed to a different layout, the arrangement of regions and windows
+will be remembered at the time of change and restored upon return.
+If autosave is set to @code{off}, that arrangement will only be
+restored to either to the last manual save, using @code{layout save},
+or to when the layout was first created, to a single region with
+a single window. Without either an @code{on} or an @code{off}, the
+current status is displayed on the message line.
+@end deffn
+
+@deffn Command layout @code{dump} [filename]
+(none)@*
+Write to a file the order of splits made in the current layout. This
+is useful to recreate the order of your regions used in your current
+layout. Only the current layout is recorded. While the order of the
+regions are recorded, the sizes of those regions and which windows
+correspond to which regions are not. If no filename is specified,
+the default is @file{layout-dump}, saved in the directory that the
+@code{screen} process was started in. If the file already exists,
+@code{layout dump} will append to that file. As an example:
+@example
+layout dump /home/user/.screenrc
+@end example
+will save or append the layout to the user's @file{.screenrc} file.
+@end deffn
+
@node Window Settings, Virtual Terminal, Regions, Top
@chapter Window Settings
@@ -1905,7 +2181,7 @@ terminal emulation itself.
* Kill:: Destroy an unwanted window
* Login:: Control @file{/etc/utmp} logging
* Mode:: Control the file mode of the pty
-* Monitor:: Watch for activity in a window
+* Monitor:: Watch for activity or inactivity in a window
* Windows:: List the active windows
* Hardstatus:: Set a window's hardstatus line
@end menu
@@ -2168,6 +2444,29 @@ the window-status display (@pxref{Windows}). Monitoring defaults to
@samp{off} for all windows.
@end deffn
+@kindex _
+@deffn Command silence [@var{state}|@var{sec}]
+(@kbd{C-a _})@*
+Toggles silence monitoring of windows. When silence is turned on and an
+affected window is switched into the background, you will receive the
+silence notification message in the status line after a specified period
+of inactivity (silence). The default timeout can be changed with the
+@code{silencewait} command or by specifying a number of seconds instead of
+@code{on} or @code{off}. Silence is initially off for all windows.
+@end deffn
+
+@deffn Command defsilence state
+(none)@*
+Same as the @code{silence} command except that the default setting for
+new windows is changed. Initial setting is `off'.
+@end deffn
+
+@deffn Command silencewait @var{seconds}
+(none)@*
+Define the time that all windows monitored for silence should wait
+before displaying a message. Default is 30 seconds.
+@end deffn
+
@node Windows, Hardstatus, Monitor, Window Settings
@section Windows
@kindex w
@@ -2193,7 +2492,7 @@ If this list is too long to fit on the terminal's status line only the
portion around the current window is displayed.
@end deffn
-@node Hardstatus, , Windows, Window Settings
+@node Hardstatus, Mousetrack, Windows, Window Settings
@section Hardstatus
@code{Screen} maintains a hardstatus line for every window. If a window
@@ -2224,6 +2523,25 @@ Per default the hardstatus line of new windows is empty.
Changes the current window's hardstatus line to @var{status}.
@end deffn
+@node Mousetrack, , Hardstatus, Miscellaneous
+@section Mousetrack
+
+@deffn Command mousetrack [ @code{on|off} ]
+(none)@*
+This command determines whether @code{screen} will watch for
+mouse clicks. When this command is enabled, regions that have
+been split in various ways can be selected by pointing to them
+with a mouse and left-clicking them. Without specifying @var{on}
+or @var{off}, the current state is displayed. The default state
+is determined by the @code{defmousetrack} command.
+@end deffn
+
+@deffn Command defmousetrack @code{on|off}
+(none)@*
+This command determines the default state of the @code{mousetrack}
+command, currently defaulting of @var{off}.
+@end deffn
+
@node Virtual Terminal, Copy and Paste, Window Settings, Top
@chapter Virtual Terminal
@@ -2476,8 +2794,8 @@ Keypad enter fe stuff \015
@section Digraph
@kindex C-v
-@deffn Command digraph [preset]
-(none)@*
+@deffn Command digraph [preset [unicode-value]]
+(@kbd{C-a C-v})@*
This command prompts the user for a digraph sequence. The next
two characters typed are looked up in a builtin table and the
resulting character is inserted in the input stream. For example,
@@ -2487,7 +2805,190 @@ will treat the following characters (up to three) as an octal
number instead. The optional argument @var{preset}
is treated as user input, thus one can create an "umlaut" key.
For example the command @samp{bindkey ^K digraph '"'} enables the user
-to generate an a-umlaut by typing @samp{CTRL-K a}.
+to generate an a-umlaut by typing @samp{CTRL-K a}. When a non-zero
+@var{unicode-value} is specified, a new digraph is created with the
+specified preset. The digraph is unset if a zero value is provided
+for the @var{unicode-value}.
+
+The following table is the builtin sequences.
+
+@documentencoding ISO-8859-1
+@example
+ Sequence Octal Digraph Unicode Equivalent
+ -----------------------------------------------
+ ' ', ' ' 160 (space) U+00A0
+ 'N', 'S' 160 (space) U+00A0
+ '~', '!' 161 ¡ U+00A1
+ '!', '!' 161 ¡ U+00A1
+ '!', 'I' 161 ¡ U+00A1
+ 'c', '|' 162 ¢ U+00A2
+ 'c', 't' 162 ¢ U+00A2
+ '$', '$' 163 £ U+00A3
+ 'P', 'd' 163 £ U+00A3
+ 'o', 'x' 164 ¤ U+00A4
+ 'C', 'u' 164 ¤ U+00A4
+ 'C', 'u' 164 ¤ U+00A4
+ 'E', 'u' 164 ¤ U+00A4
+ 'Y', '-' 165 ¥ U+00A5
+ 'Y', 'e' 165 ¥ U+00A5
+ '|', '|' 166 ¦ U+00A6
+ 'B', 'B' 166 ¦ U+00A6
+ 'p', 'a' 167 § U+00A7
+ 'S', 'E' 167 § U+00A7
+ '"', '"' 168 ¨ U+00A8
+ ''', ':' 168 ¨ U+00A8
+ 'c', 'O' 169 © U+00A9
+ 'C', 'o' 169 © U+00A9
+ 'a', '-' 170 ª U+00AA
+ '<', '<' 171 « U+00AB
+ '-', ',' 172 ¬ U+00AC
+ 'N', 'O' 172 ¬ U+00AC
+ '-', '-' 173 ­ U+00AD
+ 'r', 'O' 174 ® U+00AE
+ 'R', 'g' 174 ® U+00AE
+ '-', '=' 175 ¯ U+00AF
+ ''', 'm' 175 ¯ U+00AF
+ '~', 'o' 176 ° U+00B0
+ 'D', 'G' 176 ° U+00B0
+ '+', '-' 177 ± U+00B1
+ '2', '2' 178 ² U+00B2
+ '2', 'S' 178 ² U+00B2
+ '3', '3' 179 ³ U+00B3
+ '3', 'S' 179 ³ U+00B3
+ ''', ''' 180 ´ U+00B4
+ 'j', 'u' 181 µ U+00B5
+ 'M', 'y' 181 µ U+00B5
+ 'p', 'p' 182 ¶ U+00B6
+ 'P', 'I' 182 ¶ U+00B6
+ '~', '.' 183 · U+00B7
+ '.', 'M' 183 · U+00B7
+ ',', ',' 184 ¸ U+00B8
+ ''', ',' 184 ¸ U+00B8
+ '1', '1' 185 ¹ U+00B9
+ '1', 'S' 185 ¹ U+00B9
+ 'o', '-' 186 º U+00BA
+ '>', '>' 187 » U+00BB
+ '1', '4' 188 ¼ U+00BC
+ '1', '2' 189 ½ U+00BD
+ '3', '4' 190 ¾ U+00BE
+ '~', '?' 191 ¿ U+00BF
+ '?', '?' 191 ¿ U+00BF
+ '?', 'I' 191 ¿ U+00BF
+ 'A', '`' 192 À U+00C0
+ 'A', '!' 192 À U+00C0
+ 'A', ''' 193 Á U+00C1
+ 'A', '^' 194 Â U+00C2
+ 'A', '>' 194 Â U+00C2
+ 'A', '~' 195 Ã U+00C3
+ 'A', '?' 195 Ã U+00C3
+ 'A', '"' 196 Ä U+00C4
+ 'A', ':' 196 Ä U+00C4
+ 'A', '@@' 197 Å U+00C5
+ 'A', 'A' 197 Å U+00C5
+ 'A', 'E' 198 Æ U+00C6
+ 'C', ',' 199 Ç U+00C7
+ 'E', '`' 200 È U+00C8
+ 'E', '!' 200 È U+00C8
+ 'E', ''' 201 É U+00C9
+ 'E', '^' 202 Ê U+00CA
+ 'E', '>' 202 Ê U+00CA
+ 'E', '"' 203 Ë U+00CB
+ 'E', ':' 203 Ë U+00CB
+ 'I', '`' 204 Ì U+00CC
+ 'I', '!' 204 Ì U+00CC
+ 'I', ''' 205 Í U+00CD
+ 'I', '^' 206 Î U+00CE
+ 'I', '>' 206 Î U+00CE
+ 'I', '"' 207 Ï U+00CF
+ 'I', ':' 207 Ï U+00CF
+ 'D', '-' 208 Ð U+00D0
+ 'N', '~' 209 Ñ U+00D1
+ 'N', '?' 209 Ñ U+00D1
+ 'O', '`' 210 Ò U+00D2
+ 'O', '!' 210 Ò U+00D2
+ 'O', ''' 211 Ó U+00D3
+ 'O', '^' 212 Ô U+00D4
+ 'O', '>' 212 Ô U+00D4
+ 'O', '~' 213 Õ U+00D5
+ 'O', '?' 213 Õ U+00D5
+ 'O', '"' 214 Ö U+00D6
+ 'O', ':' 214 Ö U+00D6
+ '/', '\' 215 × U+00D7
+ '*', 'x' 215 × U+00D7
+ 'O', '/' 216 Ø U+00D8
+ 'U', '`' 217 Ù U+00D9
+ 'U', '!' 217 Ù U+00D9
+ 'U', ''' 218 Ú U+00DA
+ 'U', '^' 219 Û U+00DB
+ 'U', '>' 219 Û U+00DB
+ 'U', '"' 220 Ü U+00DC
+ 'U', ':' 220 Ü U+00DC
+ 'Y', ''' 221 Ý U+00DD
+ 'I', 'p' 222 Þ U+00DE
+ 'T', 'H' 222 Þ U+00DE
+ 's', 's' 223 ß U+00DF
+ 's', '"' 223 ß U+00DF
+ 'a', '`' 224 à U+00E0
+ 'a', '!' 224 à U+00E0
+ 'a', ''' 225 á U+00E1
+ 'a', '^' 226 â U+00E2
+ 'a', '>' 226 â U+00E2
+ 'a', '~' 227 ã U+00E3
+ 'a', '?' 227 ã U+00E3
+ 'a', '"' 228 ä U+00E4
+ 'a', ':' 228 ä U+00E4
+ 'a', 'a' 229 å U+00E5
+ 'a', 'e' 230 æ U+00E6
+ 'c', ',' 231 ç U+00E7
+ 'e', '`' 232 è U+00E8
+ 'e', '!' 232 è U+00E8
+ 'e', ''' 233 é U+00E9
+ 'e', '^' 234 ê U+00EA
+ 'e', '>' 234 ê U+00EA
+ 'e', '"' 235 ë U+00EB
+ 'e', ':' 235 ë U+00EB
+ 'i', '`' 236 ì U+00EC
+ 'i', '!' 236 ì U+00EC
+ 'i', ''' 237 í U+00ED
+ 'i', '^' 238 î U+00EE
+ 'i', '>' 238 î U+00EE
+ 'i', '"' 239 ï U+00EF
+ 'i', ':' 239 ï U+00EF
+ 'd', '-' 240 ð U+00F0
+ 'n', '~' 241 ñ U+00F1
+ 'n', '?' 241 ñ U+00F1
+ 'o', '`' 242 ò U+00F2
+ 'o', '!' 242 ò U+00F2
+ 'o', ''' 243 ó U+00F3
+ 'o', '^' 244 ô U+00F4
+ 'o', '>' 244 ô U+00F4
+ 'o', '~' 245 õ U+00F5
+ 'o', '?' 245 õ U+00F5
+ 'o', '"' 246 ö U+00F6
+ 'o', ':' 246 ö U+00F6
+ ':', '-' 247 ÷ U+00F7
+ 'o', '/' 248 ø U+00F8
+ 'u', '`' 249 ù U+00F9
+ 'u', '!' 249 ù U+00F9
+ 'u', ''' 250 ú U+00FA
+ 'u', '^' 251 û U+00FB
+ 'u', '>' 251 û U+00FB
+ 'u', '"' 252 ü U+00FC
+ 'u', ':' 252 ü U+00FC
+ 'y', ''' 253 ý U+00FD
+ 'i', 'p' 254 þ U+00FE
+ 't', 'h' 254 þ U+00FE
+ 'y', '"' 255 ÿ U+00FF
+ 'y', ':' 255 ÿ U+00FF
+ '"', '[' 196 Ä U+00C4
+ '"', '\' 214 Ö U+00D6
+ '"', ']' 220 Ü U+00DC
+ '"', '@{' 228 ä U+00E4
+ '"', '|' 246 ö U+00F6
+ '"', '@}' 252 ü U+00FC
+ '"', '~' 223 ß U+00DF
+@end example
+
@end deffn
@node Bell, Clear, Digraph, Virtual Terminal
@@ -2509,7 +3010,7 @@ The default message is
An empty message can be supplied to the @code{bell_msg} command to suppress
output of a message line (@code{bell_msg ""}).
-Without parameter, the current message is shown.
+Without a parameter, the current message is shown.
@end deffn
@kindex C-g
@@ -2533,7 +3034,7 @@ Sets the visual bell message. @var{Message} is printed to the status
line if the window receives a bell character (^G), @code{vbell} is
set to @samp{on} and the terminal does not support a visual bell.
The default message is @samp{Wuff, Wuff!!}.
-Without parameter, the current message is shown.
+Without a parameter, the current message is shown.
@end deffn
@deffn Command vbellwait sec
@@ -2593,7 +3094,7 @@ For system information use @code{time}.
@deffn Command dinfo
(none)@*
-Show what screen thinks about your terminal. Useful if you want to know
+Show what @code{screen} thinks about your terminal. Useful if you want to know
why features like color or the alternate charset don't work.
@end deffn
@@ -2851,7 +3352,7 @@ outlined below.
@subsection CR/LF
@deffn Command crlf [state]
(none)@*
-This affects the copying of text regions with the @kbd{C-a [} command.
+This affects the copying of text regions with the @code{copy} command.
If it is set to @samp{on}, lines will be separated by the two character
sequence @samp{CR}/@samp{LF}. Otherwise only @samp{LF} is used.
@code{crlf} is off by default.
@@ -2860,6 +3361,7 @@ When no parameter is given, the state is toggled.
@node Scrollback, Copy Mode Keys, Line Termination, Copy
@subsection Scrollback
+To access and use the contents in the scrollback buffer, use the @code{copy} command. @xref{Copy}.
@deffn Command defscrollback num
(none)@*
Same as the @code{scrollback} command except that the default setting
@@ -2869,7 +3371,7 @@ for new windows is changed. Defaults to 100.
@deffn Command scrollback num
(none)@*
Set the size of the scrollback buffer for the current window to
-@var{num} lines. The default scrollback is 100 lines. Use @kbd{C-a i}
+@var{num} lines. The default scrollback is 100 lines. Use @code{info}
to view the current setting.
@end deffn
@@ -3076,10 +3578,11 @@ display (terminal attached), as the registers are a global resource. The
paste buffer exists once for every user.
@end deffn
-@deffn Command stuff string
+@deffn Command stuff [string]
(none)@*
Stuff the string @var{string} in the input buffer of the current window.
This is like the @code{paste} command, but with much less overhead.
+Without a paramter, @code{screen} will prompt for a string to stuff.
You cannot paste large buffers with the @code{stuff} command. It is most
useful for key bindings. @xref{Bindkey}.
@end deffn
@@ -3196,8 +3699,9 @@ See also
@section History
@kindex @{
+@kindex @}
@deffn Command history
-(@kbd{C-a @{})@*
+(@kbd{C-a @{}, @kbd{C-a @}})@*
Usually users work with a shell that allows easy access to previous
commands. For example, @code{csh} has the command @code{!!} to repeat
the last command executed. @code{screen} provides a primitive way of
@@ -3351,11 +3855,19 @@ command to activate a class. Command classes can be used
to create multiple command keys or multi-character bindings.
By default, most suitable commands are bound to one or more keys
-(@pxref{Default Key Bindings}; for instance, the command to create a
+(@pxref{Default Key Bindings}); for instance, the command to create a
new window is bound to @kbd{C-c} and @kbd{c}. The @code{bind} command
can be used to redefine the key bindings and to define new bindings.
@end deffn
+@deffn Command unbindall
+(none)@*
+Unbind all the bindings. This can be useful when
+screen is used solely for its detaching abilities, such as when
+letting a console application run as a daemon. If, for some reason,
+it is necessary to bind commands after this, use 'screen -X'.
+@end deffn
+
@node Bind Examples, Command Character, Bind, Key Binding
@section Examples of the @code{bind} command
@noindent
@@ -3540,10 +4052,10 @@ in the default bindkey table.
(none)@*
Like mapdefault, but don't even look in the default bindkey table.
@end deffn
-@deffn Command maptimeout timo
+@deffn Command maptimeout n
(none)@*
Set the inter-character timer for input sequence detection to a timeout
-of @var{timo} ms. The default timeout is 300ms. Maptimeout with no
+of @var{n} ms. The default timeout is 300ms. Maptimeout with no
arguments shows the current setting.
@end deffn
@@ -3652,7 +4164,7 @@ Send a ^S (ASCII XOFF) to the program in the current window.
@node Termcap, Message Line, Flow Control, Top
@chapter Termcap
-@code{screen} demands the most out of your terminal so that it can
+@code{Screen} demands the most out of your terminal so that it can
perform its VT100 emulation most efficiently. These functions provide
means for tweaking the termcap entries for both your physical terminal
and the one simulated by @code{screen}.
@@ -4095,7 +4607,7 @@ template is just @samp{%}, so the mapping is straightforward:
@chapter The Message Line
@cindex message line
-@code{screen} displays informational messages and other diagnostics in a
+@code{Screen} displays informational messages and other diagnostics in a
@dfn{message line} at the bottom of the screen. If your terminal has a
status line defined in its termcap, screen will use this for displaying
its messages, otherwise the last line of the screen will be temporarily
@@ -4198,9 +4710,8 @@ This section describes the commands for keeping a record of your session.
@node Hardcopy, Log, , Logging
@section hardcopy
@kindex h
-@kindex C-h
@deffn Command hardcopy [-h] [@var{file}]
-(@kbd{C-a h}, @kbd{C-a C-h})@*
+(@kbd{C-a h})@*
Writes out the currently displayed image to the file @var{file}, or,
if no filename is specified, to @file{hardcopy.@var{n}}
in the default directory, where @var{n} is the number of the
@@ -4325,12 +4836,12 @@ categories.
* Nethack:: Use @code{nethack}-like error messages.
* Nonblock:: Disable flow-control to a display.
* Number:: Change the current window's number.
-* Silence:: Notify on inactivity.
* Time:: Display the time and load average.
* Verbose:: Display window creation commands.
* Version:: Display the version of @code{screen}.
* Zombie:: Keep dead windows.
* Printcmd:: Set command for VT100 printer port emulation.
+* Rendition:: Change text attributes in caption for flagged windows.
* Sorendition:: Change the text highlighting method.
* Attrcolor:: Map attributes to colors.
* Setsid:: Change process group management.
@@ -4339,6 +4850,7 @@ categories.
* Backtick:: Program a command for a backtick string escape.
* Screen Saver:: Define a screen safer.
* Zmodem:: Define how screen treats zmodem requests.
+* Mousetrack:: Set whether screen should track mouse events.
@end menu
@node At, Break, , Miscellaneous
@@ -4377,8 +4889,10 @@ work correctly under @code{at} looping over windows.
@node Break, Debug, At, Miscellaneous
@section Break
+@kindex b
+@kindex C-b
@deffn Command break [duration]
-(none)@*
+(@kbd{C-a b}, @kbd{C-a C-b})@*
Send a break signal for @var{duration}*0.25 seconds to this window.
For non-Posix systems the time interval is rounded up to full seconds.
Most useful if a character device is attached to the window rather than
@@ -4386,8 +4900,9 @@ a shell process (@pxref{Window Types}). The maximum duration of
a break signal is limited to 15 seconds.
@end deffn
+@kindex B
@deffn Command pow_break
-(none)@*
+(@kbd{C-a B})@*
Reopen the window's terminal line and send a break condition.
@end deffn
@@ -4427,8 +4942,9 @@ be turned off once and forever.
@node License, Nethack, Debug, Miscellaneous
@section License
+@kindex ,
@deffn Command license
-(none)@*
+(@kbd{C-a ,})@*
Display the disclaimer page. This is done whenever @code{screen} is
started without options, which should be often enough.
@end deffn
@@ -4445,7 +4961,8 @@ to read. Anyway, standard messages often tend to be unclear as well.
This option is only available if @code{screen} was compiled with the
NETHACK flag defined (@pxref{Installation}). The default setting is then
determined by the presence of the environment variable
-@code{$NETHACKOPTIONS}.
+@code{$NETHACKOPTIONS} and the file @code{~/.nethackrc} - if either one is
+present, the default is @code{on}.
@end deffn
@node Nonblock, Number, Nethack, Miscellaneous
@@ -4468,41 +4985,19 @@ Same as the @code{nonblock} command except that the default setting for
displays is changed. Initial setting is @code{off}.
@end deffn
-@node Number, Silence, Nonblock, Miscellaneous
+@node Number, Time, Nonblock, Miscellaneous
@section Number
@kindex N
-@deffn Command number [@var{n}]
+@deffn Command number [[+|-]@var{n}]
(@kbd{C-a N})@*
Change the current window's number. If the given number @var{n} is already
used by another window, both windows exchange their numbers. If no argument is
-specified, the current window number (and title) is shown.
-@end deffn
-
-@node Silence, Time, Number, Miscellaneous
-@section Silence
-@deffn Command silence [@var{state}|@var{sec}]
-(none)@*
-Toggles silence monitoring of windows. When silence is turned on and an
-affected window is switched into the background, you will receive the
-silence notification message in the status line after a specified period
-of inactivity (silence). The default timeout can be changed with the
-@code{silencewait} command or by specifying a number of seconds instead of
-@code{on} or @code{off}. Silence is initially off for all windows.
-@end deffn
-
-@deffn Command defsilence state
-(none)@*
-Same as the @code{silence} command except that the default setting for
-new windows is changed. Initial setting is `off'.
-@end deffn
-
-@deffn Command silencewait @var{seconds}
-(none)@*
-Define the time that all windows monitored for silence should wait
-before displaying a message. Default is 30 seconds.
+specified, the current window number (and title) is shown. Using either a
+plus (`+') or minus (`-') will change the window's number by the relative
+amount specified.
@end deffn
-@node Time, Verbose, Silence, Miscellaneous
+@node Time, Verbose, Number, Miscellaneous
@section Time
@kindex t
@kindex C-t
@@ -4520,7 +5015,7 @@ like it is described in the string escapes chapter (@pxref{String Escapes}). Scr
@deffn Command verbose [on|off]
If verbose is switched on, the command name is echoed, whenever a window
is created (or resurrected from zombie state). Default is off.
-Without parameter, the current setting is shown.
+Without a parameter, the current setting is shown.
@end deffn
@node Version, Zombie, Verbose, Miscellaneous
@@ -4556,7 +5051,7 @@ If it exits normally ('0'), the window disappears. Any other exit value
causes the window to become a zombie.
@end deffn
-@node Printcmd, Sorendition, Zombie, Miscellaneous
+@node Printcmd, Rendition, Zombie, Miscellaneous
@section Printcmd
@deffn Command printcmd [@var{cmd}]
(none)@*
@@ -4572,16 +5067,24 @@ Warning: Be careful with this command! If other user have write
access to your terminal, they will be able to fire off print commands.
@end deffn
-@node Sorendition, Attrcolor, Printcmd, Miscellaneous
-@section Sorendition
-@deffn Command sorendition [@var{attr} [@var{color}]]
+@node Rendition, Sorendition, Printcmd, Miscellaneous
+@section Rendition
+@deffn Command rendition bell | monitor | silence | so @var{attr} [@var{color}]
(none)@*
-Change the way screen does highlighting for text marking and printing
-messages.
+Change the way screen renders the titles of windows that have monitor
+or bell flags set in caption or hardstatus or windowlist.
See the chapter
about string escapes (@pxref{String Escapes}) for the syntax of
-the modifiers. The default is currently @samp{=s dd} (standout,
-default colors).
+the modifiers. The default for monitor is currently @samp{=b} (bold,
+active colors), for bell @samp{=ub} (underline, bold and active colors), and
+for silence @samp{=u}.
+@end deffn
+
+@node Sorendition, Attrcolor, Rendition, Miscellaneous
+@section Sorendition
+@deffn Command sorendition [@var{attr} [@var{color}]]
+(none)@*
+This command has been deprecated. Use @code{rendition so} instead.
@end deffn
@node Attrcolor, Setsid, Sorendition, Miscellaneous
@@ -4594,7 +5097,7 @@ the text. If the attribute
is in use, the specified attribute/color modifier is also applied. If no
modifier is given, the current one is deleted. See the chapter
about string escapes (@pxref{String Escapes}) for the syntax of
-the modifier. Screen understands two pseudo-attributes, @code{i}
+the modifier. @code{Screen} understands two pseudo-attributes, @code{i}
stands for high-intensity foreground color and @code{I} for
high-intensity background color.
@@ -4617,7 +5120,7 @@ Make bright colored text also bold.
@section Setsid
@deffn Command setsid state
(none)@*
-Normally screen uses different sessions and process groups for
+Normally @code{screen} uses different sessions and process groups for
the windows. If setsid is turned @code{off}, this is not done
anymore and all windows will be in the same process group as the
screen backend process. This also breaks job-control, so be careful.
@@ -4637,7 +5140,8 @@ Parses and executes each argument as separate command.
@deffn Command maxwin @var{n}
(none)@*
Set the maximum window number screen will create. Doesn't affect
-already existing windows. The number may only be decreased.
+already existing windows. The number can be increased only when there are no
+existing windows.
@end deffn
@node Backtick, Screen Saver, Maxwin, Miscellaneous
@@ -4693,8 +5197,10 @@ command.
@end deffn
@deffn Command blankerprg [@var{program args}]
-Defines a blanker program. Disables the blanker program if
-no arguments are given.
+Defines a blanker program. Disables the blanker program if an
+empty argument is given. Shows the currently set blanker program if no
+arguments are given.
+
@end deffn
@node Zmodem, , Screen Saver, Miscellaneous
@@ -4703,7 +5209,7 @@ no arguments are given.
@deffnx Command zmodem sendcmd [string]
@deffnx Command zmodem recvcmd [string]
(none)@*
-Define zmodem support for screen. Screen understands two
+Define zmodem support for @code{screen}. @code{Screen} understands two
different modes when it detects a zmodem request: @code{pass}
and @code{catch}. If the mode is set to @code{pass}, screen will
relay all data to the attacher until the end of the
@@ -4745,7 +5251,7 @@ day number
@item D
weekday name
@item f
-flags of the window
+flags of the window. @xref{Windows}, for meanings of the various flags.
@item F
sets %? to true if the window has the focus
@item h
@@ -4760,6 +5266,8 @@ month number
month name
@item n
window number
+@item P
+sets %? to true if the current region is in copy/paste mode
@item s
seconds
@item S
@@ -5259,7 +5767,5 @@ from the key sequences, since it is the same for all bindings.
@printindex ky
-@shortcontents
-@contents
@bye