NAME
mrxvt - A tabbed VT102 terminal emulator for X Window System
SYNOPSIS
mrxvt [options] [-e cmd]
DESCRIPTION
The mrxvt program is a terminal emulator for X Window System. It provides
DEC VT102 compatible terminals for programs that cannot use the window
system directly.
mrxvt is based on rxvt(1) version 2.7.11 CVS, and features most of
functionality of rxvt, with a few major enhancements (namely multiple
tabs, and transparency). Like rxvt, mrxvt aims to be light, fast,
flexible and desktop independent, thus KDE or GNOME are not required.
The primary features of mrxvt include (but are not limited to) multiple
tabs, dynamically changeable tab titles, customizable command for each
tab, input broadcasting, true translucent window, fast pseudo
transparency with tinting, user supplied background images (XPM, JPEG,
PNG), off-focus fading, text shadow, multiple style (NeXT, Rxvt, Xterm,
SGI, Plain) scrollbars, XIM, multi-language support (Chinese, Korean,
Japanese), freetype font, logging and (in-)activity monitoring.
The default mrxvt behaviour can be set using the resource configuration
file ~/.mrxvtrc. For backward compatibility, if ~/.mrxvtrc is not found,
mrxvt tries to load configuration settings from the files ~/.Xdefaults or
~/.Xresources. Alternately, you can specify which config file to load
using the -cf command line option.
OPTIONS
This section describes the commandline options mrxvt accepts. To disable
an option, prefix it with an ‘+’ instead of a ‘-’ Most options can be set
from your ~/.mrxvtrc file using the option name listed in brackets as
[option_name]. The option name can also be used as a "long option" from
the command line (i.e. by prefixing it with ‘--’ or ‘++’ as appropriate.
For example
mrxvt -tr -shade 85 +trt
is the same as
mrxvt --transparent --shading 85 ++transparentTabbar
which is the same as putting the lines
Mrxvt.transparent: True
Mrxvt.shading: 85
Mrxvt.transparentTabbar: False
in your ~/.mrxvtrc.
All options are case sensitive. Some options are similar to those of
other terminals, so if you find the explanation given here insufficient,
we strongly recommend you look in the rxvt(1) and xterm(1) manpages.
Terminal name and display options
-display|-d displayname
X display name, the X server to contact
-geometry|-g geometry
geometry at startup [geometry]
-ic file[;geometry]
application icon file. [appIcon]
-iconic|+iconic
start iconic [iconic]
-in name
Icon name for window [iconName]
-into WinID
If given an X window identifier, mrxvt will reparent its top-level
shell widget to that window. This is used to embed mrxvt within
other applications.
-name name
Client instance, icon, and title strings [clientName].
-title string
title name of the window [title]
-tn termname
The type of terminal mrxvt should emulate. The value of the TERM
environment variable is set to this value for all child processes
launched by mrxvt. Note that rxvt and most rxvt clones including
mrxvt, have slightly different terminal capabilities than those of
xterm(1). Thus mrxvt will not always work properly with the
terminal set to xterm, and we recommend setting this value to rxvt
instead. However some systems have incorrect (or even missing)
terminfo(1) or termcap(1) entries for the terminal rxvt. If you
experience problems with this, the ideal solution would be to
correct your systems termcap and terminfo entries. If you are
unable to do that, then you can try setting your terminal to xterm
and hope everything works properly. [termName]
Transparency related options
-o %d
Translucent window (true transparent) background opacity degree.
%d is an integer between 0 and 100. This option needs translucent
support by the X server, e.g., Xorg 6.8, and overrides the pseudo-
transparency. [opacity]
-od -%d
Translucent window opacity degree increase/decrease interval. %d
is an integer between 0 and 100 [opacityDegree]
-tr|+tr
Enable / disable background pseudo-transparency. To use this
feature you must set your desktop wallpaper using an Esetroot
compatible program ( i.e. a program that publishes the wallpaper
using the _XROOTPMAP_ID atom). Some programs that will do this are
Esetroot(1), feh(1), fvwm-root(1) with the ‘--retain-pixmap’
option, or KDE. Note: To use your precious backgroundFade, tinting
or shading options, you MUST set the desktop wallpaper in an
Esetroot way. [transparent]
-trf|+trf
If you choose NOT to set the background in an Esetroot compatible
way, then you can still have transparency using this option. (You
must also enable the transparent option). Background changes made
by FvwmBacker, xsetbg (xli) or Esetroot compatible programs, will
be automatically detected. However changes made by xv(1),
xsetroot(1) or other non-Esetroot compatible programs will not be
detected. If you’re hell bent on non-Esetroot compatible programs
to set your background, then do something like
xsetroot -solid "#202040" && fvwm-root -d
Note: To use your precious backgroundFade, tinting or shading
options, you MUST set the desktop wallpaper in an Esetroot way.
[transparentForce]
-trm|+trm
Enable / disable pseudo-transparent menubar. Pseudo-transparency
must be turned on. [transparentMenubar]
-trs|+trs
Enable / disable pseudo-transparent scrollbar. Pseudo-transparency
must be turned on. [transparentScrollbar]
-trt|+trt
Enable / disable pseudo-transparent tabbar. Pseudo-transparency
must be turned on. [transparentTabbar]
Background image related options
-mbpixmap file[;geometry]
Menubar background image. Pseudo-transparency must be turned off.
[menubarPixmap]
-pixmap file[;geometry]
Background image for all terminals if not set individually. Pseudo-
transparency must be turned off. [Pixmap]
-sbpixmap file[;geometry]
Scrollbar background image. Pseudo transparency must be turned off.
[scrollbarPixmap]
-tbpixmap file[;geometry]
Tabbar background image. Pseudo transparency must be turned off.
[tabbarPixmap]
-tupixmap|+tupixmap
Apply tabbar background image to tabs. [tabUsePixmap]
Scrolling related options
-mp|+mp
scroll one page when press mouse wheel button
[mouseWheelScrollPage]
-sa mode
Scrollbar alignment ( top | bottom) [scrollbarAlign]
-sb|+sb
Hide / show scrollbar [scrollBar]
-sbt width
Scrollbar thickness/width [scrollbarThickness]
-si|+si
Inhibit scrolling on tty output. [scrollTtyOutputInhibit]
-sk|+sk
scroll-on-keypress [scrollTtyKeypress]
-sl n
The number of scrolled lines to save (for all tabs) if not set
individually. The maximal number of saved lines is 65535.
[saveLines]
-sr|+sr
Scrollbar on right [scrollbarRight]
-ss mode
Scrollbar style. mode should be one of plain, xterm, rxvt, next or
sgi. [scrollbarStyle]
-st|+st
Draw floating scrollbar (i.e. without a trough).
[scrollbarFloating]
Color related options
-bg color
Background color [background]
-bd color
Border color [borderColor]
-bgfade %d
(Obsolete) Make colors %d darker for background image or pseudo-
transparent background. %d is an integer between 0 and 100. This
is like tinting the background with black. This option is obsolete,
and you should use the tint and shade options instead.
[backgroundFade]
-bgtype type
Transformation type for background pixmap (not implemented yet)
-cr color
color of cursor [cursorColor]
-fade %d
Make colors %d darker when mrxvt loses focus. %d is an integer
between 0 and 100 [fading]
-fg color
Foreground color. [foreground]
-itabbg color
Background color of inactive tabs and tabbar. [itabBackground]
-itabfg color
Foreground color of inactive tabs. [itabForeground]
-pr color
color of pointer [pointerColor]
-shade %d
Shade background to %d degree when tinting the background. %d is
an integer between 0 and 100. You must also define a color using
the tint option. When compiled with XRender support, the tabbar,
menubar and scroll bar are tinted with their respective background
colors for pseudo-transparent terminals. [shading]
-tabbg color
background color of active tab. [tabBackground]
-tabfg color
Foreground color of tabbar [tabForeground]
-tint color
Color tinted on background image or pseudo-transparent background.
This works differently depending on the tint type: With XRender
(when compiled with --enable-xrender), color is the color you want
to tint your background to. The brighter the color, the less
transparent it will be (regardless of the shade degree specified by
-shade). For example, if you want your background tinted black,
set color to ‘#000000’, however if you want a white tinted
transparent background, set color to some level of grey (e.g.
‘#808080’) but NOT to ‘#ffffff’.
When compiled without XRender support, color works like a color
mask. Thus if you want a black tinted background, set color to
‘#ffffff’.
The shade degree (using -shade) must be defined as well.
[tintColor]
-tinttype type
Function applied for background tinting (not implemented yet).
-ts color
color of text shadow [textShadow]
-tsm mode
Text shadow mode, specify shadow position of text: left | right |
top | bottom | topleft | topright | botleft | botright | none.
[textShadowMode]
-txttype -type
Function applied for text drawing (not implemented yet)
-ufbg color
Default background color when the terminal window looses focus.
[ufBackground]
Font related options
-fb fontname
bold text X11 font name [boldFont]
-fm fontname
multichar text X11 font name [mfont]
-fn fontname
normal text X11 font name [font]
-xft|+xft
Use freetype font instead of X11 font. This option controls all
other freetype font related options. [xft]
-xftaa|+xftaa
Enable / disable antialiasing of freetype font. This makes font
look much nicer, but significantly slows down the rendering speed.
The -xft option must be enabled. [xftAntialias]
-xftah|+xftah
Enable / disable autohint of freetype font. The -xft option must be
enabled [xftAutoHint]
-xftfm fontname
Multichar text freetype font family. The -xft option must be
enabled [xftmFont]
-xftfn fontname
Normal text freetype font family. The -xft option must be enabled
[xftFont]
-xftga|+xftga
Enable / disable global advance of freetype font. The -xft option
must be enabled [xftGlobalAdvance]
-xftht|+xftht
Enable / disable hinting of freetype font. The -xft option must be
enabled [xftHinting]
-xftmsz size
Freetype multichar font size in pixels. The -xft option must be
enabled. [xftmSize]
-xftnfm|+xftnfm
Do not load freetype mfont, but use freetype font instead. This can
avoid a large line space if the size of font and mfont are very
different. The -xft option must be enabled [xftNomFont]
-xftpfn font
Specify a proportionally spaced font to use for drawing tab-titles.
If set, the tab bar behaves like Firefox’s tab-bar: All tabs have
the same width, and the widths are shrunk / expanded to keep the
number of tabs specified by minVisibleTabs visible. The active tab
title is drawn in a bold font. (Your colors are still used).
[xftPFont]
-xftpsz number
Proportional freetype font size in pixels. [xftPSize]
-xftrgb style
Freetype font sub-pixel order: rgb | bgr | vrgb | vbgr | none. The
-xft option must be enabled. [xftRGBA]
-xftslow|+xftslow
Display freetype multichar string in slow mode for better display
effect. The xft option must be enabled. [xftSlowOutput]
-xftst style
Freetype font slant: roman | italic | oblique. The -xft option
must be enabled. [xftSlant]
-xftsz number
Freetype font size in pixel. The -xft option must be enabled
[xftSize]
-xftbwt style
Freetype bold font weight: light | medium | demibold | bold |
black. The -xft option must be enabled. [xftBoldWeight]
-xftwd style
Freetype font width: ultracondensed | condensed | normal | expanded
| ultraexpanded. The -xft option must be enabled. [xftWidth]
-xftwt style
Freetype font weight: light | medium | demibold | bold | black.
The -xft option must be enabled. [xftWeight]
Tabs and command related options
-aht Automatically hide or show the tab bar depending on the number of
tabs. On startup, the tabbar is shown only if there are more than
one tabs present. If there is only one tab, and a new one is
created, then the tabbar is shown. If there are two tabs and one is
closed, then the tabbar is hidden. A keyboard shortcut used at any
time to hide / show the tabbar. [autohideTabbar]
-at|+at
Run command specified with -e on all tabs (by default the command
specified by -e is only used for the first tab opened). This causes
the profile option command to be ignored. However a command
specified via the NewTab macro is honored. [cmdAllTabs]
-bt|+bt
Show tabbar at bottom. [bottomTabbar]
-e [arguments ...]
Specifies the program (and its command line arguments) to be run in
the mrxvt window. By default this command is only run initially,
and all tabs created after startup will run the default shell (or
program supplied by -profile%d). This behaviour can be overridden
with the -at option. [command]
-hb|+hb
Hide buttons in the tabbar. [hideButtons]
-het string
Message to display in tabs after the child process exits. (This
string is escape and percent interpolated). [holdExitText]
-heT string
Set the title of tabs to string after the process in the tab exits.
(This string is escape and percent interpolated). [holdExitTitle]
-hold mask
Hold the tab open after the child process in it exits. mask is the
mask of flags which control weather the tab will be held open based
on the exit status of the child process. If the lowest bit (0x01)
of mask is set, then the tab will always be held open after the
child exits. If the next bit (0x02) is set, then the tab will only
be held open if the child exits abnormally (e.g. via abort(1)). If
the third bit (0x04) is set, then the tab will be held open if the
child exits with non-zero status.
NOTE: In previous versions of mrxvt this was a boolean option. For
backward compatibility, the value of True, On, Yes will be treated
as 1 and anything illegal will be treated as 0. The default is
0x06. [holdExit]
-ht|+ht
Hide tabbar on initialization [hideTabbar]
-htb|+htb
Highlight inactive tabs only when bell sounds. Default is to
highlight inactive tabs whenever they produce output.
[highlightTabOnBell]
-ip profiles
profiles is a comma separated list of profiles numbers. On startup
mrxvt opens each of these profiles in a tab. [initProfileList]
-ls|+ls
Indicates that the shell that is started in the mrxvt window will
be a login shell (i.e., the first character of argv[0] will be a
dash, indicating to the shell that it should read the user’s .login
or .profile). [loginShell]
-mtw width
The maximum width (in characters) of the displayed tabs. This can
not be larger than 40. If you use Xft, then you might want to use
the minVisibleTabs option instead. [maxTabWidth]
-mvt n
When using xftPFont to display tabs, keep at least n tabs visible.
[minVisibleTabs]
-profileN.option value
Set option to value in profile N. When a new tab is created with
profile N it uses all options that are set for this profile.
Currently the only options that can be set per profile are Pixmap,
background, command, foreground, saveLines, holdExit, holdExitText,
holdExitTitle, tabTitle, titleFormat, winTitleFormat and
workingDirectory. Then all the settings from that profile number
are used.
N can be the special number 0 (which stores default settings that
apply to all profiles where those settings are not explicitly
overridden, e.g. -profile0.tt mrxvt sets the tab title to mrxvt
for all profiles where the tab title has not been set - in this
case the -profile0. can be omitted entirely, i.e. -profile0.tt is
equivalent to -tt) or a number between 0 and the compiled-in
maximum (10 on Debian systems), exclusive.
This option is intended to replace the -vt%d.xx options from mrxvt
version 0.5.0. The old -vt%d.xx would set options for the %dth tab.
This causes inconsistent behaviour when the user moves / closes
tabs. The behaviour of the -profile option is to set options for a
particular profile, and then these settings can be associated (on
demand) to newly created tabs. [profileN.option]
-ps|+ps
Protect tab from being closed if it is using the secondary screen,
for example, when the user is running vim(1) or mutt(1), this can
prevent the terminal from being accidentally closed.
[protectSecondary]
-sti|+sti
Synchronize icon name with tab title when switch to a new tab or
the title of the active tab changes. [syncTabIcon]
-stt|+stt
Synchronize terminal title with tab title when switch to a new tab
or the title of the active tab changes. (See also the -wtf option).
[syncTabTitle]
-tnum N
OBSOLETE. Opens N tabs on startup. For backward compatibility, the
tabs are opened with profile 0, 1, ... N-1. [initTermNumber]
-tt string
Title of the tab [tabTitle]
-tf format
If set, this controls the displayed title of each tab. format is %
interpolated, and the result is displayed as the tab title.
NOTE: Currently this option requires the tab titles to be drawn
with a proportionally spaced font (which is currently only possible
with Xft). Also, this option only affects the displayed tab title,
and thus %t will still expand to the actual tab title, as set via
an escape sequence, or macro. For example, setting this option to
‘%n. %t’ will cause all the tabs to be numbered. [titleFormat]
-ut|+ut
Utmp inhibit. [utmpInhibit]
-vbf|+vbf
If unset, colored bold text will not be rendered using overstrike /
bold font. See also boldColors and veryBright. [veryBoldFont]
-wd Working directory of the child process. If non-empty, then the
child process is started in this directory. If set to ‘.’ then the
child process is run in the working directory of the current tab if
possible. On Linux, this is the default. (NOTE: It is not always
possible to find the working directory of the current tab. This
works fine on Linux, but causes problems on other systems [e.g.
OpenBSD], which is why it is only enabled by default on Linux).
[workingDirectory]
-wtf format
Controls the format of the window title. If set, and the option
-stt is used, then the window title is set to format (after %
interpolation), instead of the tab title. [winTitleFormat]
Multichar and multi-language support
-mcc|+mcc
Multichar cursor movement [multibyte_cursor]
-km mode
multichar encoding mode [multichar_encoding]
-im name
name of X Input Method (XIM) [inputMethod]
-pt mode
XIM input style: OverTheSpot|OffTheSpot|Root [preeditType]
-thai|+thai
Thai support [thai]
-grk mode
Greek keyboard mapping: iso|ibm [greek_keyboard]
Menu related options
-menu filename[;tag]
Menubar definition file. [menu]
-showmenu|+showmenu
show menubar [showMenu]
Keyboard and window related options
-b number
internal border width [internalBorder]
-bc|+bc
Display a blinking cursor. [cursorBlink]
-bcst|+bcst
Enable / disable broadcasting input to all terminals [broadcast]
-bci number
Cursor blink interval (ms) [cursorBlinkInterval]
-bl|+bl
Use a borderless window. [borderLess]
-blc cmd
Bell command instead of beeping. If cmd begins with ‘!’ then it is
passed to /bin/sh -c for execution. Otherwise it is split into
words at spaces or tabs only, and executed via execvp(3). If you
don’t want a space or tab to cause word splitting, then precede it
with a ‘\’. If you want to pass ‘\ ’ as an argument, double the
‘\’.
Note: Only backslashes (or chains of backslashes) that precede a
space or tab character are treated specially. That is ‘\\a’ will be
left untouched, however ‘\\ ’ will expand to a ‘\’ and the ‘ ’ will
cause a word break, and ‘\ ’ will expand to a ‘ ’ which does not
cause a word break. [bellCommand]
-bw|-w number
external border width [externalBorder]
-ctvb|+ctvb
Use a visual bell only for the current tab (i.e. the active tab of
a currently focused window). [currentTabVBell]
-desktop number
Desktop to place the window (for gnome compatible window manager).
The number starts from 0, NOT 1! [desktop]
-dm|+dm
Enable / disable all keyboard macros. This functionality can be
toggled at runtime via a pop-up menu, or the ToggleMacros keyboard
shortcut. NOTE: When keyboard macros are disabled, the ToggleMacros
keyboard macro will still work. Thus you can re-enable your
keyboard macros via the keyboard using this function.
[disableMacros]
-fs|+fs
Startup fullscreen. Use in conjunction with [smoothResize] to
really make it full screen. Requires an EWMH compatible window
manager. [fullscreen]
-lk|+lk
Enable Linux console style Home/End keys [linuxHomeEndKey]
-mod mode
Meta modifier: alt|meta|hyper|super|mod1|...|mod5. [modifier]
-lsp number
Line space between rows [lineSpace]
-m|+m
Start maximized (requires an EWMH compatible window manager).
[maximized]
-m8|+m8
Enable / disable meta8 [meta8]
-nsc|+nsc
Enable / disable reading the system wide configuration file. Only
the default keyboard macros are defined in this file, so this
option can effectively disable all default keyboard shortcuts.
[noSysConfig]
-or|+or
Override redirect [overrideRedirect]
-pb|+pb
Pointer blank (see also pointerBlankDelay). [pointerBlank]
-rv|+rv
reverse video [reverseVideo]
-tcw|+tcw
Triple click word selection [tripleclickwords]
-vb|+vb
Visual bell [visualBell]
Miscellaneous options
-C Intercept console messages
-dmask namelist
Print out debug message defined by a coma separated name list.
Available names include: command, screen, ptytty, init, main,
logging, macros, menubar, tabbar, scrollbar, images, pixmap,
transparent, encoding, gkrelot, memory, session, string, resource,
xftacs, misc, and all.
-dlevel verboselevel
Print out debug message defined by verboselevel. Available
verboselevel are: fatal, error, warn, info, verbose, and debug. The
latter, the more information is printed
-cf filename
X resource configuration file
-cfs filename
X resource configuration file to save the current configuration
[confFileSave]
-path path
Colon delimited list of directories to search for background images
and menu files. mrxvt first searches for the file in the current
directory, then in the directories specified by path, then in the
directories specified by the environment variable PATH_ENV and
finally tries in the user configuration directory ~/.mrxvt and the
(compiled in) system wide configuration directory /etc/mrxvt.
[path]
-sid string
Client identity of mrxvt for X session management [smClientID]
-sm|+sm
enable X session management [sessionMgt]
Long options
The following options do not have a “short” form. If these options are to
be used on the command line, they must be prefixed with a ‘--’ (or ‘++’
for boolean options). They can of course be used in the mrxvt
configuration file.
answerBackString string
Specify the reply mrxvt sends to the shell when an ENQ (control-E)
character is passed through. It may contain escape values as
described in the entry on keysym following.
backspaceKey string
The string to send when the backspace key is pressed. If set to DEC
or unset it will send Delete (code 127) or, if shifted, Backspace
(code 8) - which can be reversed with the appropriate DEC private
mode escape sequence.
bgRefreshInterval delay
Specify the delay (ms) to wait before refreshing the background in
pseudo-transparency. Generally tinting and refreshing the
background is slow (especially with XRender), and causes lags while
dragging the window. This delay causes enables the window to be
dragged smoothly. If you have a fast system, you can reduce or
disable this (by setting it to 0). The default value is 100ms.
boldFontN font
Specifies bold font to use along with fontset N.
boldColors True|False
If false, the bold primary colors (0 -- 7) will be rendered using
the brighter analogues (8--15) in a regular font. If true a bold
font will be used. See also veryBright.
colorN color
Use the specified colour for the colour value N, where 0-7
corresponds to low-intensity (normal) colours and 8-15 corresponds
to high-intensity colours.
colorBD color
Color to use to display bold text. If unspecified, the text will be
displayed using a bold font / overstrike.
colorRV color
Color to use to display reverse video text. If unspecified, the
text will be displayed as reverse video.
colorUL color
Color to use to display underlined text. If unspecified, the text
will be displayed as underlined.
cursorColor2 color
Second color of cursor.
cutChars string
String containing all characters to be treated as one word for
double click selection. If you want double clicks to select URL’s,
then set this to a string containing all letters (both upper and
lower case), digits and punctuation you find in urls.
deleteKey string
The string to send when the delete key (not the keypad delete key)
is pressed. If unset it will send the sequence traditionally
associated with the Execute key.
focusDelay msec
The time interval (in mili-seconds) to wait after getting / losing
focus, before fading the colors and changing the background color
as specified by the -fade and -ufbg options. Set it to 0 if you
want your colors faded immediately on focus change events.
This option is there mainly to work around a bug in some window
managers which send focus in immediately followed by focus out
events when moving windows, or pressing Alt+Tab (e.g. fvwm-2.5.16).
fontN font
Specify the alternative font n. n can be 1, 2, 3, 4 or 5.
greektoggle_key keysym
Key to toggle into greek keyboard mapping. See README.greek for
details.
highlightColor color
Color to use for selection. If not specified, reverse video is
used. (Note blinking text is also displayed with this color).
mapAlert True|False
If true, de-iconifies the window when a bell is received.
mfontn font
Specify alternative multiple character font n.
pointerBlankDelay delay
Delay (ms) to blank pointer after.
printPipe cmd
Specify a command pipe for vt100 printer.
refreshLimit N
This option and skipPages are to be used to replace the ‘jump
scroll’ behaviour of other terminal emulators (and previous version
of mrxvt). Generally when data is available from a tab, mrxvt
reads as much of it as is available (up to our buffer size), and
process it. After we are done processing it (generally takes a
fraction of a mili-second), we look for more data from the tab. If
we obtain not more than N characters, then we request a screen
refresh (which takes a while, especially if you use Xft with anti
aliasing). If we obtain more than N characters from the tab, then
we delay the screen refresh until the tab eventually has either N
or fewer characters of output, or the tab has (cumulatively)
produced at least skipPages of data.
The default value is 0. On new fast machines, this is probably the
best. If you find screen refreshes laggy on on slow older machines,
then increase this value a little (say to 10). Setting it to
something enormous (say BUFSIZ) will cause mrxvt to request screen
refreshes every time the active tab has data, and effectively
disable the so called ‘jump scrolling’.
scrollColor color
Color of scrollbar (see also troughColor).
selectStyle mode
Set mouse selection style to old which is 2.20, oldword which is
xterm style with 2.20 old word selection, or anything else which
gives xterm style selection.
skipPages N
This option and refreshLimit are to be used to replace the ‘jump
scroll’ behaviour of other terminal emulators (and previous version
of mrxvt). If the screen refresh is delayed because of the
refreshLimit option, then mrxvt will refresh the screen every N
pages of output. The default is 25. If you set it to a very large
value (say INT_MAX), then mrxvt will refresh the screen only after
the tab has stopped ‘flat out’ scrolling.
smartResize True|False
Enable / disable smart resize. When the tabbar is shown, or font
size is increased, the resize terminal window could be partially
off screen. If smartResize is enabled, then mrxvt tries to move the
terminal window to stay on screen.
smoothResize True|False
Enable / disable smooth resize. If enabled, then the mrxvt window
is resized in pixel increments (instead of character increments).
This is useful if you want a full screen / maximized mrxvt window
that covers the entire screen (without leaving an annoying few
pixel wide strip uncovered).
troughColor
Color of scrollbar trough (see also scrollColor).
useFifo True|False
If enabled, then mrxvt will create a fifo(7) /tmp/.mrxvt-%pid and
listen for macros on it. To execute macros, just write them to this
fifo. For example
/bin/echo -e "NewTab\nRaise" >> /tmp/.mrxvt-%pid
creates a new tab and raises the mrxvt window with process ID %pid.
NOTE: The meaning and syntax of this option might change in future
versions.
vBellDuration ms
Amount of time (in milliseconds) to flash the screen if using a
visual bell.
monitorTimeout ms
Amount of time (in milliseconds) to detect the type of monitoring
type or tab-inactivity. Default value is 2000 ms this causes that
mrxvt is waiting 2 seconds after invoking the MonitorTab macro with
argument "AUTO" or "INACTIVITY" to determine if or what type a
notification is needed. The detection of "ACTIVITY" does not make
use of the configuration value.
monitorCommand command
Specifies a command which will be executed if a activity or
inactivity event is raised by the MonitorTab macro. (This string is
escape and percent interpolated)
veryBright True|False
If true, and if boldColors is false, then bold primary colors are
rendered as bright colors with a bold font (this was the default
behaviour in 0.5.2 and earlier versions).
CONFIGURATION FILE SYNTAX
A line in the config file generally looks like this
ClassName.OptionName: Value
Blank lines, and lines beginning with ‘#’ are ignored (comments).
The ClassName is the name specified via the -name option (by default
‘mrxvt’). When mrxvt starts up, it ONLY reads options with ClassName
‘Mrxvt’, ‘XTerm’, or the class specified via the -name option. See
/etc/mrxvt/mrxvtrc.sample for how this feature can be used.
The OptionName is the long name of the option you want to set. It can be
any long option (listed under the Long Options sub section), or is
specified in brackets as [option_name] alongside regular options in this
man page. Finally Value is the value of this option.
Example
The following is an example ~/.mrxvtrc file, or in a configuration file
you will load with -cf option at startup. You can consult the
doc/mrxvtrc.sample in the directory for more details.
Mrxvt.profile0.tabTitle: term1
Mrxvt.profile1.tabTitle: term2
Mrxvt.profile2.tabTitle: term3
Mrxvt.profile0.saveLines: 600
Mrxvt.profile1.saveLines: 600
Mrxvt.profile2.saveLines: 600
# Mrxvt.profile0.Pixmap: /home/images/vt0bg.xpm
# Mrxvt.profile1.Pixmap: /home/images/vt1bg.xpm
# Mrxvt.profile2.Pixmap: /home/images/vt2bg.xpm
Mrxvt.scrollbarStyle: next
Mrxvt.initTermNumber: 3
Mrxvt.transparent: True
Mrxvt.transparentScrollbar: True
Mrxvt.transparentTabbar: False
Mrxvt.transparentMenubar: False
Mrxvt.tintColor: #ffffff
Mrxvt.shading: 85
Mrxvt.foreground: white
Mrxvt.background: black
MENUS
The menu system is similar to rxvt’s menus (see the included file
rxvtRef.txt) with a few enhancements, and a few notable exceptions:
- The menus can use a proportionally spaced font under Xft ( -xftpfn)
which is significantly less ugly than a mono-spaced font.
- mrxvt supports pop-up menus. If you create a menu named PopupButtonN
(where N is 1, 2, or 3) then that menu is popped up when you control
click (with the appropriate mouse button) on the terminal window.
Additionally if you right click on the Tab bar, then the menu
PopupButton1 is popped up.
- To create a menu containing a list of all open tabs, create an empty
menu called PopupButtonN (which will be popped on control click’s as
described above). To include a list of all open tabs as a sub menu,
create a sub-menu called ‘Switch to tab’.
- Menu actions are completely different in mrxvt than the original
implementation in rxvt(1). The menu actions are exactly the same as
macro actions, and are described in the section Defining custom
shortcuts.
- On startup mrxvt reads the file default.menu which contains the default
menu definitions. The file is searched for in your search path
(specified by option -path).
KEYBOARD AND MOUSE SHORTCUTS
You have several default keyboard shortcuts to ease the use of mrxvt. The
default gnome-terminal, Konsole, rxvt shortcuts are predefined for you.
You can also define your own shortcuts as described in Defining custom
shortcuts.
Default keyboard shortcuts
The following key combinations are defined by default. These are defined
in the system configuration file /etc/mrxvt/mrxvtrc, and can be disabled
using the option -nsc. See the next section for instructions on defining
your own custom keyboard shortcuts.
Gnome-terminal style shortcuts:
Ctrl+Shift+t create a new tab
Ctrl+Shift+q Close all tabs and exit
Ctrl+Shift+w Close active tab, and do not hold it open if it
exits abnormally.
Ctrl+PgUp activate left tab
Ctrl+PgDn activate right tab
Meta+1 activate 1st tab
...
Meta+0 activate 10th tab
Ctrl+equal increase font size (next font)
Ctrl+Shift+plus increase font size by 2
Ctrl+minus decrease font size (previous font)
Ctrl+Shift+underscore
decrease font size by 2
Konsole style default shortcuts:
Ctrl+Shift+Left move active tab to left
Ctrl+Shift+Right: active tab to right
Shift+Left Activate left tab (Primary only)
Shift+Right Activate right tab (Primary only)
Ctrl+Shift+n Create a new tab with the same profile as the
current tab.
Vi style default shortcuts:
Ctrl+Shift+h activate left tab
Ctrl+Shift+l activate right tab
Screen style default shortcuts:
Ctrl+Shift+p activate previous active tab
Mrxvt default shortcuts:
Ctrl+Shift+1 Move tab to 1st position
...
Ctrl+Shift+0 Move tab to 10th position
Ctrl+Tab activate previous active tab
Ctrl+Shift+less_than
Move active tab left
Ctrl+Shift+greater_than
Move active tab right
Ctrl+Shift+o Change opacity of terminal to make it more
transparent.
Ctrl+Shift+u Change opacity of terminal to make it less
transparent.
Ctrl+Shift+j Change shading of terminal to make it more
transparent.
Ctrl+Shift+k Change shading of terminal to make it less
transparent.
Ctrl+Shift+r Toggle pseudo-transparency
Ctrl+Shift+i Hide/show tabbar
Ctrl+Shift+s Hide/show scrollbar
Ctrl+Shift+m Hide/show menubar
Ctrl+Shift+a Hide/show tabbar buttons
Ctrl+Shift+b Toggle very bold font
Ctrl+Shift+z Open a mrxvt console in a new tab, and enable the
useFifo option if necessary. Anything typed in
this console will be executed as a macro. On
clean exit the useFifo option will be disabled.
Ctrl+Shift+d Toggle input broadcasting (unbound by default)
Ctrl+Shift+e Toggle holding exited tab
Ctrl+Shift+f Toggle full screen mode
Ctrl+Shift+x Save current configuration
Shift+Del Set title of active tab to selection.
Shift+Insert Paste X selection into active tab.
Ctrl+Shift+v Paste X selection into active tab.
Ctrl+Shift+c Paste clipboard into active tab.
Shift+Up Scroll up one line (Primary screen only)
Shift+Dn scroll down one line (Primary screen only)
Shift+PgUp scroll up one page (Primary screen only)
Shift+PgDn scroll down one page (Primary screen only)
Shift+Home Scroll to beginning of scroll-back buffer
(Primary screen only)
Shift+End Scroll to end of scroll-back buffer (Primary
screen only)
Shift+KeypadPlus Increase font size
Shift+KeypadMinus Decrease font size
Ctrl+Shift+F1 Open mrxvt man page in a new tab.
Ctrl+Shift+F12 Enable / disable all keyboard macros (except this
one of course).
Defining custom shortcuts
NOTE: The ‘hotkey’ mechanism used in versions 0.4.2 and earlier is now
obsolete. It has been replaced by the ‘macro’ functionality (described
below) as of version 0.5.0.
You can define your own keyboard shortcuts in your configuration file by
using the following syntax:
Mrxvt.macro.[modifiers+]keyname: action
Here ‘modifiers’ is a ‘+’ separated list of modifiers ‘Ctrl’, ‘Alt’,
‘Meta’, ‘Shift’. ‘Primary’. and ‘Add’. The first four refer to the
respective modifier keys. ‘Primary’ tells mrxvt to make the macro
available ONLY when the primary screen is displayed (e.g. ‘Primary’
macros will not be effective when you are running vim(1), but will be
effective when you are at the shell prompt). Finally ‘Add’ tells mrxvt to
add the macro action to any previous action associated to that particular
key. For instance
Mrxvt.macro.Primary+Shift+Return: Esc \ec
Mrxvt.macro.Primary+Add+Shift+Return: Str ^M
will define the macro ‘Shift+Return’ to first send the escape sequence
‘\ec’ to mrxvt (which has the effect of clearing the scroll back buffer)
and then send ‘Ctrl-M’ to the child process, but ONLY in the primary
screen. If you’re running a shell, then this effectively clears the
scroll back buffer and executes the command.
If the ‘Add’ modifier is not specified, then the macro action replaces
any previous action (if any) associated to the specified key. It is an
error to add a macro to a non-existing macro. Currently one key can have
at most 16 actions associated to it (this might be reduced to 8 in
future).
‘keyname’ is the name of the key you want to bind to the specified macro.
Non alpha numeric keys (e.g. punctuation, or cursor/keypad keys) are
specified by using their keyname, which you can find by xev(1), or
looking directly in the system header file /usr/include/X11/keysymdef.h.
In case you want to unbind a default keyboard macro, just bind the
appropriate key to the function ‘Dummy’. For example
Mrxvt.macro.Ctrl+Shift+t: Dummy
will disable the default keyboard shortcut ‘Ctrl+Shift+t’. If you want
to disable all keyboard macros, use the option ‘-dm’ (which can also be
accessed via a pop-up menu). The default keyboard macros are defined in
the system configuration file /etc/mrxvt/mrxvtrc so if you only want to
disable all default shortcuts keys, don’t read the system configuration
file by using the -nsc option.
Notice that keyboard shortcuts definitions are incompatible with X
Windows own resource parsing API, i.e., XGetDefaults. So, to enable the
keyboard shortcuts, you will need to enable resources but disable
xgetdefault when you configure mrxvt.
Finally ‘action’ is the action you want bound to the specified macro key.
The available actions you can bind to macros are:
Dummy
Clear an existing keyboard shortcut
Esc str
Send the escape sequence str to mrxvt.
Str str
Send the string str to the child process.
Exec command
Executes command asynchronously. The command run without any
controlling shell or TTY. This is generally used to launch X11
programs (e.g. open the selected text in firefox). If you want
a command run in a new tab, see the NewTab macro).
The argument command is word split exactly as described in the
-blc option (thus for instance beginning it with ‘!’ will pass
it to /bin/sh -c for word splitting and execution). However
keep in mind that like all macro arguments, command is first
‘\’ interpolated. Thus if on the rare occasion you want ‘\ ’ to
be part of command, then you will have to do something like
‘\\\\\\ ’ and not ‘\\\ ’ as you would with the argument of
-blc.
NewTab [-N] ["title"] [[!]command]
Open a new tab. N specifies the profile number. If omitted,
profile 0 is used. If only ‘-’ (with no number) is specified,
then the profile of the current active tab is used (i.e. this
can be used to duplicate the current tab). title is specified
(needs to be double quoted), use that for the tab title. If
command is specified, execute that command in the new tab
(instead of the one specified by the resource file, or the
shell).
command is word split as described in the Exec macro. However
if command begins with an ‘!’ then run a shell first, and
execute the command in the shell as if the user had typed
command at the shell prompt. If instead you want command to be
passed to /bin/sh -c for word splitting and execution, then
begin command with ‘\!’.
Close [N]
Close a tab. If no argument is specified, close all tabs and
exit. If N is 0, close the active tab. Otherwise close the Nth
tab.
GotoTab [N]
Goto tab. If N is omitted or 0, then go to the previous active
tab. Otherwise go to the Nth tab. If N begins with a ‘+’ or ‘-’
then N is relative to the current tab.
MoveTab N
Move active tab to position N. If N begins with a ‘+’ or ‘-’
then N is relative to the current tab.
Scroll amount
Scroll the active tab by amount lines (negative values mean
scroll backward). If amount ends with ‘p’ then scroll amount
pages instead of lines.
Copy Copy selection into clipboard (not implemented).
Paste [selection-buffer]
Paste selection into active tab. The value selection-buffer
specifies the name of the buffer to be pasted. If not specified
the first used buffer in the order PRIMARY, SECONDARY and
CLIPBOARD will be used.
PasteFile filename
Paste the content of the file specified by filename to the
currently active tab. This can be used to input text-snippets
to a shell or any other terminal based program (i.e. somthing
like a bash-profile or sequence of administration commands).
MonitorTab [ACTIVITY|INACTIVITY|AUTO]
Monitor the current tab-window for ACTIVITY or INACTIVITY or
automatically detect the type of monitoring using the AUTO
option. The amount time which is used to detect the type of
monitoring or tab-inactivity can be specified by the
monitorTimeout option. The detection of activity or inactivity
is signaled by highlighting the tab of the event and ringing
the system bell. Additionally it is possible to execute a
dedicated command using the monitorCommand option.
ToggleSubwin [[+|-][b|m|s|t]]
Toggle visibility of sub-windows. If the argument begins with a
‘+’ the subwindow is shown. If it begins with a ‘-’ the
subwindow is hidden. Otherwise it is toggled. The letters ‘b’,
‘m’, ‘s’ and ‘t’ represent the tabbar buttons, menubar,
scrollbar and tabbar respectively. NOTE: Currently you can only
toggle one subwindow at a time.
ResizeFont [+|-]N
Resize the font. With Xft, N represents the size increment of
the xft font. Without Xft, N represents the index of the X11
fonts specified by the fontN resources.
ToggleVeryBold
Toggle use of bold font for colored text.
ToggleTransparency
Toggle pseudo transparency.
ToggleBroadcast [status]
If status is omitted or ‘-1’, then input broadcasting to all
tabs is toggled. If it is ‘1’, input broadcasting is enabled.
If it is ‘0’, it is disabled.
ToggleHold [mask]
If mask is not specified, then just close all tabs who’s child
processes have exited. (This is almost compatible with the
behaviour of mrxvt 0.5.1 and earlier). If mask is specified,
then change the hold status of the current tab. mask must
begin with ‘+’, ‘-’, or ‘!’ and be followed by a bit mask (as
in the holdExit option). ‘+’ will add bits to the holdExit
option for this tab, ‘-’ will subtract, and ‘!’ will toggle.
Remember that if the lowest bit of the current tabs holdExit
option is set, then the tab will always be held open and
everything else will be ignored.
ToggleFullscreen
Toggle between full screen and regular mode. Also enable
--smoothResize to get true full screen. This will only work if
you are running an EWMH compatible window manager (e.g. Fvwm /
OpenBox / KDE / Gnome).
Raise
Raise the mrxvt window.
SetTitle
Set title of active tab to selection. (The selection must be
owned by mrxvt)
UseFifo status
Enable or disable using a fifo(1) to listen for macros on (see
the useFifo option). The argument status should be 0, 1, -1 to
disable, enable or toggle respectively.
PrintScreen [-psn] [command]
Dump screen to printer (or command). If -p is specified, then
the output is pretty printed (i.e. escape sequences are used to
get the same color in the output as on your screen). If -s is
specified, then the entire scroll back is printed (instead of
just the current screen). If -n is specified, then every screen
line is terminated with a newline char (by default screen lines
that wrap to the next line are not terminated with a newline).
Finally, if command is specified it is used as the printer pipe
(if not the value of printPipe or the compiled in default is
used).
SaveConfig [filename]
Save config to file. If no filename is specified, save to
~/.mrxvtrc.save.
ToggleMacros
Toggle the use of keyboard shortcuts. When macros are disabled
(either by using this macro, or by the -dm option), then this
is the only keyboard shortcut that will work. Thus you can re-
enable your keyboard shortcuts via the keyboard using this
function.
Additionally, the argument to any of the above macros are ‘\’ and ‘%’
interpolated as follows:
\a Bell
\b Backspace
\E, \e Escape
\n Newline
\r Carriage return
\t Tab
\ddd Char with octal ASCII code ddd.
^@, ^A .. ^Z .. ^_, ^?
Control-@, Control-A ...
%G Global (static) tab number.
%p PID of child process in current tab.
%P PID of mrxvt
%n Tab number.
%N Expands to ‘normally’ if the process exited normally (e.g.
by calling exit(1)) or ‘abnormally’ otherwise. (Note this
is independent of the exit status).
%s Text selected in the mrxvt window.
%S If the process in this tab is dead, then it expands to the
exit status of the child process. Otherwise left unchanged.
%t Tab title.
%T Total number of tabs created in mrxvt lifetime.
Mouse shortcuts
Changing tab titles
This mouse shortcut can be used to dynamically change the tab title
as follows: Select text in the terminal window. Then middle click
on a tab to change the tab’s title. If you middle click on the
tabbar background, then the title of the active tab is changed.
Tab list menu
By default, if you right click on the tab bar, or control-left-
click on the terminal window, a popup menu with a list of currently
open tabs pops up. The actual menu popped up can be customized as
described under the section MENUS.
Popup menus
If you Control-click on the terminal window (with any mouse
button), it pops up a menu. The actual menu popped up can be
customized as described under the section MENUS.
Moving tabs
Click and drag a tab to some other location on the tab-bar to move
it.
ESCAPE SEQUENCES
You have several escape sequences to control mrxvt. All default rxvt(1)
escape sequences are supported by mrxvt. A few extra escape sequences
have been added to improve DEC compatibility, and allow interaction with
extra mrxvt features (e.g. tabs). The supported escape sequences are
listed in the file mrxvt_seq.txt included in the distribution.
For omissions in the documentation, and a more complete reference to
escape sequences you should look at the file ctlseqs.txt that comes with
the xterm package, console_codes(4) and the original rxvt documentation
in the file rxvtRef.txt.
For basic interaction with mrxvt (e.g. changing the tab title etc.) you
should also look at the programs share/scripts/settitle.c and
share/scripts/mrxvtset.pl that are supplied with the mrxvt distribution.
ENVIRONMENT
COLORFGBG
Set to the terminal foreground and background colors.
COLORTERM
Sets to the terminal sub-name that indicates its color.
DISPLAY
Used (and set) to the X display bieng used.
PATH_ENV
Path to look for menu / background files (see -path option).
TERM Set to the terminal name in the window you have created.
MRXVT_TABTITLE
Set to the initial tab title of each terminal. Notice that its
value will not be altered if the user uses a shortcut or escape
sequence to change the tab title. The user must modify it manually
after doing that.
WINDOWID
Set to the X window id number of the mrxvt window.
FILES
The actual pathnames given may differ on your system.
default.menu
The default menu file loaded at startup (searched for in your
-path).
~/mrxvt
Directory in which to look for user menu and image files.
~/.mrxvtrc
This is the default configuration file (since 0.3.9). If present,
resources read from this file override existing resources.
~/.Xdefaults
(OBSOLETE) This was the default configuration file (before 0.3.9).
If present, resources read from this file override existing
resources.
~/.Xresources
(OBSOLETE) If both .mrxvtrc and .Xdefaults are not found, try this
one.
/etc/mrxvt
System wide directory in which to look for user menu and image
files.
/etc/mrxvt/default.menu
Default menu file read on startup.
/etc/mrxvt/mrxvtrc
System wide configuration file. (By default this file only defines
the default keyboard macros)
/etc/utmp
System file for login records.
/usr/lib/X11/rgb.txt
Color names.
/usr/X11R6/lib/X11/app-defaults/XTerm
(OBSOLETE) If enable xgetdefaults at compiled time, this is the
first configuration file read.
BUGS
Reporting bugs
Please report bugs using the sourceforge bug tracker system at
http://sourceforge.net/projects/materm
Alternately you can send your bug report to the mrxvt developer mailing
list at
materm-devel@lists.sourceforge.net
Be sure you give us enough details to reproduce the bug ourselves, and
check to see if your bug still exists in the current CVS version.
Known bugs
- Tabs don’t work properly when running under Xnest.
- Transparency and tinting are global, not specific to a terminal.
- The transparentForce option does not work well with all window managers
(e.g. OpenBox).
SEE ALSO
rxvt(1), xterm(1), resize(1), mrxvt_seq.txt, Xterm control sequences
(this is the file ctlseqs.ms or ctlseqs.txt), console_codes(4)
http://materm.sourceforge.net
AUTHORS
Terminator <jimmyzhou@users.sourceforge.net>
Gautam Iyer <gi1242@users.sourceforge.net>
Marc Schoechlin <mschoechlin@users.sourceforge.net>