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.120 by root, Mon Aug 7 15:59:44 2006 UTC vs.
Revision 1.200 by sf-exg, Thu Nov 18 17:28:12 2010 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
29=head3 My question isn't answered here, can I ask a human? 32=head3 My question isn't answered here, can I ask a human?
30 33
31Before sending me mail, you could go to IRC: C<irc.freenode.net>, 34Before sending me mail, you could go to IRC: C<irc.freenode.net>,
32channel C<#rxvt-unicode> has some rxvt-unicode enthusiasts that might be 35channel C<#rxvt-unicode> has some rxvt-unicode enthusiasts that might be
33interested in learning about new and exciting problems (but not FAQs :). 36interested in learning about new and exciting problems (but not FAQs :).
37
38=head3 I use Gentoo, and I have a problem...
39
40There are three big problems with Gentoo Linux: first of all, most if not
41all Gentoo systems are completely broken (missing or mismatched header
42files, broken compiler etc. are just the tip of the iceberg); secondly,
43the Gentoo maintainer thinks it is a good idea to add broken patches to
44the code; and lastly, it should be called Gentoo GNU/Linux.
45
46For these reasons, it is impossible to support rxvt-unicode on
47Gentoo. Problems appearing on Gentoo systems will usually simply be
48ignored unless they can be reproduced on non-Gentoo systems.
34 49
35=head3 Does it support tabs, can I have a tabbed rxvt-unicode? 50=head3 Does it support tabs, can I have a tabbed rxvt-unicode?
36 51
37Beginning with version 7.3, there is a perl extension that implements a 52Beginning with version 7.3, there is a perl extension that implements a
38simple tabbed terminal. It is installed by default, so any of these should 53simple tabbed terminal. It is installed by default, so any of these should
73=head3 How can I start @@URXVT_NAME@@d in a race-free way? 88=head3 How can I start @@URXVT_NAME@@d in a race-free way?
74 89
75Try C<@@URXVT_NAME@@d -f -o>, which tells @@URXVT_NAME@@d to open the 90Try C<@@URXVT_NAME@@d -f -o>, which tells @@URXVT_NAME@@d to open the
76display, create the listening socket and then fork. 91display, create the listening socket and then fork.
77 92
78=head3 How can I start @@URXVT_NAME@@d automatically when I run URXVT_NAME@@c? 93=head3 How can I start @@URXVT_NAME@@d automatically when I run @@URXVT_NAME@@c?
79 94
80If you want to start @@URXVT_NAME@@d automatically whenever you run 95If 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: 96@@URXVT_NAME@@c and the daemon isn't running yet, use this script:
82 97
83 #!/bin/sh 98 #!/bin/sh
90This tries to create a new terminal, and if fails with exit status 2, 105This 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 106meaning 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 107re-run the command. Subsequent invocations of the script will re-use the
93existing daemon. 108existing daemon.
94 109
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. 110=head3 How do I distinguish whether I'm running rxvt-unicode or a regular
111xterm? I need this to decide about setting colours etc.
96 112
97The original rxvt and rxvt-unicode always export the variable "COLORTERM", 113The 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, 114so you can check and see if that is set. Note that several programs, JED,
99slrn, Midnight Commander automatically check this variable to decide 115slrn, Midnight Commander automatically check this variable to decide
100whether or not to use color. 116whether or not to use colour.
101 117
102=head3 How do I set the correct, full IP address for the DISPLAY variable? 118=head3 How do I set the correct, full IP address for the DISPLAY variable?
103 119
104If you've compiled rxvt-unicode with DISPLAY_IS_IP and have enabled 120If you've compiled rxvt-unicode with DISPLAY_IS_IP and have enabled
105insecure mode then it is possible to use the following shell script 121insecure mode then it is possible to use the following shell script
125 fi 141 fi
126 142
127=head3 How do I compile the manual pages on my own? 143=head3 How do I compile the manual pages on my own?
128 144
129You need to have a recent version of perl installed as F</usr/bin/perl>, 145You 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 146one that comes with F<pod2man>, F<pod2text> and F<pod2xhtml> (from
131the doc subdirectory and enter C<make alldoc>. 147F<Pod::Xhtml>). Then go to the doc subdirectory and enter C<make alldoc>.
132 148
133=head3 Isn't rxvt-unicode supposed to be small? Don't all those features bloat? 149=head3 Isn't rxvt-unicode supposed to be small? Don't all those features bloat?
134 150
135I often get asked about this, and I think, no, they didn't cause extra 151I 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 152bloat. If you compare a minimal rxvt and a minimal urxvt, you can see
197 213
198And here is rxvt-unicode: 214And here is rxvt-unicode:
199 215
200 libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x00002aaaaabc3000) 216 libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x00002aaaaabc3000)
201 libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00002aaaaada2000) 217 libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00002aaaaada2000)
202 libc.so.6 => /lib/libc.so.6 (0x00002aaaaaeb0000) 218 libc.so.6 => /lib/libc.so.6 (0x00002aaaaaeb0000)
203 libdl.so.2 => /lib/libdl.so.2 (0x00002aaaab0ee000) 219 libdl.so.2 => /lib/libdl.so.2 (0x00002aaaab0ee000)
204 /lib64/ld-linux-x86-64.so.2 (0x00002aaaaaaab000) 220 /lib64/ld-linux-x86-64.so.2 (0x00002aaaaaaab000)
205 221
206No large bloated libraries (of course, none were linked in statically), 222No large bloated libraries (of course, none were linked in statically),
207except maybe libX11 :) 223except maybe libX11 :)
208 224
209 225
217of passage: ... and you failed. 233of passage: ... and you failed.
218 234
219Here are four ways to get transparency. B<Do> read the manpage and option 235Here are four ways to get transparency. B<Do> read the manpage and option
220descriptions for the programs mentioned and rxvt-unicode. Really, do it! 236descriptions for the programs mentioned and rxvt-unicode. Really, do it!
221 237
2221. Use inheritPixmap: 2381. Use transparent mode:
223 239
224 Esetroot wallpaper.jpg 240 Esetroot wallpaper.jpg
225 @@URXVT_NAME@@ -ip -tint red -sh 40 241 @@URXVT_NAME@@ -tr -tint red -sh 40
226 242
227That works. If you think it doesn't, you lack transparency and tinting 243That works. If you think it doesn't, you lack transparency and tinting
228support, or you are unable to read. 244support, or you are unable to read.
229 245
2302. Use a simple pixmap and emulate pseudo-transparency. This enables you 2462. Use a simple pixmap and emulate pseudo-transparency. This enables you
231to use effects other than tinting and shading: Just shade/tint/whatever 247to use effects other than tinting and shading: Just shade/tint/whatever
232your picture with gimp or any other tool: 248your picture with gimp or any other tool:
233 249
234 convert wallpaper.jpg -blur 20x20 -modulate 30 background.xpm 250 convert wallpaper.jpg -blur 20x20 -modulate 30 background.jpg
235 @@URXVT_NAME@@ -pixmap background.xpm -pe automove-background 251 @@URXVT_NAME@@ -pixmap "background.jpg;:root"
236 252
237That works. If you think it doesn't, you lack XPM and Perl support, or you 253That works. If you think it doesn't, you lack libAfterImage or GDK-PixBuf support, or you
238are unable to read. 254are unable to read.
239 255
2403. Use an ARGB visual: 2563. Use an ARGB visual:
241 257
242 @@URXVT_NAME@@ -depth 32 -fg grey90 -bg rgba:0000/0000/4444/cccc 258 @@URXVT_NAME@@ -depth 32 -fg grey90 -bg rgba:0000/0000/4444/cccc
342=head3 What's with this bold/blink stuff? 358=head3 What's with this bold/blink stuff?
343 359
344If no bold colour is set via C<colorBD:>, bold will invert text using the 360If no bold colour is set via C<colorBD:>, bold will invert text using the
345standard foreground colour. 361standard foreground colour.
346 362
347For the standard background colour, blinking will actually make the 363For the standard background colour, blinking will actually make
348text blink when compiled with C<--enable-blinking>. with standard 364the text blink when compiled with C<--enable-text-blink>. Without
349colours. Without C<--enable-blinking>, the blink attribute will be 365C<--enable-text-blink>, the blink attribute will be ignored.
350ignored.
351 366
352On ANSI colours, bold/blink attributes are used to set high-intensity 367On ANSI colours, bold/blink attributes are used to set high-intensity
353foreground/background colors. 368foreground/background colours.
354 369
355color0-7 are the low-intensity colors. 370color0-7 are the low-intensity colours.
356 371
357color8-15 are the corresponding high-intensity colors. 372color8-15 are the corresponding high-intensity colours.
358 373
359=head3 I don't like the screen colors. How do I change them? 374=head3 I don't like the screen colours. How do I change them?
360 375
361You can change the screen colors at run-time using F<~/.Xdefaults> 376You can change the screen colours at run-time using F<~/.Xdefaults>
362resources (or as long-options). 377resources (or as long-options).
363 378
364Here are values that are supposed to resemble a VGA screen, 379Here are values that are supposed to resemble a VGA screen,
365including the murky brown that passes for low-intensity yellow: 380including the murky brown that passes for low-intensity yellow:
366 381
380 URxvt.color12: #0000FF 395 URxvt.color12: #0000FF
381 URxvt.color13: #FF00FF 396 URxvt.color13: #FF00FF
382 URxvt.color14: #00FFFF 397 URxvt.color14: #00FFFF
383 URxvt.color15: #FFFFFF 398 URxvt.color15: #FFFFFF
384 399
385And here is a more complete set of non-standard colors. 400And here is a more complete set of non-standard colours.
386 401
387 URxvt.cursorColor: #dc74d1 402 URxvt.cursorColor: #dc74d1
388 URxvt.pointerColor: #dc74d1 403 URxvt.pointerColor: #dc74d1
389 URxvt.background: #0e0e0e 404 URxvt.background: #0e0e0e
390 URxvt.foreground: #4ad5e1 405 URxvt.foreground: #4ad5e1
460has been designed yet). 475has been designed yet).
461 476
462Until then, you might get away with switching fonts at runtime (see L<Can 477Until then, you might get away with switching fonts at runtime (see L<Can
463I switch the fonts at runtime?> later in this document). 478I switch the fonts at runtime?> later in this document).
464 479
480=head3 How can I make mplayer display video correctly?
481
482We are working on it, in the meantime, as a workaround, use something like:
483
484 @@URXVT_NAME@@ -b 600 -geometry 20x1 -e sh -c 'mplayer -wid $WINDOWID file...'
485
486
465=head2 Keyboard, Mouse & User Interaction 487=head2 Keyboard, Mouse & User Interaction
466 488
467=head3 The new selection selects pieces that are too big, how can I select single words? 489=head3 The new selection selects pieces that are too big, how can I select single words?
468 490
469If you want to select e.g. alphanumeric words, you can use the following 491If you want to select e.g. alphanumeric words, you can use the following
476 498
477To get a selection that is very similar to the old code, try this pattern: 499To get a selection that is very similar to the old code, try this pattern:
478 500
479 URxvt.selection.pattern-0: ([^"&'()*,;<=>?@[\\\\]^`{|})]+) 501 URxvt.selection.pattern-0: ([^"&'()*,;<=>?@[\\\\]^`{|})]+)
480 502
481Please also note that the I<LeftClick Shift-LeftClik> combination also 503Please also note that the I<LeftClick Shift-LeftClick> combination also
482selects words like the old code. 504selects words like the old code.
483 505
484=head3 I don't like the new selection/popups/hotkeys/perl, how do I change/disable it? 506=head3 I don't like the new selection/popups/hotkeys/perl, how do I change/disable it?
485 507
486You can disable the perl extension completely by setting the 508You can disable the perl extension completely by setting the
538rxvt-unicode will continue without an input method. 560rxvt-unicode will continue without an input method.
539 561
540In this case either do not specify a B<preeditStyle> or specify more than 562In this case either do not specify a B<preeditStyle> or specify more than
541one pre-edit style, such as B<OverTheSpot,Root,None>. 563one pre-edit style, such as B<OverTheSpot,Root,None>.
542 564
565If it still doesn't work, then maybe your input method doesn't support
566compose sequences - to fall back to the built-in one, make sure you don't
567specify an input method via C<-im> or C<XMODIFIERS>.
568
543=head3 I cannot type C<Ctrl-Shift-2> to get an ASCII NUL character due to ISO 14755 569=head3 I cannot type C<Ctrl-Shift-2> to get an ASCII NUL character due to ISO 14755
544 570
545Either try C<Ctrl-2> alone (it often is mapped to ASCII NUL even on 571Either try C<Ctrl-2> alone (it often is mapped to ASCII NUL even on
546international keyboards) or simply use ISO 14755 support to your 572international keyboards) or simply use ISO 14755 support to your
547advantage, typing <Ctrl-Shift-0> to get a ASCII NUL. This works for other 573advantage, typing <Ctrl-Shift-0> to get a ASCII NUL. This works for other
562Backspace keysym (not likely for Linux ... see the following 588Backspace keysym (not likely for Linux ... see the following
563question) there are two standard values that can be used for 589question) there are two standard values that can be used for
564Backspace: C<^H> and C<^?>. 590Backspace: C<^H> and C<^?>.
565 591
566Historically, either value is correct, but rxvt-unicode adopts the debian 592Historically, either value is correct, but rxvt-unicode adopts the debian
567policy of using C<^?> when unsure, because it's the one only only correct 593policy of using C<^?> when unsure, because it's the one and only correct
568choice :). 594choice :).
569 595
570Rxvt-unicode tries to inherit the current stty settings and uses the value 596It is possible to toggle between C<^H> and C<^?> with the DECBKM
571of `erase' to guess the value for backspace. If rxvt-unicode wasn't 597private mode:
572started from a terminal (say, from a menu or by remote shell), then the
573system value of `erase', which corresponds to CERASE in <termios.h>, will
574be used (which may not be the same as your stty setting).
575
576For starting a new rxvt-unicode:
577 598
578 # use Backspace = ^H 599 # use Backspace = ^H
579 $ stty erase ^H 600 $ stty erase ^H
580 $ @@URXVT_NAME@@ 601 $ echo -n "^[[?67h"
581 602
582 # use Backspace = ^? 603 # use Backspace = ^?
583 $ stty erase ^? 604 $ stty erase ^?
584 $ @@URXVT_NAME@@
585
586Toggle with C<ESC [ 36 h> / C<ESC [ 36 l>.
587
588For an existing rxvt-unicode:
589
590 # use Backspace = ^H
591 $ stty erase ^H
592 $ echo -n "^[[36h"
593
594 # use Backspace = ^?
595 $ stty erase ^?
596 $ echo -n "^[[36l" 605 $ echo -n "^[[?67l"
597 606
598This helps satisfy some of the Backspace discrepancies that occur, but 607This helps satisfy some of the Backspace discrepancies that occur, but
599if you use Backspace = C<^H>, make sure that the termcap/terminfo value 608if you use Backspace = C<^H>, make sure that the termcap/terminfo value
600properly reflects that. 609properly reflects that.
601 610
604key has been assigned an escape sequence to match the vt100 for Execute 613key has been assigned an escape sequence to match the vt100 for Execute
605(C<ESC [ 3 ~>) and is in the supplied termcap/terminfo. 614(C<ESC [ 3 ~>) and is in the supplied termcap/terminfo.
606 615
607Some other Backspace problems: 616Some other Backspace problems:
608 617
609some editors use termcap/terminfo, 618some editors use termcap/terminfo,
610some editors (vim I'm told) expect Backspace = ^H, 619some editors (vim I'm told) expect Backspace = ^H,
611GNU Emacs (and Emacs-like editors) use ^H for help. 620GNU Emacs (and Emacs-like editors) use ^H for help.
612 621
613Perhaps someday this will all be resolved in a consistent manner. 622Perhaps someday this will all be resolved in a consistent manner.
614 623
655Rather than have rxvt-unicode try to accommodate all the various possible 664Rather than have rxvt-unicode try to accommodate all the various possible
656keyboard mappings, it is better to use `xmodmap' to remap the keys as 665keyboard mappings, it is better to use `xmodmap' to remap the keys as
657required for your particular machine. 666required for your particular machine.
658 667
659 668
660
661=head2 Terminal Configuration 669=head2 Terminal Configuration
662 670
663=head3 Can I see a typical configuration? 671=head3 Can I see a typical configuration?
664 672
665The default configuration tries to be xterm-like, which I don't like that 673The default configuration tries to be xterm-like, which I don't like that
695develop for myself mostly, so I actually use most of the extensions I 703develop for myself mostly, so I actually use most of the extensions I
696write. 704write.
697 705
698The selection stuff mainly makes the selection perl-error-message aware 706The selection stuff mainly makes the selection perl-error-message aware
699and tells it to convert perl error messages into vi-commands to load the 707and tells it to convert perl error messages into vi-commands to load the
700relevant file and go tot he error line number. 708relevant file and go to the error line number.
701 709
702 URxvt.scrollstyle: plain 710 URxvt.scrollstyle: plain
703 URxvt.secondaryScroll: true 711 URxvt.secondaryScroll: true
704 712
705As the documentation says: plain is the preferred scrollbar for the 713As the documentation says: plain is the preferred scrollbar for the
777purposes, it works, and gives a different look, as my normal (Non-bold) 785purposes, 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 786font is already bold, and I want to see a difference between bold and
779normal fonts. 787normal fonts.
780 788
781Please note that I used the C<urxvt> instance name and not the C<URxvt> 789Please 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, 790class name. That is because I use different configs for different purposes,
783for example, my IRC window is started with C<-name IRC>, and uses these 791for example, my IRC window is started with C<-name IRC>, and uses these
784defaults: 792defaults:
785 793
786 IRC*title: IRC 794 IRC*title: IRC
787 IRC*geometry: 87x12+535+542 795 IRC*geometry: 87x12+535+542
791 IRC*boldFont: suxuseuro 799 IRC*boldFont: suxuseuro
792 IRC*colorBD: white 800 IRC*colorBD: white
793 IRC*keysym.M-C-1: command:\033]710;suxuseuro\007\033]711;suxuseuro\007 801 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 802 IRC*keysym.M-C-2: command:\033]710;9x15bold\007\033]711;9x15bold\007
795 803
796C<Alt-Shift-1> and C<Alt-Shift-2> switch between two different font 804C<Alt-Ctrl-1> and C<Alt-Ctrl-2> switch between two different font
797sizes. C<suxuseuro> allows me to keep an eye (and actually read) 805sizes. C<suxuseuro> allows me to keep an eye (and actually read)
798stuff while keeping a very small window. If somebody pastes something 806stuff while keeping a very small window. If somebody pastes something
799complicated (e.g. japanese), I temporarily switch to a larger font. 807complicated (e.g. japanese), I temporarily switch to a larger font.
800 808
801The above is all in my C<.Xdefaults> (I don't use C<.Xresources> nor 809The 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> 810C<xrdb>). I also have some resources in a separate C<.Xdefaults-hostname>
803file for different hosts, for example, on ym main desktop, I use: 811file for different hosts, for example, on my main desktop, I use:
804 812
805 URxvt.keysym.C-M-q: command:\033[3;5;5t 813 URxvt.keysym.C-M-q: command:\033[3;5;5t
806 URxvt.keysym.C-M-y: command:\033[3;5;606t 814 URxvt.keysym.C-M-y: command:\033[3;5;606t
807 URxvt.keysym.C-M-e: command:\033[3;1605;5t 815 URxvt.keysym.C-M-e: command:\033[3;1605;5t
808 URxvt.keysym.C-M-c: command:\033[3;1605;606t 816 URxvt.keysym.C-M-c: command:\033[3;1605;606t
838 846
839The terminal description used by rxvt-unicode is not as widely available 847The terminal description used by rxvt-unicode is not as widely available
840as that for xterm, or even rxvt (for which the same problem often arises). 848as that for xterm, or even rxvt (for which the same problem often arises).
841 849
842The correct solution for this problem is to install the terminfo, this can 850The correct solution for this problem is to install the terminfo, this can
843be done like this (with ncurses' infocmp): 851be done by simply installing rxvt-unicode on the remote system as well
852(in case you have a nice package manager ready), or you can install the
853terminfo database manually like this (with ncurses infocmp. works as
854user and root):
844 855
845 REMOTE=remotesystem.domain 856 REMOTE=remotesystem.domain
846 infocmp rxvt-unicode | ssh $REMOTE "cat >/tmp/ti && tic /tmp/ti" 857 infocmp rxvt-unicode | ssh $REMOTE "mkdir -p .terminfo && cat >/tmp/ti && tic /tmp/ti"
847 858
848... or by installing rxvt-unicode normally on the remote system, 859One some systems you might need to set C<$TERMINFO> to the full path of
860F<$HOME/.terminfo> for this to work.
849 861
850If you cannot or do not want to do this, then you can simply set 862If you cannot or do not want to do this, then you can simply set
851C<TERM=rxvt> or even C<TERM=xterm>, and live with the small number of 863C<TERM=rxvt> or even C<TERM=xterm>, and live with the small number of
852problems arising, which includes wrong keymapping, less and different 864problems arising, which includes wrong keymapping, less and different
853colours and some refresh errors in fullscreen applications. It's a nice 865colours and some refresh errors in fullscreen applications. It's a nice
860 URxvt.termName: rxvt 872 URxvt.termName: rxvt
861 873
862If you don't plan to use B<rxvt> (quite common...) you could also replace 874If you don't plan to use B<rxvt> (quite common...) you could also replace
863the rxvt terminfo file with the rxvt-unicode one and use C<TERM=rxvt>. 875the rxvt terminfo file with the rxvt-unicode one and use C<TERM=rxvt>.
864 876
877=head3 nano fails with "Error opening terminal: rxvt-unicode"
878
879This exceptionally confusing and useless error message is printed by nano
880when it can't find the terminfo database. Nothing is wrong with your
881terminal, read the previous answer for a solution.
882
865=head3 C<tic> outputs some error when compiling the terminfo entry. 883=head3 C<tic> outputs some error when compiling the terminfo entry.
866 884
867Most likely it's the empty definition for C<enacs=>. Just replace it by 885Most likely it's the empty definition for C<enacs=>. Just replace it by
868C<enacs=\E[0@> and try again. 886C<enacs=\E[0@> and try again.
869 887
882You can also create a termcap entry by using terminfo's infocmp program 900You can also create a termcap entry by using terminfo's infocmp program
883like this: 901like this:
884 902
885 infocmp -C rxvt-unicode 903 infocmp -C rxvt-unicode
886 904
887Or you could use this termcap entry, generated by the command above: 905Or you could use the termcap entry in doc/etc/rxvt-unicode.termcap,
888 906generated by the command above.
889 rxvt-unicode|rxvt-unicode terminal (X Window System):\
890 :am:bw:eo:km:mi:ms:xn:xo:\
891 :co#80:it#8:li#24:lm#0:\
892 :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
893 :K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:LE=\E[%dD:\
894 :RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:ae=\E(B:al=\E[L:\
895 :as=\E(0:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:\
896 :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:\
897 :dl=\E[M:do=^J:ec=\E[%dX:ei=\E[4l:ho=\E[H:\
898 :i1=\E[?47l\E=\E[?1l:ic=\E[@:im=\E[4h:\
899 :is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l:\
900 :k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\
901 :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:kD=\E[3~:\
902 :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:kd=\EOB:ke=\E[?1l\E>:\
903 :kh=\E[7~:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:\
904 :mb=\E[5m:md=\E[1m:me=\E[m\017:mr=\E[7m:nd=\E[C:rc=\E8:\
905 :sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\
906 :te=\E[r\E[?1049l:ti=\E[?1049h:ue=\E[24m:up=\E[A:\
907 :us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:\
908 :vs=\E[?25h:
909 907
910=head3 Why does C<ls> no longer have coloured output? 908=head3 Why does C<ls> no longer have coloured output?
911 909
912The C<ls> in the GNU coreutils unfortunately doesn't use terminfo to 910The C<ls> in the GNU coreutils unfortunately doesn't use terminfo to
913decide whether a terminal has colour, but uses its own configuration 911decide whether a terminal has colour, but uses its own configuration
953If you encounter strange problems like typing an accented character but 951If you encounter strange problems like typing an accented character but
954getting two unrelated other characters or similar, or if program output is 952getting two unrelated other characters or similar, or if program output is
955subtly garbled, then you should check your locale settings. 953subtly garbled, then you should check your locale settings.
956 954
957Rxvt-unicode must be started with the same C<LC_CTYPE> setting as the 955Rxvt-unicode must be started with the same C<LC_CTYPE> setting as the
958programs. Often rxvt-unicode is started in the C<C> locale, while the 956programs running in it. Often rxvt-unicode is started in the C<C> locale,
959login script running within the rxvt-unicode window changes the locale to 957while the login script running within the rxvt-unicode window changes the
960something else, e.g. C<en_GB.UTF-8>. Needless to say, this is not going to work. 958locale to something else, e.g. C<en_GB.UTF-8>. Needless to say, this is
959not going to work, and is the most common cause for problems.
961 960
962The best thing is to fix your startup environment, as you will likely run 961The best thing is to fix your startup environment, as you will likely run
963into other problems. If nothing works you can try this in your .profile. 962into other problems. If nothing works you can try this in your .profile.
964 963
965 printf '\33]701;%s\007' "$LC_CTYPE" 964 printf '\33]701;%s\007' "$LC_CTYPE" # $LANG or $LC_ALL are worth a try, too
966 965
967If this doesn't work, then maybe you use a C<LC_CTYPE> specification not 966If this doesn't work, then maybe you use a C<LC_CTYPE> specification not
968supported on your systems. Some systems have a C<locale> command which 967supported on your systems. Some systems have a C<locale> command which
969displays this (also, C<perl -e0> can be used to check locale settings, as 968displays this (also, C<perl -e0> can be used to check locale settings, as
970it will complain loudly if it cannot set the locale). If it displays something 969it will complain loudly if it cannot set the locale). If it displays something
1064C<@im=kinput2>. For B<scim>, use C<@im=SCIM>. You can see what input 1063C<@im=kinput2>. For B<scim>, use C<@im=SCIM>. You can see what input
1065method servers are running with this command: 1064method servers are running with this command:
1066 1065
1067 xprop -root XIM_SERVERS 1066 xprop -root XIM_SERVERS
1068 1067
1069=item 1068=item
1070 1069
1071=back 1070=back
1072 1071
1073=head3 My input method wants <some encoding> but I want UTF-8, what can I do? 1072=head3 My input method wants <some encoding> but I want UTF-8, what can I do?
1074 1073
1119runtime-switchable, too, so there is usually no drawback to enabling them, 1118runtime-switchable, too, so there is usually no drawback to enabling them,
1120except higher disk and possibly memory usage. The perl interpreter should 1119except higher disk and possibly memory usage. The perl interpreter should
1121be enabled, as important functionality (menus, selection, likely more in 1120be enabled, as important functionality (menus, selection, likely more in
1122the future) depends on it. 1121the future) depends on it.
1123 1122
1124You should not overwrite the C<perl-ext-common> snd C<perl-ext> resources 1123You should not overwrite the C<perl-ext-common> and C<perl-ext> resources
1125system-wide (except maybe with C<defaults>). This will result in useful 1124system-wide (except maybe with C<defaults>). This will result in useful
1126behaviour. If your distribution aims at low memory, add an empty 1125behaviour. If your distribution aims at low memory, add an empty
1127C<perl-ext-common> resource to the app-defaults file. This will keep the 1126C<perl-ext-common> resource to the app-defaults file. This will keep the
1128perl interpreter disabled until the user enables it. 1127perl interpreter disabled until the user enables it.
1129 1128
1147This forking is done as the very first within main(), which is very early 1146This forking is done as the very first within main(), which is very early
1148and reduces possible bugs to initialisation code run before main(), or 1147and reduces possible bugs to initialisation code run before main(), or
1149things like the dynamic loader of your system, which should result in very 1148things like the dynamic loader of your system, which should result in very
1150little risk. 1149little risk.
1151 1150
1152=head3 On Solaris 9, many line-drawing characters are too wide.
1153
1154Seems to be a known bug, read
1155L<http://nixdoc.net/files/forum/about34198.html>. Some people use the
1156following ugly workaround to get non-double-wide-characters working:
1157
1158 #define wcwidth(x) wcwidth(x) > 1 ? 1 : wcwidth(x)
1159
1160=head3 I am on FreeBSD and rxvt-unicode does not seem to work at all. 1151=head3 I am on FreeBSD and rxvt-unicode does not seem to work at all.
1161 1152
1162Rxvt-unicode requires the symbol C<__STDC_ISO_10646__> to be defined 1153Rxvt-unicode requires the symbol C<__STDC_ISO_10646__> to be defined
1163in your compile environment, or an implementation that implements it, 1154in your compile environment, or an implementation that implements it,
1164whether it defines the symbol or not. C<__STDC_ISO_10646__> requires that 1155whether it defines the symbol or not. C<__STDC_ISO_10646__> requires that
1167As you might have guessed, FreeBSD does neither define this symbol nor 1158As you might have guessed, FreeBSD does neither define this symbol nor
1168does it support it. Instead, it uses its own internal representation of 1159does it support it. Instead, it uses its own internal representation of
1169B<wchar_t>. This is, of course, completely fine with respect to standards. 1160B<wchar_t>. This is, of course, completely fine with respect to standards.
1170 1161
1171However, that means rxvt-unicode only works in C<POSIX>, C<ISO-8859-1> and 1162However, that means rxvt-unicode only works in C<POSIX>, C<ISO-8859-1> and
1172C<UTF-8> locales under FreeBSD (which all use Unicode as B<wchar_t>. 1163C<UTF-8> locales under FreeBSD (which all use Unicode as B<wchar_t>).
1173 1164
1174C<__STDC_ISO_10646__> is the only sane way to support multi-language 1165C<__STDC_ISO_10646__> is the only sane way to support multi-language
1175apps in an OS, as using a locale-dependent (and non-standardized) 1166apps in an OS, as using a locale-dependent (and non-standardized)
1176representation of B<wchar_t> makes it impossible to convert between 1167representation of B<wchar_t> makes it impossible to convert between
1177B<wchar_t> (as used by X11 and your applications) and any other encoding 1168B<wchar_t> (as used by X11 and your applications) and any other encoding
1187 1178
1188The rxvt-unicode author insists that the right way to fix this is in the 1179The rxvt-unicode author insists that the right way to fix this is in the
1189system libraries once and for all, instead of forcing every app to carry 1180system libraries once and for all, instead of forcing every app to carry
1190complete replacements for them :) 1181complete replacements for them :)
1191 1182
1192=head3 I use Solaris 9 and it doesn't compile/work/etc.
1193
1194Try the diff in F<doc/solaris9.patch> as a base. It fixes the worst
1195problems with C<wcwidth> and a compile problem.
1196
1197=head3 How can I use rxvt-unicode under cygwin? 1183=head3 How can I use rxvt-unicode under cygwin?
1198 1184
1199rxvt-unicode should compile and run out of the box on cygwin, using 1185rxvt-unicode should compile and run out of the box on cygwin, using
1200the X11 libraries that come with cygwin. libW11 emulation is no 1186the X11 libraries that come with cygwin. libW11 emulation is no
1201longer supported (and makes no sense, either, as it only supported a 1187longer supported (and makes no sense, either, as it only supported a
1205 1191
1206At the time of this writing, cygwin didn't seem to support any multi-byte 1192At the time of this writing, cygwin didn't seem to support any multi-byte
1207encodings (you might try C<LC_CTYPE=C-UTF-8>), so you are likely limited 1193encodings (you might try C<LC_CTYPE=C-UTF-8>), so you are likely limited
1208to 8-bit encodings. 1194to 8-bit encodings.
1209 1195
1196=head3 Character widths are not correct.
1197
1198urxvt uses the system wcwidth function to know the information about
1199the width of characters, so on systems with incorrect locale data you
1200will likely get bad results. Two notorious examples are Solaris 9,
1201where single-width characters like U+2514 are reported as double-width,
1202and Darwin 8, where combining chars are reported having width 1.
1203
1204The solution is to upgrade your system or switch to a better one. A
1205possibly working workaround is to use a wcwidth implementation like
1206
1207http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c
1208
1210=head1 RXVT-UNICODE TECHNICAL REFERENCE 1209=head1 RXVT-UNICODE TECHNICAL REFERENCE
1211 1210
1212The rest of this document describes various technical aspects of 1211The rest of this document describes various technical aspects of
1213B<rxvt-unicode>. First the description of supported command sequences, 1212B<rxvt-unicode>. First the description of supported command sequences,
1214followed by pixmap support and last by a description of all features 1213followed by pixmap support and last by a description of all features
1313 1312
1314=item B<< C<ESC => >> 1313=item B<< C<ESC => >>
1315 1314
1316Application Keypad (SMKX). See also next sequence. 1315Application Keypad (SMKX). See also next sequence.
1317 1316
1318=item B<<< C<< ESC >> >>> 1317=item B<<< C<< ESC > >> >>>
1319 1318
1320Normal Keypad (RMKX) 1319Normal Keypad (RMKX)
1321 1320
1322B<Note:> If the numeric keypad is activated, eg, B<Num_Lock> has been 1321B<Note:> If the numeric keypad is activated, eg, B<Num_Lock> has been
1323pressed, numbers or control functions are generated by the numeric keypad 1322pressed, numbers or control functions are generated by the numeric keypad
1466=begin table 1465=begin table
1467 1466
1468 B<< C<Ps = 0> >> Clear to Right (default) 1467 B<< C<Ps = 0> >> Clear to Right (default)
1469 B<< C<Ps = 1> >> Clear to Left 1468 B<< C<Ps = 1> >> Clear to Left
1470 B<< C<Ps = 2> >> Clear All 1469 B<< C<Ps = 2> >> Clear All
1470 B<< C<Ps = 3> >> Like Ps = 0, but is ignored when wrapped
1471 (@@RXVT_NAME@@ extension)
1471 1472
1472=end table 1473=end table
1473 1474
1474=item B<< C<ESC [ Ps L> >> 1475=item B<< C<ESC [ Ps L> >>
1475 1476
1607 B<< C<Ps = 32 / 42> >> fg/bg Green 1608 B<< C<Ps = 32 / 42> >> fg/bg Green
1608 B<< C<Ps = 33 / 43> >> fg/bg Yellow 1609 B<< C<Ps = 33 / 43> >> fg/bg Yellow
1609 B<< C<Ps = 34 / 44> >> fg/bg Blue 1610 B<< C<Ps = 34 / 44> >> fg/bg Blue
1610 B<< C<Ps = 35 / 45> >> fg/bg Magenta 1611 B<< C<Ps = 35 / 45> >> fg/bg Magenta
1611 B<< C<Ps = 36 / 46> >> fg/bg Cyan 1612 B<< C<Ps = 36 / 46> >> fg/bg Cyan
1612 B<< C<Ps = 38;5 / 48;5> >> set fg/bg to color #m (ISO 8613-6) 1613 B<< C<Ps = 38;5 / 48;5> >> set fg/bg to colour #m (ISO 8613-6)
1613 B<< C<Ps = 37 / 47> >> fg/bg White 1614 B<< C<Ps = 37 / 47> >> fg/bg White
1614 B<< C<Ps = 39 / 49> >> fg/bg Default 1615 B<< C<Ps = 39 / 49> >> fg/bg Default
1615 B<< C<Ps = 90 / 100> >> fg/bg Bright Black 1616 B<< C<Ps = 90 / 100> >> fg/bg Bright Black
1616 B<< C<Ps = 91 / 101> >> fg/bg Bright Red 1617 B<< C<Ps = 91 / 101> >> fg/bg Bright Red
1617 B<< C<Ps = 92 / 102> >> fg/bg Bright Green 1618 B<< C<Ps = 92 / 102> >> fg/bg Bright Green
1801 1802
1802=item B<< C<Pm = 30> >> 1803=item B<< C<Pm = 30> >>
1803 1804
1804=begin table 1805=begin table
1805 1806
1806 B<< C<h> >> scrollBar visisble 1807 B<< C<h> >> scrollBar visible
1807 B<< C<l> >> scrollBar invisisble 1808 B<< C<l> >> scrollBar invisible
1808 1809
1809=end table 1810=end table
1810 1811
1811=item B<< C<Pm = 35> >> (B<rxvt>) 1812=item B<< C<Pm = 35> >> (B<rxvt>)
1812 1813
1863 1864
1864=item B<< C<Pm = 66> >> 1865=item B<< C<Pm = 66> >>
1865 1866
1866=begin table 1867=begin table
1867 1868
1868 B<< C<h> >> Application Keypad (DECPAM) == C<ESC => 1869 B<< C<h> >> Application Keypad (DECKPAM/DECPAM) == C<ESC =>
1869 B<< C<l> >> Normal Keypad (DECPNM) == C<< ESC > >> 1870 B<< C<l> >> Normal Keypad (DECKPNM/DECPNM) == C<< ESC > >>
1870 1871
1871=end table 1872=end table
1872 1873
1873=item B<< C<Pm = 67> >> 1874=item B<< C<Pm = 67> >>
1874 1875
1895 B<< C<h> >> Use Hilite Mouse Tracking. 1896 B<< C<h> >> Use Hilite Mouse Tracking.
1896 B<< C<l> >> No mouse reporting. 1897 B<< C<l> >> No mouse reporting.
1897 1898
1898=end table 1899=end table
1899 1900
1901=item B<< C<Pm = 1002> >> (X11 XTerm)
1902
1903=begin table
1904
1905 B<< C<h> >> Send Mouse X & Y on button press and release, and motion with a button pressed.
1906 B<< C<l> >> No mouse reporting.
1907
1908=end table
1909
1910=item B<< C<Pm = 1003> >> (X11 XTerm)
1911
1912=begin table
1913
1914 B<< C<h> >> Send Mouse X & Y on button press and release, and motion.
1915 B<< C<l> >> No mouse reporting.
1916
1917=end table
1918
1900=item B<< C<Pm = 1010> >> (B<rxvt>) 1919=item B<< C<Pm = 1010> >> (B<rxvt>)
1901 1920
1902=begin table 1921=begin table
1903 1922
1904 B<< C<h> >> Don't scroll to bottom on TTY output 1923 B<< C<h> >> Don't scroll to bottom on TTY output
1946 1965
1947=begin table 1966=begin table
1948 1967
1949 B<< C<h> >> Use Alternate Screen Buffer - clear Alternate Screen Buffer if switching to it 1968 B<< C<h> >> Use Alternate Screen Buffer - clear Alternate Screen Buffer if switching to it
1950 B<< C<l> >> Use Normal Screen Buffer 1969 B<< C<l> >> Use Normal Screen Buffer
1970
1971=end table
1972
1973=item B<< C<Pm = 2004> >>
1974
1975=begin table
1976
1977 B<< C<h> >> Enable bracketed paste mode - prepend / append to the pasted text the control sequences C<ESC [ 200 ~> / C<ESC [ 201 ~>
1978 B<< C<l> >> Disable bracketed paste mode
1951 1979
1952=end table 1980=end table
1953 1981
1954=back 1982=back
1955 1983
1972 B<< C<Ps = 0> >> Change Icon Name and Window Title to B<< C<Pt> >> 2000 B<< C<Ps = 0> >> Change Icon Name and Window Title to B<< C<Pt> >>
1973 B<< C<Ps = 1> >> Change Icon Name to B<< C<Pt> >> 2001 B<< C<Ps = 1> >> Change Icon Name to B<< C<Pt> >>
1974 B<< C<Ps = 2> >> Change Window Title to B<< C<Pt> >> 2002 B<< C<Ps = 2> >> Change Window Title to B<< C<Pt> >>
1975 B<< C<Ps = 3> >> If B<< C<Pt> >> starts with a B<< C<?> >>, query the (STRING) property of the window and return it. If B<< C<Pt> >> contains a B<< C<=> >>, set the named property to the given value, else delete the specified property. 2003 B<< C<Ps = 3> >> If B<< C<Pt> >> starts with a B<< C<?> >>, query the (STRING) property of the window and return it. If B<< C<Pt> >> contains a B<< C<=> >>, set the named property to the given value, else delete the specified property.
1976 B<< C<Ps = 4> >> B<< C<Pt> >> is a semi-colon separated sequence of one or more semi-colon separated B<number>/B<name> pairs, where B<number> is an index to a colour and B<name> is the name of a colour. Each pair causes the B<number>ed colour to be changed to B<name>. Numbers 0-7 corresponds to low-intensity (normal) colours and 8-15 corresponds to high-intensity colours. 0=black, 1=red, 2=green, 3=yellow, 4=blue, 5=magenta, 6=cyan, 7=white 2004 B<< C<Ps = 4> >> B<< C<Pt> >> is a semi-colon separated sequence of one or more semi-colon separated B<number>/B<name> pairs, where B<number> is an index to a colour and B<name> is the name of a colour. Each pair causes the B<number>ed colour to be changed to B<name>. Numbers 0-7 corresponds to low-intensity (normal) colours and 8-15 corresponds to high-intensity colours. 0=black, 1=red, 2=green, 3=yellow, 4=blue, 5=magenta, 6=cyan, 7=white
1977 B<< C<Ps = 10> >> Change colour of text foreground to B<< C<Pt> >> B<(NB: may change in future)> 2005 B<< C<Ps = 10> >> Change colour of text foreground to B<< C<Pt> >>
1978 B<< C<Ps = 11> >> Change colour of text background to B<< C<Pt> >> B<(NB: may change in future)> 2006 B<< C<Ps = 11> >> Change colour of text background to B<< C<Pt> >>
1979 B<< C<Ps = 12> >> Change colour of text cursor foreground to B<< C<Pt> >> 2007 B<< C<Ps = 12> >> Change colour of text cursor foreground to B<< C<Pt> >>
1980 B<< C<Ps = 13> >> Change colour of mouse foreground to B<< C<Pt> >> 2008 B<< C<Ps = 13> >> Change colour of mouse foreground to B<< C<Pt> >>
1981 B<< C<Ps = 17> >> Change colour of highlight characters to B<< C<Pt> >> 2009 B<< C<Ps = 17> >> Change background colour of highlight characters to B<< C<Pt> >>
1982 B<< C<Ps = 18> >> Change colour of bold characters to B<< C<Pt> >> [deprecated, see 706] 2010 B<< C<Ps = 19> >> Change foreground colour of highlight characters to B<< C<Pt> >>
1983 B<< C<Ps = 19> >> Change colour of underlined characters to B<< C<Pt> >> [deprecated, see 707]
1984 B<< C<Ps = 20> >> Change background pixmap parameters (see section XPM) (Compile XPM). 2011 B<< C<Ps = 20> >> Change background pixmap parameters (see section BACKGROUND IMAGE) (Compile afterimage or pixbuf).
1985 B<< C<Ps = 39> >> Change default foreground colour to B<< C<Pt> >>. 2012 B<< C<Ps = 39> >> Change default foreground colour to B<< C<Pt> >>. [deprecated, use 10]
1986 B<< C<Ps = 46> >> Change Log File to B<< C<Pt> >> I<unimplemented> 2013 B<< C<Ps = 46> >> Change Log File to B<< C<Pt> >> I<unimplemented>
1987 B<< C<Ps = 49> >> Change default background colour to B<< C<Pt> >>. 2014 B<< C<Ps = 49> >> Change default background colour to B<< C<Pt> >>. [deprecated, use 11]
1988 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> >> 2015 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> >>
1989 B<< C<Ps = 55> >> Log all scrollback buffer and all of screen to B<< C<Pt> >> 2016 B<< C<Ps = 55> >> Log all scrollback buffer and all of screen to B<< C<Pt> >> [disabled]
1990 B<< C<Ps = 701> >> Change current locale to B<< C<Pt> >>, or, if B<< C<Pt> >> is B<< C<?> >>, return the current locale (Compile frills). 2017 B<< C<Ps = 701> >> Change current locale to B<< C<Pt> >>, or, if B<< C<Pt> >> is B<< C<?> >>, return the current locale (Compile frills).
1991 B<< C<Ps = 702> >> Request version if B<< C<Pt> >> is B<< C<?> >>, returning C<rxvt-unicode>, the resource name, the major and minor version numbers, e.g. C<ESC ] 702 ; rxvt-unicode ; urxvt ; 7 ; 4 ST>. 2018 B<< C<Ps = 702> >> Request version if B<< C<Pt> >> is B<< C<?> >>, returning C<rxvt-unicode>, the resource name, the major and minor version numbers, e.g. C<ESC ] 702 ; rxvt-unicode ; urxvt ; 7 ; 4 ST>.
1992 B<< C<Ps = 704> >> Change colour of italic characters to B<< C<Pt> >> 2019 B<< C<Ps = 704> >> Change colour of italic characters to B<< C<Pt> >>
1993 B<< C<Ps = 705> >> Change background pixmap tint colour to B<< C<Pt> >> (Compile transparency). 2020 B<< C<Ps = 705> >> Change background pixmap tint colour to B<< C<Pt> >> (Compile transparency).
1994 B<< C<Ps = 706> >> Change colour of bold characters to B<< C<Pt> >> 2021 B<< C<Ps = 706> >> Change colour of bold characters to B<< C<Pt> >>
1995 B<< C<Ps = 707> >> Change colour of underlined characters to B<< C<Pt> >> 2022 B<< C<Ps = 707> >> Change colour of underlined characters to B<< C<Pt> >>
2023 B<< C<Ps = 708> >> Change colour of the border to B<< C<Pt> >>
1996 B<< C<Ps = 710> >> Set normal fontset to B<< C<Pt> >>. Same as C<Ps = 50>. 2024 B<< C<Ps = 710> >> Set normal fontset to B<< C<Pt> >>. Same as C<Ps = 50>.
1997 B<< C<Ps = 711> >> Set bold fontset to B<< C<Pt> >>. Similar to C<Ps = 50> (Compile styles). 2025 B<< C<Ps = 711> >> Set bold fontset to B<< C<Pt> >>. Similar to C<Ps = 50> (Compile styles).
1998 B<< C<Ps = 712> >> Set italic fontset to B<< C<Pt> >>. Similar to C<Ps = 50> (Compile styles). 2026 B<< C<Ps = 712> >> Set italic fontset to B<< C<Pt> >>. Similar to C<Ps = 50> (Compile styles).
1999 B<< C<Ps = 713> >> Set bold-italic fontset to B<< C<Pt> >>. Similar to C<Ps = 50> (Compile styles). 2027 B<< C<Ps = 713> >> Set bold-italic fontset to B<< C<Pt> >>. Similar to C<Ps = 50> (Compile styles).
2000 B<< C<Ps = 720> >> Move viewing window up by B<< C<Pt> >> lines, or clear scrollback buffer if C<Pt = 0> (Compile frills). 2028 B<< C<Ps = 720> >> Move viewing window up by B<< C<Pt> >> lines, or clear scrollback buffer if C<Pt = 0> (Compile frills).
2003 2031
2004=end table 2032=end table
2005 2033
2006=back 2034=back
2007 2035
2008=head1 XPM 2036=head1 BACKGROUND IMAGE
2009 2037
2010For the XPM XTerm escape sequence B<< C<ESC ] 20 ; Pt ST> >> then value 2038For the BACKGROUND IMAGE XTerm escape sequence B<< C<ESC ] 20 ; Pt ST> >> the value
2011of B<< C<Pt> >> can be the name of the background pixmap followed by a 2039of B<< C<Pt> >> can be one of the following commands:
2012sequence of scaling/positioning commands separated by semi-colons. The
2013scaling/positioning commands are as follows:
2014 2040
2015=over 4 2041=over 4
2016 2042
2017=item query scale/position 2043=item B<< C<?> >>
2018 2044
2019B<?> 2045display scale and position in the title
2020 2046
2047=item B<< C<;WxH+X+Y> >>
2048
2021=item change scale and position 2049change scale and/or position
2022 2050
2023B<WxH+X+Y> 2051=item B<< C<FILE;WxH+X+Y> >>
2024 2052
2025B<WxH+X> (== B<WxH+X+X>) 2053change background image
2026
2027B<WxH> (same as B<WxH+50+50>)
2028
2029B<W+X+Y> (same as B<WxW+X+Y>)
2030
2031B<W+X> (same as B<WxW+X+X>)
2032
2033B<W> (same as B<WxW+50+50>)
2034
2035=item change position (absolute)
2036
2037B<=+X+Y>
2038
2039B<=+X> (same as B<=+X+Y>)
2040
2041=item change position (relative)
2042
2043B<+X+Y>
2044
2045B<+X> (same as B<+X+Y>)
2046
2047=item rescale (relative)
2048
2049B<Wx0> -> B<W *= (W/100)>
2050
2051B<0xH> -> B<H *= (H/100)>
2052 2054
2053=back 2055=back
2054 2056
2055For example:
2056
2057=over 4
2058
2059=item B<\E]20;funky\a>
2060
2061load B<funky.xpm> as a tiled image
2062
2063=item B<\E]20;mona;100\a>
2064
2065load B<mona.xpm> with a scaling of 100%
2066
2067=item B<\E]20;;200;?\a>
2068
2069rescale the current pixmap to 200% and display the image geometry in
2070the title
2071
2072=back
2073X<Mouse> 2057X<Mouse>
2074 2058
2075=head1 Mouse Reporting 2059=head1 Mouse Reporting
2076 2060
2077=over 4 2061=over 4
2118Col = B<< C<< <x> - SPACE >> >> 2102Col = B<< C<< <x> - SPACE >> >>
2119 2103
2120Row = B<< C<< <y> - SPACE >> >> 2104Row = B<< C<< <y> - SPACE >> >>
2121 2105
2122=back 2106=back
2107
2108=head1 Key Codes
2109
2123X<KeyCodes> 2110X<KeyCodes>
2124
2125=head1 Key Codes
2126 2111
2127Note: B<Shift> + B<F1>-B<F10> generates B<F11>-B<F20> 2112Note: B<Shift> + B<F1>-B<F10> generates B<F11>-B<F20>
2128 2113
2129For the keypad, use B<Shift> to temporarily override Application-Keypad 2114For the keypad, use B<Shift> to temporarily override Application-Keypad
2130setting use B<Num_Lock> to toggle Application-Keypad setting if 2115setting use B<Num_Lock> to toggle Application-Keypad setting if
2131B<Num_Lock> is off, toggle Application-Keypad setting. Also note that 2116B<Num_Lock> is off, toggle Application-Keypad setting. Also note that
2132values of B<Home>, B<End>, B<Delete> may have been compiled differently on 2117values of B<BackSpace>, B<Delete> may have been compiled differently on
2133your system. 2118your system.
2134 2119
2135=begin table 2120=begin table
2136 2121
2137 B<Normal> B<Shift> B<Control> B<Ctrl+Shift> 2122 B<Normal> B<Shift> B<Control> B<Ctrl+Shift>
2197 2182
2198=head1 CONFIGURE OPTIONS 2183=head1 CONFIGURE OPTIONS
2199 2184
2200General hint: if you get compile errors, then likely your configuration 2185General hint: if you get compile errors, then likely your configuration
2201hasn't been tested well. Either try with C<--enable-everything> or use 2186hasn't been tested well. Either try with C<--enable-everything> or use
2202the F<./reconf> script as a base for experiments. F<./reconf> is used by 2187the default configuration (i.e. no C<--enable-xxx> or C<--disable-xxx>
2203myself, so it should generally be a working config. Of course, you should 2188switches). Of course, you should always report when a combination doesn't
2204always report when a combination doesn't work, so it can be fixed. Marc 2189work, so it can be fixed. Marc Lehmann <rxvt@schmorp.de>.
2205Lehmann <rxvt@schmorp.de>.
2206 2190
2207All 2191All
2208 2192
2209=over 4 2193=over 4
2210 2194
2211=item --enable-everything 2195=item --enable-everything
2212 2196
2213Add (or remove) support for all non-multichoice options listed in "./configure 2197Add (or remove) support for all non-multichoice options listed
2214--help". 2198in C<./configure --help>, except for C<--enable-assert> and
2199C<--enable-256-color>.
2215 2200
2216You can specify this and then disable options you do not like by 2201You can specify this and then disable options you do not like by
2217I<following> this with the appropriate C<--disable-...> arguments, 2202I<following> this with the appropriate C<--disable-...> arguments,
2218or you can start with a minimal configuration by specifying 2203or you can start with a minimal configuration by specifying
2219C<--disable-everything> and than adding just the C<--enable-...> arguments 2204C<--disable-everything> and than adding just the C<--enable-...> arguments
2242 2227
2243=begin table 2228=begin table
2244 2229
2245 all all available codeset groups 2230 all all available codeset groups
2246 zh common chinese encodings 2231 zh common chinese encodings
2247 zh_ext rarely used but very big chinese encodigs 2232 zh_ext rarely used but very big chinese encodings
2248 jp common japanese encodings 2233 jp common japanese encodings
2249 jp_ext rarely used but big japanese encodings 2234 jp_ext rarely used but big japanese encodings
2250 kr korean encodings 2235 kr korean encodings
2251 2236
2252=end table 2237=end table
2266requirements per character from 2 to 4 bytes. X11 fonts do not yet 2251requirements per character from 2 to 4 bytes. X11 fonts do not yet
2267support these extra characters, but Xft does. 2252support these extra characters, but Xft does.
2268 2253
2269Please note that rxvt-unicode can store unicode code points >65535 2254Please note that rxvt-unicode can store unicode code points >65535
2270even without this flag, but the number of such characters is 2255even without this flag, but the number of such characters is
2271limited to a view thousand (shared with combining characters, 2256limited to a few thousand (shared with combining characters,
2272see next switch), and right now rxvt-unicode cannot display them 2257see next switch), and right now rxvt-unicode cannot display them
2273(input/output and cut&paste still work, though). 2258(input/output and cut&paste still work, though).
2274 2259
2275=item --enable-combining (default: on) 2260=item --enable-combining (default: on)
2276 2261
2277Enable automatic composition of combining characters into 2262Enable automatic composition of combining characters into
2278composite characters. This is required for proper viewing of text 2263composite characters. This is required for proper viewing of text
2279where accents are encoded as seperate unicode characters. This is 2264where accents are encoded as separate unicode characters. This is
2280done by using precomposited characters when available or creating 2265done by using precomposited characters when available or creating
2281new pseudo-characters when no precomposed form exists. 2266new pseudo-characters when no precomposed form exists.
2282 2267
2283Without --enable-unicode3, the number of additional precomposed 2268Without --enable-unicode3, the number of additional precomposed
2284characters is somewhat limited (the 6400 private use characters will be 2269characters is somewhat limited (the 6400 private use characters will be
2299=item --with-res-name=NAME (default: urxvt) 2284=item --with-res-name=NAME (default: urxvt)
2300 2285
2301Use the given name as default application name when 2286Use the given name as default application name when
2302reading resources. Specify --with-res-name=rxvt to replace rxvt. 2287reading resources. Specify --with-res-name=rxvt to replace rxvt.
2303 2288
2304=item --with-res-class=CLASS /default: URxvt) 2289=item --with-res-class=CLASS (default: URxvt)
2305 2290
2306Use the given class as default application class 2291Use the given class as default application class
2307when reading resources. Specify --with-res-class=Rxvt to replace 2292when reading resources. Specify --with-res-class=Rxvt to replace
2308rxvt. 2293rxvt.
2309 2294
2322 2307
2323Write user and tty to lastlog file (used by programs like 2308Write user and tty to lastlog file (used by programs like
2324F<lastlogin>) at start of rxvt execution. This option requires 2309F<lastlogin>) at start of rxvt execution. This option requires
2325--enable-utmp to also be specified. 2310--enable-utmp to also be specified.
2326 2311
2312=item --enable-afterimage (default: on)
2313
2314Add support for libAfterImage to be used for background
2315images. It adds support for many file formats including JPG, PNG,
2316SVG, TIFF, GIF, XPM, BMP, ICO, XCF, TGA and AfterStep image XML
2317(L<http://www.afterstep.org/visualdoc.php?show=asimagexml>).
2318
2319Note that with this option enabled, @@RXVT_NAME@@'s memory footprint might
2320increase by a few megabytes even if no extra features are used (mostly due
2321to third-party libraries used by libAI). Memory footprint may somewhat be
2322lowered if libAfterImage is configured without support for SVG.
2323
2327=item --enable-xpm-background (default: on) 2324=item --enable-pixbuf (default: off)
2328 2325
2329Add support for XPM background pixmaps. 2326Add support for GDK-PixBuf to be used for background images.
2327It adds support for many file formats including JPG, PNG,
2328TIFF, GIF, XPM, BMP, ICO and TGA.
2330 2329
2331=item --enable-transparency (default: on) 2330=item --enable-transparency (default: on)
2332 2331
2333Add support for inheriting parent backgrounds thus giving a fake 2332Add support for using the root pixmap as background to simulate transparency.
2334transparency to the term. 2333Note that tint, blur and blend effects depend on libAfterImage or on
2334libXrender and on the availability of the RENDER extension in the X
2335server.
2335 2336
2336=item --enable-fading (default: on) 2337=item --enable-fading (default: on)
2337 2338
2338Add support for fading the text when focus is lost (requires C<--enable-transparency>). 2339Add support for fading the text when focus is lost.
2339
2340=item --enable-tinting (default: on)
2341
2342Add support for tinting of transparent backgrounds (requires C<--enable-transparency>).
2343 2340
2344=item --enable-rxvt-scroll (default: on) 2341=item --enable-rxvt-scroll (default: on)
2345 2342
2346Add support for the original rxvt scrollbar. 2343Add support for the original rxvt scrollbar.
2347 2344
2350Add support for a NeXT-like scrollbar. 2347Add support for a NeXT-like scrollbar.
2351 2348
2352=item --enable-xterm-scroll (default: on) 2349=item --enable-xterm-scroll (default: on)
2353 2350
2354Add support for an Xterm-like scrollbar. 2351Add support for an Xterm-like scrollbar.
2355
2356=item --enable-plain-scroll (default: on)
2357
2358Add support for a very unobtrusive, plain-looking scrollbar that
2359is the favourite of the rxvt-unicode author, having used it for
2360many years.
2361
2362=item --enable-ttygid (default: off)
2363
2364Change tty device setting to group "tty" - only use this if
2365your system uses this type of security.
2366 2352
2367=item --disable-backspace-key 2353=item --disable-backspace-key
2368 2354
2369Removes any handling of the backspace key by us - let the X server do it. 2355Removes any handling of the backspace key by us - let the X server do it.
2370 2356
2390A non-exhaustive list of features enabled by C<--enable-frills> (possibly 2376A non-exhaustive list of features enabled by C<--enable-frills> (possibly
2391in combination with other switches) is: 2377in combination with other switches) is:
2392 2378
2393 MWM-hints 2379 MWM-hints
2394 EWMH-hints (pid, utf8 names) and protocols (ping) 2380 EWMH-hints (pid, utf8 names) and protocols (ping)
2381 urgency hint
2395 seperate underline colour (-underlineColor) 2382 separate underline colour (-underlineColor)
2396 settable border widths and borderless switch (-w, -b, -bl) 2383 settable border widths and borderless switch (-w, -b, -bl)
2397 visual depth selection (-depth) 2384 visual depth selection (-depth)
2398 settable extra linespacing /-lsp) 2385 settable extra linespacing (-lsp)
2399 iso-14755-2 and -3, and visual feedback 2386 iso-14755 5.1 (basic) support
2400 tripleclickwords (-tcw) 2387 tripleclickwords (-tcw)
2401 settable insecure mode (-insecure) 2388 settable insecure mode (-insecure)
2402 keysym remapping support 2389 keysym remapping support
2403 cursor blinking and underline cursor (-cb, -uc) 2390 cursor blinking and underline cursor (-bc, -uc)
2404 XEmbed support (-embed) 2391 XEmbed support (-embed)
2405 user-pty (-pty-fd) 2392 user-pty (-pty-fd)
2406 hold on exit (-hold) 2393 hold on exit (-hold)
2394 compile in built-in block graphics
2407 skip builtin block graphics (-sbg) 2395 skip builtin block graphics (-sbg)
2408 separate highlightcolor support (-hc) 2396 separate highlight colour (-highlightColor, -highlightTextColor)
2409 2397
2410It also enables some non-essential features otherwise disabled, such as: 2398It also enables some non-essential features otherwise disabled, such as:
2411 2399
2412 some round-trip time optimisations 2400 some round-trip time optimisations
2413 nearest color allocation on pseudocolor screens 2401 nearest colour allocation on pseudocolor screens
2414 UTF8_STRING supporr for selection 2402 UTF8_STRING support for selection
2415 sgr modes 90..97 and 100..107 2403 sgr modes 90..97 and 100..107
2416 backindex and forwardindex escape sequences 2404 backindex and forwardindex escape sequences
2417 view change/zero scorllback esacpe sequences 2405 view change/zero scrollback escape sequences
2418 locale switching escape sequence 2406 locale switching escape sequence
2419 window op and some xterm/OSC escape sequences 2407 window op and some xterm/OSC escape sequences
2420 rectangular selections 2408 rectangular selections
2421 trailing space removal for selections 2409 trailing space removal for selections
2422 verbose X error handling 2410 verbose X error handling
2423 2411
2424=item --enable-iso14755 (default: on) 2412=item --enable-iso14755 (default: on)
2425 2413
2426Enable extended ISO 14755 support (see @@RXVT_NAME@@(1), or 2414Enable extended ISO 14755 support (see @@RXVT_NAME@@(1)).
2427F<doc/rxvt.1.txt>). Basic support (section 5.1) is enabled by 2415Basic support (section 5.1) is enabled by C<--enable-frills>, while
2428C<--enable-frills>, while support for 5.2, 5.3 and 5.4 is enabled with 2416support for 5.2, 5.3 and 5.4 is enabled with this switch.
2429this switch.
2430 2417
2431=item --enable-keepscrolling (default: on) 2418=item --enable-keepscrolling (default: on)
2432 2419
2433Add support for continual scrolling of the display when you hold 2420Add support for continual scrolling of the display when you hold
2434the mouse button down on a scrollbar arrow. 2421the mouse button down on a scrollbar arrow.
2422
2423=item --enable-selectionscrolling (default: on)
2424
2425Add support for scrolling when the selection moves to the top or
2426bottom of the screen.
2435 2427
2436=item --enable-mousewheel (default: on) 2428=item --enable-mousewheel (default: on)
2437 2429
2438Add support for scrolling via mouse wheel or buttons 4 & 5. 2430Add support for scrolling via mouse wheel or buttons 4 & 5.
2439 2431
2441 2433
2442Add support for continual scrolling (using the mouse wheel as an 2434Add support for continual scrolling (using the mouse wheel as an
2443accelerator) while the control key is held down. This option 2435accelerator) while the control key is held down. This option
2444requires --enable-mousewheel to also be specified. 2436requires --enable-mousewheel to also be specified.
2445 2437
2446=item --disable-new-selection
2447
2448Remove support for mouse selection style like that of xterm.
2449
2450=item --enable-dmalloc (default: off)
2451
2452Use Gray Watson's malloc - which is good for debugging See
2453L<http://www.letters.com/dmalloc/> for details If you use either this or the
2454next option, you may need to edit src/Makefile after compiling to point
2455DINCLUDE and DLIB to the right places.
2456
2457You can only use either this option and the following (should
2458you use either) .
2459
2460=item --enable-dlmalloc (default: off)
2461
2462Use Doug Lea's malloc - which is good for a production version
2463See L<http://g.oswego.edu/dl/html/malloc.html> for details.
2464
2465=item --enable-smart-resize (default: on) 2438=item --enable-smart-resize (default: off)
2466 2439
2467Add smart growth/shrink behaviour when changing font size via hot 2440Add smart growth/shrink behaviour when resizing.
2468keys. This should keep the window corner which is closest to a corner of 2441This should keep the window corner which is closest to a corner of
2469the screen in a fixed position. 2442the screen in a fixed position.
2470 2443
2444=item --enable-text-blink (default: on)
2445
2446Add support for blinking text.
2447
2471=item --enable-pointer-blank (default: on) 2448=item --enable-pointer-blank (default: on)
2472 2449
2473Add support to have the pointer disappear when typing or inactive. 2450Add support to have the pointer disappear when typing or inactive.
2474 2451
2475=item --enable-perl (default: on) 2452=item --enable-perl (default: on)
2476 2453
2477Enable an embedded perl interpreter. See the B<@@RXVT_NAME@@perl(3)> 2454Enable an embedded perl interpreter. See the B<@@RXVT_NAME@@perl(3)>
2478manpage (F<doc/rxvtperl.txt>) for more info on this feature, or the files 2455manpage for more info on this feature, or the files in F<src/perl/>
2479in F<src/perl-ext/> for the extensions that are installed by default. The 2456for the extensions that are installed by default.
2480perl interpreter that is used can be specified via the C<PERL> environment 2457The perl interpreter that is used can be specified via the C<PERL>
2481variable when running configure. 2458environment variable when running configure. Even when compiled in,
2459perl will I<not> be initialised when all extensions have been disabled
2460C<-pe "" --perl-ext-common "">, so it should be safe to enable from a
2461resource standpoint.
2462
2463=item --enable-assert (default: off)
2464
2465Enables the assertions in the code, normally disabled. This switch is only
2466useful when developing rxvt-unicode.
2467
2468=item --enable-256-color (default: off)
2469
2470Force use of so-called 256 colour mode, to work around buggy applications
2471that do not support termcap/terminfo, or simply improve support for
2472applications hardcoding the xterm 256 colour table.
2473
2474This switch breaks termcap/terminfo compatibility to C<TERM=rxvt-unicode>,
2475and consequently sets C<TERM> to C<rxvt-unicode-256color> by default
2476(F<doc/etc/> contains termcap/terminfo definitions for both).
2477
2478It also results in higher memory usage and can slow down @@RXVT_NAME@@
2479dramatically when more than six fonts are in use by a terminal instance.
2480
2481=item --with-afterimage-config=DIR
2482
2483Look for the libAfterImage config script in DIR.
2482 2484
2483=item --with-name=NAME (default: urxvt) 2485=item --with-name=NAME (default: urxvt)
2484 2486
2485Set the basename for the installed binaries, resulting 2487Set the basename for the installed binaries, resulting
2486in C<urxvt>, C<urxvtd> etc.). Specify C<--with-name=rxvt> to replace with 2488in C<urxvt>, C<urxvtd> etc.). Specify C<--with-name=rxvt> to replace with
2496PATH. 2498PATH.
2497 2499
2498=item --with-x 2500=item --with-x
2499 2501
2500Use the X Window System (pretty much default, eh?). 2502Use the X Window System (pretty much default, eh?).
2501
2502=item --with-xpm-includes=DIR
2503
2504Look for the XPM includes in DIR.
2505
2506=item --with-xpm-library=DIR
2507
2508Look for the XPM library in DIR.
2509
2510=item --with-xpm
2511
2512Not needed - define via --enable-xpm-background.
2513 2503
2514=back 2504=back
2515 2505
2516=head1 AUTHORS 2506=head1 AUTHORS
2517 2507

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines