Site Tools


This is an old revision of the document!


screen's Appearance

Basics

Extras

hardstatus and caption

Note about fit.

Describe info.

Command Line

  • '-A' - Disables one aspect of screen's default behavior: If the terminal can be resized, then screen will resize the terminal to fit the dimensions of the windows it's displaying. When -A is given, resizable terminals work just like nonresizable terminals–the windows are resized to fit the dimensions of the display. (See below for Windows Putty)

Keybindings

  • C-a C - (clear) Clears the current window.
  • C-a F - (fit) Fits the current window to the display's dimensions.
  • C-a C-g - (vbell) Toggles visual bell mode.
  • C-a i - (info) Displays information about the current window.
  • C-a C-i - (info) Alternate keybinding.
  • C-a C-m - (lastmsg) Redisplays the last message for this display.
  • C-a t - (time) Displays system information.
  • C-a C-t - (time) Alternate keybinding.
  • C-a v - (version) Displays screen's version information.
  • C-a W - (width) Toggles the display between 80 and 132 columns.
  • C-a , - (license) Displays screen's license information.

Commands

  • attrcolor attrib [attribute/color-modifier] - Remap the effect of text attributes. A listing of attributes can be found in string escapes. This command tells screen that when the attribute attrib is encountered, it should instead be treated as if attribute/color-modifier were in its place. The replacement is only done once. The modifiers may include i and I, which represent, respectively, high-intensity foreground color (bold foreground) and high-intensity background color (bold background).
  • autonuke on|off - Per-window setting. If autonuke is on and screen gets a command to clear the window while it still has text buffered that has not been sent to the window, it will just discard that text without ever sending it. The default value is set by defautonuke.
  • bell_msg [message] - Changes the message printed when a bell character is received in another window. In addition to the normal string escapes, if a ^G is in the string then screen will send a bell character to the current window. The default value is “Bell in window %n”. If an empty string is supplied, no message will be shown. If no parameter is supplied, the current value will be displayed.
  • caption always|splitonly [string] - Controls the display of the caption line at the bottom of screen windows. always means that the caption is always visible. splitonly means that the caption only appears when the display is split into multiple windows. If string is supplied, it also changes the string used for the captions; it can contain string escapes. The default setting is splitonly, and the default string is “%3n %t”.
  • caption string [string] - Used for changing the caption string without changing the rules for when it's displayed. If no parameter is supplied, the current string will be displayed.
  • clear - Clears the current window, but puts its text into the scrollback buffer.
  • defautonuke on|off - Changes the default autonuke setting for new windows. The default value is off.
  • defhstatus [status] - Sets the default hardstatus line for new windows. With no parameter, displays the current value. The default value is an empty string.
  • echo [-n] message - Displays message on the current display as if it were a screen message. Doesn't support string escapes, but will evaluate environment variables. [The man page says that -n “may be used to suppress the line feed”, but I can't see a line feed, and as far as I can tell the -n option does nothing. <PMG>]
  • fit - Resizes the window to fit the current display region. Useful if the window wasn't resized automatically (either because resizing was turned off or because the window was displayed on another terminal at the same time).
  • height [-w|-d] [lines [cols]] - If -w is specified, changes the dimensions of the window. If -d is specified, changes the dimensions of the display. The default is -d. If no dimensions are specified, the command toggles between 24 lines and 42 lines, leaving the number of columns unchanged.
  • info - Display information about screen and the current window in the message area.
  • license - Displays screen's license, as happens when screen starts up.
  • nethack on|off - If on, screen's error and information messages become sillier and more nethack-like. The default value is off. Can also be influenced by the $NETHACKOPTIONS environment variable. [In past versions of screen, at least, it defaulted to on if ~/.nethackrc existed. Has this been removed? <PMG>]
  • hardstatus [on|off] - Sets or toggles use of the terminal's hardstatus line (if any) for displaying screen messages. The default value is on.
  • hardstatus [always]lastline|message|ignore [string] - Sets screen's behavior for displaying messages when the terminal has no hardstatus line. lastline reserves a line at the bottom of the display for the messages. alwayslastline is the same, but does it even if the terminal actually has a hardstatus line elsewhere. message uses screen's messaging display for hardstatus text. ignore causes screen to never display hardstatus text. If string is supplied, this also sets the hardstatus string. The default is an empty line with white background [at least on Ubuntu Jaunty]
  • hardstatus string [string] - Sets the hardstatus string for the current window or displays the current string if no argument is given. The default value is “%h”
  • hstatus status - Synonym for hardstatus string status.
  • lastmsg - Redisplays the last message that screen showed on the current display.
  • msgminwait sec - Sets the minimum length of time, in seconds, that a screen message will be visible even if the user interacts with screen. The default value is 1 second.
  • msgwait sec - Sets the length of time, in seconds, that a message will remain visible if the user does not interact with screen during the lifetime of the message. The default value is 5 seconds.
  • sorendition [attr [color]] - Defines the visual appearance of screen's messages using the attribute definitions from the string escapes page. If no arguments are given, the current settings are shown. [Though not in the same format that they're entered. <PMG>] The default value is “=s dd” (standout, with default colors).
  • startup_message on|off - Enables or disables the display of screen's license information when screen starts up. The default value is on.
  • time [string] - With no arguments, uses the message display to display information about the system. If string is supplied, sets the string displayed when time is run with no arguments using sequences from string escapes. The default value is “%c:%s %M %d %H%? %l%?” (time, date, hostname, system load).
  • vbell [on|off] - Sets or toggles the visual bell. When on, the bell character causes the screen to flash and a message to appear. When off, causes the terminal to receive a bell character. The default value is off.
  • vbell_msg [message] - Sets or displays the message displayed for visual bells. The default value is “Wuff, Wuff!!”.
  • vbellwait sec - Defines a hysteresis for visual bells; if multiple bell characters are received less than sec seconds apart, the visual bell behavior will only be activated once. The default value is 1 second.
  • version - Uses the message area to display screen's version and compile date.
  • wall message - Like echo, but sends the message to all displays, with the name of the current user prepended.
  • width [-w|-d] [cols [lines]] - Like height, but with the order of arguments reversed. If cols is not supplied, the width is toggeled between 80 and 132 columns.

Examples

            attrcolor b "R"

Change the color to bright red if bold text is to be printed.

            attrcolor u "-u b"

Use blue text instead of underline.

            attrcolor b ".I"

Use bright colors for bold text. Most terminal emulators do this already.

            attrcolor i "+b"

Make bright colored text also bold.

Always display window list

You can force the status line to always stay at the bottom of the screen and set up a statusline string that displays the window information by adding this to your .screenrc:

 hardstatus on
 hardstatus alwayslastline
 hardstatus string "%w"

Fancy statusbar with centered window list

This small snippet for your .screenrc gives you a two-line statusbar at the bottom of the screen. The upper line consists of the number and name of all open windows, black on white background, with the active window centered and highlighted. The lower line shows the window number, window name and the window's hardstatus in white on black.

 altscreen on 
 hardstatus on
 hardstatus alwayslastline
 hardstatus string "%= %3n %t%? [%h]%? %="
 caption always
 caption string "%= %-w%L>%{= BW}%n*%t%{-}%52<%+w %L="

Screen resizing despite -A when using Putty on Windows

With the GNU Screen 2009-05-15 (git:git.savannah.gnu.org/screen.git :: 9cdf8e20), the resize disable command line option “-A” does not work with Putty on Windows (0.60). One way to work around this is to disable the terminal feature for remote-controlled terminal resizing in Putty. This setting is found in “Terminal” > “Features” > “Disable remote-controlled terminal resizing”. After this you do not need to specify “-A” since Screen will now force a resizing.


User Tools