ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/doc/rxvt.7.pod
(Generate patch)

Comparing rxvt-unicode/doc/rxvt.7.pod (file contents):
Revision 1.110 by root, Tue Jan 31 21:10:44 2006 UTC vs.
Revision 1.123 by root, Sat Dec 16 03:48:49 2006 UTC

17 17
18This document contains the FAQ, the RXVT TECHNICAL REFERENCE documenting 18This document contains the FAQ, the RXVT TECHNICAL REFERENCE documenting
19all escape sequences, and other background information. 19all escape sequences, and other background information.
20 20
21The newest version of this document is also available on the World Wide Web at 21The newest version of this document is also available on the World Wide Web at
22L<http://cvs.schmorp.de/browse/*checkout*/rxvt-unicode/doc/rxvt.7.html>. 22L<http://cvs.schmorp.de/browse/rxvt-unicode/doc/rxvt.7.html>.
23 23
24=head1 RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS 24=head1 RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS
25 25
26 26
27=head2 Meta, Features & Commandline Issues 27=head2 Meta, Features & Commandline Issues
73=head3 How can I start @@URXVT_NAME@@d in a race-free way? 73=head3 How can I start @@URXVT_NAME@@d in a race-free way?
74 74
75Try C<@@URXVT_NAME@@d -f -o>, which tells @@URXVT_NAME@@d to open the 75Try C<@@URXVT_NAME@@d -f -o>, which tells @@URXVT_NAME@@d to open the
76display, create the listening socket and then fork. 76display, create the listening socket and then fork.
77 77
78=head3 How can I start @@URXVT_NAME@@d automatically when I run @@URXVT_NAME@@c?
79
80If you want to start @@URXVT_NAME@@d automatically whenever you run
81@@URXVT_NAME@@c and the daemon isn't running yet, use this script:
82
83 #!/bin/sh
84 @@URXVT_NAME@@c "$@"
85 if [ $? -eq 2 ]; then
86 @@URXVT_NAME@@d -q -o -f
87 @@URXVT_NAME@@c "$@"
88 fi
89
90This tries to create a new terminal, and if fails with exit status 2,
91meaning it couldn't connect to the daemon, it will start the daemon and
92re-run the command. Subsequent invocations of the script will re-use the
93existing daemon.
94
78=head3 How do I distinguish wether I'm running rxvt-unicode or a regular xterm? I need this to decide about setting colors etc. 95=head3 How do I distinguish whether I'm running rxvt-unicode or a regular xterm? I need this to decide about setting colors etc.
79 96
80The original rxvt and rxvt-unicode always export the variable "COLORTERM", 97The original rxvt and rxvt-unicode always export the variable "COLORTERM",
81so you can check and see if that is set. Note that several programs, JED, 98so you can check and see if that is set. Note that several programs, JED,
82slrn, Midnight Commander automatically check this variable to decide 99slrn, Midnight Commander automatically check this variable to decide
83whether or not to use color. 100whether or not to use color.
127 98398 1664 24 15695 1824 rxvt --disable-everything 144 98398 1664 24 15695 1824 rxvt --disable-everything
128 188985 9048 66616 18222 1788 urxvt --disable-everything 145 188985 9048 66616 18222 1788 urxvt --disable-everything
129 146
130When you C<--enable-everything> (which I<is> unfair, as this involves xft 147When you C<--enable-everything> (which I<is> unfair, as this involves xft
131and full locale/XIM support which are quite bloaty inside libX11 and my 148and full locale/XIM support which are quite bloaty inside libX11 and my
132libc), the two diverge, but not unreasnobaly so. 149libc), the two diverge, but not unreasonably so.
133 150
134 text data bss drs rss filename 151 text data bss drs rss filename
135 163431 2152 24 20123 2060 rxvt --enable-everything 152 163431 2152 24 20123 2060 rxvt --enable-everything
136 1035683 49680 66648 29096 3680 urxvt --enable-everything 153 1035683 49680 66648 29096 3680 urxvt --enable-everything
137 154
224 241
225 @@URXVT_NAME@@ -depth 32 -fg grey90 -bg rgba:0000/0000/4444/cccc 242 @@URXVT_NAME@@ -depth 32 -fg grey90 -bg rgba:0000/0000/4444/cccc
226 243
227This requires XFT support, and the support of your X-server. If that 244This requires XFT support, and the support of your X-server. If that
228doesn't work for you, blame Xorg and Keith Packard. ARGB visuals aren't 245doesn't work for you, blame Xorg and Keith Packard. ARGB visuals aren't
229there yet, no matter what they claim. Rxvt-Unicode contains the neccessary 246there yet, no matter what they claim. Rxvt-Unicode contains the necessary
230bugfixes and workarounds for Xft and Xlib to make it work, but that 247bugfixes and workarounds for Xft and Xlib to make it work, but that
231doesn't mean that your WM has the required kludges in place. 248doesn't mean that your WM has the required kludges in place.
232 249
2334. Use xcompmgr and let it do the job: 2504. Use xcompmgr and let it do the job:
234 251
251however: Xft fonts often draw glyphs larger than their acclaimed bounding 268however: Xft fonts often draw glyphs larger than their acclaimed bounding
252box, and rxvt-unicode has no way of detecting this (the correct way is to 269box, and rxvt-unicode has no way of detecting this (the correct way is to
253ask for the character bounding box, which unfortunately is wrong in these 270ask for the character bounding box, which unfortunately is wrong in these
254cases). 271cases).
255 272
256It's not clear (to me at least), wether this is a bug in Xft, freetype, 273It's not clear (to me at least), whether this is a bug in Xft, freetype,
257or the respective font. If you encounter this problem you might try using 274or the respective font. If you encounter this problem you might try using
258the C<-lsp> option to give the font more height. If that doesn't work, you 275the C<-lsp> option to give the font more height. If that doesn't work, you
259might be forced to use a different font. 276might be forced to use a different font.
260 277
261All of this is not a problem when using X11 core fonts, as their bounding 278All of this is not a problem when using X11 core fonts, as their bounding
285=head3 Can I switch the fonts at runtime? 302=head3 Can I switch the fonts at runtime?
286 303
287Yes, using an escape sequence. Try something like this, which has the same 304Yes, using an escape sequence. Try something like this, which has the same
288effect as using the C<-fn> switch, and takes effect immediately: 305effect as using the C<-fn> switch, and takes effect immediately:
289 306
290 printf '\e]50;%s\007' "9x15bold,xft:Kochi Gothic" 307 printf '\33]50;%s\007' "9x15bold,xft:Kochi Gothic"
291 308
292This is useful if you e.g. work primarily with japanese (and prefer a 309This is useful if you e.g. work primarily with japanese (and prefer a
293japanese font), but you have to switch to chinese temporarily, where 310japanese font), but you have to switch to chinese temporarily, where
294japanese fonts would only be in your way. 311japanese fonts would only be in your way.
295 312
297 314
298=head3 Why do italic characters look as if clipped? 315=head3 Why do italic characters look as if clipped?
299 316
300Many fonts have difficulties with italic characters and hinting. For 317Many fonts have difficulties with italic characters and hinting. For
301example, the otherwise very nicely hinted font C<xft:Bitstream Vera Sans 318example, the otherwise very nicely hinted font C<xft:Bitstream Vera Sans
302Mono> completely fails in it's italic face. A workaround might be to 319Mono> completely fails in its italic face. A workaround might be to
303enable freetype autohinting, i.e. like this: 320enable freetype autohinting, i.e. like this:
304 321
305 URxvt.italicFont: xft:Bitstream Vera Sans Mono:italic:autohint=true 322 URxvt.italicFont: xft:Bitstream Vera Sans Mono:italic:autohint=true
306 URxvt.boldItalicFont: xft:Bitstream Vera Sans Mono:bold:italic:autohint=true 323 URxvt.boldItalicFont: xft:Bitstream Vera Sans Mono:bold:italic:autohint=true
307 324
313memory and also speeds up rendering considerably. 330memory and also speeds up rendering considerably.
314 331
315=head3 Rxvt-unicode doesn't seem to anti-alias its fonts, what is wrong? 332=head3 Rxvt-unicode doesn't seem to anti-alias its fonts, what is wrong?
316 333
317Rxvt-unicode will use whatever you specify as a font. If it needs to 334Rxvt-unicode will use whatever you specify as a font. If it needs to
318fall back to it's default font search list it will prefer X11 core 335fall back to its default font search list it will prefer X11 core
319fonts, because they are small and fast, and then use Xft fonts. It has 336fonts, because they are small and fast, and then use Xft fonts. It has
320antialiasing disabled for most of them, because the author thinks they 337antialiasing disabled for most of them, because the author thinks they
321look best that way. 338look best that way.
322 339
323If you want antialiasing, you have to specify the fonts manually. 340If you want antialiasing, you have to specify the fonts manually.
495circumstances, it will move your cursor around when you click into the 512circumstances, it will move your cursor around when you click into the
496line that contains it. It tries hard not to do this at the wrong moment, 513line that contains it. It tries hard not to do this at the wrong moment,
497but when running a program that doesn't parse cursor movements or in some 514but when running a program that doesn't parse cursor movements or in some
498cases during rlogin sessions, it fails to detect this properly. 515cases during rlogin sessions, it fails to detect this properly.
499 516
500You can permamently switch this feature off by disabling the C<readline> 517You can permanently switch this feature off by disabling the C<readline>
501extension: 518extension:
502 519
503 URxvt.perl-ext-common: default,-readline 520 URxvt.perl-ext-common: default,-readline
504 521
505=head3 My numerical keypad acts weird and generates differing output? 522=head3 My numerical keypad acts weird and generates differing output?
506 523
507Some Debian GNUL/Linux users seem to have this problem, although no 524Some Debian GNUL/Linux users seem to have this problem, although no
508specific details were reported so far. It is possible that this is caused 525specific details were reported so far. It is possible that this is caused
509by the wrong C<TERM> setting, although the details of wether and how 526by the wrong C<TERM> setting, although the details of whether and how
510this can happen are unknown, as C<TERM=rxvt> should offer a compatible 527this can happen are unknown, as C<TERM=rxvt> should offer a compatible
511keymap. See the answer to the previous question, and please report if that 528keymap. See the answer to the previous question, and please report if that
512helped. 529helped.
513 530
514=head3 My Compose (Multi_key) key is no longer working. 531=head3 My Compose (Multi_key) key is no longer working.
540depressed. 557depressed.
541 558
542=head3 What's with the strange Backspace/Delete key behaviour? 559=head3 What's with the strange Backspace/Delete key behaviour?
543 560
544Assuming that the physical Backspace key corresponds to the 561Assuming that the physical Backspace key corresponds to the
545BackSpace keysym (not likely for Linux ... see the following 562Backspace keysym (not likely for Linux ... see the following
546question) there are two standard values that can be used for 563question) there are two standard values that can be used for
547Backspace: C<^H> and C<^?>. 564Backspace: C<^H> and C<^?>.
548 565
549Historically, either value is correct, but rxvt-unicode adopts the debian 566Historically, either value is correct, but rxvt-unicode adopts the debian
550policy of using C<^?> when unsure, because it's the one only only correct 567policy of using C<^?> when unsure, because it's the one only only correct
641 658
642 659
643 660
644=head2 Terminal Configuration 661=head2 Terminal Configuration
645 662
663=head3 Can I see a typical configuration?
664
665The default configuration tries to be xterm-like, which I don't like that
666much, but it's least surprise to regular users.
667
668As a rxvt or rxvt-unicode user, you are practically supposed to invest
669time into customising your terminal. To get you started, here is the
670author's .Xdefaults entries, with comments on what they do. It's certainly
671not I<typical>, but what's typical...
672
673 URxvt.cutchars: "()*,<>[]{}|'
674 URxvt.print-pipe: cat >/tmp/xxx
675
676These are just for testing stuff.
677
678 URxvt.imLocale: ja_JP.UTF-8
679 URxvt.preeditType: OnTheSpot,None
680
681This tells rxvt-unicode to use a special locale when communicating with
682the X Input Method, and also tells it to only use the OnTheSpot pre-edit
683type, which requires the C<xim-onthespot> perl extension but rewards me
684with correct-looking fonts.
685
686 URxvt.perl-lib: /root/lib/urxvt
687 URxvt.perl-ext-common: default,selection-autotransform,selection-pastebin,xim-onthespot,remote-clipboard
688 URxvt.selection.pattern-0: ( at .*? line \\d+)
689 URxvt.selection.pattern-1: ^(/[^:]+):\
690 URxvt.selection-autotransform.0: s/^([^:[:space:]]+):(\\d+):?$/:e \\Q$1\\E\\x0d:$2\\x0d/
691 URxvt.selection-autotransform.1: s/^ at (.*?) line (\\d+)$/:e \\Q$1\\E\\x0d:$2\\x0d/
692
693This is my perl configuration. The first two set the perl library
694directory and also tells urxvt to use a large number of extensions. I
695develop for myself mostly, so I actually use most of the extensions I
696write.
697
698The selection stuff mainly makes the selection perl-error-message aware
699and tells it to convert perl error messages into vi-commands to load the
700relevant file and go tot he error line number.
701
702 URxvt.scrollstyle: plain
703 URxvt.secondaryScroll: true
704
705As the documentation says: plain is the preferred scrollbar for the
706author. The C<secondaryScroll> configures urxvt to scroll in full-screen
707apps, like screen, so lines scrolled out of screen end up in urxvt's
708scrollback buffer.
709
710 URxvt.background: #000000
711 URxvt.foreground: gray90
712 URxvt.color7: gray90
713 URxvt.colorBD: #ffffff
714 URxvt.cursorColor: #e0e080
715 URxvt.throughColor: #8080f0
716 URxvt.highlightColor: #f0f0f0
717
718Some colours. Not sure which ones are being used or even non-defaults, but
719these are in my .Xdefaults. Most notably, they set foreground/background
720to light gray/black, and also make sure that the colour 7 matches the
721default foreground colour.
722
723 URxvt.underlineColor: yellow
724
725Another colour, makes underline lines look different. Sometimes hurts, but
726is mostly a nice effect.
727
728 URxvt.geometry: 154x36
729 URxvt.loginShell: false
730 URxvt.meta: ignore
731 URxvt.utmpInhibit: true
732
733Uh, well, should be mostly self-explanatory. By specifying some defaults
734manually, I can quickly switch them for testing.
735
736 URxvt.saveLines: 8192
737
738A large scrollback buffer is essential. Really.
739
740 URxvt.mapAlert: true
741
742The only case I use it is for my IRC window, which I like to keep
743iconified till people msg me (which beeps).
744
745 URxvt.visualBell: true
746
747The audible bell is often annoying, especially when in a crowd.
748
749 URxvt.insecure: true
750
751Please don't hack my mutt! Ooops...
752
753 URxvt.pastableTabs: false
754
755I once thought this is a great idea.
756
757 urxvt.font: 9x15bold,\
758 -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso10646-1,\
759 -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso10646-1, \
760 [codeset=JISX0208]xft:Kochi Gothic, \
761 xft:Bitstream Vera Sans Mono:autohint=true, \
762 xft:Code2000:antialias=false
763 urxvt.boldFont: -xos4-terminus-bold-r-normal--14-140-72-72-c-80-iso8859-15
764 urxvt.italicFont: xft:Bitstream Vera Sans Mono:italic:autohint=true
765 urxvt.boldItalicFont: xft:Bitstream Vera Sans Mono:bold:italic:autohint=true
766
767I wrote rxvt-unicode to be able to specify fonts exactly. So don't be
768overwhelmed. A special note: the C<9x15bold> mentioned above is actually
769the version from XFree-3.3, as XFree-4 replaced it by a totally different
770font (different glyphs for C<;> and many other harmless characters),
771while the second font is actually the C<9x15bold> from XFree4/XOrg. The
772bold version has less chars than the medium version, so I use it for rare
773characters, too. When editing sources with vim, I use italic for comments
774and other stuff, which looks quite good with Bitstream Vera anti-aliased.
775
776Terminus is a quite bad font (many very wrong glyphs), but for most of my
777purposes, it works, and gives a different look, as my normal (Non-bold)
778font is already bold, and I want to see a difference between bold and
779normal fonts.
780
781Please note that I used the C<urxvt> instance name and not the C<URxvt>
782class name. Thats because I use different configs for different purposes,
783for example, my IRC window is started with C<-name IRC>, and uses these
784defaults:
785
786 IRC*title: IRC
787 IRC*geometry: 87x12+535+542
788 IRC*saveLines: 0
789 IRC*mapAlert: true
790 IRC*font: suxuseuro
791 IRC*boldFont: suxuseuro
792 IRC*colorBD: white
793 IRC*keysym.M-C-1: command:\033]710;suxuseuro\007\033]711;suxuseuro\007
794 IRC*keysym.M-C-2: command:\033]710;9x15bold\007\033]711;9x15bold\007
795
796C<Alt-Shift-1> and C<Alt-Shift-2> switch between two different font
797sizes. C<suxuseuro> allows me to keep an eye (and actually read)
798stuff while keeping a very small window. If somebody pastes something
799complicated (e.g. japanese), I temporarily switch to a larger font.
800
801The above is all in my C<.Xdefaults> (I don't use C<.Xresources> nor
802C<xrdb>). I also have some resources in a separate C<.Xdefaults-hostname>
803file for different hosts, for example, on ym main desktop, I use:
804
805 URxvt.keysym.C-M-q: command:\033[3;5;5t
806 URxvt.keysym.C-M-y: command:\033[3;5;606t
807 URxvt.keysym.C-M-e: command:\033[3;1605;5t
808 URxvt.keysym.C-M-c: command:\033[3;1605;606t
809 URxvt.keysym.C-M-p: perl:test
810
811The first for keysym definitions allow me to quickly bring some windows
812in the layout I like most. Ion users might start laughing but will stop
813immediately when I tell them that I use my own Fvwm2 module for much the
814same effect as Ion provides, and I only very rarely use the above key
815combinations :->
816
646=head3 Why doesn't rxvt-unicode read my resources? 817=head3 Why doesn't rxvt-unicode read my resources?
647 818
648Well, why, indeed? It does, in a way very similar to other X 819Well, why, indeed? It does, in a way very similar to other X
649applications. Most importantly, this means that if you or your OS loads 820applications. Most importantly, this means that if you or your OS loads
650resources into the X display (the right way to do it), rxvt-unicode will 821resources into the X display (the right way to do it), rxvt-unicode will
658Also consider the form resources have to use: 829Also consider the form resources have to use:
659 830
660 URxvt.resource: value 831 URxvt.resource: value
661 832
662If you want to use another form (there are lots of different ways of 833If you want to use another form (there are lots of different ways of
663specifying resources), make sure you understand wether and why it 834specifying resources), make sure you understand whether and why it
664works. If unsure, use the form above. 835works. If unsure, use the form above.
665 836
666=head3 When I log-in to another system it tells me about missing terminfo data? 837=head3 When I log-in to another system it tells me about missing terminfo data?
667 838
668The terminal description used by rxvt-unicode is not as widely available 839The terminal description used by rxvt-unicode is not as widely available
669as that for xterm, or even rxvt (for which the same problem often arises). 840as that for xterm, or even rxvt (for which the same problem often arises).
670 841
671The correct solution for this problem is to install the terminfo, this can 842The correct solution for this problem is to install the terminfo, this can
672be done like this (with ncurses' infocmp): 843be done like this (with ncurses' infocmp and works as user and admin):
673 844
674 REMOTE=remotesystem.domain 845 REMOTE=remotesystem.domain
675 infocmp rxvt-unicode | ssh $REMOTE "cat >/tmp/ti && tic /tmp/ti" 846 infocmp rxvt-unicode | ssh $REMOTE "mkdir -p .terminfo && cat >/tmp/ti && tic /tmp/ti"
676 847
677... or by installing rxvt-unicode normally on the remote system, 848... or by installing rxvt-unicode normally on the remote system,
849
850One some systems you might need to set C<$TERMINFO> to the full path of
851F<$HOME/.terminfo> for this to work.
678 852
679If you cannot or do not want to do this, then you can simply set 853If you cannot or do not want to do this, then you can simply set
680C<TERM=rxvt> or even C<TERM=xterm>, and live with the small number of 854C<TERM=rxvt> or even C<TERM=xterm>, and live with the small number of
681problems arising, which includes wrong keymapping, less and different 855problems arising, which includes wrong keymapping, less and different
682colours and some refresh errors in fullscreen applications. It's a nice 856colours and some refresh errors in fullscreen applications. It's a nice
705One reason you might want this is that some distributions or operating 879One reason you might want this is that some distributions or operating
706systems still compile some programs using the long-obsoleted termcap 880systems still compile some programs using the long-obsoleted termcap
707library (Fedora Core's bash is one example) and rely on a termcap entry 881library (Fedora Core's bash is one example) and rely on a termcap entry
708for C<rxvt-unicode>. 882for C<rxvt-unicode>.
709 883
710You could use rxvt's termcap entry with resonable results in many cases. 884You could use rxvt's termcap entry with reasonable results in many cases.
711You can also create a termcap entry by using terminfo's infocmp program 885You can also create a termcap entry by using terminfo's infocmp program
712like this: 886like this:
713 887
714 infocmp -C rxvt-unicode 888 infocmp -C rxvt-unicode
715 889
737 :vs=\E[?25h: 911 :vs=\E[?25h:
738 912
739=head3 Why does C<ls> no longer have coloured output? 913=head3 Why does C<ls> no longer have coloured output?
740 914
741The C<ls> in the GNU coreutils unfortunately doesn't use terminfo to 915The C<ls> in the GNU coreutils unfortunately doesn't use terminfo to
742decide wether a terminal has colour, but uses it's own configuration 916decide whether a terminal has colour, but uses its own configuration
743file. Needless to say, C<rxvt-unicode> is not in it's default file (among 917file. Needless to say, C<rxvt-unicode> is not in its default file (among
744with most other terminals supporting colour). Either add: 918with most other terminals supporting colour). Either add:
745 919
746 TERM rxvt-unicode 920 TERM rxvt-unicode
747 921
748to C</etc/DIR_COLORS> or simply add: 922to C</etc/DIR_COLORS> or simply add:
789something else, e.g. C<en_GB.UTF-8>. Needless to say, this is not going to work. 963something else, e.g. C<en_GB.UTF-8>. Needless to say, this is not going to work.
790 964
791The best thing is to fix your startup environment, as you will likely run 965The best thing is to fix your startup environment, as you will likely run
792into other problems. If nothing works you can try this in your .profile. 966into other problems. If nothing works you can try this in your .profile.
793 967
794 printf '\e]701;%s\007' "$LC_CTYPE" 968 printf '\33]701;%s\007' "$LC_CTYPE"
795 969
796If this doesn't work, then maybe you use a C<LC_CTYPE> specification not 970If this doesn't work, then maybe you use a C<LC_CTYPE> specification not
797supported on your systems. Some systems have a C<locale> command which 971supported on your systems. Some systems have a C<locale> command which
798displays this (also, C<perl -e0> can be used to check locale settings, as 972displays this (also, C<perl -e0> can be used to check locale settings, as
799it will complain loudly if it cannot set the locale). If it displays something 973it will complain loudly if it cannot set the locale). If it displays something
820The reasons is that there exists a perfectly fine mechanism for selecting 994The reasons is that there exists a perfectly fine mechanism for selecting
821the encoding, doing I/O and (most important) communicating this to all 995the encoding, doing I/O and (most important) communicating this to all
822applications so everybody agrees on character properties such as width 996applications so everybody agrees on character properties such as width
823and code number. This mechanism is the I<locale>. Applications not using 997and code number. This mechanism is the I<locale>. Applications not using
824that info will have problems (for example, C<xterm> gets the width of 998that info will have problems (for example, C<xterm> gets the width of
825characters wrong as it uses it's own, locale-independent table under all 999characters wrong as it uses its own, locale-independent table under all
826locales). 1000locales).
827 1001
828Rxvt-unicode uses the C<LC_CTYPE> locale category to select encoding. All 1002Rxvt-unicode uses the C<LC_CTYPE> locale category to select encoding. All
829programs doing the same (that is, most) will automatically agree in the 1003programs doing the same (that is, most) will automatically agree in the
830interpretation of characters. 1004interpretation of characters.
849=head3 Can I switch locales at runtime? 1023=head3 Can I switch locales at runtime?
850 1024
851Yes, using an escape sequence. Try something like this, which sets 1025Yes, using an escape sequence. Try something like this, which sets
852rxvt-unicode's idea of C<LC_CTYPE>. 1026rxvt-unicode's idea of C<LC_CTYPE>.
853 1027
854 printf '\e]701;%s\007' ja_JP.SJIS 1028 printf '\33]701;%s\007' ja_JP.SJIS
855 1029
856See also the previous answer. 1030See also the previous answer.
857 1031
858Sometimes this capability is rather handy when you want to work in 1032Sometimes this capability is rather handy when you want to work in
859one locale (e.g. C<de_DE.UTF-8>) but some programs don't support it 1033one locale (e.g. C<de_DE.UTF-8>) but some programs don't support it
860(e.g. UTF-8). For example, I use this script to start C<xjdic>, which 1034(e.g. UTF-8). For example, I use this script to start C<xjdic>, which
861first switches to a locale supported by xjdic and back later: 1035first switches to a locale supported by xjdic and back later:
862 1036
863 printf '\e]701;%s\007' ja_JP.SJIS 1037 printf '\33]701;%s\007' ja_JP.SJIS
864 xjdic -js 1038 xjdic -js
865 printf '\e]701;%s\007' de_DE.UTF-8 1039 printf '\33]701;%s\007' de_DE.UTF-8
866 1040
867You can also use xterm's C<luit> program, which usually works fine, except 1041You can also use xterm's C<luit> program, which usually works fine, except
868for some locales where character width differs between program- and 1042for some locales where character width differs between program- and
869rxvt-unicode-locales. 1043rxvt-unicode-locales.
870 1044
1045=head3 I have problems getting my input method working.
1046
1047Try a search engine, as this is slightly different for every input method server.
1048
1049Here is a checklist:
1050
1051=over 4
1052
1053=item - Make sure your locale I<and> the imLocale are supported on your OS.
1054
1055Try C<locale -a> or check the documentation for your OS.
1056
1057=item - Make sure your locale or imLocale matches a locale supported by your XIM.
1058
1059For example, B<kinput2> does not support UTF-8 locales, you should use
1060C<ja_JP.EUC-JP> or equivalent.
1061
1062=item - Make sure your XIM server is actually running.
1063
1064=item - Make sure the C<XMODIFIERS> environment variable is set correctly when I<starting> rxvt-unicode.
1065
1066When you want to use e.g. B<kinput2>, it must be set to
1067C<@im=kinput2>. For B<scim>, use C<@im=SCIM>. You can see what input
1068method servers are running with this command:
1069
1070 xprop -root XIM_SERVERS
1071
1072=item
1073
1074=back
1075
871=head3 My input method wants <some encoding> but I want UTF-8, what can I do? 1076=head3 My input method wants <some encoding> but I want UTF-8, what can I do?
872 1077
873You can specify separate locales for the input method and the rest of the 1078You can specify separate locales for the input method and the rest of the
874terminal, using the resource C<imlocale>: 1079terminal, using the resource C<imlocale>:
875 1080
876 URxvt.imlocale: ja_JP.EUC-JP 1081 URxvt.imlocale: ja_JP.EUC-JP
877 1082
878Now you can start your terminal with C<LC_CTYPE=ja_JP.UTF-8> and still 1083Now you can start your terminal with C<LC_CTYPE=ja_JP.UTF-8> and still
879use your input method. Please note, however, that you will not be able to 1084use your input method. Please note, however, that, depending on your Xlib
880input characters outside C<EUC-JP> in a normal way then, as your input 1085version, you may not be able to input characters outside C<EUC-JP> in a
881method limits you. 1086normal way then, as your input method limits you.
882 1087
883=head3 Rxvt-unicode crashes when the X Input Method changes or exits. 1088=head3 Rxvt-unicode crashes when the X Input Method changes or exits.
884 1089
885Unfortunately, this is unavoidable, as the XIM protocol is racy by 1090Unfortunately, this is unavoidable, as the XIM protocol is racy by
886design. Applications can avoid some crashes at the expense of memory 1091design. Applications can avoid some crashes at the expense of memory
912 1117
913=head3 I am maintaining rxvt-unicode for distribution/OS XXX, any recommendation? 1118=head3 I am maintaining rxvt-unicode for distribution/OS XXX, any recommendation?
914 1119
915You should build one binary with the default options. F<configure> 1120You should build one binary with the default options. F<configure>
916now enables most useful options, and the trend goes to making them 1121now enables most useful options, and the trend goes to making them
917runtime-switchable, too, so there is usually no drawback to enbaling them, 1122runtime-switchable, too, so there is usually no drawback to enabling them,
918except higher disk and possibly memory usage. The perl interpreter should 1123except higher disk and possibly memory usage. The perl interpreter should
919be enabled, as important functionality (menus, selection, likely more in 1124be enabled, as important functionality (menus, selection, likely more in
920the future) depends on it. 1125the future) depends on it.
921 1126
922You should not overwrite the C<perl-ext-common> snd C<perl-ext> resources 1127You should not overwrite the C<perl-ext-common> snd C<perl-ext> resources
957 1162
958=head3 I am on FreeBSD and rxvt-unicode does not seem to work at all. 1163=head3 I am on FreeBSD and rxvt-unicode does not seem to work at all.
959 1164
960Rxvt-unicode requires the symbol C<__STDC_ISO_10646__> to be defined 1165Rxvt-unicode requires the symbol C<__STDC_ISO_10646__> to be defined
961in your compile environment, or an implementation that implements it, 1166in your compile environment, or an implementation that implements it,
962wether it defines the symbol or not. C<__STDC_ISO_10646__> requires that 1167whether it defines the symbol or not. C<__STDC_ISO_10646__> requires that
963B<wchar_t> is represented as unicode. 1168B<wchar_t> is represented as unicode.
964 1169
965As you might have guessed, FreeBSD does neither define this symobl nor 1170As you might have guessed, FreeBSD does neither define this symbol nor
966does it support it. Instead, it uses it's own internal representation of 1171does it support it. Instead, it uses its own internal representation of
967B<wchar_t>. This is, of course, completely fine with respect to standards. 1172B<wchar_t>. This is, of course, completely fine with respect to standards.
968 1173
969However, that means rxvt-unicode only works in C<POSIX>, C<ISO-8859-1> and 1174However, that means rxvt-unicode only works in C<POSIX>, C<ISO-8859-1> and
970C<UTF-8> locales under FreeBSD (which all use Unicode as B<wchar_t>. 1175C<UTF-8> locales under FreeBSD (which all use Unicode as B<wchar_t>.
971 1176
1505 1710
1506Toggle DEC Private Mode Values (rxvt extension). I<where> 1711Toggle DEC Private Mode Values (rxvt extension). I<where>
1507 1712
1508=over 4 1713=over 4
1509 1714
1510=item B<< C<Ps = 1> >> (DECCKM) 1715=item B<< C<Pm = 1> >> (DECCKM)
1511 1716
1512=begin table 1717=begin table
1513 1718
1514 B<< C<h> >> Application Cursor Keys 1719 B<< C<h> >> Application Cursor Keys
1515 B<< C<l> >> Normal Cursor Keys 1720 B<< C<l> >> Normal Cursor Keys
1516 1721
1517=end table 1722=end table
1518 1723
1519=item B<< C<Ps = 2> >> (ANSI/VT52 mode) 1724=item B<< C<Pm = 2> >> (ANSI/VT52 mode)
1520 1725
1521=begin table 1726=begin table
1522 1727
1523 B<< C<h> >> Enter VT52 mode 1728 B<< C<h> >> Enter VT52 mode
1524 B<< C<l> >> Enter VT52 mode 1729 B<< C<l> >> Enter VT52 mode
1525 1730
1526=end table 1731=end table
1527 1732
1528=item B<< C<Ps = 3> >> 1733=item B<< C<Pm = 3> >>
1529 1734
1530=begin table 1735=begin table
1531 1736
1532 B<< C<h> >> 132 Column Mode (DECCOLM) 1737 B<< C<h> >> 132 Column Mode (DECCOLM)
1533 B<< C<l> >> 80 Column Mode (DECCOLM) 1738 B<< C<l> >> 80 Column Mode (DECCOLM)
1534 1739
1535=end table 1740=end table
1536 1741
1537=item B<< C<Ps = 4> >> 1742=item B<< C<Pm = 4> >>
1538 1743
1539=begin table 1744=begin table
1540 1745
1541 B<< C<h> >> Smooth (Slow) Scroll (DECSCLM) 1746 B<< C<h> >> Smooth (Slow) Scroll (DECSCLM)
1542 B<< C<l> >> Jump (Fast) Scroll (DECSCLM) 1747 B<< C<l> >> Jump (Fast) Scroll (DECSCLM)
1543 1748
1544=end table 1749=end table
1545 1750
1546=item B<< C<Ps = 5> >> 1751=item B<< C<Pm = 5> >>
1547 1752
1548=begin table 1753=begin table
1549 1754
1550 B<< C<h> >> Reverse Video (DECSCNM) 1755 B<< C<h> >> Reverse Video (DECSCNM)
1551 B<< C<l> >> Normal Video (DECSCNM) 1756 B<< C<l> >> Normal Video (DECSCNM)
1552 1757
1553=end table 1758=end table
1554 1759
1555=item B<< C<Ps = 6> >> 1760=item B<< C<Pm = 6> >>
1556 1761
1557=begin table 1762=begin table
1558 1763
1559 B<< C<h> >> Origin Mode (DECOM) 1764 B<< C<h> >> Origin Mode (DECOM)
1560 B<< C<l> >> Normal Cursor Mode (DECOM) 1765 B<< C<l> >> Normal Cursor Mode (DECOM)
1561 1766
1562=end table 1767=end table
1563 1768
1564=item B<< C<Ps = 7> >> 1769=item B<< C<Pm = 7> >>
1565 1770
1566=begin table 1771=begin table
1567 1772
1568 B<< C<h> >> Wraparound Mode (DECAWM) 1773 B<< C<h> >> Wraparound Mode (DECAWM)
1569 B<< C<l> >> No Wraparound Mode (DECAWM) 1774 B<< C<l> >> No Wraparound Mode (DECAWM)
1570 1775
1571=end table 1776=end table
1572 1777
1573=item B<< C<Ps = 8> >> I<unimplemented> 1778=item B<< C<Pm = 8> >> I<unimplemented>
1574 1779
1575=begin table 1780=begin table
1576 1781
1577 B<< C<h> >> Auto-repeat Keys (DECARM) 1782 B<< C<h> >> Auto-repeat Keys (DECARM)
1578 B<< C<l> >> No Auto-repeat Keys (DECARM) 1783 B<< C<l> >> No Auto-repeat Keys (DECARM)
1579 1784
1580=end table 1785=end table
1581 1786
1582=item B<< C<Ps = 9> >> X10 XTerm 1787=item B<< C<Pm = 9> >> X10 XTerm
1583 1788
1584=begin table 1789=begin table
1585 1790
1586 B<< C<h> >> Send Mouse X & Y on button press. 1791 B<< C<h> >> Send Mouse X & Y on button press.
1587 B<< C<l> >> No mouse reporting. 1792 B<< C<l> >> No mouse reporting.
1588 1793
1589=end table 1794=end table
1590 1795
1591=item B<< C<Ps = 25> >> 1796=item B<< C<Pm = 25> >>
1592 1797
1593=begin table 1798=begin table
1594 1799
1595 B<< C<h> >> Visible cursor {cnorm/cvvis} 1800 B<< C<h> >> Visible cursor {cnorm/cvvis}
1596 B<< C<l> >> Invisible cursor {civis} 1801 B<< C<l> >> Invisible cursor {civis}
1597 1802
1598=end table 1803=end table
1599 1804
1600=item B<< C<Ps = 30> >> 1805=item B<< C<Pm = 30> >>
1601 1806
1602=begin table 1807=begin table
1603 1808
1604 B<< C<h> >> scrollBar visisble 1809 B<< C<h> >> scrollBar visisble
1605 B<< C<l> >> scrollBar invisisble 1810 B<< C<l> >> scrollBar invisisble
1606 1811
1607=end table 1812=end table
1608 1813
1609=item B<< C<Ps = 35> >> (B<rxvt>) 1814=item B<< C<Pm = 35> >> (B<rxvt>)
1610 1815
1611=begin table 1816=begin table
1612 1817
1613 B<< C<h> >> Allow XTerm Shift+key sequences 1818 B<< C<h> >> Allow XTerm Shift+key sequences
1614 B<< C<l> >> Disallow XTerm Shift+key sequences 1819 B<< C<l> >> Disallow XTerm Shift+key sequences
1615 1820
1616=end table 1821=end table
1617 1822
1618=item B<< C<Ps = 38> >> I<unimplemented> 1823=item B<< C<Pm = 38> >> I<unimplemented>
1619 1824
1620Enter Tektronix Mode (DECTEK) 1825Enter Tektronix Mode (DECTEK)
1621 1826
1622=item B<< C<Ps = 40> >> 1827=item B<< C<Pm = 40> >>
1623 1828
1624=begin table 1829=begin table
1625 1830
1626 B<< C<h> >> Allow 80/132 Mode 1831 B<< C<h> >> Allow 80/132 Mode
1627 B<< C<l> >> Disallow 80/132 Mode 1832 B<< C<l> >> Disallow 80/132 Mode
1628 1833
1629=end table 1834=end table
1630 1835
1631=item B<< C<Ps = 44> >> I<unimplemented> 1836=item B<< C<Pm = 44> >> I<unimplemented>
1632 1837
1633=begin table 1838=begin table
1634 1839
1635 B<< C<h> >> Turn On Margin Bell 1840 B<< C<h> >> Turn On Margin Bell
1636 B<< C<l> >> Turn Off Margin Bell 1841 B<< C<l> >> Turn Off Margin Bell
1637 1842
1638=end table 1843=end table
1639 1844
1640=item B<< C<Ps = 45> >> I<unimplemented> 1845=item B<< C<Pm = 45> >> I<unimplemented>
1641 1846
1642=begin table 1847=begin table
1643 1848
1644 B<< C<h> >> Reverse-wraparound Mode 1849 B<< C<h> >> Reverse-wraparound Mode
1645 B<< C<l> >> No Reverse-wraparound Mode 1850 B<< C<l> >> No Reverse-wraparound Mode
1646 1851
1647=end table 1852=end table
1648 1853
1649=item B<< C<Ps = 46> >> I<unimplemented> 1854=item B<< C<Pm = 46> >> I<unimplemented>
1650 1855
1651=item B<< C<Ps = 47> >> 1856=item B<< C<Pm = 47> >>
1652 1857
1653=begin table 1858=begin table
1654 1859
1655 B<< C<h> >> Use Alternate Screen Buffer 1860 B<< C<h> >> Use Alternate Screen Buffer
1656 B<< C<l> >> Use Normal Screen Buffer 1861 B<< C<l> >> Use Normal Screen Buffer
1657 1862
1658=end table 1863=end table
1659 1864
1660X<Priv66> 1865X<Priv66>
1661 1866
1662=item B<< C<Ps = 66> >> 1867=item B<< C<Pm = 66> >>
1663 1868
1664=begin table 1869=begin table
1665 1870
1666 B<< C<h> >> Application Keypad (DECPAM) == C<ESC => 1871 B<< C<h> >> Application Keypad (DECPAM) == C<ESC =>
1667 B<< C<l> >> Normal Keypad (DECPNM) == C<< ESC > >> 1872 B<< C<l> >> Normal Keypad (DECPNM) == C<< ESC > >>
1668 1873
1669=end table 1874=end table
1670 1875
1671=item B<< C<Ps = 67> >> 1876=item B<< C<Pm = 67> >>
1672 1877
1673=begin table 1878=begin table
1674 1879
1675 B<< C<h> >> Backspace key sends B<< C<BS> (DECBKM) >> 1880 B<< C<h> >> Backspace key sends B<< C<BS> (DECBKM) >>
1676 B<< C<l> >> Backspace key sends B<< C<DEL> >> 1881 B<< C<l> >> Backspace key sends B<< C<DEL> >>
1677 1882
1678=end table 1883=end table
1679 1884
1680=item B<< C<Ps = 1000> >> (X11 XTerm) 1885=item B<< C<Pm = 1000> >> (X11 XTerm)
1681 1886
1682=begin table 1887=begin table
1683 1888
1684 B<< C<h> >> Send Mouse X & Y on button press and release. 1889 B<< C<h> >> Send Mouse X & Y on button press and release.
1685 B<< C<l> >> No mouse reporting. 1890 B<< C<l> >> No mouse reporting.
1686 1891
1687=end table 1892=end table
1688 1893
1689=item B<< C<Ps = 1001> >> (X11 XTerm) I<unimplemented> 1894=item B<< C<Pm = 1001> >> (X11 XTerm) I<unimplemented>
1690 1895
1691=begin table 1896=begin table
1692 1897
1693 B<< C<h> >> Use Hilite Mouse Tracking. 1898 B<< C<h> >> Use Hilite Mouse Tracking.
1694 B<< C<l> >> No mouse reporting. 1899 B<< C<l> >> No mouse reporting.
1695 1900
1696=end table 1901=end table
1697 1902
1698=item B<< C<Ps = 1010> >> (B<rxvt>) 1903=item B<< C<Pm = 1010> >> (B<rxvt>)
1699 1904
1700=begin table 1905=begin table
1701 1906
1702 B<< C<h> >> Don't scroll to bottom on TTY output 1907 B<< C<h> >> Don't scroll to bottom on TTY output
1703 B<< C<l> >> Scroll to bottom on TTY output 1908 B<< C<l> >> Scroll to bottom on TTY output
1704 1909
1705=end table 1910=end table
1706 1911
1707=item B<< C<Ps = 1011> >> (B<rxvt>) 1912=item B<< C<Pm = 1011> >> (B<rxvt>)
1708 1913
1709=begin table 1914=begin table
1710 1915
1711 B<< C<h> >> Scroll to bottom when a key is pressed 1916 B<< C<h> >> Scroll to bottom when a key is pressed
1712 B<< C<l> >> Don't scroll to bottom when a key is pressed 1917 B<< C<l> >> Don't scroll to bottom when a key is pressed
1713 1918
1714=end table 1919=end table
1715 1920
1716=item B<< C<Ps = 1021> >> (B<rxvt>) 1921=item B<< C<Pm = 1021> >> (B<rxvt>)
1717 1922
1718=begin table 1923=begin table
1719 1924
1720 B<< C<h> >> Bold/italic implies high intensity (see option B<-is>) 1925 B<< C<h> >> Bold/italic implies high intensity (see option B<-is>)
1721 B<< C<l> >> Font styles have no effect on intensity (Compile styles) 1926 B<< C<l> >> Font styles have no effect on intensity (Compile styles)
1722 1927
1723=end table 1928=end table
1724 1929
1725=item B<< C<Ps = 1047> >> 1930=item B<< C<Pm = 1047> >>
1726 1931
1727=begin table 1932=begin table
1728 1933
1729 B<< C<h> >> Use Alternate Screen Buffer 1934 B<< C<h> >> Use Alternate Screen Buffer
1730 B<< C<l> >> Use Normal Screen Buffer - clear Alternate Screen Buffer if returning from it 1935 B<< C<l> >> Use Normal Screen Buffer - clear Alternate Screen Buffer if returning from it
1731 1936
1732=end table 1937=end table
1733 1938
1734=item B<< C<Ps = 1048> >> 1939=item B<< C<Pm = 1048> >>
1735 1940
1736=begin table 1941=begin table
1737 1942
1738 B<< C<h> >> Save cursor position 1943 B<< C<h> >> Save cursor position
1739 B<< C<l> >> Restore cursor position 1944 B<< C<l> >> Restore cursor position
1740 1945
1741=end table 1946=end table
1742 1947
1743=item B<< C<Ps = 1049> >> 1948=item B<< C<Pm = 1049> >>
1744 1949
1745=begin table 1950=begin table
1746 1951
1747 B<< C<h> >> Use Alternate Screen Buffer - clear Alternate Screen Buffer if switching to it 1952 B<< C<h> >> Use Alternate Screen Buffer - clear Alternate Screen Buffer if switching to it
1748 B<< C<l> >> Use Normal Screen Buffer 1953 B<< C<l> >> Use Normal Screen Buffer
2201 cursor blinking and underline cursor (-cb, -uc) 2406 cursor blinking and underline cursor (-cb, -uc)
2202 XEmbed support (-embed) 2407 XEmbed support (-embed)
2203 user-pty (-pty-fd) 2408 user-pty (-pty-fd)
2204 hold on exit (-hold) 2409 hold on exit (-hold)
2205 skip builtin block graphics (-sbg) 2410 skip builtin block graphics (-sbg)
2411 separate highlightcolor support (-hc)
2206 2412
2207It also enabled some non-essential features otherwise disabled, such as: 2413It also enables some non-essential features otherwise disabled, such as:
2208 2414
2209 some round-trip time optimisations 2415 some round-trip time optimisations
2210 nearest color allocation on pseudocolor screens 2416 nearest color allocation on pseudocolor screens
2211 UTF8_STRING supporr for selection 2417 UTF8_STRING supporr for selection
2212 sgr modes 90..97 and 100..107 2418 sgr modes 90..97 and 100..107
2245Remove support for mouse selection style like that of xterm. 2451Remove support for mouse selection style like that of xterm.
2246 2452
2247=item --enable-dmalloc (default: off) 2453=item --enable-dmalloc (default: off)
2248 2454
2249Use Gray Watson's malloc - which is good for debugging See 2455Use Gray Watson's malloc - which is good for debugging See
2250http://www.letters.com/dmalloc/ for details If you use either this or the 2456L<http://www.letters.com/dmalloc/> for details If you use either this or the
2251next option, you may need to edit src/Makefile after compiling to point 2457next option, you may need to edit src/Makefile after compiling to point
2252DINCLUDE and DLIB to the right places. 2458DINCLUDE and DLIB to the right places.
2253 2459
2254You can only use either this option and the following (should 2460You can only use either this option and the following (should
2255you use either) . 2461you use either) .

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines