--- rxvt-unicode/doc/rxvt.7.pod 2006/01/16 15:12:48 1.85 +++ rxvt-unicode/doc/rxvt.7.pod 2006/01/31 00:53:49 1.97 @@ -18,8 +18,7 @@ This document contains the FAQ, the RXVT TECHNICAL REFERENCE documenting all escape sequences, and other background information. -The newest version of this document is -also available on the World Wide Web at +The newest version of this document is also available on the World Wide Web at L. =head1 FREQUENTLY ASKED QUESTIONS @@ -66,6 +65,90 @@ URxvt.searchable-scrollback: CM-s +=item The cursor moves when selecting text in the current input line, how +do I switch this off? + +=item During rlogin/ssh/telnet/etc. sessions, clicking near the cursor +outputs strange escape sequences, how do I fix this? + +These are caused by the C perl extension. Under normal +circumstances, it will move your cursor around when you click into the +line that contains it. It tries hard not to do this at the wrong moment, +but when running a program that doesn't parse cursor movements or in some +cases during rlogin sessions, it fails to detect this properly. + +You can permamently switch this feature off by disabling the C +extension: + + URxvt.perl-ext-common: default,-readline + +=item Why doesn't rxvt-unicode read my resources? + +Well, why, indeed? It does, in a way very similar to other X +applications. Most importantly, this means that if you or your OS loads +resources into the X display (the right way to do it), rxvt-unicode will +ignore any resource files in your home directory. It will only read +F<$HOME/.Xdefaults> when no resources are attached to the display. + +If you have or use an F<$HOME/.Xresources> file, chances are that +resources are loaded into your X-server. In this case, you have to +re-login after every change (or run F). + +Also consider the form resources have to use: + + URxvt.resource: value + +If you want to use another form (there are lots of different ways of +specifying resources), make sure you understand wether and why it +works. If unsure, use the form above. + +=item I can't get transparency working, what am I doing wrong? + +First of all, transparency isn't officially supported in rxvt-unicode, so +you are mostly on your own. Do not bug the author about it (but you may +bug everybody else). Also, if you can't get it working consider it a rite +of passage: ... and you failed. + +Here are four ways to get transparency. B read the manpage and option +descriptions for the programs mentioned and rxvt-unicode. Really, do it! + +1. Use inheritPixmap: + + Esetroot wallpaper.jpg + @@RXVT_NAME@@ -ip -tint red -sh 40 + +That works. If you think it doesn't, you lack transparency and tinting +support, or you are unable to read. + +2. Use a simple pixmap and emulate pseudo-transparency. This enables you +to use effects other than tinting and shading: Just shade/tint/whatever +your picture with gimp: + + convert wallpaper.jpg -blur 20x20 -modulate 30 background.xpm + @@RXVT_NAME@@ -pixmap background.xpm -pe automove-background + +That works. If you think it doesn't, you lack XPM and Perl support, or you +are unable to read. + +3. Use an ARGB visual: + + @@RXVT_NAME@@ -depth 32 -fg grey90 -bg rgba:0000/0000/4444/cccc + +This requires XFT support, and the support of your X-server. If that +doesn't work for you, blame Xorg and Keith Packard. ARGB visuals aren't +there yet, no matter what they claim. Rxvt-Unicode contains the neccessary +bugfixes and workarounds for Xft and Xlib to make it work, but that +doesn't mean that your WM has the required kludges in place. + +4. Use xcompmgr and let it do the job: + + xprop -frame -f _NET_WM_WINDOW_OPACITY 32c \ + -set _NET_WM_WINDOW_OPACITY 0xc0000000 + +Then click on a window you want to make transparent. Replace C<0xc0000000> +by other values to change the degree of opacity. If it doesn't work and +your server crashes, you got to keep the pieces. + =item Isn't rxvt supposed to be small? Don't all those features bloat? I often get asked about this, and I think, no, they didn't cause extra @@ -144,12 +227,19 @@ =item Does it support tabs, can I have a tabbed rxvt-unicode? -rxvt-unicode does not directly support tabs. It will work fine with -tabbing functionality of many window managers or similar tabbing programs, -and its embedding-features allow it to be embedded into other programs, -as witnessed by F or the upcoming C perl -module, which features a tabbed urxvt (murxvt) terminal as an example -embedding application. +Beginning with version 7.3, there is a perl extension that implements a +simple tabbed terminal. It is installed by default, so any of these should +give you tabs: + + @@RXVT_NAME@@ -pe tabbed + + URxvt.perl-ext-common: default,tabbed + +It will also work fine with tabbing functionality of many window managers +or similar tabbing programs, and its embedding-features allow it to be +embedded into other programs, as witnessed by F or +the upcoming C perl module, which features a tabbed urxvt +(murxvt) terminal as an example embedding application. =item How do I know which rxvt-unicode version I'm using? @@ -161,20 +251,21 @@ =item I am using Debian GNU/Linux and have a problem... The Debian GNU/Linux package of rxvt-unicode in sarge contains large -patches that considerably change the behaviour of rxvt-unicode. Before -reporting a bug to the original rxvt-unicode author please download and -install the genuine version (L) -and try to reproduce the problem. If you cannot, chances are that the -problems are specific to Debian GNU/Linux, in which case it should be -reported via the Debian Bug Tracking System (use C to report -the bug). +patches that considerably change the behaviour of rxvt-unicode (but +unfortunately this notice has been removed). Before reporting a bug to +the original rxvt-unicode author please download and install the genuine +version (L) and try to reproduce +the problem. If you cannot, chances are that the problems are specific to +Debian GNU/Linux, in which case it should be reported via the Debian Bug +Tracking System (use C to report the bug). For other problems that also affect the Debian package, you can and probably should use the Debian BTS, too, because, after all, it's also a bug in the Debian version and it serves as a reminder for other users that might encounter the same issue. -=item I am maintaining rxvt-unicode for distribution/OS XXX, any recommendation? +=item I am maintaining rxvt-unicode for distribution/OS XXX, any +recommendation? You should build one binary with the default options. F now enables most useful options, and the trend goes to making them @@ -196,22 +287,20 @@ =item I need to make it setuid/setgid to support utmp/ptys on my OS, is this safe? -Likely not. While I honestly try to make it secure, and am probably not -bad at it, I think it is simply unreasonable to expect all of freetype -+ fontconfig + xft + xlib + perl + ... + rxvt-unicode itself to all be -secure. Also, rxvt-unicode disables some options when it detects that it -runs setuid or setgid, which is not nice. Besides, with the embedded perl -interpreter the possibility for security problems easily multiplies. - -Elevated privileges are only required for utmp and pty operations on some -systems (for example, GNU/Linux doesn't need any extra privileges for -ptys, but some need it for utmp support). It is planned to mvoe this into -a forked handler process, but this is not yet done. - -So, while setuid/setgid operation is supported and not a problem on your -typical single-user-no-other-logins unix desktop, always remember that -its an awful lot of code, most of which isn't checked for security issues -regularly. +It should be, starting with release 7.1. You are encouraged to properly +install urxvt with privileges necessary for your OS now. + +When rxvt-unicode detects that it runs setuid or setgid, it will fork +into a helper process for privileged operations (pty handling on some +systems, utmp/wtmp/lastlog handling on others) and drop privileges +immediately. This is much safer than most other terminals that keep +privileges while running (but is more relevant to urxvt, as it contains +things as perl interpreters, which might be "helpful" to attackers). + +This forking is done as the very first within main(), which is very early +and reduces possible bugs to initialisation code run before main(), or +things like the dynamic loader of your system, which should result in very +little risk. =item When I log-in to another system it tells me about missing terminfo data? @@ -1671,13 +1760,14 @@ B<< C >> Change colour of highlight characters to B<< C >> B<< C >> Change colour of bold characters to B<< C >> [deprecated, see 706] B<< C >> Change colour of underlined characters to B<< C >> [deprecated, see 707] - B<< C >> Change default background to B<< C >> + B<< C >> Change background pixmap parameters (see section XPM) (Compile XPM). B<< C >> Change default foreground colour to B<< C >>. B<< C >> Change Log File to B<< C >> I B<< C >> Change default background colour to B<< C >>. B<< C >> Set fontset to B<< C >>, with the following special values of B<< C >> (B) B<< C<#+n> >> change up B<< C >> B<< C<#-n> >> change down B<< C >> if B<< C >> is missing of 0, a value of 1 is used I change to font0 B<< C >> change to font B<< C >> B<< C >> Log all scrollback buffer and all of screen to B<< C >> B<< C >> Change current locale to B<< C >>, or, if B<< C >> is B<< C >>, return the current locale (Compile frills). + B<< C >> Request version if B<< C >> is B<< C >>, returning C, the resource name, the major and minor version numbers, e.g. C. B<< C >> Change colour of italic characters to B<< C >> B<< C >> Change background pixmap tint colour to B<< C >> (Compile transparency). B<< C >> Change colour of bold characters to B<< C >> @@ -1950,6 +2040,8 @@ =item --enable-unicode3 (default: off) +Recommended to stay off unless you really need non-BMP characters. + Enable direct support for displaying unicode codepoints above 65535 (the basic multilingual page). This increases storage requirements per character from 2 to 4 bytes. X11 fonts do not yet @@ -1969,10 +2061,9 @@ done by using precomposited characters when available or creating new pseudo-characters when no precomposed form exists. -Without --enable-unicode3, the number of additional precomposed characters -is rather limited (2048, if this is full, rxvt-unicode will use the -private use area, extending the number of combinations to 8448). With ---enable-unicode3, no practical limit exists. +Without --enable-unicode3, the number of additional precomposed +characters is somewhat limited (the 6400 private use characters will be +(ab-)used). With --enable-unicode3, no practical limit exists. This option will also enable storage (but not display) of characters beyond plane 0 (>65535) when --enable-unicode3 was not specified. @@ -1983,7 +2074,8 @@ =item --enable-fallback(=CLASS) (default: Rxvt) -When reading resource settings, also read settings for class CLASS. To disable resource fallback use --disable-fallback. +When reading resource settings, also read settings for class CLASS. To +disable resource fallback use --disable-fallback. =item --with-res-name=NAME (default: urxvt) @@ -2048,11 +2140,6 @@ is the favourite of the rxvt-unicode author, having used it for many years. -=item --enable-half-shadow (default: off) - -Make shadows on the scrollbar only half the normal width & height. -only applicable to rxvt scrollbars. - =item --enable-ttygid (default: off) Change tty device setting to group "tty" - only use this if @@ -2088,10 +2175,9 @@ EWMH-hints (pid, utf8 names) and protocols (ping) seperate underline colour (-underlineColor) settable border widths and borderless switch (-w, -b, -bl) + visual depth selection (-depth) settable extra linespacing /-lsp) iso-14755-2 and -3, and visual feedback - backindex and forwardindex escape sequence - window op and some xterm/OSC escape sequences tripleclickwords (-tcw) settable insecure mode (-insecure) keysym remapping support @@ -2100,7 +2186,20 @@ user-pty (-pty-fd) hold on exit (-hold) skip builtin block graphics (-sbg) + +It also enabled some non-essential features otherwise disabled, such as: + + some round-trip time optimisations + nearest color allocation on pseudocolor screens + UTF8_STRING supporr for selection sgr modes 90..97 and 100..107 + backindex and forwardindex escape sequences + view change/zero scorllback esacpe sequences + locale switching escape sequence + window op and some xterm/OSC escape sequences + rectangular selections + trailing space removal for selections + verbose X error handling =item --enable-iso14755 (default: on) @@ -2153,7 +2252,7 @@ Add support to have the pointer disappear when typing or inactive. -=item --enable-perl (default: off) +=item --enable-perl (default: on) Enable an embedded perl interpreter. See the B<@@RXVT_NAME@@perl(3)> manpage (F) for more info on this feature, or the files