mtm
—
a micro-terminal multiplexer
mtm |
[-T HOST]
[-t TERM]
[-c CHARACTER] |
mtm
is a terminal multiplexer, a program that allows
multiple terminal sessions to run within a single (physical or virtual)
terminal session.
The options are
-T
HOST
- Assume that the host terminal (i.e. the terminal under which
mtm
is running) is of type
HOST. By default, the contents of the
TERM
environment variable are used.
-t
TERM
- Set the
TERM
environment variable within the mtm
session to TERM. By default, this is
screen-bce, or screen-256color-bce if
mtm
detects that the host terminal supports 256
colors. Note that this default can be changed at compile time, and thus
may differ in your installation.
-c
CHARACTER
- Commands are prefixed using CHARACTER in combination
with the “control” key. By default this is
“g.” Note that this default can be changed at compile time,
and thus may differ in your installation.
mtm
divides the screen into multiple virtual terminals.
Each virtual terminal is updated and accessed independently. At any given
time, exactly one virtual terminal is “focused,” meaning that it
receives any typed characters. The currently-focused terminal is indicated by
the location of the cursor.
While running, the following keys are recognized as commands to
mtm
when prefixed with the command character:
- Up/Down/Right/Left Arrow
- Select the terminal above/below/to the right of/to the left of the
currently focused one.
- o
- (the letter oh) Switch to the last-focused terminal.
- h or v
- Split the focused terminal in half and stack horizontally (for 'h') or
stack vertically (for 'v';) the newly-created terminal will be
focused.
- w
- Delete the currently focused terminal.
- l
- (the letter ell) Redraw the screen.
- PgUp/PgDown/End
- Scroll the terminal up/down/to the bottom. By default,
mtm
stores up to 1000 lines of scrolling history.
Note that if the screen is currently scrolled back (that is, the
scrollback buffer is not at the bottom) these keys need not be prefixed
with the command key. mtm
will also scroll to the
bottom on user input.
Note that these command keys can be changed at compile time, and
therefore may be different for this installation of
mtm
.
mtm
will exit when its last virtual
terminal is closed.
The Value of -t
The terminal name passed to -t
does not change how
mtm
interprets command sequences, but rather changes
what kind of terminal mtm
claims to be. Safe bets for
this value are
- mtm
- This is the terminal described by the mtm.ti
terminfo(5)
description that shipped with
mtm
. It is not
necessarily installed on your system, but if it is, it will tell
terminfo(5)
-aware programs how to use all of the mtm
features. Note that there aren't any user-visible features added here, but
mtm
supports some extra cursor-movement commands,
and thus using this terminal type where available may result in slightly
speedier screen updates.
- mtm-256color
- This is the same as the
mtm
terminal type, but
advertising 256-color support. This can be used if the
mtm
terminfo(5)
description is installed and the host terminal supports 256 or more
colors.
- screen-bce
- This is the default if 256-color support is not detected. It is widely
supported and its description is installed by default on most systems.
This is a good choice if the
mtm
terminfo(5)
description is not installed everywhere you expect to use
mtm
.
- screen-bce-256color
- This is the default if 256-color support is detected. The same advice
given for screen-bce above applies here too.
mtm
sets the MTM
environment
variable to its process ID (see
getpid(2)).
Programs can test for the presence of this variable to determine if they are
running inside of a mtm
instance.
The following environment variables affect the operation of
mtm
:
TERM
- Names the hosting terminal's type. This can be overridden using the
-T
option.
ESCDELAY
- This variable specifies the number of milliseconds
mtm
will wait after seeing an escape character for
a special character sequence to complete. By default this is 1000 (one
second.)
LC_CTYPE
LC_ALL
LANG
- These variables are consulted to determine the encoding used for textual
data.
- SHELL
- If set,
mtm
will launch the program named by this
command in new virtual terminals. If this is unset,
mtm
will use the value of the “command
interpreter” field of the password database (see
passwd(5))
if available, and will finally fall back to
/bin/sh.
mtm
will attempt to fit all virtual terminals in the
window at once. If many terminals are created and the containing window is
shrunk too small, the display will be suboptimal.
The only human language in which output is generated and in which
documentation is available is English, regardless of the user's preferred
language.