… | |
… | |
23 | perl-ext-common resource to the empty string, which also keeps |
23 | perl-ext-common resource to the empty string, which also keeps |
24 | rxvt-unicode from initialising perl, saving memory. |
24 | rxvt-unicode from initialising perl, saving memory. |
25 | |
25 | |
26 | If you only want to disable specific features, you first have to |
26 | If you only want to disable specific features, you first have to |
27 | identify which perl extension is responsible. For this, read the |
27 | identify which perl extension is responsible. For this, read the |
28 | section PREPACKAGED EXTENSIONS in the urxvtperl(3) manpage. For |
28 | section PREPACKAGED EXTENSIONS in the rxvtperl(3) manpage. For |
29 | example, to disable the selection-popup and option-popup, specify |
29 | example, to disable the selection-popup and option-popup, specify |
30 | this perl-ext-common resource: |
30 | this perl-ext-common resource: |
31 | |
31 | |
32 | URxvt.perl-ext-common: default,-selection-popup,-option-popup |
32 | URxvt.perl-ext-common: default,-selection-popup,-option-popup |
33 | |
33 | |
… | |
… | |
123 | terminal as an example embedding application. |
123 | terminal as an example embedding application. |
124 | |
124 | |
125 | How do I know which rxvt-unicode version I'm using? |
125 | How do I know which rxvt-unicode version I'm using? |
126 | The version number is displayed with the usage (-h). Also the escape |
126 | The version number is displayed with the usage (-h). Also the escape |
127 | sequence "ESC [ 8 n" sets the window title to the version number. |
127 | sequence "ESC [ 8 n" sets the window title to the version number. |
128 | When using the urxvtc client, the version displayed is that of the |
128 | When using the rxvtc client, the version displayed is that of the |
129 | daemon. |
129 | daemon. |
130 | |
130 | |
131 | I am using Debian GNU/Linux and have a problem... |
131 | I am using Debian GNU/Linux and have a problem... |
132 | The Debian GNU/Linux package of rxvt-unicode in sarge contains large |
132 | The Debian GNU/Linux package of rxvt-unicode in sarge contains large |
133 | patches that considerably change the behaviour of rxvt-unicode. |
133 | patches that considerably change the behaviour of rxvt-unicode (but |
134 | Before reporting a bug to the original rxvt-unicode author please |
134 | unfortunately this notice has been removed). Before reporting a bug |
135 | download and install the genuine version |
135 | to the original rxvt-unicode author please download and install the |
136 | (<http://software.schmorp.de#rxvt-unicode>) and try to reproduce the |
136 | genuine version (<http://software.schmorp.de#rxvt-unicode>) and try |
137 | problem. If you cannot, chances are that the problems are specific |
137 | to reproduce the problem. If you cannot, chances are that the |
138 | to Debian GNU/Linux, in which case it should be reported via the |
138 | problems are specific to Debian GNU/Linux, in which case it should |
139 | Debian Bug Tracking System (use "reportbug" to report the bug). |
139 | be reported via the Debian Bug Tracking System (use "reportbug" to |
|
|
140 | report the bug). |
140 | |
141 | |
141 | For other problems that also affect the Debian package, you can and |
142 | For other problems that also affect the Debian package, you can and |
142 | probably should use the Debian BTS, too, because, after all, it's |
143 | probably should use the Debian BTS, too, because, after all, it's |
143 | also a bug in the Debian version and it serves as a reminder for |
144 | also a bug in the Debian version and it serves as a reminder for |
144 | other users that might encounter the same issue. |
145 | other users that might encounter the same issue. |
… | |
… | |
165 | of encodings built-in that increase download times and are rarely |
166 | of encodings built-in that increase download times and are rarely |
166 | used). |
167 | used). |
167 | |
168 | |
168 | I need to make it setuid/setgid to support utmp/ptys on my OS, is this |
169 | I need to make it setuid/setgid to support utmp/ptys on my OS, is this |
169 | safe? |
170 | safe? |
170 | Likely not. While I honestly try to make it secure, and am probably |
171 | It should be, starting with release 7.1. You are encouraged to |
171 | not bad at it, I think it is simply unreasonable to expect all of |
172 | properly install urxvt with privileges necessary for your OS now. |
172 | freetype + fontconfig + xft + xlib + perl + ... + rxvt-unicode |
173 | |
173 | itself to all be secure. Also, rxvt-unicode disables some options |
|
|
174 | when it detects that it runs setuid or setgid, which is not nice. |
174 | When rxvt-unicode detects that it runs setuid or setgid, it will |
175 | Besides, with the embedded perl interpreter the possibility for |
175 | fork into a helper process for privileged operations (pty handling |
176 | security problems easily multiplies. |
176 | on some systems, utmp/wtmp/lastlog handling on others) and drop |
|
|
177 | privileges immediately. This is much safer than most other terminals |
|
|
178 | that keep privileges while running (but is more relevant to urxvt, |
|
|
179 | as it contains things as perl interpreters, which might be "helpful" |
|
|
180 | to attackers). |
177 | |
181 | |
178 | Elevated privileges are only required for utmp and pty operations on |
182 | This forking is done as the very first within main(), which is very |
179 | some systems (for example, GNU/Linux doesn't need any extra |
183 | early and reduces possible bugs to initialisation code run before |
180 | privileges for ptys, but some need it for utmp support). It is |
184 | main(), or things like the dynamic loader of your system, which |
181 | planned to mvoe this into a forked handler process, but this is not |
185 | should result in very little risk. |
182 | yet done. |
|
|
183 | |
|
|
184 | So, while setuid/setgid operation is supported and not a problem on |
|
|
185 | your typical single-user-no-other-logins unix desktop, always |
|
|
186 | remember that its an awful lot of code, most of which isn't checked |
|
|
187 | for security issues regularly. |
|
|
188 | |
186 | |
189 | When I log-in to another system it tells me about missing terminfo data? |
187 | When I log-in to another system it tells me about missing terminfo data? |
190 | The terminal description used by rxvt-unicode is not as widely |
188 | The terminal description used by rxvt-unicode is not as widely |
191 | available as that for xterm, or even rxvt (for which the same |
189 | available as that for xterm, or even rxvt (for which the same |
192 | problem often arises). |
190 | problem often arises). |
… | |
… | |
217 | |
215 | |
218 | "tic" outputs some error when compiling the terminfo entry. |
216 | "tic" outputs some error when compiling the terminfo entry. |
219 | Most likely it's the empty definition for "enacs=". Just replace it |
217 | Most likely it's the empty definition for "enacs=". Just replace it |
220 | by "enacs=\E[0@" and try again. |
218 | by "enacs=\E[0@" and try again. |
221 | |
219 | |
222 | "bash"'s readline does not work correctly under urxvt. |
220 | "bash"'s readline does not work correctly under rxvt. |
223 | I need a termcap file entry. |
221 | I need a termcap file entry. |
224 | One reason you might want this is that some distributions or |
222 | One reason you might want this is that some distributions or |
225 | operating systems still compile some programs using the |
223 | operating systems still compile some programs using the |
226 | long-obsoleted termcap library (Fedora Core's bash is one example) |
224 | long-obsoleted termcap library (Fedora Core's bash is one example) |
227 | and rely on a termcap entry for "rxvt-unicode". |
225 | and rely on a termcap entry for "rxvt-unicode". |
… | |
… | |
338 | indeed look correct. |
336 | indeed look correct. |
339 | |
337 | |
340 | In that case, select a font of your taste and add it to the font |
338 | In that case, select a font of your taste and add it to the font |
341 | list, e.g.: |
339 | list, e.g.: |
342 | |
340 | |
343 | urxvt -fn basefont,font2,font3... |
341 | rxvt -fn basefont,font2,font3... |
344 | |
342 | |
345 | When rxvt-unicode sees a character, it will first look at the base |
343 | When rxvt-unicode sees a character, it will first look at the base |
346 | font. If the base font does not contain the character, it will go to |
344 | font. If the base font does not contain the character, it will go to |
347 | the next font, and so on. Specifying your own fonts will also speed |
345 | the next font, and so on. Specifying your own fonts will also speed |
348 | up this search and use less resources within rxvt-unicode and the |
346 | up this search and use less resources within rxvt-unicode and the |
… | |
… | |
580 | |
578 | |
581 | My input method wants <some encoding> but I want UTF-8, what can I do? |
579 | My input method wants <some encoding> but I want UTF-8, what can I do? |
582 | You can specify separate locales for the input method and the rest |
580 | You can specify separate locales for the input method and the rest |
583 | of the terminal, using the resource "imlocale": |
581 | of the terminal, using the resource "imlocale": |
584 | |
582 | |
585 | URxvt*imlocale: ja_JP.EUC-JP |
583 | URxvt.imlocale: ja_JP.EUC-JP |
586 | |
584 | |
587 | Now you can start your terminal with "LC_CTYPE=ja_JP.UTF-8" and |
585 | Now you can start your terminal with "LC_CTYPE=ja_JP.UTF-8" and |
588 | still use your input method. Please note, however, that you will not |
586 | still use your input method. Please note, however, that you will not |
589 | be able to input characters outside "EUC-JP" in a normal way then, |
587 | be able to input characters outside "EUC-JP" in a normal way then, |
590 | as your input method limits you. |
588 | as your input method limits you. |
… | |
… | |
698 | URxvt.color6: #73f7ff |
696 | URxvt.color6: #73f7ff |
699 | URxvt.color14: #73f7ff |
697 | URxvt.color14: #73f7ff |
700 | URxvt.color7: #e1dddd |
698 | URxvt.color7: #e1dddd |
701 | URxvt.color15: #e1dddd |
699 | URxvt.color15: #e1dddd |
702 | |
700 | |
703 | How can I start urxvtd in a race-free way? |
701 | How can I start rxvtd in a race-free way? |
704 | Try "urxvtd -f -o", which tells urxvtd to open the display, create |
702 | Try "rxvtd -f -o", which tells rxvtd to open the display, create the |
705 | the listening socket and then fork. |
703 | listening socket and then fork. |
706 | |
704 | |
707 | What's with the strange Backspace/Delete key behaviour? |
705 | What's with the strange Backspace/Delete key behaviour? |
708 | Assuming that the physical Backspace key corresponds to the |
706 | Assuming that the physical Backspace key corresponds to the |
709 | BackSpace keysym (not likely for Linux ... see the following |
707 | BackSpace keysym (not likely for Linux ... see the following |
710 | question) there are two standard values that can be used for |
708 | question) there are two standard values that can be used for |
… | |
… | |
723 | |
721 | |
724 | For starting a new rxvt-unicode: |
722 | For starting a new rxvt-unicode: |
725 | |
723 | |
726 | # use Backspace = ^H |
724 | # use Backspace = ^H |
727 | $ stty erase ^H |
725 | $ stty erase ^H |
728 | $ urxvt |
726 | $ rxvt |
729 | |
727 | |
730 | # use Backspace = ^? |
728 | # use Backspace = ^? |
731 | $ stty erase ^? |
729 | $ stty erase ^? |
732 | $ urxvt |
730 | $ rxvt |
733 | |
731 | |
734 | Toggle with "ESC [ 36 h" / "ESC [ 36 l". |
732 | Toggle with "ESC [ 36 h" / "ESC [ 36 l". |
735 | |
733 | |
736 | For an existing rxvt-unicode: |
734 | For an existing rxvt-unicode: |
737 | |
735 | |
… | |
… | |
765 | There are some compile-time selections available via configure. |
763 | There are some compile-time selections available via configure. |
766 | Unless you have run "configure" with the "--disable-resources" |
764 | Unless you have run "configure" with the "--disable-resources" |
767 | option you can use the `keysym' resource to alter the keystrings |
765 | option you can use the `keysym' resource to alter the keystrings |
768 | associated with keysyms. |
766 | associated with keysyms. |
769 | |
767 | |
770 | Here's an example for a URxvt session started using "urxvt -name |
768 | Here's an example for a URxvt session started using "rxvt -name |
771 | URxvt" |
769 | URxvt" |
772 | |
770 | |
773 | URxvt.keysym.Home: \033[1~ |
771 | URxvt.keysym.Home: \033[1~ |
774 | URxvt.keysym.End: \033[4~ |
772 | URxvt.keysym.End: \033[4~ |
775 | URxvt.keysym.C-apostrophe: \033<C-'> |
773 | URxvt.keysym.C-apostrophe: \033<C-'> |