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

Comparing rxvt-unicode/README.FAQ (file contents):
Revision 1.19 by root, Sat Dec 17 20:55:45 2005 UTC vs.
Revision 1.34 by root, Mon Jan 30 22:49:30 2006 UTC

1FREQUENTLY ASKED QUESTIONS 1FREQUENTLY ASKED QUESTIONS
2 The new selection selects pieces that are too big, how can I select
3 single words?
4 Yes. For example, if you want to select alphanumeric words, you can
5 use the following resource:
6
7 URxvt.selection.pattern-0: ([[:word:]]+)
8
9 If you click more than twice, the selection will be extended more
10 and more.
11
12 To get a selection that is very similar to the old code, try this
13 pattern:
14
15 URxvt.selection.pattern-0: ([^"&'()*,;<=>?@[\\\\]^`{|})]+)
16
17 Please also note that the *LeftClick Shift-LeftClik* combination
18 also selects words like the old code.
19
20 I don't like the new selection/popups/hotkeys/perl, how do I
21 change/disable it?
22 You can disable the perl extension completely by setting the
23 perl-ext-common resource to the empty string, which also keeps
24 rxvt-unicode from initialising perl, saving memory.
25
26 If you only want to disable specific features, you first have to
27 identify which perl extension is responsible. For this, read the
28 section PREPACKAGED EXTENSIONS in the rxvtperl(3) manpage. For
29 example, to disable the selection-popup and option-popup, specify
30 this perl-ext-common resource:
31
32 URxvt.perl-ext-common: default,-selection-popup,-option-popup
33
34 This will keep the default extensions, but disable the two popup
35 extensions. Some extensions can also be configured, for example,
36 scrollback search mode is triggered by M-s. You can move it to any
37 other combination either by setting the searchable-scrollback
38 resource:
39
40 URxvt.searchable-scrollback: CM-s
41
42 Why doesn't rxvt-unicode read my resources?
43 Well, why, indeed? It does, in a way very similar to other X
44 applications. Most importantly, this means that if you or your OS
45 loads resources into the X display (the right way to do it),
46 rxvt-unicode will ignore any resource files in your home directory.
47 It will only read $HOME/.Xdefaults when no resources are attached to
48 the display.
49
50 If you have or use an $HOME/.Xresources file, chances are that
51 resources are loaded into your X-server. In this case, you have to
52 re-login after every change (or run xrdb -merge $HOME/.Xresources).
53
54 Also consider the form resources have to use:
55
56 URxvt.resource: value
57
58 If you want to use another form (there are lots of different ways of
59 specifying resources), make sure you understand wether and why it
60 works. If unsure, use the form above.
61
62 I can't get transparency working, what am I doing wrong?
63 First of all, transparency isn't officially supported in
64 rxvt-unicode, so you are mostly on your own. Do not bug the author
65 about it (but you may bug everybody else). Also, if you can't get it
66 working consider it a rite of passage, and you failed.
67
68 Here are three ways to get transparency. Do read the manpage and
69 option descriptions for the programs mentioned and rxvt-unicode.
70 Really, do it!
71
72 1. Use inheritPixmap:
73
74 Esetroot wallpaper.jpg
75 rxvt -ip -tint red -sh 40
76
77 That works. If you think it doesn't, you lack transparency and
78 tinting support, or you are unable to read.
79
80 2. Use a simple pixmap and emulate pseudo-transparency. This enables
81 you to use effects other than tinting and shading: Just
82 shade/tint/whatever your picture with gimp:
83
84 convert wallpaper.jpg -blur 20x20 -modulate 30 background.xpm
85 rxvt -pixmap background.xpm -pe automove-background
86
87 That works. If you think it doesn't, you lack XPM and Perl support,
88 or you are unable to read.
89
90 3. Use an ARGB visual:
91
92 rxvt -depth 432 -fg grey90 -bg rgba:0000/0000/0000/c000
93
94 This requires XFT support, and support form your X-server. If that
95 doesn't work for you, blame Xorg and Keith Packard. ARGB visuals
96 aren't there yet, no matter what they claim. Rxvt-Unicode contains
97 the neccessary bugfixes and workarounds for Xft and Xlib to make it
98 work.
99
100 Isn't rxvt supposed to be small? Don't all those features bloat?
101 I often get asked about this, and I think, no, they didn't cause
102 extra bloat. If you compare a minimal rxvt and a minimal urxvt, you
103 can see that the urxvt binary is larger (due to some encoding tables
104 always being compiled in), but it actually uses less memory (RSS)
105 after startup. Even with "--disable-everything", this comparison is
106 a bit unfair, as many features unique to urxvt (locale, encoding
107 conversion, iso14755 etc.) are already in use in this mode.
108
109 text data bss drs rss filename
110 98398 1664 24 15695 1824 rxvt --disable-everything
111 188985 9048 66616 18222 1788 urxvt --disable-everything
112
113 When you "--enable-everything" (which _is_ unfair, as this involves
114 xft and full locale/XIM support which are quite bloaty inside libX11
115 and my libc), the two diverge, but not unreasnobaly so.
116
117 text data bss drs rss filename
118 163431 2152 24 20123 2060 rxvt --enable-everything
119 1035683 49680 66648 29096 3680 urxvt --enable-everything
120
121 The very large size of the text section is explained by the
122 east-asian encoding tables, which, if unused, take up disk space but
123 nothing else and can be compiled out unless you rely on X11 core
124 fonts that use those encodings. The BSS size comes from the 64k
125 emergency buffer that my c++ compiler allocates (but of course
126 doesn't use unless you are out of memory). Also, using an xft font
127 instead of a core font immediately adds a few megabytes of RSS. Xft
128 indeed is responsible for a lot of RSS even when not used.
129
130 Of course, due to every character using two or four bytes instead of
131 one, a large scrollback buffer will ultimately make rxvt-unicode use
132 more memory.
133
134 Compared to e.g. Eterm (5112k), aterm (3132k) and xterm (4680k),
135 this still fares rather well. And compared to some monsters like
136 gnome-terminal (21152k + extra 4204k in separate processes) or
137 konsole (22200k + extra 43180k in daemons that stay around after
138 exit, plus half a minute of startup time, including the hundreds of
139 warnings it spits out), it fares extremely well *g*.
140
141 Why C++, isn't that unportable/bloated/uncool?
142 Is this a question? :) It comes up very often. The simple answer is:
143 I had to write it, and C++ allowed me to write and maintain it in a
144 fraction of the time and effort (which is a scarce resource for me).
145 Put even shorter: It simply wouldn't exist without C++.
146
147 My personal stance on this is that C++ is less portable than C, but
148 in the case of rxvt-unicode this hardly matters, as its portability
149 limits are defined by things like X11, pseudo terminals, locale
150 support and unix domain sockets, which are all less portable than
151 C++ itself.
152
153 Regarding the bloat, see the above question: It's easy to write
154 programs in C that use gobs of memory, an certainly possible to
155 write programs in C++ that don't. C++ also often comes with large
156 libraries, but this is not necessarily the case with GCC. Here is
157 what rxvt links against on my system with a minimal config:
158
159 libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x00002aaaaabc3000)
160 libc.so.6 => /lib/libc.so.6 (0x00002aaaaadde000)
161 libdl.so.2 => /lib/libdl.so.2 (0x00002aaaab01d000)
162 /lib64/ld-linux-x86-64.so.2 (0x00002aaaaaaab000)
163
164 And here is rxvt-unicode:
165
166 libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x00002aaaaabc3000)
167 libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00002aaaaada2000)
168 libc.so.6 => /lib/libc.so.6 (0x00002aaaaaeb0000)
169 libdl.so.2 => /lib/libdl.so.2 (0x00002aaaab0ee000)
170 /lib64/ld-linux-x86-64.so.2 (0x00002aaaaaaab000)
171
172 No large bloated libraries (of course, none were linked in
173 statically), except maybe libX11 :)
174
175 Does it support tabs, can I have a tabbed rxvt-unicode?
176 Beginning with version 7.3, there is a perl extension that
177 implements a simple tabbed terminal. It is installed by default, so
178 any of these should give you tabs:
179
180 rxvt -pe tabbed
181
182 URxvt.perl-ext-common: default,tabbed
183
184 It will also work fine with tabbing functionality of many window
185 managers or similar tabbing programs, and its embedding-features
186 allow it to be embedded into other programs, as witnessed by
187 doc/rxvt-tabbed or the upcoming "Gtk2::URxvt" perl module, which
188 features a tabbed urxvt (murxvt) terminal as an example embedding
189 application.
190
2 How do I know which rxvt-unicode version I'm using? 191 How do I know which rxvt-unicode version I'm using?
3 The version number is displayed with the usage (-h). Also the escape 192 The version number is displayed with the usage (-h). Also the escape
4 sequence "ESC [ 8 n" sets the window title to the version number. 193 sequence "ESC [ 8 n" sets the window title to the version number.
194 When using the rxvtc client, the version displayed is that of the
195 daemon.
5 196
6 I am using Debian GNU/Linux and have a problem... 197 I am using Debian GNU/Linux and have a problem...
7 The Debian GNU/Linux package of rxvt-unicode in sarge contains large 198 The Debian GNU/Linux package of rxvt-unicode in sarge contains large
8 patches that considerably change the behaviour of rxvt-unicode. 199 patches that considerably change the behaviour of rxvt-unicode (but
9 Before reporting a bug to the original rxvt-unicode author please 200 unfortunately this notice has been removed). Before reporting a bug
10 download and install the genuine version 201 to the original rxvt-unicode author please download and install the
11 (<http://software.schmorp.de#rxvt-unicode>) and try to reproduce the 202 genuine version (<http://software.schmorp.de#rxvt-unicode>) and try
12 problem. If you cannot, chances are that the problems are specific 203 to reproduce the problem. If you cannot, chances are that the
13 to Debian GNU/Linux, in which case it should be reported via the 204 problems are specific to Debian GNU/Linux, in which case it should
14 Debian Bug Tracking System (use "reportbug" to report the bug). 205 be reported via the Debian Bug Tracking System (use "reportbug" to
206 report the bug).
15 207
16 For other problems that also affect the Debian package, you can and 208 For other problems that also affect the Debian package, you can and
17 probably should use the Debian BTS, too, because, after all, it's 209 probably should use the Debian BTS, too, because, after all, it's
18 also a bug in the Debian version and it serves as a reminder for 210 also a bug in the Debian version and it serves as a reminder for
19 other users that might encounter the same issue. 211 other users that might encounter the same issue.
212
213 I am maintaining rxvt-unicode for distribution/OS XXX, any
214 recommendation?
215 You should build one binary with the default options. configure now
216 enables most useful options, and the trend goes to making them
217 runtime-switchable, too, so there is usually no drawback to enbaling
218 them, except higher disk and possibly memory usage. The perl
219 interpreter should be enabled, as important functionality (menus,
220 selection, likely more in the future) depends on it.
221
222 You should not overwrite the "perl-ext-common" snd "perl-ext"
223 resources system-wide (except maybe with "defaults"). This will
224 result in useful behaviour. If your distribution aims at low memory,
225 add an empty "perl-ext-common" resource to the app-defaults file.
226 This will keep the perl interpreter disabled until the user enables
227 it.
228
229 If you can/want build more binaries, I recommend building a minimal
230 one with "--disable-everything" (very useful) and a maximal one with
231 "--enable-everything" (less useful, it will be very big due to a lot
232 of encodings built-in that increase download times and are rarely
233 used).
234
235 I need to make it setuid/setgid to support utmp/ptys on my OS, is this
236 safe?
237 It should be, starting with release 7.1. You are encouraged to
238 properly install urxvt with privileges necessary for your OS now.
239
240 When rxvt-unicode detects that it runs setuid or setgid, it will
241 fork into a helper process for privileged operations (pty handling
242 on some systems, utmp/wtmp/lastlog handling on others) and drop
243 privileges immediately. This is much safer than most other terminals
244 that keep privileges while running (but is more relevant to urxvt,
245 as it contains things as perl interpreters, which might be "helpful"
246 to attackers).
247
248 This forking is done as the very first within main(), which is very
249 early and reduces possible bugs to initialisation code run before
250 main(), or things like the dynamic loader of your system, which
251 should result in very little risk.
20 252
21 When I log-in to another system it tells me about missing terminfo data? 253 When I log-in to another system it tells me about missing terminfo data?
22 The terminal description used by rxvt-unicode is not as widely 254 The terminal description used by rxvt-unicode is not as widely
23 available as that for xterm, or even rxvt (for which the same 255 available as that for xterm, or even rxvt (for which the same
24 problem often arises). 256 problem often arises).
412 644
413 My input method wants <some encoding> but I want UTF-8, what can I do? 645 My input method wants <some encoding> but I want UTF-8, what can I do?
414 You can specify separate locales for the input method and the rest 646 You can specify separate locales for the input method and the rest
415 of the terminal, using the resource "imlocale": 647 of the terminal, using the resource "imlocale":
416 648
417 URxvt*imlocale: ja_JP.EUC-JP 649 URxvt.imlocale: ja_JP.EUC-JP
418 650
419 Now you can start your terminal with "LC_CTYPE=ja_JP.UTF-8" and 651 Now you can start your terminal with "LC_CTYPE=ja_JP.UTF-8" and
420 still use your input method. Please note, however, that you will not 652 still use your input method. Please note, however, that you will not
421 be able to input characters outside "EUC-JP" in a normal way then, 653 be able to input characters outside "EUC-JP" in a normal way then,
422 as your input method limits you. 654 as your input method limits you.
465 Mouse cut/paste suddenly no longer works. 697 Mouse cut/paste suddenly no longer works.
466 Make sure that mouse reporting is actually turned off since killing 698 Make sure that mouse reporting is actually turned off since killing
467 some editors prematurely may leave the mouse in mouse report mode. 699 some editors prematurely may leave the mouse in mouse report mode.
468 I've heard that tcsh may use mouse reporting unless it otherwise 700 I've heard that tcsh may use mouse reporting unless it otherwise
469 specified. A quick check is to see if cut/paste works when the Alt 701 specified. A quick check is to see if cut/paste works when the Alt
470 or Shift keys are depressed. See rxvt(7) 702 or Shift keys are depressed.
471 703
472 What's with this bold/blink stuff? 704 What's with this bold/blink stuff?
473 If no bold colour is set via "colorBD:", bold will invert text using 705 If no bold colour is set via "colorBD:", bold will invert text using
474 the standard foreground colour. 706 the standard foreground colour.
475 707
561 793
562 # use Backspace = ^? 794 # use Backspace = ^?
563 $ stty erase ^? 795 $ stty erase ^?
564 $ rxvt 796 $ rxvt
565 797
566 Toggle with "ESC [ 36 h" / "ESC [ 36 l" as documented in rxvt(7). 798 Toggle with "ESC [ 36 h" / "ESC [ 36 l".
567 799
568 For an existing rxvt-unicode: 800 For an existing rxvt-unicode:
569 801
570 # use Backspace = ^H 802 # use Backspace = ^H
571 $ stty erase ^H 803 $ stty erase ^H

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines