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.113 by root, Thu Feb 2 18:04:45 2006 UTC vs.
Revision 1.158 by root, Wed Dec 12 19:58:08 2007 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://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.7.pod>.
23
24The main manual page for @@RXVT_NAME@@ itself is available at
25L<http://pod.tst.eu/http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.1.pod>.
23 26
24=head1 RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS 27=head1 RXVT-UNICODE/URXVT FREQUENTLY ASKED QUESTIONS
25 28
26 29
27=head2 Meta, Features & Commandline Issues 30=head2 Meta, Features & Commandline Issues
73=head3 How can I start @@URXVT_NAME@@d in a race-free way? 76=head3 How can I start @@URXVT_NAME@@d in a race-free way?
74 77
75Try C<@@URXVT_NAME@@d -f -o>, which tells @@URXVT_NAME@@d to open the 78Try C<@@URXVT_NAME@@d -f -o>, which tells @@URXVT_NAME@@d to open the
76display, create the listening socket and then fork. 79display, create the listening socket and then fork.
77 80
78=head3 How can I start @@URXVT_NAME@@d automatically when I run URXVT_NAME@@c? 81=head3 How can I start @@URXVT_NAME@@d automatically when I run @@URXVT_NAME@@c?
79 82
80If you want to start @@URXVT_NAME@@d automatically whenever you run 83If 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: 84@@URXVT_NAME@@c and the daemon isn't running yet, use this script:
82 85
83 #!/bin/sh 86 #!/bin/sh
90This tries to create a new terminal, and if fails with exit status 2, 93This 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 94meaning 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 95re-run the command. Subsequent invocations of the script will re-use the
93existing daemon. 96existing daemon.
94 97
95=head3 How do I distinguish wether I'm running rxvt-unicode or a regular xterm? I need this to decide about setting colors etc. 98=head3 How do I distinguish whether I'm running rxvt-unicode or a regular xterm? I need this to decide about setting colors etc.
96 99
97The original rxvt and rxvt-unicode always export the variable "COLORTERM", 100The original rxvt and rxvt-unicode always export the variable "COLORTERM",
98so you can check and see if that is set. Note that several programs, JED, 101so you can check and see if that is set. Note that several programs, JED,
99slrn, Midnight Commander automatically check this variable to decide 102slrn, Midnight Commander automatically check this variable to decide
100whether or not to use color. 103whether or not to use color.
125 fi 128 fi
126 129
127=head3 How do I compile the manual pages on my own? 130=head3 How do I compile the manual pages on my own?
128 131
129You need to have a recent version of perl installed as F</usr/bin/perl>, 132You need to have a recent version of perl installed as F</usr/bin/perl>,
130one that comes with F<pod2man>, F<pod2text> and F<pod2html>. Then go to 133one that comes with F<pod2man>, F<pod2text> and F<pod2xhtml> (from
131the doc subdirectory and enter C<make alldoc>. 134F<Pod::Xhtml>). Then go to the doc subdirectory and enter C<make alldoc>.
132 135
133=head3 Isn't rxvt-unicode supposed to be small? Don't all those features bloat? 136=head3 Isn't rxvt-unicode supposed to be small? Don't all those features bloat?
134 137
135I often get asked about this, and I think, no, they didn't cause extra 138I often get asked about this, and I think, no, they didn't cause extra
136bloat. If you compare a minimal rxvt and a minimal urxvt, you can see 139bloat. If you compare a minimal rxvt and a minimal urxvt, you can see
144 98398 1664 24 15695 1824 rxvt --disable-everything 147 98398 1664 24 15695 1824 rxvt --disable-everything
145 188985 9048 66616 18222 1788 urxvt --disable-everything 148 188985 9048 66616 18222 1788 urxvt --disable-everything
146 149
147When you C<--enable-everything> (which I<is> unfair, as this involves xft 150When you C<--enable-everything> (which I<is> unfair, as this involves xft
148and full locale/XIM support which are quite bloaty inside libX11 and my 151and full locale/XIM support which are quite bloaty inside libX11 and my
149libc), the two diverge, but not unreasnobaly so. 152libc), the two diverge, but not unreasonably so.
150 153
151 text data bss drs rss filename 154 text data bss drs rss filename
152 163431 2152 24 20123 2060 rxvt --enable-everything 155 163431 2152 24 20123 2060 rxvt --enable-everything
153 1035683 49680 66648 29096 3680 urxvt --enable-everything 156 1035683 49680 66648 29096 3680 urxvt --enable-everything
154 157
197 200
198And here is rxvt-unicode: 201And here is rxvt-unicode:
199 202
200 libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x00002aaaaabc3000) 203 libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x00002aaaaabc3000)
201 libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00002aaaaada2000) 204 libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00002aaaaada2000)
202 libc.so.6 => /lib/libc.so.6 (0x00002aaaaaeb0000) 205 libc.so.6 => /lib/libc.so.6 (0x00002aaaaaeb0000)
203 libdl.so.2 => /lib/libdl.so.2 (0x00002aaaab0ee000) 206 libdl.so.2 => /lib/libdl.so.2 (0x00002aaaab0ee000)
204 /lib64/ld-linux-x86-64.so.2 (0x00002aaaaaaab000) 207 /lib64/ld-linux-x86-64.so.2 (0x00002aaaaaaab000)
205 208
206No large bloated libraries (of course, none were linked in statically), 209No large bloated libraries (of course, none were linked in statically),
207except maybe libX11 :) 210except maybe libX11 :)
208 211
209 212
210=head2 Rendering, Font & Look and Feel Issues 213=head2 Rendering, Font & Look and Feel Issues
211 214
212=head3 I can't get transparency working, what am I doing wrong? 215=head3 I can't get transparency working, what am I doing wrong?
213 216
214First of all, transparency isn't officially supported in rxvt-unicode, so 217First of all, please address all transparency related issues to Sasha Vasko at
215you are mostly on your own. Do not bug the author about it (but you may 218sasha@aftercode.net and do not bug the author about it. Also, if you can't
216bug everybody else). Also, if you can't get it working consider it a rite 219get it working consider it a rite of passage: ... and you failed.
217of passage: ... and you failed.
218 220
219Here are four ways to get transparency. B<Do> read the manpage and option 221Here are four ways to get transparency. B<Do> read the manpage and option
220descriptions for the programs mentioned and rxvt-unicode. Really, do it! 222descriptions for the programs mentioned and rxvt-unicode. Really, do it!
221 223
2221. Use inheritPixmap: 2241. Use transparent mode:
223 225
224 Esetroot wallpaper.jpg 226 Esetroot wallpaper.jpg
225 @@URXVT_NAME@@ -ip -tint red -sh 40 227 @@URXVT_NAME@@ -tr -tint red -sh 40
226 228
227That works. If you think it doesn't, you lack transparency and tinting 229That works. If you think it doesn't, you lack transparency and tinting
228support, or you are unable to read. 230support, or you are unable to read.
229 231
2302. Use a simple pixmap and emulate pseudo-transparency. This enables you 2322. Use a simple pixmap and emulate pseudo-transparency. This enables you
231to use effects other than tinting and shading: Just shade/tint/whatever 233to use effects other than tinting and shading: Just shade/tint/whatever
232your picture with gimp or any other tool: 234your picture with gimp or any other tool:
233 235
234 convert wallpaper.jpg -blur 20x20 -modulate 30 background.xpm 236 convert wallpaper.jpg -blur 20x20 -modulate 30 background.jpg
235 @@URXVT_NAME@@ -pixmap background.xpm -pe automove-background 237 @@URXVT_NAME@@ -pixmap "background.jpg;:root"
236 238
237That works. If you think it doesn't, you lack XPM and Perl support, or you 239That works. If you think it doesn't, you lack AfterImage support, or you
238are unable to read. 240are unable to read.
239 241
2403. Use an ARGB visual: 2423. Use an ARGB visual:
241 243
242 @@URXVT_NAME@@ -depth 32 -fg grey90 -bg rgba:0000/0000/4444/cccc 244 @@URXVT_NAME@@ -depth 32 -fg grey90 -bg rgba:0000/0000/4444/cccc
243 245
244This requires XFT support, and the support of your X-server. If that 246This requires XFT support, and the support of your X-server. If that
245doesn't work for you, blame Xorg and Keith Packard. ARGB visuals aren't 247doesn't work for you, blame Xorg and Keith Packard. ARGB visuals aren't
246there yet, no matter what they claim. Rxvt-Unicode contains the neccessary 248there yet, no matter what they claim. Rxvt-Unicode contains the necessary
247bugfixes and workarounds for Xft and Xlib to make it work, but that 249bugfixes and workarounds for Xft and Xlib to make it work, but that
248doesn't mean that your WM has the required kludges in place. 250doesn't mean that your WM has the required kludges in place.
249 251
2504. Use xcompmgr and let it do the job: 2524. Use xcompmgr and let it do the job:
251 253
268however: Xft fonts often draw glyphs larger than their acclaimed bounding 270however: Xft fonts often draw glyphs larger than their acclaimed bounding
269box, and rxvt-unicode has no way of detecting this (the correct way is to 271box, and rxvt-unicode has no way of detecting this (the correct way is to
270ask for the character bounding box, which unfortunately is wrong in these 272ask for the character bounding box, which unfortunately is wrong in these
271cases). 273cases).
272 274
273It's not clear (to me at least), wether this is a bug in Xft, freetype, 275It's not clear (to me at least), whether this is a bug in Xft, freetype,
274or the respective font. If you encounter this problem you might try using 276or the respective font. If you encounter this problem you might try using
275the C<-lsp> option to give the font more height. If that doesn't work, you 277the C<-lsp> option to give the font more height. If that doesn't work, you
276might be forced to use a different font. 278might be forced to use a different font.
277 279
278All of this is not a problem when using X11 core fonts, as their bounding 280All of this is not a problem when using X11 core fonts, as their bounding
302=head3 Can I switch the fonts at runtime? 304=head3 Can I switch the fonts at runtime?
303 305
304Yes, using an escape sequence. Try something like this, which has the same 306Yes, using an escape sequence. Try something like this, which has the same
305effect as using the C<-fn> switch, and takes effect immediately: 307effect as using the C<-fn> switch, and takes effect immediately:
306 308
307 printf '\e]50;%s\007' "9x15bold,xft:Kochi Gothic" 309 printf '\33]50;%s\007' "9x15bold,xft:Kochi Gothic"
308 310
309This is useful if you e.g. work primarily with japanese (and prefer a 311This is useful if you e.g. work primarily with japanese (and prefer a
310japanese font), but you have to switch to chinese temporarily, where 312japanese font), but you have to switch to chinese temporarily, where
311japanese fonts would only be in your way. 313japanese fonts would only be in your way.
312 314
314 316
315=head3 Why do italic characters look as if clipped? 317=head3 Why do italic characters look as if clipped?
316 318
317Many fonts have difficulties with italic characters and hinting. For 319Many fonts have difficulties with italic characters and hinting. For
318example, the otherwise very nicely hinted font C<xft:Bitstream Vera Sans 320example, the otherwise very nicely hinted font C<xft:Bitstream Vera Sans
319Mono> completely fails in it's italic face. A workaround might be to 321Mono> completely fails in its italic face. A workaround might be to
320enable freetype autohinting, i.e. like this: 322enable freetype autohinting, i.e. like this:
321 323
322 URxvt.italicFont: xft:Bitstream Vera Sans Mono:italic:autohint=true 324 URxvt.italicFont: xft:Bitstream Vera Sans Mono:italic:autohint=true
323 URxvt.boldItalicFont: xft:Bitstream Vera Sans Mono:bold:italic:autohint=true 325 URxvt.boldItalicFont: xft:Bitstream Vera Sans Mono:bold:italic:autohint=true
324 326
330memory and also speeds up rendering considerably. 332memory and also speeds up rendering considerably.
331 333
332=head3 Rxvt-unicode doesn't seem to anti-alias its fonts, what is wrong? 334=head3 Rxvt-unicode doesn't seem to anti-alias its fonts, what is wrong?
333 335
334Rxvt-unicode will use whatever you specify as a font. If it needs to 336Rxvt-unicode will use whatever you specify as a font. If it needs to
335fall back to it's default font search list it will prefer X11 core 337fall back to its default font search list it will prefer X11 core
336fonts, because they are small and fast, and then use Xft fonts. It has 338fonts, because they are small and fast, and then use Xft fonts. It has
337antialiasing disabled for most of them, because the author thinks they 339antialiasing disabled for most of them, because the author thinks they
338look best that way. 340look best that way.
339 341
340If you want antialiasing, you have to specify the fonts manually. 342If you want antialiasing, you have to specify the fonts manually.
342=head3 What's with this bold/blink stuff? 344=head3 What's with this bold/blink stuff?
343 345
344If no bold colour is set via C<colorBD:>, bold will invert text using the 346If no bold colour is set via C<colorBD:>, bold will invert text using the
345standard foreground colour. 347standard foreground colour.
346 348
347For the standard background colour, blinking will actually make the 349For the standard background colour, blinking will actually make
348text blink when compiled with C<--enable-blinking>. with standard 350the text blink when compiled with C<--enable-text-blink>. Without
349colours. Without C<--enable-blinking>, the blink attribute will be 351C<--enable-text-blink>, the blink attribute will be ignored.
350ignored.
351 352
352On ANSI colours, bold/blink attributes are used to set high-intensity 353On ANSI colours, bold/blink attributes are used to set high-intensity
353foreground/background colors. 354foreground/background colors.
354 355
355color0-7 are the low-intensity colors. 356color0-7 are the low-intensity colors.
460has been designed yet). 461has been designed yet).
461 462
462Until then, you might get away with switching fonts at runtime (see L<Can 463Until then, you might get away with switching fonts at runtime (see L<Can
463I switch the fonts at runtime?> later in this document). 464I switch the fonts at runtime?> later in this document).
464 465
466=head3 How can I make mplayer display video correctly?
467
468We are working on it, in the meantime, as a workaround, use something like:
469
470 @@URXVT_NAME@@ -b 600 -geometry 20x1 -e sh -c 'mplayer -wid $WINDOWID file...'
471
472
465=head2 Keyboard, Mouse & User Interaction 473=head2 Keyboard, Mouse & User Interaction
466 474
467=head3 The new selection selects pieces that are too big, how can I select single words? 475=head3 The new selection selects pieces that are too big, how can I select single words?
468 476
469If you want to select e.g. alphanumeric words, you can use the following 477If you want to select e.g. alphanumeric words, you can use the following
512circumstances, it will move your cursor around when you click into the 520circumstances, it will move your cursor around when you click into the
513line that contains it. It tries hard not to do this at the wrong moment, 521line that contains it. It tries hard not to do this at the wrong moment,
514but when running a program that doesn't parse cursor movements or in some 522but when running a program that doesn't parse cursor movements or in some
515cases during rlogin sessions, it fails to detect this properly. 523cases during rlogin sessions, it fails to detect this properly.
516 524
517You can permamently switch this feature off by disabling the C<readline> 525You can permanently switch this feature off by disabling the C<readline>
518extension: 526extension:
519 527
520 URxvt.perl-ext-common: default,-readline 528 URxvt.perl-ext-common: default,-readline
521 529
522=head3 My numerical keypad acts weird and generates differing output? 530=head3 My numerical keypad acts weird and generates differing output?
523 531
524Some Debian GNUL/Linux users seem to have this problem, although no 532Some Debian GNUL/Linux users seem to have this problem, although no
525specific details were reported so far. It is possible that this is caused 533specific details were reported so far. It is possible that this is caused
526by the wrong C<TERM> setting, although the details of wether and how 534by the wrong C<TERM> setting, although the details of whether and how
527this can happen are unknown, as C<TERM=rxvt> should offer a compatible 535this can happen are unknown, as C<TERM=rxvt> should offer a compatible
528keymap. See the answer to the previous question, and please report if that 536keymap. See the answer to the previous question, and please report if that
529helped. 537helped.
530 538
531=head3 My Compose (Multi_key) key is no longer working. 539=head3 My Compose (Multi_key) key is no longer working.
557depressed. 565depressed.
558 566
559=head3 What's with the strange Backspace/Delete key behaviour? 567=head3 What's with the strange Backspace/Delete key behaviour?
560 568
561Assuming that the physical Backspace key corresponds to the 569Assuming that the physical Backspace key corresponds to the
562BackSpace keysym (not likely for Linux ... see the following 570Backspace keysym (not likely for Linux ... see the following
563question) there are two standard values that can be used for 571question) there are two standard values that can be used for
564Backspace: C<^H> and C<^?>. 572Backspace: C<^H> and C<^?>.
565 573
566Historically, either value is correct, but rxvt-unicode adopts the debian 574Historically, either value is correct, but rxvt-unicode adopts the debian
567policy of using C<^?> when unsure, because it's the one only only correct 575policy of using C<^?> when unsure, because it's the one and only correct
568choice :). 576choice :).
569 577
570Rxvt-unicode tries to inherit the current stty settings and uses the value 578Rxvt-unicode tries to inherit the current stty settings and uses the value
571of `erase' to guess the value for backspace. If rxvt-unicode wasn't 579of `erase' to guess the value for backspace. If rxvt-unicode wasn't
572started from a terminal (say, from a menu or by remote shell), then the 580started from a terminal (say, from a menu or by remote shell), then the
604key has been assigned an escape sequence to match the vt100 for Execute 612key has been assigned an escape sequence to match the vt100 for Execute
605(C<ESC [ 3 ~>) and is in the supplied termcap/terminfo. 613(C<ESC [ 3 ~>) and is in the supplied termcap/terminfo.
606 614
607Some other Backspace problems: 615Some other Backspace problems:
608 616
609some editors use termcap/terminfo, 617some editors use termcap/terminfo,
610some editors (vim I'm told) expect Backspace = ^H, 618some editors (vim I'm told) expect Backspace = ^H,
611GNU Emacs (and Emacs-like editors) use ^H for help. 619GNU Emacs (and Emacs-like editors) use ^H for help.
612 620
613Perhaps someday this will all be resolved in a consistent manner. 621Perhaps someday this will all be resolved in a consistent manner.
614 622
655Rather than have rxvt-unicode try to accommodate all the various possible 663Rather than have rxvt-unicode try to accommodate all the various possible
656keyboard mappings, it is better to use `xmodmap' to remap the keys as 664keyboard mappings, it is better to use `xmodmap' to remap the keys as
657required for your particular machine. 665required for your particular machine.
658 666
659 667
660
661=head2 Terminal Configuration 668=head2 Terminal Configuration
669
670=head3 Can I see a typical configuration?
671
672The default configuration tries to be xterm-like, which I don't like that
673much, but it's least surprise to regular users.
674
675As a rxvt or rxvt-unicode user, you are practically supposed to invest
676time into customising your terminal. To get you started, here is the
677author's .Xdefaults entries, with comments on what they do. It's certainly
678not I<typical>, but what's typical...
679
680 URxvt.cutchars: "()*,<>[]{}|'
681 URxvt.print-pipe: cat >/tmp/xxx
682
683These are just for testing stuff.
684
685 URxvt.imLocale: ja_JP.UTF-8
686 URxvt.preeditType: OnTheSpot,None
687
688This tells rxvt-unicode to use a special locale when communicating with
689the X Input Method, and also tells it to only use the OnTheSpot pre-edit
690type, which requires the C<xim-onthespot> perl extension but rewards me
691with correct-looking fonts.
692
693 URxvt.perl-lib: /root/lib/urxvt
694 URxvt.perl-ext-common: default,selection-autotransform,selection-pastebin,xim-onthespot,remote-clipboard
695 URxvt.selection.pattern-0: ( at .*? line \\d+)
696 URxvt.selection.pattern-1: ^(/[^:]+):\
697 URxvt.selection-autotransform.0: s/^([^:[:space:]]+):(\\d+):?$/:e \\Q$1\\E\\x0d:$2\\x0d/
698 URxvt.selection-autotransform.1: s/^ at (.*?) line (\\d+)$/:e \\Q$1\\E\\x0d:$2\\x0d/
699
700This is my perl configuration. The first two set the perl library
701directory and also tells urxvt to use a large number of extensions. I
702develop for myself mostly, so I actually use most of the extensions I
703write.
704
705The selection stuff mainly makes the selection perl-error-message aware
706and tells it to convert perl error messages into vi-commands to load the
707relevant file and go tot he error line number.
708
709 URxvt.scrollstyle: plain
710 URxvt.secondaryScroll: true
711
712As the documentation says: plain is the preferred scrollbar for the
713author. The C<secondaryScroll> configures urxvt to scroll in full-screen
714apps, like screen, so lines scrolled out of screen end up in urxvt's
715scrollback buffer.
716
717 URxvt.background: #000000
718 URxvt.foreground: gray90
719 URxvt.color7: gray90
720 URxvt.colorBD: #ffffff
721 URxvt.cursorColor: #e0e080
722 URxvt.throughColor: #8080f0
723 URxvt.highlightColor: #f0f0f0
724
725Some colours. Not sure which ones are being used or even non-defaults, but
726these are in my .Xdefaults. Most notably, they set foreground/background
727to light gray/black, and also make sure that the colour 7 matches the
728default foreground colour.
729
730 URxvt.underlineColor: yellow
731
732Another colour, makes underline lines look different. Sometimes hurts, but
733is mostly a nice effect.
734
735 URxvt.geometry: 154x36
736 URxvt.loginShell: false
737 URxvt.meta: ignore
738 URxvt.utmpInhibit: true
739
740Uh, well, should be mostly self-explanatory. By specifying some defaults
741manually, I can quickly switch them for testing.
742
743 URxvt.saveLines: 8192
744
745A large scrollback buffer is essential. Really.
746
747 URxvt.mapAlert: true
748
749The only case I use it is for my IRC window, which I like to keep
750iconified till people msg me (which beeps).
751
752 URxvt.visualBell: true
753
754The audible bell is often annoying, especially when in a crowd.
755
756 URxvt.insecure: true
757
758Please don't hack my mutt! Ooops...
759
760 URxvt.pastableTabs: false
761
762I once thought this is a great idea.
763
764 urxvt.font: 9x15bold,\
765 -misc-fixed-bold-r-normal--15-140-75-75-c-90-iso10646-1,\
766 -misc-fixed-medium-r-normal--15-140-75-75-c-90-iso10646-1, \
767 [codeset=JISX0208]xft:Kochi Gothic, \
768 xft:Bitstream Vera Sans Mono:autohint=true, \
769 xft:Code2000:antialias=false
770 urxvt.boldFont: -xos4-terminus-bold-r-normal--14-140-72-72-c-80-iso8859-15
771 urxvt.italicFont: xft:Bitstream Vera Sans Mono:italic:autohint=true
772 urxvt.boldItalicFont: xft:Bitstream Vera Sans Mono:bold:italic:autohint=true
773
774I wrote rxvt-unicode to be able to specify fonts exactly. So don't be
775overwhelmed. A special note: the C<9x15bold> mentioned above is actually
776the version from XFree-3.3, as XFree-4 replaced it by a totally different
777font (different glyphs for C<;> and many other harmless characters),
778while the second font is actually the C<9x15bold> from XFree4/XOrg. The
779bold version has less chars than the medium version, so I use it for rare
780characters, too. When editing sources with vim, I use italic for comments
781and other stuff, which looks quite good with Bitstream Vera anti-aliased.
782
783Terminus is a quite bad font (many very wrong glyphs), but for most of my
784purposes, it works, and gives a different look, as my normal (Non-bold)
785font is already bold, and I want to see a difference between bold and
786normal fonts.
787
788Please note that I used the C<urxvt> instance name and not the C<URxvt>
789class name. Thats because I use different configs for different purposes,
790for example, my IRC window is started with C<-name IRC>, and uses these
791defaults:
792
793 IRC*title: IRC
794 IRC*geometry: 87x12+535+542
795 IRC*saveLines: 0
796 IRC*mapAlert: true
797 IRC*font: suxuseuro
798 IRC*boldFont: suxuseuro
799 IRC*colorBD: white
800 IRC*keysym.M-C-1: command:\033]710;suxuseuro\007\033]711;suxuseuro\007
801 IRC*keysym.M-C-2: command:\033]710;9x15bold\007\033]711;9x15bold\007
802
803C<Alt-Shift-1> and C<Alt-Shift-2> switch between two different font
804sizes. C<suxuseuro> allows me to keep an eye (and actually read)
805stuff while keeping a very small window. If somebody pastes something
806complicated (e.g. japanese), I temporarily switch to a larger font.
807
808The above is all in my C<.Xdefaults> (I don't use C<.Xresources> nor
809C<xrdb>). I also have some resources in a separate C<.Xdefaults-hostname>
810file for different hosts, for example, on ym main desktop, I use:
811
812 URxvt.keysym.C-M-q: command:\033[3;5;5t
813 URxvt.keysym.C-M-y: command:\033[3;5;606t
814 URxvt.keysym.C-M-e: command:\033[3;1605;5t
815 URxvt.keysym.C-M-c: command:\033[3;1605;606t
816 URxvt.keysym.C-M-p: perl:test
817
818The first for keysym definitions allow me to quickly bring some windows
819in the layout I like most. Ion users might start laughing but will stop
820immediately when I tell them that I use my own Fvwm2 module for much the
821same effect as Ion provides, and I only very rarely use the above key
822combinations :->
662 823
663=head3 Why doesn't rxvt-unicode read my resources? 824=head3 Why doesn't rxvt-unicode read my resources?
664 825
665Well, why, indeed? It does, in a way very similar to other X 826Well, why, indeed? It does, in a way very similar to other X
666applications. Most importantly, this means that if you or your OS loads 827applications. Most importantly, this means that if you or your OS loads
675Also consider the form resources have to use: 836Also consider the form resources have to use:
676 837
677 URxvt.resource: value 838 URxvt.resource: value
678 839
679If you want to use another form (there are lots of different ways of 840If you want to use another form (there are lots of different ways of
680specifying resources), make sure you understand wether and why it 841specifying resources), make sure you understand whether and why it
681works. If unsure, use the form above. 842works. If unsure, use the form above.
682 843
683=head3 When I log-in to another system it tells me about missing terminfo data? 844=head3 When I log-in to another system it tells me about missing terminfo data?
684 845
685The terminal description used by rxvt-unicode is not as widely available 846The terminal description used by rxvt-unicode is not as widely available
686as that for xterm, or even rxvt (for which the same problem often arises). 847as that for xterm, or even rxvt (for which the same problem often arises).
687 848
688The correct solution for this problem is to install the terminfo, this can 849The correct solution for this problem is to install the terminfo, this can
689be done like this (with ncurses' infocmp): 850be done like this (with ncurses' infocmp and works as user and admin):
690 851
691 REMOTE=remotesystem.domain 852 REMOTE=remotesystem.domain
692 infocmp rxvt-unicode | ssh $REMOTE "cat >/tmp/ti && tic /tmp/ti" 853 infocmp rxvt-unicode | ssh $REMOTE "mkdir -p .terminfo && cat >/tmp/ti && tic /tmp/ti"
693 854
694... or by installing rxvt-unicode normally on the remote system, 855... or by installing rxvt-unicode normally on the remote system,
856
857One some systems you might need to set C<$TERMINFO> to the full path of
858F<$HOME/.terminfo> for this to work.
695 859
696If you cannot or do not want to do this, then you can simply set 860If you cannot or do not want to do this, then you can simply set
697C<TERM=rxvt> or even C<TERM=xterm>, and live with the small number of 861C<TERM=rxvt> or even C<TERM=xterm>, and live with the small number of
698problems arising, which includes wrong keymapping, less and different 862problems arising, which includes wrong keymapping, less and different
699colours and some refresh errors in fullscreen applications. It's a nice 863colours and some refresh errors in fullscreen applications. It's a nice
722One reason you might want this is that some distributions or operating 886One reason you might want this is that some distributions or operating
723systems still compile some programs using the long-obsoleted termcap 887systems still compile some programs using the long-obsoleted termcap
724library (Fedora Core's bash is one example) and rely on a termcap entry 888library (Fedora Core's bash is one example) and rely on a termcap entry
725for C<rxvt-unicode>. 889for C<rxvt-unicode>.
726 890
727You could use rxvt's termcap entry with resonable results in many cases. 891You could use rxvt's termcap entry with reasonable results in many cases.
728You can also create a termcap entry by using terminfo's infocmp program 892You can also create a termcap entry by using terminfo's infocmp program
729like this: 893like this:
730 894
731 infocmp -C rxvt-unicode 895 infocmp -C rxvt-unicode
732 896
754 :vs=\E[?25h: 918 :vs=\E[?25h:
755 919
756=head3 Why does C<ls> no longer have coloured output? 920=head3 Why does C<ls> no longer have coloured output?
757 921
758The C<ls> in the GNU coreutils unfortunately doesn't use terminfo to 922The C<ls> in the GNU coreutils unfortunately doesn't use terminfo to
759decide wether a terminal has colour, but uses it's own configuration 923decide whether a terminal has colour, but uses its own configuration
760file. Needless to say, C<rxvt-unicode> is not in it's default file (among 924file. Needless to say, C<rxvt-unicode> is not in its default file (among
761with most other terminals supporting colour). Either add: 925with most other terminals supporting colour). Either add:
762 926
763 TERM rxvt-unicode 927 TERM rxvt-unicode
764 928
765to C</etc/DIR_COLORS> or simply add: 929to C</etc/DIR_COLORS> or simply add:
799If you encounter strange problems like typing an accented character but 963If you encounter strange problems like typing an accented character but
800getting two unrelated other characters or similar, or if program output is 964getting two unrelated other characters or similar, or if program output is
801subtly garbled, then you should check your locale settings. 965subtly garbled, then you should check your locale settings.
802 966
803Rxvt-unicode must be started with the same C<LC_CTYPE> setting as the 967Rxvt-unicode must be started with the same C<LC_CTYPE> setting as the
804programs. Often rxvt-unicode is started in the C<C> locale, while the 968programs running in it. Often rxvt-unicode is started in the C<C> locale,
805login script running within the rxvt-unicode window changes the locale to 969while the login script running within the rxvt-unicode window changes the
806something else, e.g. C<en_GB.UTF-8>. Needless to say, this is not going to work. 970locale to something else, e.g. C<en_GB.UTF-8>. Needless to say, this is
971not going to work, and is the most common cause for problems.
807 972
808The best thing is to fix your startup environment, as you will likely run 973The best thing is to fix your startup environment, as you will likely run
809into other problems. If nothing works you can try this in your .profile. 974into other problems. If nothing works you can try this in your .profile.
810 975
811 printf '\e]701;%s\007' "$LC_CTYPE" 976 printf '\33]701;%s\007' "$LC_CTYPE" # $LANG or $LC_ALL are worth a try, too
812 977
813If this doesn't work, then maybe you use a C<LC_CTYPE> specification not 978If this doesn't work, then maybe you use a C<LC_CTYPE> specification not
814supported on your systems. Some systems have a C<locale> command which 979supported on your systems. Some systems have a C<locale> command which
815displays this (also, C<perl -e0> can be used to check locale settings, as 980displays this (also, C<perl -e0> can be used to check locale settings, as
816it will complain loudly if it cannot set the locale). If it displays something 981it will complain loudly if it cannot set the locale). If it displays something
837The reasons is that there exists a perfectly fine mechanism for selecting 1002The reasons is that there exists a perfectly fine mechanism for selecting
838the encoding, doing I/O and (most important) communicating this to all 1003the encoding, doing I/O and (most important) communicating this to all
839applications so everybody agrees on character properties such as width 1004applications so everybody agrees on character properties such as width
840and code number. This mechanism is the I<locale>. Applications not using 1005and code number. This mechanism is the I<locale>. Applications not using
841that info will have problems (for example, C<xterm> gets the width of 1006that info will have problems (for example, C<xterm> gets the width of
842characters wrong as it uses it's own, locale-independent table under all 1007characters wrong as it uses its own, locale-independent table under all
843locales). 1008locales).
844 1009
845Rxvt-unicode uses the C<LC_CTYPE> locale category to select encoding. All 1010Rxvt-unicode uses the C<LC_CTYPE> locale category to select encoding. All
846programs doing the same (that is, most) will automatically agree in the 1011programs doing the same (that is, most) will automatically agree in the
847interpretation of characters. 1012interpretation of characters.
866=head3 Can I switch locales at runtime? 1031=head3 Can I switch locales at runtime?
867 1032
868Yes, using an escape sequence. Try something like this, which sets 1033Yes, using an escape sequence. Try something like this, which sets
869rxvt-unicode's idea of C<LC_CTYPE>. 1034rxvt-unicode's idea of C<LC_CTYPE>.
870 1035
871 printf '\e]701;%s\007' ja_JP.SJIS 1036 printf '\33]701;%s\007' ja_JP.SJIS
872 1037
873See also the previous answer. 1038See also the previous answer.
874 1039
875Sometimes this capability is rather handy when you want to work in 1040Sometimes this capability is rather handy when you want to work in
876one locale (e.g. C<de_DE.UTF-8>) but some programs don't support it 1041one locale (e.g. C<de_DE.UTF-8>) but some programs don't support it
877(e.g. UTF-8). For example, I use this script to start C<xjdic>, which 1042(e.g. UTF-8). For example, I use this script to start C<xjdic>, which
878first switches to a locale supported by xjdic and back later: 1043first switches to a locale supported by xjdic and back later:
879 1044
880 printf '\e]701;%s\007' ja_JP.SJIS 1045 printf '\33]701;%s\007' ja_JP.SJIS
881 xjdic -js 1046 xjdic -js
882 printf '\e]701;%s\007' de_DE.UTF-8 1047 printf '\33]701;%s\007' de_DE.UTF-8
883 1048
884You can also use xterm's C<luit> program, which usually works fine, except 1049You can also use xterm's C<luit> program, which usually works fine, except
885for some locales where character width differs between program- and 1050for some locales where character width differs between program- and
886rxvt-unicode-locales. 1051rxvt-unicode-locales.
887 1052
905=item - Make sure your XIM server is actually running. 1070=item - Make sure your XIM server is actually running.
906 1071
907=item - Make sure the C<XMODIFIERS> environment variable is set correctly when I<starting> rxvt-unicode. 1072=item - Make sure the C<XMODIFIERS> environment variable is set correctly when I<starting> rxvt-unicode.
908 1073
909When you want to use e.g. B<kinput2>, it must be set to 1074When you want to use e.g. B<kinput2>, it must be set to
910C<@im=kinput2>. For B<scim>, use C<@im=SCIM>. Youc an see what input 1075C<@im=kinput2>. For B<scim>, use C<@im=SCIM>. You can see what input
911method servers are running with this command: 1076method servers are running with this command:
912 1077
913 xprop -root XIM_SERVERS 1078 xprop -root XIM_SERVERS
914 1079
915=item 1080=item
916 1081
917=back 1082=back
918 1083
919=head3 My input method wants <some encoding> but I want UTF-8, what can I do? 1084=head3 My input method wants <some encoding> but I want UTF-8, what can I do?
920 1085
960 1125
961=head3 I am maintaining rxvt-unicode for distribution/OS XXX, any recommendation? 1126=head3 I am maintaining rxvt-unicode for distribution/OS XXX, any recommendation?
962 1127
963You should build one binary with the default options. F<configure> 1128You should build one binary with the default options. F<configure>
964now enables most useful options, and the trend goes to making them 1129now enables most useful options, and the trend goes to making them
965runtime-switchable, too, so there is usually no drawback to enbaling them, 1130runtime-switchable, too, so there is usually no drawback to enabling them,
966except higher disk and possibly memory usage. The perl interpreter should 1131except higher disk and possibly memory usage. The perl interpreter should
967be enabled, as important functionality (menus, selection, likely more in 1132be enabled, as important functionality (menus, selection, likely more in
968the future) depends on it. 1133the future) depends on it.
969 1134
970You should not overwrite the C<perl-ext-common> snd C<perl-ext> resources 1135You should not overwrite the C<perl-ext-common> snd C<perl-ext> resources
993This forking is done as the very first within main(), which is very early 1158This forking is done as the very first within main(), which is very early
994and reduces possible bugs to initialisation code run before main(), or 1159and reduces possible bugs to initialisation code run before main(), or
995things like the dynamic loader of your system, which should result in very 1160things like the dynamic loader of your system, which should result in very
996little risk. 1161little risk.
997 1162
998=head3 On Solaris 9, many line-drawing characters are too wide.
999
1000Seems to be a known bug, read
1001L<http://nixdoc.net/files/forum/about34198.html>. Some people use the
1002following ugly workaround to get non-double-wide-characters working:
1003
1004 #define wcwidth(x) wcwidth(x) > 1 ? 1 : wcwidth(x)
1005
1006=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.
1007 1164
1008Rxvt-unicode requires the symbol C<__STDC_ISO_10646__> to be defined 1165Rxvt-unicode requires the symbol C<__STDC_ISO_10646__> to be defined
1009in your compile environment, or an implementation that implements it, 1166in your compile environment, or an implementation that implements it,
1010wether 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
1011B<wchar_t> is represented as unicode. 1168B<wchar_t> is represented as unicode.
1012 1169
1013As you might have guessed, FreeBSD does neither define this symobl nor 1170As you might have guessed, FreeBSD does neither define this symbol nor
1014does it support it. Instead, it uses it's own internal representation of 1171does it support it. Instead, it uses its own internal representation of
1015B<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.
1016 1173
1017However, 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
1018C<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>.
1019 1176
1033 1190
1034The rxvt-unicode author insists that the right way to fix this is in the 1191The rxvt-unicode author insists that the right way to fix this is in the
1035system libraries once and for all, instead of forcing every app to carry 1192system libraries once and for all, instead of forcing every app to carry
1036complete replacements for them :) 1193complete replacements for them :)
1037 1194
1038=head3 I use Solaris 9 and it doesn't compile/work/etc.
1039
1040Try the diff in F<doc/solaris9.patch> as a base. It fixes the worst
1041problems with C<wcwidth> and a compile problem.
1042
1043=head3 How can I use rxvt-unicode under cygwin? 1195=head3 How can I use rxvt-unicode under cygwin?
1044 1196
1045rxvt-unicode should compile and run out of the box on cygwin, using 1197rxvt-unicode should compile and run out of the box on cygwin, using
1046the X11 libraries that come with cygwin. libW11 emulation is no 1198the X11 libraries that come with cygwin. libW11 emulation is no
1047longer supported (and makes no sense, either, as it only supported a 1199longer supported (and makes no sense, either, as it only supported a
1050old libW11 emulation. 1202old libW11 emulation.
1051 1203
1052At the time of this writing, cygwin didn't seem to support any multi-byte 1204At the time of this writing, cygwin didn't seem to support any multi-byte
1053encodings (you might try C<LC_CTYPE=C-UTF-8>), so you are likely limited 1205encodings (you might try C<LC_CTYPE=C-UTF-8>), so you are likely limited
1054to 8-bit encodings. 1206to 8-bit encodings.
1207
1208=head3 Character widths are not correct.
1209
1210urxvt uses the system wcwidth function to know the information about
1211the width of characters, so on systems with incorrect locale data you
1212will likely get bad results. Two notorious examples are Solaris 9,
1213where single-width characters like U+2514 are reported as double-width,
1214and Darwin 8, where combining chars are reported having width 1.
1215
1216The solution is to upgrade your system or switch to a better one. A
1217possibly working workaround is to use a wcwidth implementation like
1218
1219http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c
1055 1220
1056=head1 RXVT-UNICODE TECHNICAL REFERENCE 1221=head1 RXVT-UNICODE TECHNICAL REFERENCE
1057 1222
1058The rest of this document describes various technical aspects of 1223The rest of this document describes various technical aspects of
1059B<rxvt-unicode>. First the description of supported command sequences, 1224B<rxvt-unicode>. First the description of supported command sequences,
1553 1718
1554Toggle DEC Private Mode Values (rxvt extension). I<where> 1719Toggle DEC Private Mode Values (rxvt extension). I<where>
1555 1720
1556=over 4 1721=over 4
1557 1722
1558=item B<< C<Ps = 1> >> (DECCKM) 1723=item B<< C<Pm = 1> >> (DECCKM)
1559 1724
1560=begin table 1725=begin table
1561 1726
1562 B<< C<h> >> Application Cursor Keys 1727 B<< C<h> >> Application Cursor Keys
1563 B<< C<l> >> Normal Cursor Keys 1728 B<< C<l> >> Normal Cursor Keys
1564 1729
1565=end table 1730=end table
1566 1731
1567=item B<< C<Ps = 2> >> (ANSI/VT52 mode) 1732=item B<< C<Pm = 2> >> (ANSI/VT52 mode)
1568 1733
1569=begin table 1734=begin table
1570 1735
1571 B<< C<h> >> Enter VT52 mode 1736 B<< C<h> >> Enter VT52 mode
1572 B<< C<l> >> Enter VT52 mode 1737 B<< C<l> >> Enter VT52 mode
1573 1738
1574=end table 1739=end table
1575 1740
1576=item B<< C<Ps = 3> >> 1741=item B<< C<Pm = 3> >>
1577 1742
1578=begin table 1743=begin table
1579 1744
1580 B<< C<h> >> 132 Column Mode (DECCOLM) 1745 B<< C<h> >> 132 Column Mode (DECCOLM)
1581 B<< C<l> >> 80 Column Mode (DECCOLM) 1746 B<< C<l> >> 80 Column Mode (DECCOLM)
1582 1747
1583=end table 1748=end table
1584 1749
1585=item B<< C<Ps = 4> >> 1750=item B<< C<Pm = 4> >>
1586 1751
1587=begin table 1752=begin table
1588 1753
1589 B<< C<h> >> Smooth (Slow) Scroll (DECSCLM) 1754 B<< C<h> >> Smooth (Slow) Scroll (DECSCLM)
1590 B<< C<l> >> Jump (Fast) Scroll (DECSCLM) 1755 B<< C<l> >> Jump (Fast) Scroll (DECSCLM)
1591 1756
1592=end table 1757=end table
1593 1758
1594=item B<< C<Ps = 5> >> 1759=item B<< C<Pm = 5> >>
1595 1760
1596=begin table 1761=begin table
1597 1762
1598 B<< C<h> >> Reverse Video (DECSCNM) 1763 B<< C<h> >> Reverse Video (DECSCNM)
1599 B<< C<l> >> Normal Video (DECSCNM) 1764 B<< C<l> >> Normal Video (DECSCNM)
1600 1765
1601=end table 1766=end table
1602 1767
1603=item B<< C<Ps = 6> >> 1768=item B<< C<Pm = 6> >>
1604 1769
1605=begin table 1770=begin table
1606 1771
1607 B<< C<h> >> Origin Mode (DECOM) 1772 B<< C<h> >> Origin Mode (DECOM)
1608 B<< C<l> >> Normal Cursor Mode (DECOM) 1773 B<< C<l> >> Normal Cursor Mode (DECOM)
1609 1774
1610=end table 1775=end table
1611 1776
1612=item B<< C<Ps = 7> >> 1777=item B<< C<Pm = 7> >>
1613 1778
1614=begin table 1779=begin table
1615 1780
1616 B<< C<h> >> Wraparound Mode (DECAWM) 1781 B<< C<h> >> Wraparound Mode (DECAWM)
1617 B<< C<l> >> No Wraparound Mode (DECAWM) 1782 B<< C<l> >> No Wraparound Mode (DECAWM)
1618 1783
1619=end table 1784=end table
1620 1785
1621=item B<< C<Ps = 8> >> I<unimplemented> 1786=item B<< C<Pm = 8> >> I<unimplemented>
1622 1787
1623=begin table 1788=begin table
1624 1789
1625 B<< C<h> >> Auto-repeat Keys (DECARM) 1790 B<< C<h> >> Auto-repeat Keys (DECARM)
1626 B<< C<l> >> No Auto-repeat Keys (DECARM) 1791 B<< C<l> >> No Auto-repeat Keys (DECARM)
1627 1792
1628=end table 1793=end table
1629 1794
1630=item B<< C<Ps = 9> >> X10 XTerm 1795=item B<< C<Pm = 9> >> X10 XTerm
1631 1796
1632=begin table 1797=begin table
1633 1798
1634 B<< C<h> >> Send Mouse X & Y on button press. 1799 B<< C<h> >> Send Mouse X & Y on button press.
1635 B<< C<l> >> No mouse reporting. 1800 B<< C<l> >> No mouse reporting.
1636 1801
1637=end table 1802=end table
1638 1803
1639=item B<< C<Ps = 25> >> 1804=item B<< C<Pm = 25> >>
1640 1805
1641=begin table 1806=begin table
1642 1807
1643 B<< C<h> >> Visible cursor {cnorm/cvvis} 1808 B<< C<h> >> Visible cursor {cnorm/cvvis}
1644 B<< C<l> >> Invisible cursor {civis} 1809 B<< C<l> >> Invisible cursor {civis}
1645 1810
1646=end table 1811=end table
1647 1812
1648=item B<< C<Ps = 30> >> 1813=item B<< C<Pm = 30> >>
1649 1814
1650=begin table 1815=begin table
1651 1816
1652 B<< C<h> >> scrollBar visisble 1817 B<< C<h> >> scrollBar visisble
1653 B<< C<l> >> scrollBar invisisble 1818 B<< C<l> >> scrollBar invisisble
1654 1819
1655=end table 1820=end table
1656 1821
1657=item B<< C<Ps = 35> >> (B<rxvt>) 1822=item B<< C<Pm = 35> >> (B<rxvt>)
1658 1823
1659=begin table 1824=begin table
1660 1825
1661 B<< C<h> >> Allow XTerm Shift+key sequences 1826 B<< C<h> >> Allow XTerm Shift+key sequences
1662 B<< C<l> >> Disallow XTerm Shift+key sequences 1827 B<< C<l> >> Disallow XTerm Shift+key sequences
1663 1828
1664=end table 1829=end table
1665 1830
1666=item B<< C<Ps = 38> >> I<unimplemented> 1831=item B<< C<Pm = 38> >> I<unimplemented>
1667 1832
1668Enter Tektronix Mode (DECTEK) 1833Enter Tektronix Mode (DECTEK)
1669 1834
1670=item B<< C<Ps = 40> >> 1835=item B<< C<Pm = 40> >>
1671 1836
1672=begin table 1837=begin table
1673 1838
1674 B<< C<h> >> Allow 80/132 Mode 1839 B<< C<h> >> Allow 80/132 Mode
1675 B<< C<l> >> Disallow 80/132 Mode 1840 B<< C<l> >> Disallow 80/132 Mode
1676 1841
1677=end table 1842=end table
1678 1843
1679=item B<< C<Ps = 44> >> I<unimplemented> 1844=item B<< C<Pm = 44> >> I<unimplemented>
1680 1845
1681=begin table 1846=begin table
1682 1847
1683 B<< C<h> >> Turn On Margin Bell 1848 B<< C<h> >> Turn On Margin Bell
1684 B<< C<l> >> Turn Off Margin Bell 1849 B<< C<l> >> Turn Off Margin Bell
1685 1850
1686=end table 1851=end table
1687 1852
1688=item B<< C<Ps = 45> >> I<unimplemented> 1853=item B<< C<Pm = 45> >> I<unimplemented>
1689 1854
1690=begin table 1855=begin table
1691 1856
1692 B<< C<h> >> Reverse-wraparound Mode 1857 B<< C<h> >> Reverse-wraparound Mode
1693 B<< C<l> >> No Reverse-wraparound Mode 1858 B<< C<l> >> No Reverse-wraparound Mode
1694 1859
1695=end table 1860=end table
1696 1861
1697=item B<< C<Ps = 46> >> I<unimplemented> 1862=item B<< C<Pm = 46> >> I<unimplemented>
1698 1863
1699=item B<< C<Ps = 47> >> 1864=item B<< C<Pm = 47> >>
1700 1865
1701=begin table 1866=begin table
1702 1867
1703 B<< C<h> >> Use Alternate Screen Buffer 1868 B<< C<h> >> Use Alternate Screen Buffer
1704 B<< C<l> >> Use Normal Screen Buffer 1869 B<< C<l> >> Use Normal Screen Buffer
1705 1870
1706=end table 1871=end table
1707 1872
1708X<Priv66> 1873X<Priv66>
1709 1874
1710=item B<< C<Ps = 66> >> 1875=item B<< C<Pm = 66> >>
1711 1876
1712=begin table 1877=begin table
1713 1878
1714 B<< C<h> >> Application Keypad (DECPAM) == C<ESC => 1879 B<< C<h> >> Application Keypad (DECPAM) == C<ESC =>
1715 B<< C<l> >> Normal Keypad (DECPNM) == C<< ESC > >> 1880 B<< C<l> >> Normal Keypad (DECPNM) == C<< ESC > >>
1716 1881
1717=end table 1882=end table
1718 1883
1719=item B<< C<Ps = 67> >> 1884=item B<< C<Pm = 67> >>
1720 1885
1721=begin table 1886=begin table
1722 1887
1723 B<< C<h> >> Backspace key sends B<< C<BS> (DECBKM) >> 1888 B<< C<h> >> Backspace key sends B<< C<BS> (DECBKM) >>
1724 B<< C<l> >> Backspace key sends B<< C<DEL> >> 1889 B<< C<l> >> Backspace key sends B<< C<DEL> >>
1725 1890
1726=end table 1891=end table
1727 1892
1728=item B<< C<Ps = 1000> >> (X11 XTerm) 1893=item B<< C<Pm = 1000> >> (X11 XTerm)
1729 1894
1730=begin table 1895=begin table
1731 1896
1732 B<< C<h> >> Send Mouse X & Y on button press and release. 1897 B<< C<h> >> Send Mouse X & Y on button press and release.
1733 B<< C<l> >> No mouse reporting. 1898 B<< C<l> >> No mouse reporting.
1734 1899
1735=end table 1900=end table
1736 1901
1737=item B<< C<Ps = 1001> >> (X11 XTerm) I<unimplemented> 1902=item B<< C<Pm = 1001> >> (X11 XTerm) I<unimplemented>
1738 1903
1739=begin table 1904=begin table
1740 1905
1741 B<< C<h> >> Use Hilite Mouse Tracking. 1906 B<< C<h> >> Use Hilite Mouse Tracking.
1742 B<< C<l> >> No mouse reporting. 1907 B<< C<l> >> No mouse reporting.
1743 1908
1744=end table 1909=end table
1745 1910
1911=item B<< C<Pm = 1002> >> (X11 XTerm)
1912
1913=begin table
1914
1915 B<< C<h> >> Send Mouse X & Y on button press and release, and motion with a button pressed.
1916 B<< C<l> >> No mouse reporting.
1917
1918=end table
1919
1920=item B<< C<Pm = 1003> >> (X11 XTerm)
1921
1922=begin table
1923
1924 B<< C<h> >> Send Mouse X & Y on button press and release, and motion.
1925 B<< C<l> >> No mouse reporting.
1926
1927=end table
1928
1746=item B<< C<Ps = 1010> >> (B<rxvt>) 1929=item B<< C<Pm = 1010> >> (B<rxvt>)
1747 1930
1748=begin table 1931=begin table
1749 1932
1750 B<< C<h> >> Don't scroll to bottom on TTY output 1933 B<< C<h> >> Don't scroll to bottom on TTY output
1751 B<< C<l> >> Scroll to bottom on TTY output 1934 B<< C<l> >> Scroll to bottom on TTY output
1752 1935
1753=end table 1936=end table
1754 1937
1755=item B<< C<Ps = 1011> >> (B<rxvt>) 1938=item B<< C<Pm = 1011> >> (B<rxvt>)
1756 1939
1757=begin table 1940=begin table
1758 1941
1759 B<< C<h> >> Scroll to bottom when a key is pressed 1942 B<< C<h> >> Scroll to bottom when a key is pressed
1760 B<< C<l> >> Don't scroll to bottom when a key is pressed 1943 B<< C<l> >> Don't scroll to bottom when a key is pressed
1761 1944
1762=end table 1945=end table
1763 1946
1764=item B<< C<Ps = 1021> >> (B<rxvt>) 1947=item B<< C<Pm = 1021> >> (B<rxvt>)
1765 1948
1766=begin table 1949=begin table
1767 1950
1768 B<< C<h> >> Bold/italic implies high intensity (see option B<-is>) 1951 B<< C<h> >> Bold/italic implies high intensity (see option B<-is>)
1769 B<< C<l> >> Font styles have no effect on intensity (Compile styles) 1952 B<< C<l> >> Font styles have no effect on intensity (Compile styles)
1770 1953
1771=end table 1954=end table
1772 1955
1773=item B<< C<Ps = 1047> >> 1956=item B<< C<Pm = 1047> >>
1774 1957
1775=begin table 1958=begin table
1776 1959
1777 B<< C<h> >> Use Alternate Screen Buffer 1960 B<< C<h> >> Use Alternate Screen Buffer
1778 B<< C<l> >> Use Normal Screen Buffer - clear Alternate Screen Buffer if returning from it 1961 B<< C<l> >> Use Normal Screen Buffer - clear Alternate Screen Buffer if returning from it
1779 1962
1780=end table 1963=end table
1781 1964
1782=item B<< C<Ps = 1048> >> 1965=item B<< C<Pm = 1048> >>
1783 1966
1784=begin table 1967=begin table
1785 1968
1786 B<< C<h> >> Save cursor position 1969 B<< C<h> >> Save cursor position
1787 B<< C<l> >> Restore cursor position 1970 B<< C<l> >> Restore cursor position
1788 1971
1789=end table 1972=end table
1790 1973
1791=item B<< C<Ps = 1049> >> 1974=item B<< C<Pm = 1049> >>
1792 1975
1793=begin table 1976=begin table
1794 1977
1795 B<< C<h> >> Use Alternate Screen Buffer - clear Alternate Screen Buffer if switching to it 1978 B<< C<h> >> Use Alternate Screen Buffer - clear Alternate Screen Buffer if switching to it
1796 B<< C<l> >> Use Normal Screen Buffer 1979 B<< C<l> >> Use Normal Screen Buffer
1825 B<< C<Ps = 12> >> Change colour of text cursor foreground to B<< C<Pt> >> 2008 B<< C<Ps = 12> >> Change colour of text cursor foreground to B<< C<Pt> >>
1826 B<< C<Ps = 13> >> Change colour of mouse foreground to B<< C<Pt> >> 2009 B<< C<Ps = 13> >> Change colour of mouse foreground to B<< C<Pt> >>
1827 B<< C<Ps = 17> >> Change colour of highlight characters to B<< C<Pt> >> 2010 B<< C<Ps = 17> >> Change colour of highlight characters to B<< C<Pt> >>
1828 B<< C<Ps = 18> >> Change colour of bold characters to B<< C<Pt> >> [deprecated, see 706] 2011 B<< C<Ps = 18> >> Change colour of bold characters to B<< C<Pt> >> [deprecated, see 706]
1829 B<< C<Ps = 19> >> Change colour of underlined characters to B<< C<Pt> >> [deprecated, see 707] 2012 B<< C<Ps = 19> >> Change colour of underlined characters to B<< C<Pt> >> [deprecated, see 707]
1830 B<< C<Ps = 20> >> Change background pixmap parameters (see section XPM) (Compile XPM). 2013 B<< C<Ps = 20> >> Change background pixmap parameters (see section BACKGROUND IMAGE) (Compile AfterImage).
1831 B<< C<Ps = 39> >> Change default foreground colour to B<< C<Pt> >>. 2014 B<< C<Ps = 39> >> Change default foreground colour to B<< C<Pt> >>.
1832 B<< C<Ps = 46> >> Change Log File to B<< C<Pt> >> I<unimplemented> 2015 B<< C<Ps = 46> >> Change Log File to B<< C<Pt> >> I<unimplemented>
1833 B<< C<Ps = 49> >> Change default background colour to B<< C<Pt> >>. 2016 B<< C<Ps = 49> >> Change default background colour to B<< C<Pt> >>.
1834 B<< C<Ps = 50> >> Set fontset to B<< C<Pt> >>, with the following special values of B<< C<Pt> >> (B<rxvt>) B<< C<#+n> >> change up B<< C<n> >> B<< C<#-n> >> change down B<< C<n> >> if B<< C<n> >> is missing of 0, a value of 1 is used I<empty> change to font0 B<< C<n> >> change to font B<< C<n> >> 2017 B<< C<Ps = 50> >> Set fontset to B<< C<Pt> >>, with the following special values of B<< C<Pt> >> (B<rxvt>) B<< C<#+n> >> change up B<< C<n> >> B<< C<#-n> >> change down B<< C<n> >> if B<< C<n> >> is missing of 0, a value of 1 is used I<empty> change to font0 B<< C<n> >> change to font B<< C<n> >>
1835 B<< C<Ps = 55> >> Log all scrollback buffer and all of screen to B<< C<Pt> >> 2018 B<< C<Ps = 55> >> Log all scrollback buffer and all of screen to B<< C<Pt> >>
1849 2032
1850=end table 2033=end table
1851 2034
1852=back 2035=back
1853 2036
1854=head1 XPM 2037=head1 BACKGROUND IMAGE
1855 2038
1856For the XPM XTerm escape sequence B<< C<ESC ] 20 ; Pt ST> >> then value 2039For the BACGROUND IMAGE XTerm escape sequence B<< C<ESC ] 20 ; Pt ST> >> then value
1857of B<< C<Pt> >> can be the name of the background pixmap followed by a 2040of B<< C<Pt> >> can be the name of the background image file followed by a
1858sequence of scaling/positioning commands separated by semi-colons. The 2041sequence of scaling/positioning commands separated by semi-colons. The
1859scaling/positioning commands are as follows: 2042scaling/positioning commands are as follows:
1860 2043
1861=over 4 2044=over 4
1862 2045
1900 2083
1901For example: 2084For example:
1902 2085
1903=over 4 2086=over 4
1904 2087
1905=item B<\E]20;funky\a> 2088=item B<\E]20;funky.jpg\a>
1906 2089
1907load B<funky.xpm> as a tiled image 2090load B<funky.jpg> as a tiled image
1908 2091
1909=item B<\E]20;mona;100\a> 2092=item B<\E]20;mona.jpg;100\a>
1910 2093
1911load B<mona.xpm> with a scaling of 100% 2094load B<mona.jpg> with a scaling of 100%
1912 2095
1913=item B<\E]20;;200;?\a> 2096=item B<\E]20;;200;?\a>
1914 2097
1915rescale the current pixmap to 200% and display the image geometry in 2098rescale the current pixmap to 200% and display the image geometry in
1916the title 2099the title
2043 2226
2044=head1 CONFIGURE OPTIONS 2227=head1 CONFIGURE OPTIONS
2045 2228
2046General hint: if you get compile errors, then likely your configuration 2229General hint: if you get compile errors, then likely your configuration
2047hasn't been tested well. Either try with C<--enable-everything> or use 2230hasn't been tested well. Either try with C<--enable-everything> or use
2048the F<./reconf> script as a base for experiments. F<./reconf> is used by 2231the default configuration (i.e. no C<--enable-xxx> or C<--disable-xxx>
2049myself, so it should generally be a working config. Of course, you should 2232switches). Of course, you should always report when a combination doesn't
2050always report when a combination doesn't work, so it can be fixed. Marc 2233work, so it can be fixed. Marc Lehmann <rxvt@schmorp.de>.
2051Lehmann <rxvt@schmorp.de>.
2052 2234
2053All 2235All
2054 2236
2055=over 4 2237=over 4
2056 2238
2088 2270
2089=begin table 2271=begin table
2090 2272
2091 all all available codeset groups 2273 all all available codeset groups
2092 zh common chinese encodings 2274 zh common chinese encodings
2093 zh_ext rarely used but very big chinese encodigs 2275 zh_ext rarely used but very big chinese encodings
2094 jp common japanese encodings 2276 jp common japanese encodings
2095 jp_ext rarely used but big japanese encodings 2277 jp_ext rarely used but big japanese encodings
2096 kr korean encodings 2278 kr korean encodings
2097 2279
2098=end table 2280=end table
2112requirements per character from 2 to 4 bytes. X11 fonts do not yet 2294requirements per character from 2 to 4 bytes. X11 fonts do not yet
2113support these extra characters, but Xft does. 2295support these extra characters, but Xft does.
2114 2296
2115Please note that rxvt-unicode can store unicode code points >65535 2297Please note that rxvt-unicode can store unicode code points >65535
2116even without this flag, but the number of such characters is 2298even without this flag, but the number of such characters is
2117limited to a view thousand (shared with combining characters, 2299limited to a few thousand (shared with combining characters,
2118see next switch), and right now rxvt-unicode cannot display them 2300see next switch), and right now rxvt-unicode cannot display them
2119(input/output and cut&paste still work, though). 2301(input/output and cut&paste still work, though).
2120 2302
2121=item --enable-combining (default: on) 2303=item --enable-combining (default: on)
2122 2304
2145=item --with-res-name=NAME (default: urxvt) 2327=item --with-res-name=NAME (default: urxvt)
2146 2328
2147Use the given name as default application name when 2329Use the given name as default application name when
2148reading resources. Specify --with-res-name=rxvt to replace rxvt. 2330reading resources. Specify --with-res-name=rxvt to replace rxvt.
2149 2331
2150=item --with-res-class=CLASS /default: URxvt) 2332=item --with-res-class=CLASS (default: URxvt)
2151 2333
2152Use the given class as default application class 2334Use the given class as default application class
2153when reading resources. Specify --with-res-class=Rxvt to replace 2335when reading resources. Specify --with-res-class=Rxvt to replace
2154rxvt. 2336rxvt.
2155 2337
2168 2350
2169Write user and tty to lastlog file (used by programs like 2351Write user and tty to lastlog file (used by programs like
2170F<lastlogin>) at start of rxvt execution. This option requires 2352F<lastlogin>) at start of rxvt execution. This option requires
2171--enable-utmp to also be specified. 2353--enable-utmp to also be specified.
2172 2354
2173=item --enable-xpm-background (default: on) 2355=item --enable-afterimage (default: on)
2174 2356
2175Add support for XPM background pixmaps. 2357Add support for libAfterImage to be used for transparency and background
2358images. It adds support for many file formats including JPG, PNG,
2359SVG, TIFF, GIF, XPM, BMP, ICO, XCF, TGA and AfterStep image XML
2360(L<http://www.afterstep.org/visualdoc.php?show=asimagexml>).
2361
2362This option also adds such eye candy as blending an image over the root
2363background, as well as dynamic scaling and bluring of background images.
2364
2365Note that with this option enabled, @@RXVT_NAME@@'s memory footprint might
2366increase by a few megabytes even if no extra features are used (mostly due
2367to third-party libraries used by libAI). Memory footprint may somewhat be
2368lowered if libAfterImage is configured without support for SVG.
2176 2369
2177=item --enable-transparency (default: on) 2370=item --enable-transparency (default: on)
2178 2371
2179Add support for inheriting parent backgrounds thus giving a fake 2372Add support for backgrounds, creating illusion of transparency in the term.
2180transparency to the term.
2181 2373
2182=item --enable-fading (default: on) 2374=item --enable-fading (default: on)
2183 2375
2184Add support for fading the text when focus is lost (requires C<--enable-transparency>). 2376Add support for fading the text when focus is lost.
2185
2186=item --enable-tinting (default: on)
2187
2188Add support for tinting of transparent backgrounds (requires C<--enable-transparency>).
2189 2377
2190=item --enable-rxvt-scroll (default: on) 2378=item --enable-rxvt-scroll (default: on)
2191 2379
2192Add support for the original rxvt scrollbar. 2380Add support for the original rxvt scrollbar.
2193 2381
2203 2391
2204Add support for a very unobtrusive, plain-looking scrollbar that 2392Add support for a very unobtrusive, plain-looking scrollbar that
2205is the favourite of the rxvt-unicode author, having used it for 2393is the favourite of the rxvt-unicode author, having used it for
2206many years. 2394many years.
2207 2395
2208=item --enable-ttygid (default: off)
2209
2210Change tty device setting to group "tty" - only use this if
2211your system uses this type of security.
2212
2213=item --disable-backspace-key 2396=item --disable-backspace-key
2214 2397
2215Removes any handling of the backspace key by us - let the X server do it. 2398Removes any handling of the backspace key by us - let the X server do it.
2216 2399
2217=item --disable-delete-key 2400=item --disable-delete-key
2236A non-exhaustive list of features enabled by C<--enable-frills> (possibly 2419A non-exhaustive list of features enabled by C<--enable-frills> (possibly
2237in combination with other switches) is: 2420in combination with other switches) is:
2238 2421
2239 MWM-hints 2422 MWM-hints
2240 EWMH-hints (pid, utf8 names) and protocols (ping) 2423 EWMH-hints (pid, utf8 names) and protocols (ping)
2424 urgency hint
2241 seperate underline colour (-underlineColor) 2425 seperate underline colour (-underlineColor)
2242 settable border widths and borderless switch (-w, -b, -bl) 2426 settable border widths and borderless switch (-w, -b, -bl)
2243 visual depth selection (-depth) 2427 visual depth selection (-depth)
2244 settable extra linespacing /-lsp) 2428 settable extra linespacing /-lsp)
2245 iso-14755-2 and -3, and visual feedback 2429 iso-14755 5.1 (basic) support
2246 tripleclickwords (-tcw) 2430 tripleclickwords (-tcw)
2247 settable insecure mode (-insecure) 2431 settable insecure mode (-insecure)
2248 keysym remapping support 2432 keysym remapping support
2249 cursor blinking and underline cursor (-cb, -uc) 2433 cursor blinking and underline cursor (-cb, -uc)
2250 XEmbed support (-embed) 2434 XEmbed support (-embed)
2251 user-pty (-pty-fd) 2435 user-pty (-pty-fd)
2252 hold on exit (-hold) 2436 hold on exit (-hold)
2437 compile in built-in block graphics
2253 skip builtin block graphics (-sbg) 2438 skip builtin block graphics (-sbg)
2439 separate highlightcolor support (-hc)
2254 2440
2255It also enabled some non-essential features otherwise disabled, such as: 2441It also enables some non-essential features otherwise disabled, such as:
2256 2442
2257 some round-trip time optimisations 2443 some round-trip time optimisations
2258 nearest color allocation on pseudocolor screens 2444 nearest color allocation on pseudocolor screens
2259 UTF8_STRING supporr for selection 2445 UTF8_STRING support for selection
2260 sgr modes 90..97 and 100..107 2446 sgr modes 90..97 and 100..107
2261 backindex and forwardindex escape sequences 2447 backindex and forwardindex escape sequences
2262 view change/zero scorllback esacpe sequences 2448 view change/zero scrollback escape sequences
2263 locale switching escape sequence 2449 locale switching escape sequence
2264 window op and some xterm/OSC escape sequences 2450 window op and some xterm/OSC escape sequences
2265 rectangular selections 2451 rectangular selections
2266 trailing space removal for selections 2452 trailing space removal for selections
2267 verbose X error handling 2453 verbose X error handling
2276=item --enable-keepscrolling (default: on) 2462=item --enable-keepscrolling (default: on)
2277 2463
2278Add support for continual scrolling of the display when you hold 2464Add support for continual scrolling of the display when you hold
2279the mouse button down on a scrollbar arrow. 2465the mouse button down on a scrollbar arrow.
2280 2466
2467=item --enable-selectionscrolling (default: on)
2468
2469Add support for scrolling when the selection moves to the top or
2470bottom of the screen.
2471
2281=item --enable-mousewheel (default: on) 2472=item --enable-mousewheel (default: on)
2282 2473
2283Add support for scrolling via mouse wheel or buttons 4 & 5. 2474Add support for scrolling via mouse wheel or buttons 4 & 5.
2284 2475
2285=item --enable-slipwheeling (default: on) 2476=item --enable-slipwheeling (default: on)
2286 2477
2287Add support for continual scrolling (using the mouse wheel as an 2478Add support for continual scrolling (using the mouse wheel as an
2288accelerator) while the control key is held down. This option 2479accelerator) while the control key is held down. This option
2289requires --enable-mousewheel to also be specified. 2480requires --enable-mousewheel to also be specified.
2290 2481
2291=item --disable-new-selection
2292
2293Remove support for mouse selection style like that of xterm.
2294
2295=item --enable-dmalloc (default: off)
2296
2297Use Gray Watson's malloc - which is good for debugging See
2298L<http://www.letters.com/dmalloc/> for details If you use either this or the
2299next option, you may need to edit src/Makefile after compiling to point
2300DINCLUDE and DLIB to the right places.
2301
2302You can only use either this option and the following (should
2303you use either) .
2304
2305=item --enable-dlmalloc (default: off)
2306
2307Use Doug Lea's malloc - which is good for a production version
2308See L<http://g.oswego.edu/dl/html/malloc.html> for details.
2309
2310=item --enable-smart-resize (default: on) 2482=item --enable-smart-resize (default: off)
2311 2483
2312Add smart growth/shrink behaviour when changing font size via hot 2484Add smart growth/shrink behaviour when resizing.
2313keys. This should keep the window corner which is closest to a corner of 2485This should keep the window corner which is closest to a corner of
2314the screen in a fixed position. 2486the screen in a fixed position.
2315 2487
2488=item --enable-text-blink (default: on)
2489
2490Add support for blinking text.
2491
2316=item --enable-pointer-blank (default: on) 2492=item --enable-pointer-blank (default: on)
2317 2493
2318Add support to have the pointer disappear when typing or inactive. 2494Add support to have the pointer disappear when typing or inactive.
2319 2495
2320=item --enable-perl (default: on) 2496=item --enable-perl (default: on)
2321 2497
2322Enable an embedded perl interpreter. See the B<@@RXVT_NAME@@perl(3)> 2498Enable an embedded perl interpreter. See the B<@@RXVT_NAME@@perl(3)>
2323manpage (F<doc/rxvtperl.txt>) for more info on this feature, or the files 2499manpage (F<doc/rxvtperl.txt>) for more info on this feature, or the
2324in F<src/perl-ext/> for the extensions that are installed by default. The 2500files in F<src/perl-ext/> for the extensions that are installed by
2325perl interpreter that is used can be specified via the C<PERL> environment 2501default. The perl interpreter that is used can be specified via the
2326variable when running configure. 2502C<PERL> environment variable when running configure. Even when compiled
2503in, perl will I<not> be initialised when all extensions have been disabled
2504C<-pe "" --perl-ext-common "">, so it should be safe to enable from a
2505resource standpoint.
2506
2507=item --with-afterimage-config=DIR
2508
2509Look for the libAfterImage config script in DIR.
2327 2510
2328=item --with-name=NAME (default: urxvt) 2511=item --with-name=NAME (default: urxvt)
2329 2512
2330Set the basename for the installed binaries, resulting 2513Set the basename for the installed binaries, resulting
2331in C<urxvt>, C<urxvtd> etc.). Specify C<--with-name=rxvt> to replace with 2514in C<urxvt>, C<urxvtd> etc.). Specify C<--with-name=rxvt> to replace with
2341PATH. 2524PATH.
2342 2525
2343=item --with-x 2526=item --with-x
2344 2527
2345Use the X Window System (pretty much default, eh?). 2528Use the X Window System (pretty much default, eh?).
2346
2347=item --with-xpm-includes=DIR
2348
2349Look for the XPM includes in DIR.
2350
2351=item --with-xpm-library=DIR
2352
2353Look for the XPM library in DIR.
2354
2355=item --with-xpm
2356
2357Not needed - define via --enable-xpm-background.
2358 2529
2359=back 2530=back
2360 2531
2361=head1 AUTHORS 2532=head1 AUTHORS
2362 2533

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines