--------------------------------------------------------------------------
			Frequently Asked Questions (FAQ)
--------------------------------------------------------------------------

Q:  I have a question...
Q:  What exactly is the name of this project, materm or mrxvt?
Q:  Why not use GNU screen? It has provided the multi-screen features!
Q:  Why not use gnome-terminal/konsole? They have provided the functionality of
    mrxvt!
Q:  How to build mrxvt, since I cannot find the configure script as usual!?
Q:  Shift+Left/Right do not always work. Ctrl+Shift+6 does not do anything.
    Some other keyboard shortcut do not work either.
Q:  I just upgraded to mrxvt-0.5.x, and feature XXX doesn't work anymore.
Q:  When I run mrxvt from command line, it outputs lots of verbose text. How to
    disable it?
Q:  I do not have root privilege on my system. Can I install mrxvt, and what are
    the restrictions if I install it as normal user?
Q:  When I run mrxvt with multiple tabs, why does the output of the `w' command
    shows many users are using the system?
Q:  I dislike the default mrxvt font, so I have installed some new fonts, like
    the Verdana font. But when I run mrxvt with option `-fn verdana', mrxvt
    complains that it cannot find the verdana font! What is wrong?
Q:  When I want to use Chinese (or Korea/Japanese) encoding and font, executing
    command `mrxvt -km gb -mfont fontname' is not working! For example, it
    complains that -km is a bad option.
Q:  I have ~/.Xdefaults and ~/.mrxvtrc, which one is the first to be read?
Q:  How do I input Chinese (or Korea/Japanese) in mrxvt?
Q:  I execute mrxvt with CJK encoding and X11 fonts. But sometimes CJK
    characters are not display completely, or there are some extra pixels left
    after the CJK characters.
Q:  Does mrxvt support UTF-8 locale/encoding method?
Q:  I use UTF-8 as default encoding method, but mrxvt does not support it. So
    can I start mrxvt with other encoding method, e.g., zh_CN.GB2312 without
    changing the default encoding method?
Q:  I run mrxvt with `-o 25' option, but the window is not translucent!
Q:  When I run mrxvt in transparent mode or background image mode, can I make
    the background a little darker?
Q:  Why the tinting does not work after I set the tint color in command line or
    ~/.mrxvtrc?
Q:  I am tired with the current tinting color, can I change the color without
    restart mrxvt?
Q:  How to start mrxvt with multiple tabs initially?
Q:  How do I let each tab execute different applications when mrxvt starts?
Q:  How to change the title of a tab after mrxvt starts?
Q:  My Control-Left / Right and Home / End keys do not work properly in some
    applications.
Q:  How do I set the tab title to the current command?
Q:  How to dynamically change the title of the mrxvt window so that it is the
    same as the current active tab when I switch to a new tab?
Q:  Why cannot I close a tab? The close button is grey!
Q:  Is there any keyboard combination to manipulate the tabs?
Q:  Mrxvt default hotkey ctrl+shift+minus conflicts with Emacs. How can I
    disable this mrxvt default hotkey?
Q:  How to enable freetype font, or, say the XFT support?
Q:  After I use freetype font, the text rendering speed seems to slow down a
    lot! How to improve the speed?
Q:  After I use freetype font, the line space seems too large. Is there any way
    to narrow down the line space?
Q:  Can I change the color of tab background and text?
Q:  I notice that sometimes there is a dash-dot frame around the title of
    inactive tabs. What has happened? Is it a bug?
Q:  I notice that the inactive tab is highlighted by the dash-dot frame, but
    after I switch to it, I see nothing happened. What is wrong with it?
Q:  I like to use command line options to create a new tab in the current mrxvt
    terminal and execute some commands. For example, if I run command `mrxvt
    --new-tab -e pine' in a mrxvt terminal, the current terminal will open a new
    tab and run pine in it. Can you implement it for me?
Q:  I like to use context menu when I right click in the terminal window. For
    example, to copy/paste text. Can you support it?
Q:  Will you rewrite mrxvt using C++? The object oriented feature of C++ can
    make mrxvt much modular.
Q:  How do I know which mrxvt version I'm using?
Q:  Mouse cut/paste suddenly no longer works.
Q:  What's with this bold/blink stuff? I can never get blinking text!
Q:  I don't like the screen colors.  How do I change them?
Q:  What's with the strange Backspace/Delete key behaviour?
Q:  Why doesn't the Backspace key work on my Linux machine?
Q:  I don't like the key-bindings.  How do I change them?
Q:  I'm using keyboard model XXX that has extra Prior/Next/Insert keys.  How do
    I make use of them?  For example, the Sun Keyboard type 4 has the following
    mappings that mrxvt doesn't recognize.
Q:  How do I distinguish if I'm running mrxvt or a regular xterm? I need this to
    decide about setting colors etc.
Q:  How do I set the correct, full IP address for the DISPLAY variable?
Q:  Can I search the scroll back buffer?
Q:  Where is the CVS repository of mrxvt?
Q:  I find a bug, or I would like to see a new feature in mrxvt, how to report
    it?

--------------------------------------------------------------------------
		   Frequently Asked Questions with answers :)
--------------------------------------------------------------------------

-----

Q:  I have a question...

A:  Have you read the README, README.configure, INSTALL, FAQ, TIPS, man page...?
    Before asking a question, please read through these documents for potential
    answers.

    Here is a good tutorial to ask questions:

	http://www.catb.org/~esr/faqs/smart-questions.html

-----

Q:  What exactly is the name of this project, materm or mrxvt?

A:  The current official name of this project is mrxvt (I honestly hope Rui
    Carmo will not reclaim the ownership of mrxvt because he is the first person
    who tried to hack a multi-tab rxvt on Cygwin and got this name for his
    project. Here is the link of his work:
    http://the.taoofmac.com/space/Projects/mrxvt).

    As stated in README, in the beginning, the project name was materm - derived
    from the project multi-aterm. And this was the name when I registered the
    project at sourceforge. Unfortunately it is not easy to rename materm to
    mrxvt at sourceforge. This is why we keep materm as the name at sourceforge.

-----

Q:  Why not use GNU screen? It has provided the multi-screen features!

A:  Because I do not like GNU screen. ;-)  People have their own flavors. Plus,
    mrxvt provides some features that GNU screen lacks, e.g., use mouse click to
    switch from different tabs... :p

-----

Q:  Why not use gnome-terminal/konsole? They have provided the functionality of
    mrxvt!

A:  Because they are heavy, slow, and depend on too many libraries. For example,
    gnome-terminal 2.6.1 in the Slackware -current tree depends on
    58 libraries, konsole of KDE 3.3 in the gentoo depends on 41 libraries,
    mrxvt with all features only depends on 19 libraries, and this number can be
    further reduced to 5 (of course you need to strip out some features, like
    background image ;-))!! Since all I need is a fast and lightweight X
    terminal emulator supporting multi-tabs, I decide to create mrxvt by myself.

-----

Q:  How to build mrxvt, since I cannot find the configure script as usual!?

A:  Have you read the INSTALL file?

-----

Q:  Shift+Left/Right do not always work. Ctrl+Shift+6 does not do anything.
    Some other keyboard shortcut do not work either.

A:  Do not report these issues as bugs. They most certainly are NOT. As of
    mrxvt-0.5.0, a lot have changed, this includes a few default keyboard
    shortcut sequences.

    Shift+Left/Right by default is only bound when you are in the primary
    screen. This is because good editors (i.e. Vim) use this keyboard
    combination to move between words. This of course can be changed by adding
    the following lines to your ~/.mrxvtrc

	Mrxvt.macro.Shift+Left:		GotoTab -1
	Mrxvt.macro.Shift+Right:	GotoTab +1

    but we recommend you use Ctrl+PgUP/PgDn or Ctrl+Shift+h/l to switch tabs
    instead.

    About Ctrl+Shift+6: Vim uses this sequence to switch to the "alternate"
    file. However when you press it in mrxvt, it seems to do nothing. This is
    because pressing Ctrl+Shift+6 by default moves the current tab to position
    6.

    Most terminal applications we know of so far can NOT tell the difference
    between Ctrl+Shift+number and Ctrl+number. Thus pressing Ctrl+6 in Vim will
    switch to the alternate buffer, so mrxvt can safely swallow the Ctrl+Shift+6
    keystroke.

----

Q:  I just upgraded to mrxvt-0.5.x, and feature XXX doesn't work anymore.

A:  Don't panic! Something is possibly different in the latest release.

    The following are the changes you need to be most wary of when upgrading to
    mrxvt-4.x to 0.5.x:

	1. Background tinting works differently when compiled with XRender
	   support (enabled by default in 0.5.0). Now if you want your
	   background tinted to a specific color, you need to set the tintColor
	   resource to that color, and NOT the mask (as you had to in 0.4.x).
	   Specifically, if you want a dark tint, then set tintColor to #000000
	   (in 0.4.x you would set it to #ffffff).

	   Also keep in mind that very bright colors (e.g. #ffffff) are not very
	   transparent and not good for tinting.

	2. The default terminal name is now "rxvt" and not "xterm". On systems
	   with badly configured termcap / terminfo entries for "rxvt", this
	   will cause NUMEROUS ncurses based programs to behave very badly
	   (including bash!). If you have any problems, ask your Linux vendor to
	   fix this! Or wimp out and set the termName resource to "xterm" in
	   your ~/.mrxvtrc

	3. The old "hotkey" feature has been disabled. The new "macro" feature
	   in 0.5.0 extends the functionality of the old "hotkey" feature.

	4. The menu syntax for actions from 0.5.x is incompatible with the
	   syntax from earlier versions. See the man page for details.

	5. The keysym resource is disabled by default (use macros instead).

	6. A few default key-bindings were changed (mainly to adhere to the
	   convention that terminal programs should use Ctrl-Shift modifiers for
	   all it's shortcuts, and let the window manager / child process use
	   other modifier combinations).
	   
	   For example the Shift+Left / Shift+Right macros to switch tabs are
	   enabled ONLY in the primary screen (i.e. they will not work when you
	   are running Vim). Vim uses Shift+Left/Right to move between words, so
	   we do not override this behaviour in Vim.
	   
	   Read the man page and /etc/mrxvt/mrxvtrc for a complete list and
	   description of the macros defined in 0.5.x.

	7. A few escape sequences (controlling creation / movement of tabs) have
	   been disabled for security reasons. The functions can of course be
	   accessed using keyboard macros or the popup-menus.

	8. Escape sequences generated by function keys / modified cursor keys
	   have now been changed to produce exactly the same escape sequences as
	   Xterm does. (If you don't like this, then undefine the macro
	   XTERM_KEYS in src/feature.h). As a result of this, to get Ctrl+Left /
	   Right working in your shell, change ~/.inputrc the way you would for
	   Xterm (not rxvt). This is described later on in this FAQ.

	9. The option --tabShell, --cmdInitTabs have been removed. The options
	   --initTermNum and --vt%d.xx have been marked as obsolete.

	   Mrxvt-0.5.0 has a new "profile" feature intended to replace the above
	   options. Here settings are associated to a "profile" instead of a
	   tab. Tabs can be created on demand with any desired profile. (The
	   earlier design led to some unresolvable bugs when the user moved
	   tabs). Migrating to profiles is easy:

	       1. Replace the old vt%d.xx resources with profile%d.xx. remember
		  that the profile%d resources refer to the PROFILE number, and
		  not the TAB number.

	       2. To open a new tab with profile number N use the macro "NewTab
		  -N". E.g.

		    Mrxvt.macro.Ctrl+Shift+F1:  NewTab -1
		    Mrxvt.macro.Ctrl+Shift+F2:  NewTab -2
		    Mrxvt.macro.Ctrl+Shift+F3:  NewTab -3
		    Mrxvt.macro.Ctrl+Shift+F4:  NewTab -4

	       3. Finally replace your initTermNumber option with
		  initProfileList. The argument to initProfileList is a comma
		  separated list of profiles you want opened in new tabs on
		  startup.

    A more complete list of changes is in the ChangeLog, and in the Subversion
    logs.

-----

Q:  When I run mrxvt from command line, it outputs lots of verbose text. How to
    disable it?

A:  You probably have configured mrxvt with debug support. You need to
    reconfigure mrxvt to disable debug support and rebuild it, like the
    following:

	$ ./configure --enable-whatever-options --disable-debug $ make

-----

Q:  I do not have root privilege on my system. Can I install mrxvt, and what are
    the restrictions if I install it as normal user?

A:  Surely you can install mrxvt without root privilege. You can configure mrxvt
    with --prefix=/home/youraccount and install it. Or you can simply copy the
    mrxvt program to anywhere you wish. Mrxvt only requires setuid root in order
    to write to utmp/wtmp/lastlog. If you do not have root privilege, you will
    only lose this feature.

-----

Q:  When I run mrxvt with multiple tabs, why does the output of the `w' command
    shows many users are using the system?

A:  This is because each mrxvt tab logs itself in an entry of the utmp file. If
    you do not want this feature, remove the setuid permission from mrxvt binary
    and do not build mrxvt with utempter support.

-----

Q:  I dislike the default mrxvt font, so I have installed some new fonts, like
    the Verdana font. But when I run mrxvt with option `-fn verdana', mrxvt
    complains that it cannot find the verdana font! What is wrong?

A:  There are two types of fonts in X Window System, the ancient X11 bitmap
    fonts and the new freetype fonts. Mrxvt is capable to use either type of
    fonts.
    
    The X11 bitmap fonts have a special format of names. You can execute command
    `xlsfonts | more' to get a complete list of all X11 bitmap fonts installed
    in your system, and pick one you like. Or you can execute program `xfontsel'
    to pick one, which shows you the look of the font nicely. As you can see,
    the font name is in a special format like the following example. That is why
    mrxvt complains if you only provide the name of the font:

	-adobe-courier-bold-o-normal--14-140-75-75-m-90-iso8859-1

    The freetype fonts are much simpler to handle. You only need to give the
    font family name to `-xftfn' option, there is not a magic format like X11
    font. You can specify other characteristics of the freetype font using other
    related options.

-----

Q:  When I want to use Chinese (or Korea/Japanese) encoding and font, executing
    command `mrxvt -km gb -mfont fontname' is not working! For example, it
    complains that -km is a bad option.

A:  Most probably, you have not enabled gb/big5/kanji/korea options when you
    configure the mrxvt. These options are turned off by default. Reconfigure
    mrxvt to enable these options and rebuild it like the following:

	$ ./configure --enable-cjk --enable-whatever-other-options
	$ make
	$ su
	$ make install

-----

Q:  I have ~/.Xdefaults and ~/.mrxvtrc, which one is the first to be read?

A:  ~/.mrxvtrc will be the one to be read, and ~/.Xdefaults is ignored. Mrxvt
    tries to read three resources files in sequence: ~/.mrxvtrc, ~/.Xdefaults
    and ~/.Xresources. If either one is successfully opened, the rest are
    ignored.

    Very soon the ~/.Xdefaults and ~/.Xresources files will not be used by
    mrxvt, and we recomend you call your config file ~/.mrxvtrc.

-----

Q:  How do I input Chinese (or Korea/Japanese) in mrxvt?

A:  First of all, you need to to enable the language options for
    Chinese/Korea/Japanese as the above question when you configure mrxvt. You
    also needs to enable the XIM option (--enable-xim).

    Then make sure you have correctly setup and started the XIM server, like
    SCIM, Chinput, fcitx, etc. 

    Next, set the correct locale for mrxvt. You only need to set the environment
    variable LC_CTYPE. But after you set it, make sure that the environment
    variable LC_ALL is not set.

    Finally, set the correct X resources in ~/.mrxvtrc file as the followling.
    Remember the value of inputMethod is case sensitive.

	mrxvt*multichar_encoding: GB
	mrxvt*inputMethod:        SCIM

-----

Q:  I execute mrxvt with CJK encoding and X11 fonts. But sometimes CJK
    characters are not display completely, or there are some extra pixels left
    after the CJK characters.

A:  This is a known issue for displaying CJK characters using X11 fonts. Mrxvt
    requires that the width of each CJK character (mfont) be twice as the width
    of each english character (font). If this condition is not met, mrxvt may
    display CJK characters with some problems. For example, if you choose 6x12
    as the font, and the SimSun font as the mfont, but the width of the SimSun
    font is 13, you will get in trouble. In particular, let us assume that you
    want to display a string "XXabc", where "XX" represents a single Chinese
    character. With SimSun font, the width of "XX" is 13, but mrxvt thinks it is
    12 (= 2 * 6)!!! Thus, when "abc" is displayed, two pixels of "XX" will be
    overwritten by "a"! There are two solutions to this issue. One is to
    carefully choose the font and mfont such that the width of mfont is twice of
    the font. The other is to use freetype font, where we have a special
    handling to avoid this problem.

-----

Q:  Does mrxvt support UTF-8 locale/encoding method?

A:  Not now. This is a planned work and hopefully will be supported in the next
    development branch (0.5.x).

-----

Q:  I use UTF-8 as default encoding method, but mrxvt does not support it. So
    can I start mrxvt with other encoding method, e.g., zh_CN.GB2312 without
    changing the default encoding method?

A:  No problem! You can start mrxvt like the following if you use bash/ksh/sh:

	LC_CTYPE=zh_CN.GB2312 mrxvt &

    If you use csh, try the following

	env LC_CTYPE=zh_CN.GB2312 mrxvt &

-----

Q:  I run mrxvt with `-o 25' option, but the window is not translucent!

A:  First make sure your X server support translucent, such as Xorg 6.8.1. Next,
    make sure the translucent extension is enabled in the X server. You can use
    command `xdpyinfo' to check whether the Composite extension is in the
    extension list. Then make sure you have run the program `xcompmgr' to enable
    translucent.

-----

Q:  When I run mrxvt in transparent mode or background image mode, can I make
    the background a little darker?

A:  Yes, you can. Just tint the background to black using the --shading and
    --tintColor options:

	Mrxvt.transparent:		True
	Mrxvt.transparentScrollbar:	True
	Mrxvt.transparentTabbar:	True
	Mrxvt.tintColor:		#000000
	Mrxvt.shading:		85
    
    You can use Ctrl+Shift+J / K to change the shading amount when mrxvt is
    running.

-----

Q:  Why the tinting does not work after I set the tint color in command line or
    ~/.mrxvtrc?

A:  First, tinting only works for user supplied background image or transparent
    background. Secondly, you have to set the shade option as well.

-----

Q:  I am tired with the current tinting color, can I change the color without
    restart mrxvt?

A:  Yes, you can. Control-RightClick on the terminal window. Select the
    "Transparency / Tint Background / <favourite color>" menu options.
    Alternately you can run use an escape sequence as follows:

	$ echo "\e]66;red\a"

    You can have macros / menu entries to do the same. See also the program
    settitle.c and mrxvtset.pl supplied with the source, and mrxvt_seq.txt.bz2
    for a complete list of escape sequences supplied by mrxvt.

-----

Q:  How to start mrxvt with multiple tabs initially?

A   You can set the number of tabs you want in ~/.mrxvtrc as the following
    example:

	mrxvt.initProfileList:  0,0,0

    Alternatively, you can set it using command line option -ip.

-----

Q:  How do I let each tab execute different applications when mrxvt starts?

A:  You can set command for each tab in ~/.mrxvtrc as the following example:

	Mrxvt.profile1.background:	#000040
	Mrxvt.profile1.command:	!mc
	Mrxvt.profile1.tabTitle:	"Midnight Commander"

	Mrxvt.profile2.command: 	telnet www.mitbbs.com
	Mrxvt.initProfileList:  	0,1,2

    This will open three tabs on startup containing the shell, mc and telnet.
    See /etc/mrxvt/mrxvtrc.sample for a more complete example.

    If you only want to change the tab command in other tabs (and not the
    background / saveLines etc), then you can use the NewTab macro as follows:

	Mrxvt.macro.Ctrl+Shift+F1:	NewTab "man mrxvt" man mrxvt
	Mrxvt.macro.Ctrl+Shift+b:	NewTab bash
	Mrxvt.macro.Ctrl+Shift+v:	NewTab "Vim" !vim

-----

Q:  How to change the title of a tab after mrxvt starts?

A:  You can select some text in the mrxvt terminal and press the hot key
    combinations: Ctrl+Shift+s, Shift+Delete or middle click with the mouse. The
    tab title will be changed to the selected text. Currently, the selected text
    must be in the same mrxvt terminal.

    You can also change the tab title through escape sequence.
    
	$ echo -ne "\e]62;New tab title\a"

    Alternately use compile settitle.c, or use the perl script mrxvtset.pl.
-----

Q:  My Control-Left / Right and Home / End keys do not work properly in some
    applications.

A:  To get your modified cursor keys working properly in Vim, just upgrade to
    Vim 7. The new behaviour in mrxvt is designed to work "out of the box" with
    Vim 7.

    To get your modified cursor keys working in bash / readline based
    applications put the following in your ~/.inputrc:

	# Cursor movement for mrxvt-0.5.x / xterm
	"\e[1;5C": forward-word
	"\e[1;5D": backward-word

	"\e[7~": beginning-of-line
	"\e[8~": end-of-line

    As of 0.5.0 the escape sequences mrxvt produces for modified cursor keys is
    the same as those produced by Xterm. If you do not like this behaviour,
    undefine the XTERM_KEYS macro in src/feature.h.

    Alternately you can use the macro feature of mrxvt to make the cursor keys
    produce the string that is expected by your application (explained later on
    in this FAQ)

-----

Q:  How do I set the tab title to the current command?

A:  Bash users add the following to your ~/.bashrc:

    # Change the window title of X terminals 
    if [[ $TERM =~ "xterm|rxvt" ]]; then
	# set -o functrace
	if [[ -n $MRXVT_TABTITLE ]]; then
	    trap 'echo -ne "\e]61;${BASH_COMMAND//\"/} (${PWD/$HOME/~})\a"' DEBUG
	else
	    trap 'echo -ne "\e]0;${BASH_COMMAND//\"/} (${PWD/$HOME/~})\a"' DEBUG
	fi
    fi

    Alternately (for tcsh), if you want your current command displayed in
    your tab title, add the following lines to your ~/.tcshrc

	# Change the window title of X terminals 
	set backslash_quote
	if( $?DISPLAY && $?TERM ) then
	    if( $?MRXVT_TABTITLE ) then
		# Set the tab title for mrxvt
		alias jobcmd 'echo -n \\\\033]61\;\!#:q  \($cwd\) \\\\007 > /dev/stderr'
		alias cwdcmd 'echo -n \\\\033]61\;\!#:q  \($cwd\) \\\\007 > /dev/stderr'
	    else
		# Set the window title for xterm
		alias jobcmd 'echo -n \\\\033]0\;\!#:q  \($cwd\) \\\\007 > /dev/stderr'
		alias cwdcmd 'echo -n \\\\033]0\;\!#:q  \($cwd\) \\\\007 > /dev/stderr'
	    endif
	endif
	unset backslash_quote

-----

Q:  How to dynamically change the title of the mrxvt window so that it is the
    same as the current active tab when I switch to a new tab?

A:  You can set X resources `syncTabTitle' to true or run mrxvt with -stt
    option.

-----

Q:  Why cannot I close a tab? The close button is grey!

A:  Most probably, you have enabled the protectSecondary resource and you are
    running an application, like vi and mc that is using the secondary screen in
    the current tab. Mrxvt considers this tab being protected and disallows you
    to close it. To close the tab, please exit the application first. To disable
    this option, you can modify the ~/.mrxvtrc file or run mrxvt with +ps
    option.

-----

Q:  Is there any keyboard combination to manipulate the tabs?

A:  Yes. Please read the man page. Mrxvt currently support the default
    gnome-terminal and konsole combinations. If you prefer your own
    combinations, you can define them in the configuration file as well. Please
    refer to the man page for details.

-----

Q:  Mrxvt default hotkey ctrl+shift+minus conflicts with Emacs. How can I
    disable this mrxvt default hotkey?

A:  Put the following two lines into your mrxvt configuration file, usually
    ~/.mrxvtrc:

	Mrxvt.macro.Ctrl+Shift+underscore:	Dummy
	Mrxvt.macro.Ctrl+Shift+plus:	Dummy

-----

Q:  How to enable freetype font, or, say the XFT support?

A:  You can either use the -xft command line option or the `xft' X resource
    option in the ~/.mrxvtrc file. Check the sample configuration file
    doc/xdefaults-sample.txt and man page for more details.

-----

Q:  After I use freetype font, the text rendering speed seems to slow down a
    lot! How to improve the speed?

A:  Yes, this is a known problem with XFT support. One way to fix it is to
    disable antialias (and autohinting or hinting). But it may make the font
    look ugly. If you do not like it, disable XFT support and use X11 font
    instead.

-----

Q:  After I use freetype font, the line space seems too large. Is there any way
    to narrow down the line space?

A:  This is probably because you have enabled the multichar support when you
    configure mrxvt. In this case, mrxvt loads two fonts, one the normal font,
    and one the multichar font. But due to some problems with XFT library, the
    font loading function does not follow our instructions to load the two fonts
    at specified size. Thus, the size of two fonts are often different. To get a
    better rendering result, mrxvt picks the large size, which is usually the
    multichar font. But normal text are usually displayed using normal font at a
    smaller size. So it appears that the line space is too large. To solve this
    problem, you can specify the multichar font be the same as the normal font
    since mrxvt 0.3.9, or specify the -xftnfm option to not to load multichar
    font, or build mrxvt without multichar support.

-----

Q:  Can I change the color of tab background and text?

A:  Yes you can. You can use command line option to set foreground and
    background color of active or inactive tabs like this:

	$ mrxvt -tabfg blue -tabbg grey -itabfg black -itabbg dark
	
    Or you can set them in ~/.mrxvtrc like this:

	! text color of active tab
	Mrxvt.tabForeground:  blue
	! background color of active tab
	Mrxvt.tabBackground:  grey
	! text color of inactive tab
	Mrxvt.itabForeground: black
	! background color of inactive tab
	Mrxvt.itabBackground: dark

    Or you can use an escape sequence to change it dynamically (see the man
    page).

-----

Q:  I notice that sometimes there is a dash-dot frame around the title of
    inactive tabs. What has happened? Is it a bug?

A:  This is a new feature introduced from 0.3.9. This indicates that something
    has happened in the inactive tab, and you probably should check it.

    You can try using the -htb option to ensure that inactive tabs are
    highlighted only when a bell is sounded by that tab.

-----

Q:  I notice that the inactive tab is highlighted by the dash-dot frame, but
    after I switch to it, I see nothing happened. What is wrong with it?

A:  This is because you might be running some programs in the inactive tab, like
    pine. These programs have some features to refresh the screen periodically,
    though the content of the screen has not changed. Mrxvt detects the refresh
    and thinks the screen has changed. It is difficult to tell whether the
    content of the screen is truly changed in this case.

    You can try using the -htb option to ensure that inactive tabs are
    highlighted only when a bell is sounded by that tab.

-----

Q:  I like to use command line options to create a new tab in the current mrxvt
    terminal and execute some commands. For example, if I run command `mrxvt
    --new-tab -e pine' in a mrxvt terminal, the current terminal will open a new
    tab and run pine in it. Can you implement it for me?

A:  Unfortunately, no. This is a dangerous feature that can cause serious
    security problems. For details about the security problem, consult to the
    following link:

	http://www.digitaldefense.net/labs/papers/Termulation.txt

    As of mrxvt-0.5.0, you can have macros (or menu items) that open a new tab
    and execute your favourite program in it (but you have to press a key or
    select from a menu in your mrxvt window). Multiple window support is planned
    in the near future, and maybe then something will be done about this issue
    after multiple window support is implemented.

-----

Q:  I like to use context menu when I right click in the terminal window. For
    example, to copy/paste text. Can you support it?

A:  YES! As of mrxvt-0.5.0 popup menus are supported. By default control right
    click on the terminal for a (customizable) menu. Control left click (or
    right click on the tabbar) for a list of all tabs. You must compile mrxvt
    with --enable-menubar.

-----

Q:  Will you rewrite mrxvt using C++? The object oriented feature of C++ can
    make mrxvt much modular.

A:  No! Because I do not like C++. C does not mean to be less modular or
    non-object oriented. It depends on how you do it. If you really like a C++
    implementation of rxvt, check out the rxvt-unicode project.

-----

Q:  How do I know which mrxvt version I'm using?

A:  The version number is displayed with the usage (-h). For rxvt version
    2.14 and later, the escape sequence `ESC[8n' sets the window title to the
    version number.

-----

Q:  Mouse cut/paste suddenly no longer works.

A:  Make sure that mouse reporting is actually turned off since killing some
    editors prematurely may leave the mouse in mouse report mode.  I've heard
    that tcsh may use mouse reporting unless it otherwise specified. A quick
    check is to see if cut/paste works when the Alt or Shift keys are depressed.
    See doc/refer.txt

-----

Q:  What's with this bold/blink stuff? I can never get blinking text!

A:  It is not possible, and likely will never be, for mrxvt to have actual
    blinking text. Instead (if mrxvt was compiled without NO_BOLDCOLOR),
    bold/blink attributes are used to set high-intensity foreground or
    background colors ... like what you'd see on a PC video adapter.  There are
    programs, notably John Davis' SLang-based ones
    ftp://space.mit.edu/pub/davis, that use bold/blink attributes to permit 16
    colors.

	color0-7	are the low-intensity colors.
	color8-15	are the corresponding high-intensity colors.

    A side issue of this bold/blink stuff is the question of how the normal
    default foreground/background colors are to be treated.  If the default
    foreground/background match one of the low-intensity colors (color0-7), the
    bold/blink attribute will invoke the appropriate high-intensity color
    (color8-15).

    In the case that the default foreground doesn't match one of the
    low-intensity colors, the bold attribute will use an `overstrike' to
    simulate a bold font. But note this leaves pixel-droppings and so, rather
    than wasting an inordinate amounts of energy to fix it, its use is simply
    deprecated.

    In the case that the default background doesn't match one of the
    low-intensity colors, the blink attribute is simply ignored (rather than
    representing it as bold as xterm does).

-----

Q:  I don't like the screen colors.  How do I change them?

A:  You can change the screen colors at run-time using ~/.mrxvtrc resources (or
    as long-options) ... see the man-page.

    Here are values that are supposed to resemble a VGA screen, including the
    murky brown that passes for low-intensity yellow:

	Mrxvt.color0:   #000000
	Mrxvt.color1:   #A80000
	Mrxvt.color2:   #00A800
	Mrxvt.color3:   #A8A800
	Mrxvt.color4:   #0000A8
	Mrxvt.color5:   #A800A8
	Mrxvt.color6:   #00A8A8
	Mrxvt.color7:   #A8A8A8

	Mrxvt.color8:   #000054
	Mrxvt.color9:   #FF0054
	Mrxvt.color10:  #00FF54
	Mrxvt.color11:  #FFFF54
	Mrxvt.color12:  #0000FF
	Mrxvt.color13:  #FF00FF
	Mrxvt.color14:  #00FFFF
	Mrxvt.color15:  #FFFFFF

-----

Q:  What's with the strange Backspace/Delete key behaviour?

A:  Assuming that the physical Backspace key corresponds to the BackSpace keysym
    (not likely for Linux ... see the following question) there are two standard
    values that can be used for Backspace: ^H and ^?.

    Mrxvt tries to inherit the current stty settings and uses the value of
    `erase' to guess the value for backspace.  If mrxvt wasn't started from a
    terminal (say, from a menu or by remote shell), then the system value of
    `erase', which corresponds to CERASE in <termios.h>, will be used (which may
    not be the same as your stty setting).

    For starting a new mrxvt:

	use Backspace = ^H
	$ stty erase ^H
	$ mrxvt
	or
	$ mrxvt --backspacekey ^H -e bash

	use Backspace = ^?
	$ stty erase ^?
	$ mrxvt
	$ mrxvt --backspacekey ^? -e bash

    NB: generate either value with BackSpace and Ctrl/Shift-BackSpace. Toggle
	with "ESC[36h" / "ESC[36l" as documented in "doc/refer.txt"

    For an existing mrxvt:
	use Backspace = ^H
	    $ stty erase ^H
	    $ echo -n "^[[36h"

	use Backspace = ^?
	    $ stty erase ^?
	    $ echo -n "^[[36l"

    This helps satisfy some of the Backspace discrepancies that occur, but if
    you use Backspace = ^?, make sure that the termcap/terminfo value properly
    reflects that.

    The Delete key (which one would expect to emit ^?) is a another casualty of
    the ill-defined Backspace problem.  To avoid confusion between the Backspace
    and Delete keys, the Delete key has been assigned an escape sequence to
    match the vt100 for Execute (ESC[3~) and is in the supplied
    termcap/terminfo.

    Some other Backspace problems:
	some editors use termcap/terminfo,
	some editors (vim I'm told) expect Backspace = ^H,
	GNU Emacs (and Emacs-like editors) use ^H for help.

    Perhaps someday this will all be resolved in a consistent manner ... and
    maybe xterm will have Home/End values too!

-----

Q:  Why doesn't the Backspace key work on my Linux machine?

A:  The XFree86 server has a notorious problem of mapping the Backspace key as
    Delete in order to match the Linux console.

    The correct way to fix this:

    0 - Complain to your Linux distributer and the XFree86 team, maybe they'll
	fix it.

    1 - Use xmodmap to correct the Backspace mapping

	! ~/.Xmodmap

	! a correctly-mapped BackSpace
	keycode 22 = BackSpace

	*** Make sure the keycode above matches the physical Backspace key on
	your machine!! (use xev) ***

    This will also fix the BackSpace problem with Motif applications, such as
    ``why doesn't Backspace work for Netscape?''

    Finally, you can also remap the mrxvt key-binding at run-time (next
    question).

-----

Q:  I don't like the key-bindings.  How do I change them?

A:  You can use the "macro" feature of mrxvt (available from version 0.5.0
    onwards). See the man page for details. For instance, if you want the
    application keypad keys to work like the regular cursor / home / end keys,
    then you can use something like:

	Mrxvt.macro.KP_Left:	Str \eOD
	Mrxvt.macro.KP_Right:	Str \eOC
	Mrxvt.macro.KP_Up:	Str \eOA
	Mrxvt.macro.KP_Down:	Str \eOB

	Mrxvt.macro.KP_Prior:	Str \e[5~
	Mrxvt.macro.KP_Next:	Str \e[6~
	Mrxvt.macro.KP_Home:	Str \e[7~
	Mrxvt.macro.KP_End:	Str \e[8~

	Mrxvt.macro.KP_Insert:	Str \e[2~
	Mrxvt.macro.KP_Delete:	Str \e[3~

    You can also use the macro feature to correct the notorious backspace
    problem, but it is better you fix that by complaining to your Linux vendor
    :).

-----

Q:  I'm using keyboard model XXX that has extra Prior/Next/Insert keys.  How do
    I make use of them?  For example, the Sun Keyboard type 4 has the following
    mappings that mrxvt doesn't recognize.

	KP_Insert == Insert
	F22 == Print
	F27 == Home
	F29 == Prior
	F33 == End
	F35 == Next

A:  Rather than have mrxvt try to accomodate all the various possible keyboard
    mappings, it is better to use `xmodmap' to remap the keys as required for
    your particular machine, or the use "macro" feature of mrxvt in your
    ~/.mrxvtrc.

-----

Q:  How do I distinguish if I'm running mrxvt or a regular xterm? I need this to
    decide about setting colors etc.

A:  mrxvt always exports the variable "COLORTERM", so you can check and see if
    that is set. It also exports the variable "MRXVT_TABTITLE". Note that
    several programs, JED, slrn, Midnight Commander automatically check this
    variable to decide whether or not to use color.

-----

Q:  How do I set the correct, full IP address for the DISPLAY variable?

A:  If you've compiled mrxvt with DISPLAY_IS_IP then it is possible to use the
    following shell script snippets to correctly set the display.  If your
    version of mrxvt wasn't also compiled with ESCZ_ANSWER (as assumed in these
    snippets) then the COLORTERM variable can be used to distinguish mrxvt from
    a regular xterm.

    Courtesy of Chuck Blake <cblake@BBN.COM> with the following shell script
    snippets:

	# Bourne/Korn/POSIX family of shells:
	# assume an xterm if we don't know
	[ ${TERM:-foo} = foo ] && TERM=xterm
	if [ ${TERM:-foo} = xterm ]; then
	    # see if enhanced mrxvt or not
	    stty -icanon -echo min 0 time 15
	    echo -n '^[Z'
	    read term_id
	    stty icanon echo
	    if [ ""${term_id} = '^[[?1;2C' -a ${DISPLAY:-foo} = foo ]; then
		# query the mrxvt we are in for the DISPLAY string
		echo -n '^[[7n'
		# set it in our local shell
		read DISPLAY
	    fi
	fi

    csh/tcsh family of shells:

	# if term is unset, we are probably in an xterm
	if ( !(${?TERM}) ) then
	    TERM = xterm
	endif
	if ( ${TERM} =~ xterm ) then
	    # see if enhanced mrxvt or not
	    stty -icanon -echo min 0 time 15  
	    echo -n '^[Z'
	    set term_id=$<
	    stty icanon echo
	    if ( ""${term_id} == "^[[?1;2C" && ${?DISPLAY} == 0 ) then
		# query the mrxvt we're in for the DISPLAY string
		echo -n '^[[7n'
		# set it in our local shell
		setenv DISPLAY "$<"
	    endif
	endif

-----

Q:  Can I search the scroll back buffer?

A:  Yes! (Well sort of). The following two macros (bound to Ctrl+Shift+? and
    Ctrl+/ respectively) will save your scroll back buffer to a file and open it
    in less and vim respectively. When opened in less, you can see the same
    colors as you do on your screen. When opened in Vim, you can edit / cut &
    paste, but can't see the same colors [unless you write your own syntax file,
    and use the "conceal" patch by Vince Negri].

	Mrxvt.macro.Primary+Ctrl+Shift+question: PrintScreen -ps perl -e '$_=join("",<STDIN>); s/\n+$/\n/g; print' > /tmp/scrollback
	Mrxvt.macro.Primary+Add+Ctrl+Shift+question: NewTab "(Search)" /bin/sh -c "less -ifLR +G /tmp/scrollback; rm /tmp/scrollback"

	Mrxvt.macro.Primary+Ctrl+slash: PrintScreen -s perl -e '$_=join("",<STDIN>); s/\n+$/\n/g; print' > /tmp/scrollback
	Mrxvt.macro.Primary+Add+Ctrl+slash: NewTab "(Search)" /bin/sh -c 'view +"syn off|set nospell notitle |normal G" /tmp/scrollback; rm /tmp/scrollback'

    NOTE: If you use Vim-6.4, you probably want to remove the "nospell" Vim
    option. Opening in Vim is especially useful if Vim is compiled with X
    support. In this case, Vim will synchronize your visual selection to the X
    clipboard buffer, and you can paste it into other tabs using Ctrl+Shift+v.
    
    The perl command just strips the trailing new lines from your buffer. If you
    want them, replace it with "cat". Remember that once you view the scroll
    back buffer in less / vim, new output in the original tab will not be
    visible in less / vim. Also the scroll back buffer is in the file
    /tmp/scrollback. If you are working on some highly secret government
    project, and don't want any one else to be able to see your scroll back
    buffer, umask it correctly, or replace /tmp/scrollback to some private
    location in your home directory.

-----

Q:  Where is the CVS repository of mrxvt?

A:  From mrxvt-0.5.1, we have abandoned CVS, and now exclusively use Subversion.
    To check out from the subversion repository use

	svn checkout https://svn.sourceforge.net/svnroot/materm/mrxvt05b

-----

Q:  I find a bug, or I would like to see a new feature in mrxvt, how to report
    it?

A:  You can go to http://sourceforge.net/projects/materm and report the bug
    using tracker system. Alternately, you can email the mrxvt developer mailing
    list at materm-devel@lists.sourceforge.net. Please use the SourceForge bug
    tracker system for feature requests, or MAJOR bugs. Report minor bugs on the
    materm-devel mailing list. If in doubt, post to the devel mailing list, and
    you might be asked to file a feature request / bug report in addition.

    Please describe the bug as clearly as possible, so that we can replicate it.
    We can not (and WILL not) fix bugs we can not reproduce! Be sure to test if
    your bug is still present in the current version (from Subversion) of mrxvt.
    If the bug is still present in the subversion repository, then please report
    the system you are running mrxvt on, AND steps to reproduce the bug.

    Again, we can and will NOT fix bugs we can not reproduce. Tell us how to
    reproduce the bug, or your report will get (silently) ignored!

--

vim: set ts=8 tw=80:
EOF
