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.230 by sf-exg, Mon Jun 9 10:08:48 2014 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
113 129
114 # Bourne/Korn/POSIX family of shells: 130 # Bourne/Korn/POSIX family of shells:
115 [ ${TERM:-foo} = foo ] && TERM=xterm # assume an xterm if we don't know 131 [ ${TERM:-foo} = foo ] && TERM=xterm # assume an xterm if we don't know
116 if [ ${TERM:-foo} = xterm ]; then 132 if [ ${TERM:-foo} = xterm ]; then
117 stty -icanon -echo min 0 time 15 # see if enhanced rxvt or not 133 stty -icanon -echo min 0 time 15 # see if enhanced rxvt or not
118 echo -n '^[Z' 134 printf "\eZ"
119 read term_id 135 read term_id
120 stty icanon echo 136 stty icanon echo
121 if [ ""${term_id} = '^[[?1;2C' -a ${DISPLAY:-foo} = foo ]; then 137 if [ ""${term_id} = '^[[?1;2C' -a ${DISPLAY:-foo} = foo ]; then
122 echo -n '^[[7n' # query the rxvt we are in for the DISPLAY string 138 printf '\e[7n' # query the rxvt we are in for the DISPLAY string
123 read DISPLAY # set it in our local shell 139 read DISPLAY # set it in our local shell
124 fi 140 fi
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
183the case of rxvt-unicode this hardly matters, as its portability limits 199the case of rxvt-unicode this hardly matters, as its portability limits
184are defined by things like X11, pseudo terminals, locale support and unix 200are defined by things like X11, pseudo terminals, locale support and unix
185domain sockets, which are all less portable than C++ itself. 201domain sockets, which are all less portable than C++ itself.
186 202
187Regarding the bloat, see the above question: It's easy to write programs 203Regarding the bloat, see the above question: It's easy to write programs
188in C that use gobs of memory, an certainly possible to write programs in 204in C that use gobs of memory, and certainly possible to write programs in
189C++ that don't. C++ also often comes with large libraries, but this is 205C++ that don't. C++ also often comes with large libraries, but this is
190not necessarily the case with GCC. Here is what rxvt links against on my 206not necessarily the case with GCC. Here is what rxvt links against on my
191system with a minimal config: 207system with a minimal config:
192 208
193 libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x00002aaaaabc3000) 209 libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x00002aaaaabc3000)
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.
245This method requires that the background-setting program sets the
246_XROOTPMAP_ID or ESETROOT_PMAP_ID property. Compatible programs
247are Esetroot, hsetroot and feh.
229 248
2302. Use a simple pixmap and emulate pseudo-transparency. This enables you 2492. Use a simple pixmap and emulate pseudo-transparency. This enables you
231to use effects other than tinting and shading: Just shade/tint/whatever 250to use effects other than tinting and shading: Just shade/tint/whatever
232your picture with gimp or any other tool: 251your picture with gimp or any other tool:
233 252
234 convert wallpaper.jpg -blur 20x20 -modulate 30 background.xpm 253 convert wallpaper.jpg -blur 20x20 -modulate 30 background.jpg
235 @@URXVT_NAME@@ -pixmap background.xpm -pe automove-background 254 @@URXVT_NAME@@ -pixmap "background.jpg;:root"
236 255
237That works. If you think it doesn't, you lack XPM and Perl support, or you 256That works. If you think it doesn't, you lack GDK-PixBuf support, or you
238are unable to read. 257are unable to read.
239 258
2403. Use an ARGB visual: 2593. Use an ARGB visual:
241 260
242 @@URXVT_NAME@@ -depth 32 -fg grey90 -bg rgba:0000/0000/4444/cccc 261 @@URXVT_NAME@@ -depth 32 -fg grey90 -bg rgba:0000/0000/4444/cccc
342=head3 What's with this bold/blink stuff? 361=head3 What's with this bold/blink stuff?
343 362
344If no bold colour is set via C<colorBD:>, bold will invert text using the 363If no bold colour is set via C<colorBD:>, bold will invert text using the
345standard foreground colour. 364standard foreground colour.
346 365
347For the standard background colour, blinking will actually make the 366For the standard background colour, blinking will actually make
348text blink when compiled with C<--enable-blinking>. with standard 367the text blink when compiled with C<--enable-text-blink>. Without
349colours. Without C<--enable-blinking>, the blink attribute will be 368C<--enable-text-blink>, the blink attribute will be ignored.
350ignored.
351 369
352On ANSI colours, bold/blink attributes are used to set high-intensity 370On ANSI colours, bold/blink attributes are used to set high-intensity
353foreground/background colors. 371foreground/background colours.
354 372
355color0-7 are the low-intensity colors. 373color0-7 are the low-intensity colours.
356 374
357color8-15 are the corresponding high-intensity colors. 375color8-15 are the corresponding high-intensity colours.
358 376
359=head3 I don't like the screen colors. How do I change them? 377=head3 I don't like the screen colours. How do I change them?
360 378
361You can change the screen colors at run-time using F<~/.Xdefaults> 379You can change the screen colours at run-time using F<~/.Xdefaults>
362resources (or as long-options). 380resources (or as long-options).
363 381
364Here are values that are supposed to resemble a VGA screen, 382Here are values that are supposed to resemble a VGA screen,
365including the murky brown that passes for low-intensity yellow: 383including the murky brown that passes for low-intensity yellow:
366 384
380 URxvt.color12: #0000FF 398 URxvt.color12: #0000FF
381 URxvt.color13: #FF00FF 399 URxvt.color13: #FF00FF
382 URxvt.color14: #00FFFF 400 URxvt.color14: #00FFFF
383 URxvt.color15: #FFFFFF 401 URxvt.color15: #FFFFFF
384 402
385And here is a more complete set of non-standard colors. 403And here is a more complete set of non-standard colours.
386 404
387 URxvt.cursorColor: #dc74d1 405 URxvt.cursorColor: #dc74d1
388 URxvt.pointerColor: #dc74d1 406 URxvt.pointerColor: #dc74d1
389 URxvt.background: #0e0e0e 407 URxvt.background: #0e0e0e
390 URxvt.foreground: #4ad5e1 408 URxvt.foreground: #4ad5e1
460has been designed yet). 478has been designed yet).
461 479
462Until then, you might get away with switching fonts at runtime (see L<Can 480Until then, you might get away with switching fonts at runtime (see L<Can
463I switch the fonts at runtime?> later in this document). 481I switch the fonts at runtime?> later in this document).
464 482
483=head3 How can I make mplayer display video correctly?
484
485We are working on it, in the meantime, as a workaround, use something like:
486
487 @@URXVT_NAME@@ -b 600 -geometry 20x1 -e sh -c 'mplayer -wid $WINDOWID file...'
488
489
465=head2 Keyboard, Mouse & User Interaction 490=head2 Keyboard, Mouse & User Interaction
466 491
467=head3 The new selection selects pieces that are too big, how can I select single words? 492=head3 The new selection selects pieces that are too big, how can I select single words?
468 493
469If you want to select e.g. alphanumeric words, you can use the following 494If you want to select e.g. alphanumeric words, you can use the following
476 501
477To get a selection that is very similar to the old code, try this pattern: 502To get a selection that is very similar to the old code, try this pattern:
478 503
479 URxvt.selection.pattern-0: ([^"&'()*,;<=>?@[\\\\]^`{|})]+) 504 URxvt.selection.pattern-0: ([^"&'()*,;<=>?@[\\\\]^`{|})]+)
480 505
481Please also note that the I<LeftClick Shift-LeftClik> combination also 506Please also note that the I<LeftClick Shift-LeftClick> combination also
482selects words like the old code. 507selects words like the old code.
483 508
484=head3 I don't like the new selection/popups/hotkeys/perl, how do I change/disable it? 509=head3 I don't like the new selection/popups/hotkeys/perl, how do I change/disable it?
485 510
486You can disable the perl extension completely by setting the 511You can disable the perl extension completely by setting the
529helped. 554helped.
530 555
531=head3 My Compose (Multi_key) key is no longer working. 556=head3 My Compose (Multi_key) key is no longer working.
532 557
533The most common causes for this are that either your locale is not set 558The most common causes for this are that either your locale is not set
534correctly, or you specified a B<preeditStyle> that is not supported by 559correctly, or you specified a B<preeditType> that is not supported by
535your input method. For example, if you specified B<OverTheSpot> and 560your input method. For example, if you specified B<OverTheSpot> and
536your input method (e.g. the default input method handling Compose keys) 561your input method (e.g. the default input method handling Compose keys)
537does not support this (for instance because it is not visual), then 562does not support this (for instance because it is not visual), then
538rxvt-unicode will continue without an input method. 563rxvt-unicode will continue without an input method.
539 564
540In this case either do not specify a B<preeditStyle> or specify more than 565In this case either do not specify a B<preeditType> or specify more than
541one pre-edit style, such as B<OverTheSpot,Root,None>. 566one pre-edit style, such as B<OverTheSpot,Root,None>.
567
568If it still doesn't work, then maybe your input method doesn't support
569compose sequences - to fall back to the built-in one, make sure you don't
570specify an input method via C<-im> or C<XMODIFIERS>.
542 571
543=head3 I cannot type C<Ctrl-Shift-2> to get an ASCII NUL character due to ISO 14755 572=head3 I cannot type C<Ctrl-Shift-2> to get an ASCII NUL character due to ISO 14755
544 573
545Either try C<Ctrl-2> alone (it often is mapped to ASCII NUL even on 574Either try C<Ctrl-2> alone (it often is mapped to ASCII NUL even on
546international keyboards) or simply use ISO 14755 support to your 575international keyboards) or simply use ISO 14755 support to your
549character and so on. 578character and so on.
550 579
551=head3 Mouse cut/paste suddenly no longer works. 580=head3 Mouse cut/paste suddenly no longer works.
552 581
553Make sure that mouse reporting is actually turned off since killing 582Make sure that mouse reporting is actually turned off since killing
554some editors prematurely may leave the mouse in mouse report mode. I've 583some editors prematurely may leave it active. I've
555heard that tcsh may use mouse reporting unless it otherwise specified. A 584heard that tcsh may use mouse reporting unless it is otherwise specified. A
556quick check is to see if cut/paste works when the Alt or Shift keys are 585quick check is to see if cut/paste works when the Alt or Shift keys are
557depressed. 586pressed.
558 587
559=head3 What's with the strange Backspace/Delete key behaviour? 588=head3 What's with the strange Backspace/Delete key behaviour?
560 589
561Assuming that the physical Backspace key corresponds to the 590Assuming that the physical Backspace key corresponds to the
562Backspace keysym (not likely for Linux ... see the following 591Backspace keysym (not likely for Linux ... see the following
563question) there are two standard values that can be used for 592question) there are two standard values that can be used for
564Backspace: C<^H> and C<^?>. 593Backspace: C<^H> and C<^?>.
565 594
566Historically, either value is correct, but rxvt-unicode adopts the debian 595Historically, either value is correct, but rxvt-unicode adopts the debian
567policy of using C<^?> when unsure, because it's the one only only correct 596policy of using C<^?> when unsure, because it's the one and only correct
568choice :). 597choice :).
569 598
570Rxvt-unicode tries to inherit the current stty settings and uses the value 599It 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 600private 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 601
578 # use Backspace = ^H 602 # use Backspace = ^H
579 $ stty erase ^H 603 $ stty erase ^H
580 $ @@URXVT_NAME@@ 604 $ printf "\e[?67h"
581 605
582 # use Backspace = ^? 606 # use Backspace = ^?
583 $ stty erase ^? 607 $ stty erase ^?
584 $ @@URXVT_NAME@@ 608 $ printf "\e[?67l"
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"
597 609
598This helps satisfy some of the Backspace discrepancies that occur, but 610This helps satisfy some of the Backspace discrepancies that occur, but
599if you use Backspace = C<^H>, make sure that the termcap/terminfo value 611if you use Backspace = C<^H>, make sure that the termcap/terminfo value
600properly reflects that. 612properly reflects that.
601 613
604key has been assigned an escape sequence to match the vt100 for Execute 616key has been assigned an escape sequence to match the vt100 for Execute
605(C<ESC [ 3 ~>) and is in the supplied termcap/terminfo. 617(C<ESC [ 3 ~>) and is in the supplied termcap/terminfo.
606 618
607Some other Backspace problems: 619Some other Backspace problems:
608 620
609some editors use termcap/terminfo, 621some editors use termcap/terminfo,
610some editors (vim I'm told) expect Backspace = ^H, 622some editors (vim I'm told) expect Backspace = ^H,
611GNU Emacs (and Emacs-like editors) use ^H for help. 623GNU Emacs (and Emacs-like editors) use ^H for help.
612 624
613Perhaps someday this will all be resolved in a consistent manner. 625Perhaps someday this will all be resolved in a consistent manner.
614 626
618you have run "configure" with the C<--disable-resources> option you can 630you have run "configure" with the C<--disable-resources> option you can
619use the `keysym' resource to alter the keystrings associated with keysyms. 631use the `keysym' resource to alter the keystrings associated with keysyms.
620 632
621Here's an example for a URxvt session started using C<@@URXVT_NAME@@ -name URxvt> 633Here's an example for a URxvt session started using C<@@URXVT_NAME@@ -name URxvt>
622 634
635 URxvt.keysym.Prior: \033[5~
636 URxvt.keysym.Next: \033[6~
623 URxvt.keysym.Home: \033[1~ 637 URxvt.keysym.Home: \033[7~
624 URxvt.keysym.End: \033[4~ 638 URxvt.keysym.End: \033[8~
625 URxvt.keysym.C-apostrophe: \033<C-'>
626 URxvt.keysym.C-slash: \033<C-/>
627 URxvt.keysym.C-semicolon: \033<C-;>
628 URxvt.keysym.C-grave: \033<C-`>
629 URxvt.keysym.C-comma: \033<C-,>
630 URxvt.keysym.C-period: \033<C-.>
631 URxvt.keysym.C-0x60: \033<C-`>
632 URxvt.keysym.C-Tab: \033<C-Tab>
633 URxvt.keysym.C-Return: \033<C-Return>
634 URxvt.keysym.S-Return: \033<S-Return>
635 URxvt.keysym.S-space: \033<S-Space>
636 URxvt.keysym.M-Up: \033<M-Up> 639 URxvt.keysym.Up: \033[A
637 URxvt.keysym.M-Down: \033<M-Down> 640 URxvt.keysym.Down: \033[B
641 URxvt.keysym.Right: \033[C
638 URxvt.keysym.M-Left: \033<M-Left> 642 URxvt.keysym.Left: \033[D
639 URxvt.keysym.M-Right: \033<M-Right>
640 URxvt.keysym.M-C-0: list \033<M-C- 0123456789 >
641 URxvt.keysym.M-C-a: list \033<M-C- abcdefghijklmnopqrstuvwxyz >
642 URxvt.keysym.F12: command:\033]701;zh_CN.GBK\007
643 643
644See some more examples in the documentation for the B<keysym> resource. 644See some more examples in the documentation for the B<keysym> resource.
645 645
646=head3 I'm using keyboard model XXX that has extra Prior/Next/Insert keys. How do I make use of them? For example, the Sun Keyboard type 4 has the following map 646=head3 I'm using keyboard model XXX that has extra Prior/Next/Insert keys. How do I make use of them? For example, the Sun Keyboard type 4 has the following map
647 647
655Rather than have rxvt-unicode try to accommodate all the various possible 655Rather than have rxvt-unicode try to accommodate all the various possible
656keyboard mappings, it is better to use `xmodmap' to remap the keys as 656keyboard mappings, it is better to use `xmodmap' to remap the keys as
657required for your particular machine. 657required for your particular machine.
658 658
659 659
660
661=head2 Terminal Configuration 660=head2 Terminal Configuration
662 661
663=head3 Can I see a typical configuration? 662=head3 Can I see a typical configuration?
664 663
665The default configuration tries to be xterm-like, which I don't like that 664The 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 694develop for myself mostly, so I actually use most of the extensions I
696write. 695write.
697 696
698The selection stuff mainly makes the selection perl-error-message aware 697The selection stuff mainly makes the selection perl-error-message aware
699and tells it to convert perl error messages into vi-commands to load the 698and tells it to convert perl error messages into vi-commands to load the
700relevant file and go tot he error line number. 699relevant file and go to the error line number.
701 700
702 URxvt.scrollstyle: plain 701 URxvt.scrollstyle: plain
703 URxvt.secondaryScroll: true 702 URxvt.secondaryScroll: true
704 703
705As the documentation says: plain is the preferred scrollbar for the 704As the documentation says: plain is the preferred scrollbar for the
777purposes, it works, and gives a different look, as my normal (Non-bold) 776purposes, 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 777font is already bold, and I want to see a difference between bold and
779normal fonts. 778normal fonts.
780 779
781Please note that I used the C<urxvt> instance name and not the C<URxvt> 780Please 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, 781class 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 782for example, my IRC window is started with C<-name IRC>, and uses these
784defaults: 783defaults:
785 784
786 IRC*title: IRC 785 IRC*title: IRC
787 IRC*geometry: 87x12+535+542 786 IRC*geometry: 87x12+535+542
791 IRC*boldFont: suxuseuro 790 IRC*boldFont: suxuseuro
792 IRC*colorBD: white 791 IRC*colorBD: white
793 IRC*keysym.M-C-1: command:\033]710;suxuseuro\007\033]711;suxuseuro\007 792 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 793 IRC*keysym.M-C-2: command:\033]710;9x15bold\007\033]711;9x15bold\007
795 794
796C<Alt-Shift-1> and C<Alt-Shift-2> switch between two different font 795C<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) 796sizes. C<suxuseuro> allows me to keep an eye (and actually read)
798stuff while keeping a very small window. If somebody pastes something 797stuff while keeping a very small window. If somebody pastes something
799complicated (e.g. japanese), I temporarily switch to a larger font. 798complicated (e.g. japanese), I temporarily switch to a larger font.
800 799
801The above is all in my C<.Xdefaults> (I don't use C<.Xresources> nor 800The 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> 801C<xrdb>). I also have some resources in a separate C<.Xdefaults-hostname>
803file for different hosts, for example, on ym main desktop, I use: 802file for different hosts, for example, on my main desktop, I use:
804 803
805 URxvt.keysym.C-M-q: command:\033[3;5;5t 804 URxvt.keysym.C-M-q: command:\033[3;5;5t
806 URxvt.keysym.C-M-y: command:\033[3;5;606t 805 URxvt.keysym.C-M-y: command:\033[3;5;606t
807 URxvt.keysym.C-M-e: command:\033[3;1605;5t 806 URxvt.keysym.C-M-e: command:\033[3;1605;5t
808 URxvt.keysym.C-M-c: command:\033[3;1605;606t 807 URxvt.keysym.C-M-c: command:\033[3;1605;606t
838 837
839The terminal description used by rxvt-unicode is not as widely available 838The 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). 839as that for xterm, or even rxvt (for which the same problem often arises).
841 840
842The correct solution for this problem is to install the terminfo, this can 841The correct solution for this problem is to install the terminfo, this can
843be done like this (with ncurses' infocmp): 842be done by simply installing rxvt-unicode on the remote system as well
843(in case you have a nice package manager ready), or you can install the
844terminfo database manually like this (with ncurses infocmp. works as
845user and root):
844 846
845 REMOTE=remotesystem.domain 847 REMOTE=remotesystem.domain
846 infocmp rxvt-unicode | ssh $REMOTE "cat >/tmp/ti && tic /tmp/ti" 848 infocmp rxvt-unicode | ssh $REMOTE "mkdir -p .terminfo && cat >/tmp/ti && tic /tmp/ti"
847 849
848... or by installing rxvt-unicode normally on the remote system, 850One some systems you might need to set C<$TERMINFO> to the full path of
851F<$HOME/.terminfo> for this to work. Debian systems have a broken tic
852which will not be able to overwrite the existing rxvt-unicode terminfo
853entry - you might have to manually delete all traces of F<rxvt-unicode*>
854from F</etc/terminfo>.
849 855
850If you cannot or do not want to do this, then you can simply set 856If 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 857C<TERM=rxvt> or even C<TERM=xterm>, and live with the small number of
852problems arising, which includes wrong keymapping, less and different 858problems arising, which includes wrong keymapping, less and different
853colours and some refresh errors in fullscreen applications. It's a nice 859colours and some refresh errors in fullscreen applications. It's a nice
860 URxvt.termName: rxvt 866 URxvt.termName: rxvt
861 867
862If you don't plan to use B<rxvt> (quite common...) you could also replace 868If 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>. 869the rxvt terminfo file with the rxvt-unicode one and use C<TERM=rxvt>.
864 870
871=head3 nano fails with "Error opening terminal: rxvt-unicode"
872
873This exceptionally confusing and useless error message is printed by nano
874when it can't find the terminfo database. Nothing is wrong with your
875terminal, read the previous answer for a solution.
876
865=head3 C<tic> outputs some error when compiling the terminfo entry. 877=head3 C<tic> outputs some error when compiling the terminfo entry.
866 878
867Most likely it's the empty definition for C<enacs=>. Just replace it by 879Most likely it's the empty definition for C<enacs=>. Just replace it by
868C<enacs=\E[0@> and try again. 880C<enacs=\E[0@> and try again.
869 881
882You can also create a termcap entry by using terminfo's infocmp program 894You can also create a termcap entry by using terminfo's infocmp program
883like this: 895like this:
884 896
885 infocmp -C rxvt-unicode 897 infocmp -C rxvt-unicode
886 898
887Or you could use this termcap entry, generated by the command above: 899Or you could use the termcap entry in doc/etc/rxvt-unicode.termcap,
888 900generated 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 901
910=head3 Why does C<ls> no longer have coloured output? 902=head3 Why does C<ls> no longer have coloured output?
911 903
912The C<ls> in the GNU coreutils unfortunately doesn't use terminfo to 904The C<ls> in the GNU coreutils unfortunately doesn't use terminfo to
913decide whether a terminal has colour, but uses its own configuration 905decide whether a terminal has colour, but uses its own configuration
953If you encounter strange problems like typing an accented character but 945If you encounter strange problems like typing an accented character but
954getting two unrelated other characters or similar, or if program output is 946getting two unrelated other characters or similar, or if program output is
955subtly garbled, then you should check your locale settings. 947subtly garbled, then you should check your locale settings.
956 948
957Rxvt-unicode must be started with the same C<LC_CTYPE> setting as the 949Rxvt-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 950programs 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 951while 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. 952locale to something else, e.g. C<en_GB.UTF-8>. Needless to say, this is
953not going to work, and is the most common cause for problems.
961 954
962The best thing is to fix your startup environment, as you will likely run 955The 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. 956into other problems. If nothing works you can try this in your .profile.
964 957
965 printf '\33]701;%s\007' "$LC_CTYPE" 958 printf '\33]701;%s\007' "$LC_CTYPE" # $LANG or $LC_ALL are worth a try, too
966 959
967If this doesn't work, then maybe you use a C<LC_CTYPE> specification not 960If 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 961supported 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 962displays 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 963it 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 1057C<@im=kinput2>. For B<scim>, use C<@im=SCIM>. You can see what input
1065method servers are running with this command: 1058method servers are running with this command:
1066 1059
1067 xprop -root XIM_SERVERS 1060 xprop -root XIM_SERVERS
1068 1061
1069=item
1070
1071=back 1062=back
1072 1063
1073=head3 My input method wants <some encoding> but I want UTF-8, what can I do? 1064=head3 My input method wants <some encoding> but I want UTF-8, what can I do?
1074 1065
1075You can specify separate locales for the input method and the rest of the 1066You can specify separate locales for the input method and the rest of the
1100 1091
1101The Debian GNU/Linux package of rxvt-unicode in sarge contains large 1092The Debian GNU/Linux package of rxvt-unicode in sarge contains large
1102patches that considerably change the behaviour of rxvt-unicode (but 1093patches that considerably change the behaviour of rxvt-unicode (but
1103unfortunately this notice has been removed). Before reporting a bug to 1094unfortunately this notice has been removed). Before reporting a bug to
1104the original rxvt-unicode author please download and install the genuine 1095the original rxvt-unicode author please download and install the genuine
1105version (L<http://software.schmorp.de#rxvt-unicode>) and try to reproduce 1096version (L<http://software.schmorp.de/pkg/rxvt-unicode.html>) and try to
1106the problem. If you cannot, chances are that the problems are specific to 1097reproduce the problem. If you cannot, chances are that the problems are
1107Debian GNU/Linux, in which case it should be reported via the Debian Bug 1098specific to Debian GNU/Linux, in which case it should be reported via the
1108Tracking System (use C<reportbug> to report the bug). 1099Debian Bug Tracking System (use C<reportbug> to report the bug).
1109 1100
1110For other problems that also affect the Debian package, you can and 1101For other problems that also affect the Debian package, you can and
1111probably should use the Debian BTS, too, because, after all, it's also a 1102probably should use the Debian BTS, too, because, after all, it's also a
1112bug in the Debian version and it serves as a reminder for other users that 1103bug in the Debian version and it serves as a reminder for other users that
1113might encounter the same issue. 1104might encounter the same issue.
1119runtime-switchable, too, so there is usually no drawback to enabling them, 1110runtime-switchable, too, so there is usually no drawback to enabling them,
1120except higher disk and possibly memory usage. The perl interpreter should 1111except higher disk and possibly memory usage. The perl interpreter should
1121be enabled, as important functionality (menus, selection, likely more in 1112be enabled, as important functionality (menus, selection, likely more in
1122the future) depends on it. 1113the future) depends on it.
1123 1114
1124You should not overwrite the C<perl-ext-common> snd C<perl-ext> resources 1115You 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 1116system-wide (except maybe with C<defaults>). This will result in useful
1126behaviour. If your distribution aims at low memory, add an empty 1117behaviour. If your distribution aims at low memory, add an empty
1127C<perl-ext-common> resource to the app-defaults file. This will keep the 1118C<perl-ext-common> resource to the app-defaults file. This will keep the
1128perl interpreter disabled until the user enables it. 1119perl interpreter disabled until the user enables it.
1129 1120
1147This forking is done as the very first within main(), which is very early 1138This forking is done as the very first within main(), which is very early
1148and reduces possible bugs to initialisation code run before main(), or 1139and reduces possible bugs to initialisation code run before main(), or
1149things like the dynamic loader of your system, which should result in very 1140things like the dynamic loader of your system, which should result in very
1150little risk. 1141little risk.
1151 1142
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. 1143=head3 I am on FreeBSD and rxvt-unicode does not seem to work at all.
1161 1144
1162Rxvt-unicode requires the symbol C<__STDC_ISO_10646__> to be defined 1145Rxvt-unicode requires the symbol C<__STDC_ISO_10646__> to be defined
1163in your compile environment, or an implementation that implements it, 1146in your compile environment, or an implementation that implements it,
1164whether it defines the symbol or not. C<__STDC_ISO_10646__> requires that 1147whether it defines the symbol or not. C<__STDC_ISO_10646__> requires that
1167As you might have guessed, FreeBSD does neither define this symbol nor 1150As you might have guessed, FreeBSD does neither define this symbol nor
1168does it support it. Instead, it uses its own internal representation of 1151does it support it. Instead, it uses its own internal representation of
1169B<wchar_t>. This is, of course, completely fine with respect to standards. 1152B<wchar_t>. This is, of course, completely fine with respect to standards.
1170 1153
1171However, that means rxvt-unicode only works in C<POSIX>, C<ISO-8859-1> and 1154However, 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>. 1155C<UTF-8> locales under FreeBSD (which all use Unicode as B<wchar_t>).
1173 1156
1174C<__STDC_ISO_10646__> is the only sane way to support multi-language 1157C<__STDC_ISO_10646__> is the only sane way to support multi-language
1175apps in an OS, as using a locale-dependent (and non-standardized) 1158apps in an OS, as using a locale-dependent (and non-standardized)
1176representation of B<wchar_t> makes it impossible to convert between 1159representation of B<wchar_t> makes it impossible to convert between
1177B<wchar_t> (as used by X11 and your applications) and any other encoding 1160B<wchar_t> (as used by X11 and your applications) and any other encoding
1187 1170
1188The rxvt-unicode author insists that the right way to fix this is in the 1171The 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 1172system libraries once and for all, instead of forcing every app to carry
1190complete replacements for them :) 1173complete replacements for them :)
1191 1174
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? 1175=head3 How can I use rxvt-unicode under cygwin?
1198 1176
1199rxvt-unicode should compile and run out of the box on cygwin, using 1177rxvt-unicode should compile and run out of the box on cygwin, using
1200the X11 libraries that come with cygwin. libW11 emulation is no 1178the X11 libraries that come with cygwin. libW11 emulation is no
1201longer supported (and makes no sense, either, as it only supported a 1179longer supported (and makes no sense, either, as it only supported a
1205 1183
1206At the time of this writing, cygwin didn't seem to support any multi-byte 1184At 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 1185encodings (you might try C<LC_CTYPE=C-UTF-8>), so you are likely limited
1208to 8-bit encodings. 1186to 8-bit encodings.
1209 1187
1188=head3 Character widths are not correct.
1189
1190urxvt uses the system wcwidth function to know the information about
1191the width of characters, so on systems with incorrect locale data you
1192will likely get bad results. Two notorious examples are Solaris 9,
1193where single-width characters like U+2514 are reported as double-width,
1194and Darwin 8, where combining chars are reported having width 1.
1195
1196The solution is to upgrade your system or switch to a better one. A
1197possibly working workaround is to use a wcwidth implementation like
1198
1199http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c
1200
1210=head1 RXVT-UNICODE TECHNICAL REFERENCE 1201=head1 RXVT-UNICODE TECHNICAL REFERENCE
1211 1202
1212The rest of this document describes various technical aspects of 1203The rest of this document describes various technical aspects of
1213B<rxvt-unicode>. First the description of supported command sequences, 1204B<rxvt-unicode>. First the description of supported command sequences,
1214followed by pixmap support and last by a description of all features 1205followed by pixmap support and last by a description of all features
1218 1209
1219=over 4 1210=over 4
1220 1211
1221=item B<< C<c> >> 1212=item B<< C<c> >>
1222 1213
1223The literal character c. 1214The literal character c (potentially a multi-byte character).
1224 1215
1225=item B<< C<C> >> 1216=item B<< C<C> >>
1226 1217
1227A single (required) character. 1218A single (required) character.
1228 1219
1287=item B<< C<SI> >> 1278=item B<< C<SI> >>
1288 1279
1289Shift In (Ctrl-O), invokes the G0 character set (the default). 1280Shift In (Ctrl-O), invokes the G0 character set (the default).
1290Switch to Standard Character Set 1281Switch to Standard Character Set
1291 1282
1292=item B<< C<SPC> >> 1283=item B<< C<SP> >>
1293 1284
1294Space Character 1285Space Character
1295 1286
1296=back 1287=back
1297 1288
1313 1304
1314=item B<< C<ESC => >> 1305=item B<< C<ESC => >>
1315 1306
1316Application Keypad (SMKX). See also next sequence. 1307Application Keypad (SMKX). See also next sequence.
1317 1308
1318=item B<<< C<< ESC >> >>> 1309=item B<<< C<< ESC > >> >>>
1319 1310
1320Normal Keypad (RMKX) 1311Normal Keypad (RMKX)
1321 1312
1322B<Note:> If the numeric keypad is activated, eg, B<Num_Lock> has been 1313B<Note:> If the numeric keypad is activated, eg, B<Num_Lock> has been
1323pressed, numbers or control functions are generated by the numeric keypad 1314pressed, numbers or control functions are generated by the numeric keypad
1451 1442
1452Erase in Display (ED) 1443Erase in Display (ED)
1453 1444
1454=begin table 1445=begin table
1455 1446
1456 B<< C<Ps = 0> >> Clear Below (default) 1447 B<< C<Ps = 0> >> Clear Right and Below (default)
1457 B<< C<Ps = 1> >> Clear Above 1448 B<< C<Ps = 1> >> Clear Left and Above
1458 B<< C<Ps = 2> >> Clear All 1449 B<< C<Ps = 2> >> Clear All
1459 1450
1460=end table 1451=end table
1461 1452
1462=item B<< C<ESC [ Ps K> >> 1453=item B<< C<ESC [ Ps K> >>
1466=begin table 1457=begin table
1467 1458
1468 B<< C<Ps = 0> >> Clear to Right (default) 1459 B<< C<Ps = 0> >> Clear to Right (default)
1469 B<< C<Ps = 1> >> Clear to Left 1460 B<< C<Ps = 1> >> Clear to Left
1470 B<< C<Ps = 2> >> Clear All 1461 B<< C<Ps = 2> >> Clear All
1462 B<< C<Ps = 3> >> Like Ps = 0, but is ignored when wrapped
1463 (@@RXVT_NAME@@ extension)
1471 1464
1472=end table 1465=end table
1473 1466
1474=item B<< C<ESC [ Ps L> >> 1467=item B<< C<ESC [ Ps L> >>
1475 1468
1592 1585
1593Character Attributes (SGR) 1586Character Attributes (SGR)
1594 1587
1595=begin table 1588=begin table
1596 1589
1597 B<< C<Ps = 0> >> Normal (default) 1590 B<< C<Pm = 0> >> Normal (default)
1598 B<< C<Ps = 1 / 21> >> On / Off Bold (bright fg) 1591 B<< C<Pm = 1 / 21> >> On / Off Bold (bright fg)
1599 B<< C<Ps = 3 / 23> >> On / Off Italic 1592 B<< C<Pm = 3 / 23> >> On / Off Italic
1600 B<< C<Ps = 4 / 24> >> On / Off Underline 1593 B<< C<Pm = 4 / 24> >> On / Off Underline
1601 B<< C<Ps = 5 / 25> >> On / Off Slow Blink (bright bg) 1594 B<< C<Pm = 5 / 25> >> On / Off Slow Blink (bright bg)
1602 B<< C<Ps = 6 / 26> >> On / Off Rapid Blink (bright bg) 1595 B<< C<Pm = 6 / 26> >> On / Off Rapid Blink (bright bg)
1603 B<< C<Ps = 7 / 27> >> On / Off Inverse 1596 B<< C<Pm = 7 / 27> >> On / Off Inverse
1604 B<< C<Ps = 8 / 27> >> On / Off Invisible (NYI) 1597 B<< C<Pm = 8 / 27> >> On / Off Invisible (NYI)
1605 B<< C<Ps = 30 / 40> >> fg/bg Black 1598 B<< C<Pm = 30 / 40> >> fg/bg Black
1606 B<< C<Ps = 31 / 41> >> fg/bg Red 1599 B<< C<Pm = 31 / 41> >> fg/bg Red
1607 B<< C<Ps = 32 / 42> >> fg/bg Green 1600 B<< C<Pm = 32 / 42> >> fg/bg Green
1608 B<< C<Ps = 33 / 43> >> fg/bg Yellow 1601 B<< C<Pm = 33 / 43> >> fg/bg Yellow
1609 B<< C<Ps = 34 / 44> >> fg/bg Blue 1602 B<< C<Pm = 34 / 44> >> fg/bg Blue
1610 B<< C<Ps = 35 / 45> >> fg/bg Magenta 1603 B<< C<Pm = 35 / 45> >> fg/bg Magenta
1611 B<< C<Ps = 36 / 46> >> fg/bg Cyan 1604 B<< C<Pm = 36 / 46> >> fg/bg Cyan
1605 B<< C<Pm = 37 / 47> >> fg/bg White
1612 B<< C<Ps = 38;5 / 48;5> >> set fg/bg to color #m (ISO 8613-6) 1606 B<< C<Pm = 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 = 39 / 49> >> fg/bg Default 1607 B<< C<Pm = 39 / 49> >> fg/bg Default
1615 B<< C<Ps = 90 / 100> >> fg/bg Bright Black 1608 B<< C<Pm = 90 / 100> >> fg/bg Bright Black
1616 B<< C<Ps = 91 / 101> >> fg/bg Bright Red 1609 B<< C<Pm = 91 / 101> >> fg/bg Bright Red
1617 B<< C<Ps = 92 / 102> >> fg/bg Bright Green 1610 B<< C<Pm = 92 / 102> >> fg/bg Bright Green
1618 B<< C<Ps = 93 / 103> >> fg/bg Bright Yellow 1611 B<< C<Pm = 93 / 103> >> fg/bg Bright Yellow
1619 B<< C<Ps = 94 / 104> >> fg/bg Bright Blue 1612 B<< C<Pm = 94 / 104> >> fg/bg Bright Blue
1620 B<< C<Ps = 95 / 105> >> fg/bg Bright Magenta 1613 B<< C<Pm = 95 / 105> >> fg/bg Bright Magenta
1621 B<< C<Ps = 96 / 106> >> fg/bg Bright Cyan 1614 B<< C<Pm = 96 / 106> >> fg/bg Bright Cyan
1622 B<< C<Ps = 97 / 107> >> fg/bg Bright White 1615 B<< C<Pm = 97 / 107> >> fg/bg Bright White
1623 B<< C<Ps = 99 / 109> >> fg/bg Bright Default 1616 B<< C<Pm = 99 / 109> >> fg/bg Bright Default
1624 1617
1625=end table 1618=end table
1626 1619
1627=item B<< C<ESC [ Ps n> >> 1620=item B<< C<ESC [ Ps n> >>
1628 1621
1632 1625
1633 B<< C<Ps = 5> >> Status Report B<< C<ESC [ 0 n> >> (``OK'') 1626 B<< C<Ps = 5> >> Status Report B<< C<ESC [ 0 n> >> (``OK'')
1634 B<< C<Ps = 6> >> Report Cursor Position (CPR) [row;column] as B<< C<ESC [ r ; c R> >> 1627 B<< C<Ps = 6> >> Report Cursor Position (CPR) [row;column] as B<< C<ESC [ r ; c R> >>
1635 B<< C<Ps = 7> >> Request Display Name 1628 B<< C<Ps = 7> >> Request Display Name
1636 B<< C<Ps = 8> >> Request Version Number (place in window title) 1629 B<< C<Ps = 8> >> Request Version Number (place in window title)
1630
1631=end table
1632
1633=item B<< C<ESC [ Ps SP q> >>
1634
1635Set Cursor Style (DECSCUSR)
1636
1637=begin table
1638
1639 B<< C<Ps = 0> >> Blink Block
1640 B<< C<Ps = 1> >> Blink Block
1641 B<< C<Ps = 2> >> Steady Block
1642 B<< C<Ps = 3> >> Blink Underline
1643 B<< C<Ps = 4> >> Steady Underline
1637 1644
1638=end table 1645=end table
1639 1646
1640=item B<< C<ESC [ Ps;Ps r> >> 1647=item B<< C<ESC [ Ps;Ps r> >>
1641 1648
1716 B<< C<h> >> Application Cursor Keys 1723 B<< C<h> >> Application Cursor Keys
1717 B<< C<l> >> Normal Cursor Keys 1724 B<< C<l> >> Normal Cursor Keys
1718 1725
1719=end table 1726=end table
1720 1727
1721=item B<< C<Pm = 2> >> (ANSI/VT52 mode) 1728=item B<< C<Pm = 2> >> (DECANM)
1722 1729
1723=begin table 1730=begin table
1724 1731
1725 B<< C<h> >> Enter VT52 mode 1732 B<< C<h> >> Enter VT52 mode
1726 B<< C<l> >> Enter VT52 mode 1733 B<< C<l> >> Enter VT52 mode
1727 1734
1728=end table 1735=end table
1729 1736
1730=item B<< C<Pm = 3> >> 1737=item B<< C<Pm = 3> >> (DECCOLM)
1731 1738
1732=begin table 1739=begin table
1733 1740
1734 B<< C<h> >> 132 Column Mode (DECCOLM) 1741 B<< C<h> >> 132 Column Mode
1735 B<< C<l> >> 80 Column Mode (DECCOLM) 1742 B<< C<l> >> 80 Column Mode
1736 1743
1737=end table
1738
1739=item B<< C<Pm = 4> >>
1740
1741=begin table 1744=end table
1742 1745
1746=item B<< C<Pm = 4> >> (DECSCLM)
1747
1748=begin table
1749
1743 B<< C<h> >> Smooth (Slow) Scroll (DECSCLM) 1750 B<< C<h> >> Smooth (Slow) Scroll
1744 B<< C<l> >> Jump (Fast) Scroll (DECSCLM) 1751 B<< C<l> >> Jump (Fast) Scroll
1745 1752
1746=end table
1747
1748=item B<< C<Pm = 5> >>
1749
1750=begin table 1753=end table
1751 1754
1755=item B<< C<Pm = 5> >> (DECSCNM)
1756
1757=begin table
1758
1752 B<< C<h> >> Reverse Video (DECSCNM) 1759 B<< C<h> >> Reverse Video
1753 B<< C<l> >> Normal Video (DECSCNM) 1760 B<< C<l> >> Normal Video
1754 1761
1755=end table 1762=end table
1756 1763
1757=item B<< C<Pm = 6> >> 1764=item B<< C<Pm = 6> >> (DECOM)
1758 1765
1759=begin table 1766=begin table
1760 1767
1761 B<< C<h> >> Origin Mode (DECOM) 1768 B<< C<h> >> Origin Mode
1762 B<< C<l> >> Normal Cursor Mode (DECOM) 1769 B<< C<l> >> Normal Cursor Mode
1763 1770
1764=end table 1771=end table
1765 1772
1766=item B<< C<Pm = 7> >> 1773=item B<< C<Pm = 7> >> (DECAWM)
1767 1774
1768=begin table 1775=begin table
1769 1776
1770 B<< C<h> >> Wraparound Mode (DECAWM) 1777 B<< C<h> >> Wraparound Mode
1771 B<< C<l> >> No Wraparound Mode (DECAWM) 1778 B<< C<l> >> No Wraparound Mode
1772 1779
1773=end table 1780=end table
1774 1781
1775=item B<< C<Pm = 8> >> I<unimplemented> 1782=item B<< C<Pm = 8> >> (DECARM) I<unimplemented>
1776 1783
1777=begin table 1784=begin table
1778 1785
1779 B<< C<h> >> Auto-repeat Keys (DECARM) 1786 B<< C<h> >> Auto-repeat Keys
1780 B<< C<l> >> No Auto-repeat Keys (DECARM) 1787 B<< C<l> >> No Auto-repeat Keys
1781 1788
1782=end table 1789=end table
1783 1790
1784=item B<< C<Pm = 9> >> X10 XTerm 1791=item B<< C<Pm = 9> >> X10 XTerm
1785 1792
1788 B<< C<h> >> Send Mouse X & Y on button press. 1795 B<< C<h> >> Send Mouse X & Y on button press.
1789 B<< C<l> >> No mouse reporting. 1796 B<< C<l> >> No mouse reporting.
1790 1797
1791=end table 1798=end table
1792 1799
1793=item B<< C<Pm = 25> >> 1800=item B<< C<Pm = 25> >> (DECTCEM)
1794 1801
1795=begin table 1802=begin table
1796 1803
1797 B<< C<h> >> Visible cursor {cnorm/cvvis} 1804 B<< C<h> >> Visible cursor {cnorm/cvvis}
1798 B<< C<l> >> Invisible cursor {civis} 1805 B<< C<l> >> Invisible cursor {civis}
1801 1808
1802=item B<< C<Pm = 30> >> 1809=item B<< C<Pm = 30> >>
1803 1810
1804=begin table 1811=begin table
1805 1812
1806 B<< C<h> >> scrollBar visisble 1813 B<< C<h> >> scrollBar visible
1807 B<< C<l> >> scrollBar invisisble 1814 B<< C<l> >> scrollBar invisible
1808 1815
1809=end table 1816=end table
1810 1817
1811=item B<< C<Pm = 35> >> (B<rxvt>) 1818=item B<< C<Pm = 35> >> (B<rxvt>)
1812 1819
1859 1866
1860=end table 1867=end table
1861 1868
1862X<Priv66> 1869X<Priv66>
1863 1870
1864=item B<< C<Pm = 66> >> 1871=item B<< C<Pm = 66> >> (DECNKM)
1865 1872
1866=begin table 1873=begin table
1867 1874
1868 B<< C<h> >> Application Keypad (DECPAM) == C<ESC => 1875 B<< C<h> >> Application Keypad (DECKPAM/DECPAM) == C<ESC =>
1869 B<< C<l> >> Normal Keypad (DECPNM) == C<< ESC > >> 1876 B<< C<l> >> Normal Keypad (DECKPNM/DECPNM) == C<< ESC > >>
1870 1877
1871=end table 1878=end table
1872 1879
1873=item B<< C<Pm = 67> >> 1880=item B<< C<Pm = 67> >> (DECBKM)
1874 1881
1875=begin table 1882=begin table
1876 1883
1877 B<< C<h> >> Backspace key sends B<< C<BS> (DECBKM) >> 1884 B<< C<h> >> Backspace key sends B<< C<BS> >>
1878 B<< C<l> >> Backspace key sends B<< C<DEL> >> 1885 B<< C<l> >> Backspace key sends B<< C<DEL> >>
1879 1886
1880=end table 1887=end table
1881 1888
1882=item B<< C<Pm = 1000> >> (X11 XTerm) 1889=item B<< C<Pm = 1000> >> (X11 XTerm)
1895 B<< C<h> >> Use Hilite Mouse Tracking. 1902 B<< C<h> >> Use Hilite Mouse Tracking.
1896 B<< C<l> >> No mouse reporting. 1903 B<< C<l> >> No mouse reporting.
1897 1904
1898=end table 1905=end table
1899 1906
1907=item B<< C<Pm = 1002> >> (X11 XTerm)
1908
1909=begin table
1910
1911 B<< C<h> >> Send Mouse X & Y on button press and release, and motion with a button pressed.
1912 B<< C<l> >> No mouse reporting.
1913
1914=end table
1915
1916=item B<< C<Pm = 1003> >> (X11 XTerm)
1917
1918=begin table
1919
1920 B<< C<h> >> Send Mouse X & Y on button press and release, and motion.
1921 B<< C<l> >> No mouse reporting.
1922
1923=end table
1924
1925=item B<< C<Pm = 1005> >> (X11 XTerm) (Compile frills)
1926
1927Try to avoid this mode, it doesn't work sensibly in non-UTF-8 locales. Use
1928mode C<1015> instead.
1929
1930Unlike XTerm, coordinates larger than 2015) will work fine.
1931
1932=begin table
1933
1934 B<< C<h> >> Enable mouse coordinates in locale-specific encoding.
1935 B<< C<l> >> Enable mouse coordinates as binary octets.
1936
1937=end table
1938
1900=item B<< C<Pm = 1010> >> (B<rxvt>) 1939=item B<< C<Pm = 1010> >> (B<rxvt>)
1901 1940
1902=begin table 1941=begin table
1903 1942
1904 B<< C<h> >> Don't scroll to bottom on TTY output 1943 B<< C<h> >> Don't scroll to bottom on TTY output
1913 B<< C<h> >> Scroll to bottom when a key is pressed 1952 B<< C<h> >> Scroll to bottom when a key is pressed
1914 B<< C<l> >> Don't scroll to bottom when a key is pressed 1953 B<< C<l> >> Don't scroll to bottom when a key is pressed
1915 1954
1916=end table 1955=end table
1917 1956
1957=item B<< C<Pm = 1015> >> (B<rxvt-unicode>) (Compile frills)
1958
1959Changes all mouse reporting codes to use decimal parameters instead of
1960octets or characters.
1961
1962This mode should be enabled I<before> actually enabling mouse reporting,
1963for semi-obvious reasons.
1964
1965The sequences received for various modes are as follows:
1966
1967 ESC [ M o o o !1005, !1015 (three octets)
1968 ESC [ M c c c 1005, !1015 (three characters)
1969 ESC [ Pm M 1015 (three or more numeric parameters)
1970
1971The first three parameters are C<code>, C<x> and C<y>. Code is the numeric
1972code as for the other modes (but encoded as a decimal number, including
1973the additional offset of 32, so you have to subtract 32 first), C<x> and
1974C<y> are the coordinates (1|1 is the upper left corner, just as with
1975cursor positioning).
1976
1977Example: Shift-Button-1 press at top row, column 80.
1978
1979 ESC [ 37 ; 80 ; 1 M
1980
1981One can use this feature by simply enabling it and then looking for
1982parameters to the C<ESC [ M> reply - if there are any, this mode is
1983active, otherwise one of the old reporting styles is used.
1984
1985Other (to be implemented) reply sequences will use a similar encoding.
1986
1987In the future, more parameters might get added (pixel coordinates for
1988example - anybody out there who needs this?).
1989
1990=begin table
1991
1992 B<< C<h> >> Enable new mouse coordinate reporting.
1993 B<< C<l> >> Use old-style C<CSI M C C C> encoding.
1994
1995=end table
1996
1918=item B<< C<Pm = 1021> >> (B<rxvt>) 1997=item B<< C<Pm = 1021> >> (B<rxvt>)
1919 1998
1920=begin table 1999=begin table
1921 2000
1922 B<< C<h> >> Bold/italic implies high intensity (see option B<-is>) 2001 B<< C<h> >> Bold/italic implies high intensity (see option B<-is>)
1946 2025
1947=begin table 2026=begin table
1948 2027
1949 B<< C<h> >> Use Alternate Screen Buffer - clear Alternate Screen Buffer if switching to it 2028 B<< C<h> >> Use Alternate Screen Buffer - clear Alternate Screen Buffer if switching to it
1950 B<< C<l> >> Use Normal Screen Buffer 2029 B<< C<l> >> Use Normal Screen Buffer
2030
2031=end table
2032
2033=item B<< C<Pm = 2004> >>
2034
2035=begin table
2036
2037 B<< C<h> >> Enable bracketed paste mode - prepend / append to the pasted text the control sequences C<ESC [ 200 ~> / C<ESC [ 201 ~>
2038 B<< C<l> >> Disable bracketed paste mode
1951 2039
1952=end table 2040=end table
1953 2041
1954=back 2042=back
1955 2043
1972 B<< C<Ps = 0> >> Change Icon Name and Window Title to B<< C<Pt> >> 2060 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> >> 2061 B<< C<Ps = 1> >> Change Icon Name to B<< C<Pt> >>
1974 B<< C<Ps = 2> >> Change Window Title to B<< C<Pt> >> 2062 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. 2063 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 2064 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)> 2065 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)> 2066 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> >> 2067 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> >> 2068 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> >> 2069 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] 2070 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). 2071 B<< C<Ps = 20> >> Change background pixmap parameters (see section BACKGROUND IMAGE) (Compile pixbuf).
1985 B<< C<Ps = 39> >> Change default foreground colour to B<< C<Pt> >>. 2072 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> 2073 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> >>. 2074 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> >> 2075 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> >> 2076 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). 2077 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>. 2078 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> >> 2079 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). 2080 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> >> 2081 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> >> 2082 B<< C<Ps = 707> >> Change colour of underlined characters to B<< C<Pt> >>
2083 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>. 2084 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). 2085 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). 2086 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). 2087 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). 2088 B<< C<Ps = 720> >> Move viewing window up by B<< C<Pt> >> lines, or clear scrollback buffer if C<Pt = 0> (Compile frills).
2003 2091
2004=end table 2092=end table
2005 2093
2006=back 2094=back
2007 2095
2008=head1 XPM 2096=head1 BACKGROUND IMAGE
2009 2097
2010For the XPM XTerm escape sequence B<< C<ESC ] 20 ; Pt ST> >> then value 2098For 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 2099of 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 2100
2015=over 4 2101=over 4
2016 2102
2017=item query scale/position 2103=item B<< C<?> >>
2018 2104
2019B<?> 2105display scale and position in the title
2020 2106
2107=item B<< C<;WxH+X+Y> >>
2108
2021=item change scale and position 2109change scale and/or position
2022 2110
2023B<WxH+X+Y> 2111=item B<< C<FILE;WxH+X+Y> >>
2024 2112
2025B<WxH+X> (== B<WxH+X+X>) 2113change 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 2114
2053=back 2115=back
2054 2116
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> 2117X<Mouse>
2074 2118
2075=head1 Mouse Reporting 2119=head1 Mouse Reporting
2076 2120
2077=over 4 2121=over 4
2102The upper bits of B<< C<< <b> >> >> indicate the modifiers when the 2146The upper bits of B<< C<< <b> >> >> indicate the modifiers when the
2103button was pressed and are added together (X11 mouse report only): 2147button was pressed and are added together (X11 mouse report only):
2104 2148
2105=over 4 2149=over 4
2106 2150
2107=item State = B<< C<< (<b> - SPACE) & 60 >> >> 2151=item State = B<< C<< (<b> - SPACE) & ~3 >> >>
2108 2152
2109=begin table 2153=begin table
2110 2154
2111 4 Shift 2155 4 Shift
2112 8 Meta 2156 8 Meta
2113 16 Control 2157 16 Control
2158 32 Motion Notify
2114 32 Double Click I<(rxvt extension)> 2159 32 Double Click I<(rxvt extension)>, disabled by default
2160 64 Button1 is actually Button4, Button2 is actually Button5 etc.
2115 2161
2116=end table 2162=end table
2117 2163
2118Col = B<< C<< <x> - SPACE >> >> 2164Col = B<< C<< <x> - SPACE >> >>
2119 2165
2120Row = B<< C<< <y> - SPACE >> >> 2166Row = B<< C<< <y> - SPACE >> >>
2121 2167
2122=back 2168=back
2169
2170=head1 Key Codes
2171
2123X<KeyCodes> 2172X<KeyCodes>
2124
2125=head1 Key Codes
2126 2173
2127Note: B<Shift> + B<F1>-B<F10> generates B<F11>-B<F20> 2174Note: B<Shift> + B<F1>-B<F10> generates B<F11>-B<F20>
2128 2175
2129For the keypad, use B<Shift> to temporarily override Application-Keypad 2176For the keypad, use B<Shift> to temporarily override Application-Keypad
2130setting use B<Num_Lock> to toggle Application-Keypad setting if 2177setting use B<Num_Lock> to toggle Application-Keypad setting if
2131B<Num_Lock> is off, toggle Application-Keypad setting. Also note that 2178B<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 2179values of B<BackSpace>, B<Delete> may have been compiled differently on
2133your system. 2180your system.
2134 2181
2135=begin table 2182=begin table
2136 2183
2137 B<Normal> B<Shift> B<Control> B<Ctrl+Shift> 2184 B<Normal> B<Shift> B<Control> B<Ctrl+Shift>
2197 2244
2198=head1 CONFIGURE OPTIONS 2245=head1 CONFIGURE OPTIONS
2199 2246
2200General hint: if you get compile errors, then likely your configuration 2247General hint: if you get compile errors, then likely your configuration
2201hasn't been tested well. Either try with C<--enable-everything> or use 2248hasn'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 2249the 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 2250switches). 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 2251work, so it can be fixed. Marc Lehmann <rxvt@schmorp.de>.
2205Lehmann <rxvt@schmorp.de>.
2206 2252
2207All 2253All
2208 2254
2209=over 4 2255=over 4
2210 2256
2211=item --enable-everything 2257=item --enable-everything
2212 2258
2213Add (or remove) support for all non-multichoice options listed in "./configure 2259Add (or remove) support for all non-multichoice options listed
2214--help". 2260in C<./configure --help>, except for C<--enable-assert> and
2261C<--enable-256-color>.
2215 2262
2216You can specify this and then disable options you do not like by 2263You can specify this and then disable options you do not like by
2217I<following> this with the appropriate C<--disable-...> arguments, 2264I<following> this with the appropriate C<--disable-...> arguments,
2218or you can start with a minimal configuration by specifying 2265or you can start with a minimal configuration by specifying
2219C<--disable-everything> and than adding just the C<--enable-...> arguments 2266C<--disable-everything> and than adding just the C<--enable-...> arguments
2220you want. 2267you want.
2221 2268
2222=item --enable-xft (default: enabled) 2269=item --enable-xft (default: on)
2223 2270
2224Add support for Xft (anti-aliases, among others) fonts. Xft fonts are 2271Add support for Xft (anti-aliased, among others) fonts. Xft fonts are
2225slower and require lots of memory, but as long as you don't use them, you 2272slower and require lots of memory, but as long as you don't use them, you
2226don't pay for them. 2273don't pay for them.
2227 2274
2228=item --enable-font-styles (default: on) 2275=item --enable-font-styles (default: on)
2229 2276
2230Add support for B<bold>, I<italic> and B<< I<bold italic> >> font 2277Add support for B<bold>, I<italic> and B<< I<bold italic> >> font
2231styles. The fonts can be set manually or automatically. 2278styles. The fonts can be set manually or automatically.
2232 2279
2233=item --with-codesets=NAME,... (default: all) 2280=item --with-codesets=CS,... (default: all)
2234 2281
2235Compile in support for additional codeset (encoding) groups (C<eu>, C<vn> 2282Compile in support for additional codeset (encoding) groups (C<eu>, C<vn>
2236are always compiled in, which includes most 8-bit character sets). These 2283are always compiled in, which includes most 8-bit character sets). These
2237codeset tables are used for driving X11 core fonts, they are not required 2284codeset tables are used for driving X11 core fonts, they are not required
2238for Xft fonts, although having them compiled in lets rxvt-unicode choose 2285for Xft fonts, although having them compiled in lets rxvt-unicode choose
2242 2289
2243=begin table 2290=begin table
2244 2291
2245 all all available codeset groups 2292 all all available codeset groups
2246 zh common chinese encodings 2293 zh common chinese encodings
2247 zh_ext rarely used but very big chinese encodigs 2294 zh_ext rarely used but very big chinese encodings
2248 jp common japanese encodings 2295 jp common japanese encodings
2249 jp_ext rarely used but big japanese encodings 2296 jp_ext rarely used but big japanese encodings
2250 kr korean encodings 2297 kr korean encodings
2251 2298
2252=end table 2299=end table
2266requirements per character from 2 to 4 bytes. X11 fonts do not yet 2313requirements per character from 2 to 4 bytes. X11 fonts do not yet
2267support these extra characters, but Xft does. 2314support these extra characters, but Xft does.
2268 2315
2269Please note that rxvt-unicode can store unicode code points >65535 2316Please note that rxvt-unicode can store unicode code points >65535
2270even without this flag, but the number of such characters is 2317even without this flag, but the number of such characters is
2271limited to a view thousand (shared with combining characters, 2318limited to a few thousand (shared with combining characters,
2272see next switch), and right now rxvt-unicode cannot display them 2319see next switch), and right now rxvt-unicode cannot display them
2273(input/output and cut&paste still work, though). 2320(input/output and cut&paste still work, though).
2274 2321
2275=item --enable-combining (default: on) 2322=item --enable-combining (default: on)
2276 2323
2277Enable automatic composition of combining characters into 2324Enable automatic composition of combining characters into
2278composite characters. This is required for proper viewing of text 2325composite characters. This is required for proper viewing of text
2279where accents are encoded as seperate unicode characters. This is 2326where accents are encoded as separate unicode characters. This is
2280done by using precomposited characters when available or creating 2327done by using precomposed characters when available or creating
2281new pseudo-characters when no precomposed form exists. 2328new pseudo-characters when no precomposed form exists.
2282 2329
2283Without --enable-unicode3, the number of additional precomposed 2330Without --enable-unicode3, the number of additional precomposed
2284characters is somewhat limited (the 6400 private use characters will be 2331characters is somewhat limited (the 6400 private use characters will be
2285(ab-)used). With --enable-unicode3, no practical limit exists. 2332(ab-)used). With --enable-unicode3, no practical limit exists.
2289 2336
2290The combining table also contains entries for arabic presentation forms, 2337The combining table also contains entries for arabic presentation forms,
2291but these are not currently used. Bug me if you want these to be used (and 2338but these are not currently used. Bug me if you want these to be used (and
2292tell me how these are to be used...). 2339tell me how these are to be used...).
2293 2340
2294=item --enable-fallback(=CLASS) (default: Rxvt) 2341=item --enable-fallback[=CLASS] (default: Rxvt)
2295 2342
2296When reading resource settings, also read settings for class CLASS. To 2343When reading resource settings, also read settings for class CLASS. To
2297disable resource fallback use --disable-fallback. 2344disable resource fallback use --disable-fallback.
2298 2345
2299=item --with-res-name=NAME (default: urxvt) 2346=item --with-res-name=NAME (default: urxvt)
2300 2347
2301Use the given name as default application name when 2348Use the given name as default application name when
2302reading resources. Specify --with-res-name=rxvt to replace rxvt. 2349reading resources. Specify --with-res-name=rxvt to replace rxvt.
2303 2350
2304=item --with-res-class=CLASS /default: URxvt) 2351=item --with-res-class=CLASS (default: URxvt)
2305 2352
2306Use the given class as default application class 2353Use the given class as default application class
2307when reading resources. Specify --with-res-class=Rxvt to replace 2354when reading resources. Specify --with-res-class=Rxvt to replace
2308rxvt. 2355rxvt.
2309 2356
2322 2369
2323Write user and tty to lastlog file (used by programs like 2370Write user and tty to lastlog file (used by programs like
2324F<lastlogin>) at start of rxvt execution. This option requires 2371F<lastlogin>) at start of rxvt execution. This option requires
2325--enable-utmp to also be specified. 2372--enable-utmp to also be specified.
2326 2373
2327=item --enable-xpm-background (default: on) 2374=item --enable-pixbuf (default: on)
2328 2375
2329Add support for XPM background pixmaps. 2376Add support for GDK-PixBuf to be used for background images.
2377It adds support for many file formats including JPG, PNG,
2378TIFF, GIF, XPM, BMP, ICO and TGA.
2379
2380=item --enable-startup-notification (default: on)
2381
2382Add support for freedesktop startup notifications. This allows window managers
2383to display some kind of progress indicator during startup.
2330 2384
2331=item --enable-transparency (default: on) 2385=item --enable-transparency (default: on)
2332 2386
2333Add support for inheriting parent backgrounds thus giving a fake 2387Add support for using the root pixmap as background to simulate transparency.
2334transparency to the term. 2388Note that this feature depends on libXrender and on the availability
2389of the RENDER extension in the X server.
2335 2390
2336=item --enable-fading (default: on) 2391=item --enable-fading (default: on)
2337 2392
2338Add support for fading the text when focus is lost (requires C<--enable-transparency>). 2393Add 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 2394
2344=item --enable-rxvt-scroll (default: on) 2395=item --enable-rxvt-scroll (default: on)
2345 2396
2346Add support for the original rxvt scrollbar. 2397Add support for the original rxvt scrollbar.
2347 2398
2350Add support for a NeXT-like scrollbar. 2401Add support for a NeXT-like scrollbar.
2351 2402
2352=item --enable-xterm-scroll (default: on) 2403=item --enable-xterm-scroll (default: on)
2353 2404
2354Add support for an Xterm-like scrollbar. 2405Add 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 2406
2367=item --disable-backspace-key 2407=item --disable-backspace-key
2368 2408
2369Removes any handling of the backspace key by us - let the X server do it. 2409Removes any handling of the backspace key by us - let the X server do it.
2370 2410
2390A non-exhaustive list of features enabled by C<--enable-frills> (possibly 2430A non-exhaustive list of features enabled by C<--enable-frills> (possibly
2391in combination with other switches) is: 2431in combination with other switches) is:
2392 2432
2393 MWM-hints 2433 MWM-hints
2394 EWMH-hints (pid, utf8 names) and protocols (ping) 2434 EWMH-hints (pid, utf8 names) and protocols (ping)
2435 urgency hint
2395 seperate underline colour (-underlineColor) 2436 separate underline colour (-underlineColor)
2396 settable border widths and borderless switch (-w, -b, -bl) 2437 settable border widths and borderless switch (-w, -b, -bl)
2397 visual depth selection (-depth) 2438 visual depth selection (-depth)
2398 settable extra linespacing /-lsp) 2439 settable extra linespacing (-lsp)
2399 iso-14755-2 and -3, and visual feedback 2440 iso-14755 5.1 (basic) support
2400 tripleclickwords (-tcw) 2441 tripleclickwords (-tcw)
2401 settable insecure mode (-insecure) 2442 settable insecure mode (-insecure)
2402 keysym remapping support 2443 keysym remapping support
2403 cursor blinking and underline cursor (-cb, -uc) 2444 cursor blinking and underline cursor (-bc, -uc)
2404 XEmbed support (-embed) 2445 XEmbed support (-embed)
2405 user-pty (-pty-fd) 2446 user-pty (-pty-fd)
2406 hold on exit (-hold) 2447 hold on exit (-hold)
2448 compile in built-in block graphics
2407 skip builtin block graphics (-sbg) 2449 skip builtin block graphics (-sbg)
2408 separate highlightcolor support (-hc) 2450 separate highlight colour (-highlightColor, -highlightTextColor)
2451 extended mouse reporting modes (1005 and 1015).
2452 visual selection via -visual and -depth.
2409 2453
2410It also enables some non-essential features otherwise disabled, such as: 2454It also enables some non-essential features otherwise disabled, such as:
2411 2455
2412 some round-trip time optimisations 2456 some round-trip time optimisations
2413 nearest color allocation on pseudocolor screens 2457 nearest colour allocation on pseudocolor screens
2414 UTF8_STRING supporr for selection 2458 UTF8_STRING support for selection
2415 sgr modes 90..97 and 100..107 2459 sgr modes 90..97 and 100..107
2416 backindex and forwardindex escape sequences 2460 backindex and forwardindex escape sequences
2417 view change/zero scorllback esacpe sequences 2461 view change/zero scrollback escape sequences
2418 locale switching escape sequence 2462 locale switching escape sequence
2419 window op and some xterm/OSC escape sequences 2463 window op and some xterm/OSC escape sequences
2420 rectangular selections 2464 rectangular selections
2421 trailing space removal for selections 2465 trailing space removal for selections
2422 verbose X error handling 2466 verbose X error handling
2423 2467
2424=item --enable-iso14755 (default: on) 2468=item --enable-iso14755 (default: on)
2425 2469
2426Enable extended ISO 14755 support (see @@RXVT_NAME@@(1), or 2470Enable extended ISO 14755 support (see @@RXVT_NAME@@(1)).
2427F<doc/rxvt.1.txt>). Basic support (section 5.1) is enabled by 2471Basic 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 2472support for 5.2, 5.3 and 5.4 is enabled with this switch.
2429this switch.
2430 2473
2431=item --enable-keepscrolling (default: on) 2474=item --enable-keepscrolling (default: on)
2432 2475
2433Add support for continual scrolling of the display when you hold 2476Add support for continual scrolling of the display when you hold
2434the mouse button down on a scrollbar arrow. 2477the mouse button down on a scrollbar arrow.
2478
2479=item --enable-selectionscrolling (default: on)
2480
2481Add support for scrolling when the selection moves to the top or
2482bottom of the screen.
2435 2483
2436=item --enable-mousewheel (default: on) 2484=item --enable-mousewheel (default: on)
2437 2485
2438Add support for scrolling via mouse wheel or buttons 4 & 5. 2486Add support for scrolling via mouse wheel or buttons 4 & 5.
2439 2487
2441 2489
2442Add support for continual scrolling (using the mouse wheel as an 2490Add support for continual scrolling (using the mouse wheel as an
2443accelerator) while the control key is held down. This option 2491accelerator) while the control key is held down. This option
2444requires --enable-mousewheel to also be specified. 2492requires --enable-mousewheel to also be specified.
2445 2493
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) 2494=item --enable-smart-resize (default: off)
2466 2495
2467Add smart growth/shrink behaviour when changing font size via hot 2496Add smart growth/shrink behaviour when resizing.
2468keys. This should keep the window corner which is closest to a corner of 2497This should keep the window corner which is closest to a corner of
2469the screen in a fixed position. 2498the screen in a fixed position.
2470 2499
2500=item --enable-text-blink (default: on)
2501
2502Add support for blinking text.
2503
2471=item --enable-pointer-blank (default: on) 2504=item --enable-pointer-blank (default: on)
2472 2505
2473Add support to have the pointer disappear when typing or inactive. 2506Add support to have the pointer disappear when typing or inactive.
2474 2507
2475=item --enable-perl (default: on) 2508=item --enable-perl (default: on)
2476 2509
2477Enable an embedded perl interpreter. See the B<@@RXVT_NAME@@perl(3)> 2510Enable 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 2511manpage 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 2512for the extensions that are installed by default.
2480perl interpreter that is used can be specified via the C<PERL> environment 2513The perl interpreter that is used can be specified via the C<PERL>
2481variable when running configure. 2514environment variable when running configure. Even when compiled in,
2515perl will I<not> be initialised when all extensions have been disabled
2516C<-pe "" --perl-ext-common "">, so it should be safe to enable from a
2517resource standpoint.
2518
2519=item --enable-assert (default: off)
2520
2521Enables the assertions in the code, normally disabled. This switch is only
2522useful when developing rxvt-unicode.
2523
2524=item --enable-256-color (default: off)
2525
2526Force use of so-called 256 colour mode, to work around buggy applications
2527that do not support termcap/terminfo, or simply improve support for
2528applications hardcoding the xterm 256 colour table.
2529
2530This switch breaks termcap/terminfo compatibility to C<TERM=rxvt-unicode>,
2531and consequently sets C<TERM> to C<rxvt-unicode-256color> by default
2532(F<doc/etc/> contains termcap/terminfo definitions for both).
2533
2534It also results in higher memory usage and can slow down @@RXVT_NAME@@
2535dramatically when more than six fonts are in use by a terminal instance.
2482 2536
2483=item --with-name=NAME (default: urxvt) 2537=item --with-name=NAME (default: urxvt)
2484 2538
2485Set the basename for the installed binaries, resulting 2539Set the basename for the installed binaries, resulting
2486in C<urxvt>, C<urxvtd> etc.). Specify C<--with-name=rxvt> to replace with 2540in C<urxvt>, C<urxvtd> etc.). Specify C<--with-name=rxvt> to replace with
2496PATH. 2550PATH.
2497 2551
2498=item --with-x 2552=item --with-x
2499 2553
2500Use the X Window System (pretty much default, eh?). 2554Use 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 2555
2514=back 2556=back
2515 2557
2516=head1 AUTHORS 2558=head1 AUTHORS
2517 2559

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines