Do not link rxvtc to ev_cpp.o, it does not use libev.
[dana/urxvt.git] / README.FAQ
index 32be545..80460ca 100644 (file)
@@ -5,6 +5,17 @@ RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS
     "#rxvt-unicode" has some rxvt-unicode enthusiasts that might be
     interested in learning about new and exciting problems (but not FAQs :).
 
+   I use Gentoo, and I have a problem...
+    There are three big problems with Gentoo Linux: first of all, most if
+    not all Gentoo systems are completely broken (missing or mismatched
+    header files, broken compiler etc. are just the tip of the iceberg);
+    secondly, the Gentoo maintainer thinks it is a good idea to add broken
+    patches to the code; and lastly, it should be called Gentoo GNU/Linux.
+
+    For these reasons, it is impossible to support rxvt-unicode on Gentoo.
+    Problems appearing on Gentoo systems will usually simply be ignored
+    unless they can be reproduced on non-Gentoo systems.
+
    Does it support tabs, can I have a tabbed rxvt-unicode?
     Beginning with version 7.3, there is a perl extension that implements a
     simple tabbed terminal. It is installed by default, so any of these
@@ -44,7 +55,7 @@ RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS
     Try "urxvtd -f -o", which tells urxvtd to open the display, create the
     listening socket and then fork.
 
-   How can I start urxvtd automatically when I run URXVT_NAME@@c?
+   How can I start urxvtd automatically when I run urxvtc?
     If you want to start urxvtd automatically whenever you run urxvtc and
     the daemon isn't running yet, use this script:
 
@@ -92,8 +103,8 @@ RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS
 
    How do I compile the manual pages on my own?
     You need to have a recent version of perl installed as /usr/bin/perl,
-    one that comes with pod2man, pod2text and pod2html. Then go to the doc
-    subdirectory and enter "make alldoc".
+    one that comes with pod2man, pod2text and pod2xhtml (from Pod::Xhtml).
+    Then go to the doc subdirectory and enter "make alldoc".
 
    Isn't rxvt-unicode supposed to be small? Don't all those features bloat?
     I often get asked about this, and I think, no, they didn't cause extra
@@ -162,27 +173,27 @@ RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS
 
        libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x00002aaaaabc3000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00002aaaaada2000)
-       libc.so.6 => /lib/libc.so.6 (0x00002aaaaaeb0000)     
-       libdl.so.2 => /lib/libdl.so.2 (0x00002aaaab0ee000)   
-       /lib64/ld-linux-x86-64.so.2 (0x00002aaaaaaab000)     
+       libc.so.6 => /lib/libc.so.6 (0x00002aaaaaeb0000)
+       libdl.so.2 => /lib/libdl.so.2 (0x00002aaaab0ee000)
+       /lib64/ld-linux-x86-64.so.2 (0x00002aaaaaaab000)
 
     No large bloated libraries (of course, none were linked in statically),
     except maybe libX11 :)
 
   Rendering, Font & Look and Feel Issues
    I can't get transparency working, what am I doing wrong?
-    First of all, transparency isn't officially supported in rxvt-unicode,
-    so you are mostly on your own. Do not bug the author about it (but you
-    may bug everybody else). Also, if you can't get it working consider it a
-    rite of passage: ... and you failed.
+    First of all, please address all transparency related issues to Sasha
+    Vasko at sasha@aftercode.net and do not bug the author about it. Also,
+    if you can't get it working consider it a rite of passage: ... and you
+    failed.
 
     Here are four ways to get transparency. Do read the manpage and option
     descriptions for the programs mentioned and rxvt-unicode. Really, do it!
 
-    1. Use inheritPixmap:
+    1. Use transparent mode:
 
        Esetroot wallpaper.jpg
-       urxvt -ip -tint red -sh 40
+       urxvt -tr -tint red -sh 40
 
     That works. If you think it doesn't, you lack transparency and tinting
     support, or you are unable to read.
@@ -191,11 +202,11 @@ RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS
     to use effects other than tinting and shading: Just shade/tint/whatever
     your picture with gimp or any other tool:
 
-       convert wallpaper.jpg -blur 20x20 -modulate 30 background.xpm
-       urxvt -pixmap background.xpm -pe automove-background
+       convert wallpaper.jpg -blur 20x20 -modulate 30 background.jpg
+       urxvt -pixmap "background.jpg;:root"
 
-    That works. If you think it doesn't, you lack XPM and Perl support, or
-    you are unable to read.
+    That works. If you think it doesn't, you lack AfterImage support, or you
+    are unable to read.
 
     3. Use an ARGB visual:
 
@@ -299,8 +310,8 @@ RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS
     standard foreground colour.
 
     For the standard background colour, blinking will actually make the text
-    blink when compiled with "--enable-blinking". with standard colours.
-    Without "--enable-blinking", the blink attribute will be ignored.
+    blink when compiled with "--enable-text-blink". Without
+    "--enable-text-blink", the blink attribute will be ignored.
 
     On ANSI colours, bold/blink attributes are used to set high-intensity
     foreground/background colors.
@@ -411,6 +422,12 @@ RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS
     Until then, you might get away with switching fonts at runtime (see "Can
     I switch the fonts at runtime?" later in this document).
 
+   How can I make mplayer display video correctly?
+    We are working on it, in the meantime, as a workaround, use something
+    like:
+
+       urxvt -b 600 -geometry 20x1 -e sh -c 'mplayer -wid $WINDOWID file...'
+
   Keyboard, Mouse & User Interaction
    The new selection selects pieces that are too big, how can I select single words?
     If you want to select e.g. alphanumeric words, you can use the following
@@ -426,7 +443,7 @@ RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS
 
        URxvt.selection.pattern-0: ([^"&'()*,;<=>?@[\\\\]^`{|})]+)
 
-    Please also note that the *LeftClick Shift-LeftClik* combination also
+    Please also note that the *LeftClick Shift-LeftClick* combination also
     selects words like the old code.
 
    I don't like the new selection/popups/hotkeys/perl, how do I change/disable it?
@@ -483,6 +500,10 @@ RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS
     In this case either do not specify a preeditStyle or specify more than
     one pre-edit style, such as OverTheSpot,Root,None.
 
+    If it still doesn't work, then maybe your input method doesn't support
+    compose sequences - to fall back to the built-in one, make sure you
+    don't specify an input method via "-im" or "XMODIFIERS".
+
    I cannot type "Ctrl-Shift-2" to get an ASCII NUL character due to ISO 14755
     Either try "Ctrl-2" alone (it often is mapped to ASCII NUL even on
     international keyboards) or simply use ISO 14755 support to your
@@ -503,7 +524,7 @@ RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS
     two standard values that can be used for Backspace: "^H" and "^?".
 
     Historically, either value is correct, but rxvt-unicode adopts the
-    debian policy of using "^?" when unsure, because it's the one only only
+    debian policy of using "^?" when unsure, because it's the one and only
     correct choice :).
 
     Rxvt-unicode tries to inherit the current stty settings and uses the
@@ -728,7 +749,7 @@ RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS
        IRC*keysym.M-C-1:       command:\033]710;suxuseuro\007\033]711;suxuseuro\007
        IRC*keysym.M-C-2:       command:\033]710;9x15bold\007\033]711;9x15bold\007
 
-    "Alt-Shift-1" and "Alt-Shift-2" switch between two different font sizes.
+    "Alt-Ctrl-1" and "Alt-Ctrl-2" switch between two different font sizes.
     "suxuseuro" allows me to keep an eye (and actually read) stuff while
     keeping a very small window. If somebody pastes something complicated
     (e.g. japanese), I temporarily switch to a larger font.
@@ -774,14 +795,14 @@ RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS
     arises).
 
     The correct solution for this problem is to install the terminfo, this
-    can be done like this (with ncurses' infocmp and works as user and
-    admin):
+    can be done by simply installing rxvt-unicode on the remote system as
+    well (in case you have a nice package manager ready), or you can install
+    the terminfo database manually like this (with ncurses infocmp. works as
+    user and root):
 
        REMOTE=remotesystem.domain
        infocmp rxvt-unicode | ssh $REMOTE "mkdir -p .terminfo && cat >/tmp/ti && tic /tmp/ti"
 
-    ... or by installing rxvt-unicode normally on the remote system,
-
     One some systems you might need to set $TERMINFO to the full path of
     $HOME/.terminfo for this to work.
 
@@ -800,6 +821,11 @@ RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS
     If you don't plan to use rxvt (quite common...) you could also replace
     the rxvt terminfo file with the rxvt-unicode one and use "TERM=rxvt".
 
+   nano fails with "Error opening terminal: rxvt-unicode"
+    This exceptionally confusing and useless error message is printed by
+    nano when it can't find the terminfo database. Nothing is wrong with
+    your terminal, read the previous answer for a solution.
+
    "tic" outputs some error when compiling the terminfo entry.
     Most likely it's the empty definition for "enacs=". Just replace it by
     "enacs=\E[0@" and try again.
@@ -819,28 +845,8 @@ RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS
 
        infocmp -C rxvt-unicode
 
-    Or you could use this termcap entry, generated by the command above:
-
-       rxvt-unicode|rxvt-unicode terminal (X Window System):\
-               :am:bw:eo:km:mi:ms:xn:xo:\
-               :co#80:it#8:li#24:lm#0:\
-               :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
-               :K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:LE=\E[%dD:\
-               :RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:ae=\E(B:al=\E[L:\
-               :as=\E(0:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:\
-               :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:\
-               :dl=\E[M:do=^J:ec=\E[%dX:ei=\E[4l:ho=\E[H:\
-               :i1=\E[?47l\E=\E[?1l:ic=\E[@:im=\E[4h:\
-               :is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l:\
-               :k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\
-               :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:kD=\E[3~:\
-               :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:kd=\EOB:ke=\E[?1l\E>:\
-               :kh=\E[7~:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:\
-               :mb=\E[5m:md=\E[1m:me=\E[m\017:mr=\E[7m:nd=\E[C:rc=\E8:\
-               :sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\
-               :te=\E[r\E[?1049l:ti=\E[?1049h:ue=\E[24m:up=\E[A:\
-               :us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:\
-               :vs=\E[?25h:
+    Or you could use the termcap entry in doc/etc/rxvt-unicode.termcap,
+    generated by the command above.
 
    Why does "ls" no longer have coloured output?
     The "ls" in the GNU coreutils unfortunately doesn't use terminfo to
@@ -882,16 +888,16 @@ RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS
     is subtly garbled, then you should check your locale settings.
 
     Rxvt-unicode must be started with the same "LC_CTYPE" setting as the
-    programs. Often rxvt-unicode is started in the "C" locale, while the
-    login script running within the rxvt-unicode window changes the locale
-    to something else, e.g. "en_GB.UTF-8". Needless to say, this is not
-    going to work.
+    programs running in it. Often rxvt-unicode is started in the "C" locale,
+    while the login script running within the rxvt-unicode window changes
+    the locale to something else, e.g. "en_GB.UTF-8". Needless to say, this
+    is not going to work, and is the most common cause for problems.
 
     The best thing is to fix your startup environment, as you will likely
     run into other problems. If nothing works you can try this in your
     .profile.
 
-      printf '\33]701;%s\007' "$LC_CTYPE"
+      printf '\33]701;%s\007' "$LC_CTYPE"   # $LANG or $LC_ALL are worth a try, too
 
     If this doesn't work, then maybe you use a "LC_CTYPE" specification not
     supported on your systems. Some systems have a "locale" command which
@@ -987,7 +993,7 @@ RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS
 
            xprop -root XIM_SERVERS
 
-    *
+
 
    My input method wants <some encoding> but I want UTF-8, what can I do?
     You can specify separate locales for the input method and the rest of
@@ -1061,13 +1067,6 @@ RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS
     main(), or things like the dynamic loader of your system, which should
     result in very little risk.
 
-   On Solaris 9, many line-drawing characters are too wide.
-    Seems to be a known bug, read
-    <http://nixdoc.net/files/forum/about34198.html>. Some people use the
-    following ugly workaround to get non-double-wide-characters working:
-
-       #define wcwidth(x) wcwidth(x) > 1 ? 1 : wcwidth(x)
-
    I am on FreeBSD and rxvt-unicode does not seem to work at all.
     Rxvt-unicode requires the symbol "__STDC_ISO_10646__" to be defined in
     your compile environment, or an implementation that implements it,
@@ -1079,7 +1078,7 @@ RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS
     wchar_t. This is, of course, completely fine with respect to standards.
 
     However, that means rxvt-unicode only works in "POSIX", "ISO-8859-1" and
-    "UTF-8" locales under FreeBSD (which all use Unicode as wchar_t.
+    "UTF-8" locales under FreeBSD (which all use Unicode as wchar_t).
 
     "__STDC_ISO_10646__" is the only sane way to support multi-language apps
     in an OS, as using a locale-dependent (and non-standardized)
@@ -1099,10 +1098,6 @@ RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS
     system libraries once and for all, instead of forcing every app to carry
     complete replacements for them :)
 
-   I use Solaris 9 and it doesn't compile/work/etc.
-    Try the diff in doc/solaris9.patch as a base. It fixes the worst
-    problems with "wcwidth" and a compile problem.
-
    How can I use rxvt-unicode under cygwin?
     rxvt-unicode should compile and run out of the box on cygwin, using the
     X11 libraries that come with cygwin. libW11 emulation is no longer
@@ -1115,3 +1110,20 @@ RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS
     multi-byte encodings (you might try "LC_CTYPE=C-UTF-8"), so you are
     likely limited to 8-bit encodings.
 
+   Character widths are not correct.
+    urxvt uses the system wcwidth function to know the information about the
+    width of characters, so on systems with incorrect locale data you will
+    likely get bad results. Two notorious examples are Solaris 9, where
+    single-width characters like U+2514 are reported as double-width, and
+    Darwin 8, where combining chars are reported having width 1.
+
+    The solution is to upgrade your system or switch to a better one. A
+    possibly working workaround is to use a wcwidth implementation like
+
+    http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c
+
+   I want 256 colors
+    Are you sure you need 256 colors? 88 colors should be enough for most
+    purposes. If you really need more, there is an unsupported patch for it
+    in the doc directory, but please do not ask for it to be applied.
+