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

Comparing rxvt-unicode/doc/rxvt.7.html (file contents):
Revision 1.1 by root, Tue Jan 11 02:24:59 2005 UTC vs.
Revision 1.17 by root, Sun Feb 20 19:45:30 2005 UTC

11<!-- INDEX BEGIN --> 11<!-- INDEX BEGIN -->
12 12
13<ul> 13<ul>
14 14
15 <li><a href="#name">NAME</a></li> 15 <li><a href="#name">NAME</a></li>
16 <li><a href="#frequently_asked_questions">FREQUENTLY ASKED QUESTIONS</a></li>
17 <li><a href="#synopsis">SYNOPSIS</a></li> 16 <li><a href="#synopsis">SYNOPSIS</a></li>
18 <li><a href="#description">DESCRIPTION</a></li> 17 <li><a href="#description">DESCRIPTION</a></li>
18 <li><a href="#frequently_asked_questions">FREQUENTLY ASKED QUESTIONS</a></li>
19 <li><a href="#rxvt_technical_reference">RXVT TECHNICAL REFERENCE</a></li> 19 <li><a href="#rxvt_technical_reference">RXVT TECHNICAL REFERENCE</a></li>
20 <li><a href="#description">DESCRIPTION</a></li>
20 <li><a href="#definitions">Definitions</a></li> 21 <li><a href="#definitions">Definitions</a></li>
21 <li><a href="#values">Values</a></li> 22 <li><a href="#values">Values</a></li>
22 <li><a href="#escape_sequences">Escape Sequences</a></li> 23 <li><a href="#escape_sequences">Escape Sequences</a></li>
23 <li><a href="#csi__command_sequence_introducer__sequences">CSI (Command Sequence Introducer) Sequences</a></li> 24 <li><a href="#csi__command_sequence_introducer__sequences">CSI (Command Sequence Introducer) Sequences</a></li>
24 <li><a href="#dec_private_modes">DEC Private Modes</a></li> 25 <li><a href="#dec_private_modes">DEC Private Modes</a></li>
48<h1><a name="name">NAME</a></h1> 49<h1><a name="name">NAME</a></h1>
49<p>RXVT REFERENCE - FAQ, command sequences and other background information</p> 50<p>RXVT REFERENCE - FAQ, command sequences and other background information</p>
50<p> 51<p>
51</p> 52</p>
52<hr /> 53<hr />
54<h1><a name="synopsis">SYNOPSIS</a></h1>
55<pre>
56 # set a new font set
57 printf '\33]50;%s\007' 9x15,xft:Kochi&quot; Mincho&quot;</pre>
58<pre>
59 # change the locale and tell rxvt-unicode about it
60 export LC_CTYPE=ja_JP.EUC-JP; printf &quot;\33]701;$LC_CTYPE\007&quot;</pre>
61<pre>
62 # set window title
63 printf '\33]2;%s\007' &quot;new window title&quot;</pre>
64<p>
65</p>
66<hr />
67<h1><a name="description">DESCRIPTION</a></h1>
68<p>This document contains the FAQ, the RXVT TECHNICAL REFERENCE documenting
69all escape sequences, and other background information.</p>
70<p>The newest version of this document is
71also available on the World Wide Web at
72<a href="http://cvs.schmorp.de/browse/*checkout*/rxvt-unicode/doc/rxvt.7.html">http://cvs.schmorp.de/browse/*checkout*/rxvt-unicode/doc/rxvt.7.html</a>.</p>
73<p>
74</p>
75<hr />
53<h1><a name="frequently_asked_questions">FREQUENTLY ASKED QUESTIONS</a></h1> 76<h1><a name="frequently_asked_questions">FREQUENTLY ASKED QUESTIONS</a></h1>
54<dl> 77<dl>
55<dt><strong><a name="item_how_do_i_know_which_rxvt_2dunicode_version_i_27m_u">How do I know which rxvt-unicode version I'm using?</a></strong><br /> 78<dt><strong><a name="item_how_do_i_know_which_rxvt_2dunicode_version_i_27m_u">How do I know which rxvt-unicode version I'm using?</a></strong><br />
56</dt> 79</dt>
57<dd> 80<dd>
58The version number is displayed with the usage (-h). Also the escape 81The version number is displayed with the usage (-h). Also the escape
59sequence <code>ESC[8n</code> sets the window title to the version number. 82sequence <code>ESC [ 8 n</code> sets the window title to the version number.
83</dd>
84<p></p>
85<dt><strong><a name="item_i_am_using_debian_gnu_2flinux_and_have_a_problem_2">I am using Debian GNU/Linux and have a problem...</a></strong><br />
86</dt>
87<dd>
88The Debian GNU/Linux package of rxvt-unicode contains large patches that
89considerably change the behaviour of rxvt-unicode. Before reporting a
90bug to the original rxvt-unicode author please download and install the
91genuine version (<a href="http://software.schmorp.de#rxvt-unicode">http://software.schmorp.de#rxvt-unicode</a>) and try to
92reproduce the problem. If you cannot, chances are that the problems are
93specific to Debian GNU/Linux, in which case it should be reported via the
94Debian Bug Tracking System (use <code>reportbug</code> to report the bug).
95</dd>
96<dd>
97<p>For other problems that also affect the Debian package, you can and
98probably should use the Debian BTS, too, because, after all, it's also a
99bug in the Debian version and it serves as a reminder for other users that
100might encounter the same issue.</p>
60</dd> 101</dd>
61<p></p> 102<p></p>
62<dt><strong><a name="item_when_i_log_2din_to_another_system_it_tells_me_abou">When I log-in to another system it tells me about missing terminfo data?</a></strong><br /> 103<dt><strong><a name="item_when_i_log_2din_to_another_system_it_tells_me_abou">When I log-in to another system it tells me about missing terminfo data?</a></strong><br />
63</dt> 104</dt>
64<dd> 105<dd>
83problems arising, which includes wrong keymapping, less and different 124problems arising, which includes wrong keymapping, less and different
84colours and some refresh errors in fullscreen applications. It's a nice 125colours and some refresh errors in fullscreen applications. It's a nice
85quick-and-dirty workaround for rare cases, though.</p> 126quick-and-dirty workaround for rare cases, though.</p>
86</dd> 127</dd>
87<dd> 128<dd>
88<p>If you always want to do this you can either recompile rxvt-unicode with 129<p>If you always want to do this (and are fine with the consequences) you
89the desired TERM value or use a resource to set it:</p> 130can either recompile rxvt-unicode with the desired TERM value or use a
131resource to set it:</p>
90</dd> 132</dd>
91<dd> 133<dd>
92<pre> 134<pre>
93 URxvt.termName: rxvt</pre> 135 URxvt.termName: rxvt</pre>
94</dd> 136</dd>
95<dd> 137<dd>
96<p>If you don't plan to use <strong>rxvt</strong> (quite common...) you could also replace 138<p>If you don't plan to use <strong>rxvt</strong> (quite common...) you could also replace
97the rxvt terminfo file with the rxvt-unicode one.</p> 139the rxvt terminfo file with the rxvt-unicode one.</p>
98</dd> 140</dd>
99<p></p> 141<p></p>
142<dt><strong><a name="item_bash_27s_readline_does_not_work_correctly_under_rx"><code>bash</code>'s readline does not work correctly under rxvt.</a></strong><br />
143</dt>
100<dt><strong><a name="item_i_need_a_termcap_file_entry_2e">I need a termcap file entry.</a></strong><br /> 144<dt><strong><a name="item_i_need_a_termcap_file_entry_2e">I need a termcap file entry.</a></strong><br />
101</dt> 145</dt>
102<dd> 146<dd>
147One reason you might want this is that some distributions or operating
148systems still compile some programs using the long-obsoleted termcap
149library (Fedora Core's bash is one example) and rely on a termcap entry
150for <code>rxvt-unicode</code>.
151</dd>
152<dd>
103You could use rxvt's termcap entry with resonable results in many cases. 153<p>You could use rxvt's termcap entry with resonable results in many cases.
104You can also create a termcap entry by using terminfo's infocmp program 154You can also create a termcap entry by using terminfo's infocmp program
105like this: 155like this:</p>
106</dd> 156</dd>
107<dd> 157<dd>
108<pre> 158<pre>
109 infocmp -C rxvt-unicode</pre> 159 infocmp -C rxvt-unicode</pre>
110</dd> 160</dd>
111<dd> 161<dd>
112<p>OR you could this termcap entry:</p> 162<p>Or you could use this termcap entry, generated by the command above:</p>
113</dd> 163</dd>
114<dd> 164<dd>
115<pre> 165<pre>
116 rxvt-unicode|rxvt-unicode terminal (X Window System):\ 166 rxvt-unicode|rxvt-unicode terminal (X Window System):\
117 :am:bw:eo:km:mi:ms:xn:xo:\ 167 :am:bw:eo:km:mi:ms:xn:xo:\
118 :co#80:it#8:li#24:\ 168 :co#80:it#8:li#24:lm#0:\
119 :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ 169 :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\
120 :K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:LE=\E[%dD:\ 170 :K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:LE=\E[%dD:\
121 :RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:ae=^O:al=\E[L:\ 171 :RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:ae=\E(B:al=\E[L:\
122 :as=^N:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:\ 172 :as=\E(0:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:\
123 :cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:\ 173 :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:\
124 :ec=\E[%dX:ei=\E[4l:ho=\E[H:i1=\E[?47l\E=\E[?1l:ic=\E[@:\ 174 :dl=\E[M:do=^J:ec=\E[%dX:ei=\E[4l:ho=\E[H:\
175 :i1=\E[?47l\E=\E[?1l:ic=\E[@:im=\E[4h:\
125 :im=\E[4h:is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l:\ 176 :is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l:\
126 :k0=\E[21~:k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:\ 177 :k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\
127 :k5=\E[15~:k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:\ 178 :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:kD=\E[3~:\
128 :kD=\E[3~:kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:kd=\EOB:\ 179 :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:kd=\EOB:ke=\E[?1l\E&gt;:\
129 :ke=\E[?1l\E&gt;:kh=\E[7~:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:\ 180 :kh=\E[7~:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:\
130 :ku=\EOA:le=^H:mb=\E[5m:md=\E[1m:me=\E[m\017:mr=\E[7m:\ 181 :mb=\E[5m:md=\E[1m:me=\E[m\017:mr=\E[7m:nd=\E[C:rc=\E8:\
131 :nd=\E[C:rc=\E8:sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:\ 182 :sc=\E7:se=\E[27m:sf=^J:so=\E[7m:sr=\EM:st=\EH:ta=^I:\
132 :st=\EH:ta=^I:te=\E[r\E[?1049l:ti=\E[?1049h:ue=\E[24m:\ 183 :te=\E[r\E[?1049l:ti=\E[?1049h:ue=\E[24m:up=\E[A:\
133 :up=\E[A:us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:\ 184 :us=\E[4m:vb=\E[?5h\E[?5l:ve=\E[?25h:vi=\E[?25l:\
134 :vs=\E[?25h:</pre> 185 :vs=\E[?25h:</pre>
135</dd> 186</dd>
136<p></p> 187<p></p>
137<dt><strong><a name="item_why_does_ls_no_longer_have_coloured_output_3f">Why does <code>ls</code> no longer have coloured output?</a></strong><br /> 188<dt><strong><a name="item_why_does_ls_no_longer_have_coloured_output_3f">Why does <code>ls</code> no longer have coloured output?</a></strong><br />
138</dt> 189</dt>
172file, so you will need to install it on your own (See the question <strong>When 223file, so you will need to install it on your own (See the question <strong>When
173I log-in to another system it tells me about missing terminfo data?</strong> on 224I log-in to another system it tells me about missing terminfo data?</strong> on
174how to do this). 225how to do this).
175</dd> 226</dd>
176<p></p> 227<p></p>
228<dt><strong><a name="item_my_numerical_keypad_acts_weird_and_generates_diffe">My numerical keypad acts weird and generates differing output?</a></strong><br />
229</dt>
230<dd>
231Some Debian GNUL/Linux users seem to have this problem, although no
232specific details were reported so far. It is possible that this is caused
233by the wrong <code>TERM</code> setting, although the details of wether and how
234this can happen are unknown, as <code>TERM=rxvt</code> should offer a compatible
235keymap. See the answer to the previous question, and please report if that
236helped.
237</dd>
238<p></p>
177<dt><strong><a name="item_rxvt_2dunicode_does_not_seem_to_understand_the_sel">Rxvt-unicode does not seem to understand the selected encoding?</a></strong><br /> 239<dt><strong><a name="item_rxvt_2dunicode_does_not_seem_to_understand_the_sel">Rxvt-unicode does not seem to understand the selected encoding?</a></strong><br />
178</dt> 240</dt>
179<dt><strong><a name="item_unicode_does_not_seem_to_work_3f">Unicode does not seem to work?</a></strong><br /> 241<dt><strong><a name="item_unicode_does_not_seem_to_work_3f">Unicode does not seem to work?</a></strong><br />
180</dt> 242</dt>
181<dd> 243<dd>
185</dd> 247</dd>
186<dd> 248<dd>
187<p>Rxvt-unicode must be started with the same <code>LC_CTYPE</code> setting as the 249<p>Rxvt-unicode must be started with the same <code>LC_CTYPE</code> setting as the
188programs. Often rxvt-unicode is started in the <a href="#item_c"><code>C</code></a> locale, while the 250programs. Often rxvt-unicode is started in the <a href="#item_c"><code>C</code></a> locale, while the
189login script running within the rxvt-unicode window changes the locale to 251login script running within the rxvt-unicode window changes the locale to
190sth. else, e.h. <code>en_GB.UTF-8</code>. Needless to say, this is not going to work.</p> 252something else, e.g. <code>en_GB.UTF-8</code>. Needless to say, this is not going to work.</p>
191</dd> 253</dd>
192<dd> 254<dd>
193<p>The best thing is to fix your startup environment, as you will likely run 255<p>The best thing is to fix your startup environment, as you will likely run
194into other problems. If nothing works you can try this in your .profile.</p> 256into other problems. If nothing works you can try this in your .profile.</p>
195</dd> 257</dd>
198 printf '\e]701;%s\007' &quot;$LC_CTYPE&quot;</pre> 260 printf '\e]701;%s\007' &quot;$LC_CTYPE&quot;</pre>
199</dd> 261</dd>
200<dd> 262<dd>
201<p>If this doesn't work, then maybe you use a <code>LC_CTYPE</code> specification not 263<p>If this doesn't work, then maybe you use a <code>LC_CTYPE</code> specification not
202supported on your systems. Some systems have a <code>locale</code> command which 264supported on your systems. Some systems have a <code>locale</code> command which
203displays this. If it displays sth. like:</p> 265displays this (also, <code>perl -e0</code> can be used to check locale settings, as
266it will complain loudly if it cannot set the locale). If it displays something
267like:</p>
204</dd> 268</dd>
205<dd> 269<dd>
206<pre> 270<pre>
207 locale: Cannot set LC_CTYPE to default locale: ...</pre> 271 locale: Cannot set LC_CTYPE to default locale: ...</pre>
208</dd> 272</dd>
226to display. 290to display.
227</dd> 291</dd>
228<dd> 292<dd>
229<p><strong>rxvt-unicode</strong> makes a best-effort try at finding a replacement 293<p><strong>rxvt-unicode</strong> makes a best-effort try at finding a replacement
230font. Often the result is fine, but sometimes the chosen font looks 294font. Often the result is fine, but sometimes the chosen font looks
231bad. Many fonts have totally strange characters that don't resemble the 295bad/ugly/wrong. Some fonts have totally strange characters that don't
232correct glyph at all, and rxvt-unicode lacks the artificial intelligence 296resemble the correct glyph at all, and rxvt-unicode lacks the artificial
233to detect that a specific glyph is wrong: it has to believe the font that 297intelligence to detect that a specific glyph is wrong: it has to believe
234the characters it contains indeed look correct.</p> 298the font that the characters it claims to contain indeed look correct.</p>
235</dd> 299</dd>
236<dd> 300<dd>
237<p>In that case, select a font of your taste and add it to the font list, 301<p>In that case, select a font of your taste and add it to the font list,
238e.g.:</p> 302e.g.:</p>
239</dd> 303</dd>
246font. If the base font does not contain the character, it will go to the 310font. If the base font does not contain the character, it will go to the
247next font, and so on. Specifying your own fonts will also speed up this 311next font, and so on. Specifying your own fonts will also speed up this
248search and use less resources within rxvt-unicode and the X-server.</p> 312search and use less resources within rxvt-unicode and the X-server.</p>
249</dd> 313</dd>
250<dd> 314<dd>
251<p>The only limitation is that all the fonts must not be larger than the base 315<p>The only limitation is that none of the fonts may be larger than the base
252font, as the base font defines the principal cell size, which must be the 316font, as the base font defines the terminal character cell size, which
253same due to the way terminals work.</p> 317must be the same due to the way terminals work.</p>
254</dd> 318</dd>
255<p></p> 319<p></p>
256<dt><strong><a name="item_why_do_some_chinese_characters_look_so_different_t">Why do some chinese characters look so different than others?</a></strong><br /> 320<dt><strong><a name="item_why_do_some_chinese_characters_look_so_different_t">Why do some chinese characters look so different than others?</a></strong><br />
257</dt> 321</dt>
258<dd> 322<dd>
259This is because there is a difference between script and language -- 323This is because there is a difference between script and language --
260rxvt-unicode does not know which language the text that is output 324rxvt-unicode does not know which language the text that is output is,
261is, as it only knows the unicode character codes. If rxvt-unicode 325as it only knows the unicode character codes. If rxvt-unicode first
262first sees a japanese character, it might choose a japanese font for 326sees a japanese/chinese character, it might choose a japanese font for
263it. Subsequent japanese characters will take that font. Now, many chinese 327display. Subsequent japanese characters will use that font. Now, many
264characters aren't represented in japanese fonts, so when the first 328chinese characters aren't represented in japanese fonts, so when the first
265non-japanese character comes up, rxvt-unicode will look for a chinese font 329non-japanese character comes up, rxvt-unicode will look for a chinese font
266-- unfortunately at this point, it will still use the japanese font for 330-- unfortunately at this point, it will still use the japanese font for
267japanese characters that are also chinese. 331chinese characters that are also in the japanese font.
268</dd> 332</dd>
269<dd> 333<dd>
270<p>The workaround is easy: just tag a chinese font at the end of your font 334<p>The workaround is easy: just tag a chinese font at the end of your font
271list (see the previous question). The key is to view the font list as 335list (see the previous question). The key is to view the font list as
272a preference list: If you expect more japanese, list a japanese font 336a preference list: If you expect more japanese, list a japanese font
273first. If you expect more chinese, put a chinese font first.</p> 337first. If you expect more chinese, put a chinese font first.</p>
274</dd> 338</dd>
275<dd> 339<dd>
276<p>In the future it might be possible to switch preferences at runtime (the 340<p>In the future it might be possible to switch language preferences at
277internal data structure has no problem with using different fonts for 341runtime (the internal data structure has no problem with using different
278the same character at the same time, but no interface for this has been 342fonts for the same character at the same time, but no interface for this
279designed yet).</p> 343has been designed yet).</p>
344</dd>
345<dd>
346<p>Until then, you might get away with switching fonts at runtime (see <a href="#can_i_switch_the_fonts_at_runtime">Can I switch the fonts at runtime?</a> later in this document).</p>
280</dd> 347</dd>
281<p></p> 348<p></p>
282<dt><strong><a name="item_why_does_rxvt_2dunicode_sometimes_leave_pixel_drop">Why does rxvt-unicode sometimes leave pixel droppings?</a></strong><br /> 349<dt><strong><a name="item_why_does_rxvt_2dunicode_sometimes_leave_pixel_drop">Why does rxvt-unicode sometimes leave pixel droppings?</a></strong><br />
283</dt> 350</dt>
284<dd> 351<dd>
332</dd> 399</dd>
333<p></p> 400<p></p>
334<dt><strong><a name="item_how_can_i_keep_rxvt_2dunicode_from_using_reverse_v">How can I keep rxvt-unicode from using reverse video so much?</a></strong><br /> 401<dt><strong><a name="item_how_can_i_keep_rxvt_2dunicode_from_using_reverse_v">How can I keep rxvt-unicode from using reverse video so much?</a></strong><br />
335</dt> 402</dt>
336<dd> 403<dd>
337First of all, make sure you are running with the right terminfo 404First of all, make sure you are running with the right terminal settings
338(<code>urxvt</code>), which will get rid of most of these effects. Then make sure 405(<code>TERM=rxvt-unicode</code>), which will get rid of most of these effects. Then
339you have specified colours for italic and bold, as otherwise rxvt-unicode 406make sure you have specified colours for italic and bold, as otherwise
340might use reverse video to simulate the effect: 407rxvt-unicode might use reverse video to simulate the effect:
341</dd>
342<dd> 408</dd>
409<dd>
343<pre> 410<pre>
344 URxvt*colorBD: white 411 URxvt.colorBD: white
345 URxvt*colorIT: green</pre> 412 URxvt.colorIT: green</pre>
346</dd> 413</dd>
347<p></p> 414<p></p>
348<dt><strong><a name="item_colours">Some programs assume totally weird colours (red instead of blue), how can I fix that?</a></strong><br /> 415<dt><strong><a name="item_colours">Some programs assume totally weird colours (red instead of blue), how can I fix that?</a></strong><br />
349</dt> 416</dt>
350<dd> 417<dd>
351For some unexplainable reason, some programs (i.e. irssi) assume a very 418For some unexplainable reason, some rare programs assume a very weird
352weird colour palette when confronted with a terminal with more than the 419colour palette when confronted with a terminal with more than the standard
353standard 8 colours (rxvt-unicode supports 88). The right fix is, of 4208 colours (rxvt-unicode supports 88). The right fix is, of course, to fix
354course, to fix these programs not to assume non-ISO colours without very 421these programs not to assume non-ISO colours without very good reasons.
355good reasons.
356</dd>
357<dd> 422</dd>
423<dd>
358<p>In the meantime, you can either edit your <code>urxvt</code> terminfo definition to 424<p>In the meantime, you can either edit your <code>rxvt-unicode</code> terminfo
359only claim 8 colour support or use <code>TERM=rxvt</code>, which will fix colours 425definition to only claim 8 colour support or use <code>TERM=rxvt</code>, which will
360but keep you from using other rxvt-unicode features.</p> 426fix colours but keep you from using other rxvt-unicode features.</p>
361</dd> 427</dd>
362<p></p> 428<p></p>
363<dt><strong><a name="item_i_am_on_freebsd_and_rxvt_2dunicode_does_not_seem_t">I am on FreeBSD and rxvt-unicode does not seem to work at all.</a></strong><br /> 429<dt><strong><a name="item_i_am_on_freebsd_and_rxvt_2dunicode_does_not_seem_t">I am on FreeBSD and rxvt-unicode does not seem to work at all.</a></strong><br />
364</dt> 430</dt>
365<dd> 431<dd>
369<strong>wchar_t</strong> is represented as unicode. 435<strong>wchar_t</strong> is represented as unicode.
370</dd> 436</dd>
371<dd> 437<dd>
372<p>As you might have guessed, FreeBSD does neither define this symobl nor 438<p>As you might have guessed, FreeBSD does neither define this symobl nor
373does it support it. Instead, it uses it's own internal representation of 439does it support it. Instead, it uses it's own internal representation of
374<strong>wchar_t</strong>. This is, of course, completely legal.</p> 440<strong>wchar_t</strong>. This is, of course, completely fine with respect to standards.</p>
375</dd> 441</dd>
376<dd> 442<dd>
377<p>However, <code>__STDC_ISO_10646__</code> is the only sane way to support 443<p>However, <code>__STDC_ISO_10646__</code> is the only sane way to support
378multi-language apps in an OS, as using a locale-dependent (and 444multi-language apps in an OS, as using a locale-dependent (and
379non-standardized) representation of <strong>wchar_t</strong> makes it impossible to 445non-standardized) representation of <strong>wchar_t</strong> makes it impossible to
390encodings slightly different than the terminal emulator).</p> 456encodings slightly different than the terminal emulator).</p>
391</dd> 457</dd>
392<dd> 458<dd>
393<p>The rxvt-unicode author insists that the right way to fix this is in the 459<p>The rxvt-unicode author insists that the right way to fix this is in the
394system libraries once and for all, instead of forcing every app to carry 460system libraries once and for all, instead of forcing every app to carry
395complete replacements.</p> 461complete replacements for them :)</p>
396</dd> 462</dd>
397<p></p> 463<p></p>
398<dt><strong><a name="item_how_does_rxvt_2dunicode_determine_the_encoding_to_">How does rxvt-unicode determine the encoding to use?</a></strong><br /> 464<dt><strong><a name="item_how_does_rxvt_2dunicode_determine_the_encoding_to_">How does rxvt-unicode determine the encoding to use?</a></strong><br />
399</dt> 465</dt>
400<dt><strong><a name="item_is_there_an_option_to_switch_encodings_3f">Is there an option to switch encodings?</a></strong><br /> 466<dt><strong><a name="item_is_there_an_option_to_switch_encodings_3f">Is there an option to switch encodings?</a></strong><br />
405UTF-8 or any other encodings with respect to terminal I/O. 471UTF-8 or any other encodings with respect to terminal I/O.
406</dd> 472</dd>
407<dd> 473<dd>
408<p>The reasons is that there exists a perfectly fine mechanism for selecting 474<p>The reasons is that there exists a perfectly fine mechanism for selecting
409the encoding, doing I/O and (most important) communicating this to all 475the encoding, doing I/O and (most important) communicating this to all
410applications so everybody agrees on character properties such as width and 476applications so everybody agrees on character properties such as width
411code number. This mechanism is the <em>locale</em>.</p> 477and code number. This mechanism is the <em>locale</em>. Applications not using
478that info will have problems (for example, <code>xterm</code> gets the width of
479characters wrong as it uses it's own, locale-independent table under all
480locales).</p>
412</dd> 481</dd>
413<dd> 482<dd>
414<p>Rxvt-unicode uses the <code>LC_CTYPE</code> locale category to select encoding. All 483<p>Rxvt-unicode uses the <code>LC_CTYPE</code> locale category to select encoding. All
415programs doing the same (that is, most) will automatically agree in the 484programs doing the same (that is, most) will automatically agree in the
416interpretation of characters.</p> 485interpretation of characters.</p>
427(i.e. <code>de</code> or <code>german</code>) are also common.</p> 496(i.e. <code>de</code> or <code>german</code>) are also common.</p>
428</dd> 497</dd>
429<dd> 498<dd>
430<p>Rxvt-unicode ignores all other locale categories, and except for 499<p>Rxvt-unicode ignores all other locale categories, and except for
431the encoding, ignores country or language-specific settings, 500the encoding, ignores country or language-specific settings,
432i.e. <code>de_DE.UTF-8</code> and <code>ja_JP.UTF-8</code> are the same for rxvt-unicode.</p> 501i.e. <code>de_DE.UTF-8</code> and <code>ja_JP.UTF-8</code> are the normally same to
502rxvt-unicode.</p>
433</dd> 503</dd>
434<dd> 504<dd>
435<p>If you want to use a specific encoding you have to make sure you start 505<p>If you want to use a specific encoding you have to make sure you start
436rxvt-unicode with the correct <code>LC_CTYPE</code> category.</p> 506rxvt-unicode with the correct <code>LC_CTYPE</code> category.</p>
437</dd> 507</dd>
438<p></p> 508<p></p>
439<dt><strong><a name="item_can_i_switch_locales_at_runtime_3f">Can I switch locales at runtime?</a></strong><br /> 509<dt><strong><a name="item_can_i_switch_locales_at_runtime_3f">Can I switch locales at runtime?</a></strong><br />
440</dt> 510</dt>
441<dd> 511<dd>
442Yes, using an escape sequence. Try sth. like this, which sets 512Yes, using an escape sequence. Try something like this, which sets
443rxvt-unicode's idea of <code>LC_CTYPE</code>. 513rxvt-unicode's idea of <code>LC_CTYPE</code>.
444</dd> 514</dd>
445<dd> 515<dd>
446<pre> 516<pre>
447 printf '\e]701;%s\007' ja_JP.SJIS</pre> 517 printf '\e]701;%s\007' ja_JP.SJIS</pre>
448</dd> 518</dd>
449<dd> 519<dd>
450<p>See also the previous question.</p> 520<p>See also the previous answer.</p>
451</dd>
452<dd> 521</dd>
522<dd>
453<p>Sometimes this capability is rather handy when you want to work in one 523<p>Sometimes this capability is rather handy when you want to work in
454locale (e.g. <code>de_DE.UTF-8</code>) but some programs don't support UTF-8. For 524one locale (e.g. <code>de_DE.UTF-8</code>) but some programs don't support it
455example, I use this script to start <code>xjdic</code>, which first switches to a 525(e.g. UTF-8). For example, I use this script to start <code>xjdic</code>, which
456locale supported by xjdic and back later:</p> 526first switches to a locale supported by xjdic and back later:</p>
457</dd> 527</dd>
458<dd> 528<dd>
459<pre> 529<pre>
460 printf '\e]701;%s\007' ja_JP.SJIS 530 printf '\e]701;%s\007' ja_JP.SJIS
461 xjdic -js 531 xjdic -js
462 printf '\e]701;%s\007' de_DE.UTF-8</pre> 532 printf '\e]701;%s\007' de_DE.UTF-8</pre>
463</dd> 533</dd>
534<dd>
535<p>You can also use xterm's <code>luit</code> program, which usually works fine, except
536for some locales where character width differs between program- and
537rxvt-unicode-locales.</p>
538</dd>
464<p></p> 539<p></p>
465<dt><strong><a name="item_can_i_switch_the_fonts_at_runtime_3f">Can I switch the fonts at runtime?</a></strong><br /> 540<dt><strong><a name="item_can_i_switch_the_fonts_at_runtime_3f">Can I switch the fonts at runtime?</a></strong><br />
466</dt> 541</dt>
467<dd> 542<dd>
468Yes, using an escape sequence. Try sth. like this, which has the same 543Yes, using an escape sequence. Try something like this, which has the same
469effect as using the <code>-fn</code> switch, and takes effect immediately: 544effect as using the <code>-fn</code> switch, and takes effect immediately:
470</dd> 545</dd>
471<dd> 546<dd>
472<pre> 547<pre>
473 printf '\e]50;%s\007' &quot;9x15bold,xft:Kochi Gothic&quot;</pre> 548 printf '\e]50;%s\007' &quot;9x15bold,xft:Kochi Gothic&quot;</pre>
484<dt><strong><a name="item_why_do_italic_characters_look_as_if_clipped_3f">Why do italic characters look as if clipped?</a></strong><br /> 559<dt><strong><a name="item_why_do_italic_characters_look_as_if_clipped_3f">Why do italic characters look as if clipped?</a></strong><br />
485</dt> 560</dt>
486<dd> 561<dd>
487Many fonts have difficulties with italic characters and hinting. For 562Many fonts have difficulties with italic characters and hinting. For
488example, the otherwise very nicely hinted font <code>xft:Bitstream Vera Sans 563example, the otherwise very nicely hinted font <code>xft:Bitstream Vera Sans
489Mono</code> completely fails in it's italic face. A workaround is to enable 564Mono</code> completely fails in it's italic face. A workaround might be to
490freetype autohinting, i.e. like this: 565enable freetype autohinting, i.e. like this:
491</dd>
492<dd> 566</dd>
567<dd>
493<pre> 568<pre>
494 URxvt*italicFont: xft:Bitstream Vera Sans Mono:italic:autohint=true 569 URxvt.italicFont: xft:Bitstream Vera Sans Mono:italic:autohint=true
495 URxvt*boldItalicFont: xft:Bitstream Vera Sans Mono:bold:italic:autohint=true</pre> 570 URxvt.boldItalicFont: xft:Bitstream Vera Sans Mono:bold:italic:autohint=true</pre>
496</dd> 571</dd>
497<p></p> 572<p></p>
498<dt><strong><a name="item_my_input_method_wants__3csome_encoding_3e_but_i_wa">My input method wants &lt;some encoding&gt; but I want UTF-8, what can I do?</a></strong><br /> 573<dt><strong><a name="item_my_input_method_wants__3csome_encoding_3e_but_i_wa">My input method wants &lt;some encoding&gt; but I want UTF-8, what can I do?</a></strong><br />
499</dt> 574</dt>
500<dd> 575<dd>
510use your input method. Please note, however, that you will not be able to 585use your input method. Please note, however, that you will not be able to
511input characters outside <code>EUC-JP</code> in a normal way then, as your input 586input characters outside <code>EUC-JP</code> in a normal way then, as your input
512method limits you.</p> 587method limits you.</p>
513</dd> 588</dd>
514<p></p> 589<p></p>
590<dt><strong><a name="item_rxvt_2dunicode_crashes_when_the_x_input_method_cha">Rxvt-unicode crashes when the X Input Method changes or exits.</a></strong><br />
591</dt>
592<dd>
593Unfortunately, this is unavoidable, as the XIM protocol is racy by
594design. Applications can avoid some crashes at the expense of memory
595leaks, and Input Methods can avoid some crashes by careful ordering at
596exit time. <strong>kinput2</strong> (and derived input methods) generally succeeds,
597while <strong>SCIM</strong> (or similar input methods) fails. In the end, however,
598crashes cannot be completely avoided even if both sides cooperate.
599</dd>
600<dd>
601<p>So the only workaround is not to kill your Input Method Servers.</p>
602</dd>
603<p></p>
515<dt><strong><a name="item_rxvt_2dunicode_uses_gobs_of_memory_2c_how_can_i_re">Rxvt-unicode uses gobs of memory, how can I reduce that?</a></strong><br /> 604<dt><strong><a name="item_rxvt_2dunicode_uses_gobs_of_memory_2c_how_can_i_re">Rxvt-unicode uses gobs of memory, how can I reduce that?</a></strong><br />
516</dt> 605</dt>
517<dd> 606<dd>
518Rxvt-unicode tries to obey the rule of not charging you for sth. you 607Rxvt-unicode tries to obey the rule of not charging you for something you
519don't use. One thing you should try is to configure out all settings that 608don't use. One thing you should try is to configure out all settings that
520you don't need, for example, Xft support is a resource hog by design, 609you don't need, for example, Xft support is a resource hog by design,
521when used. Compiling it out ensures that no Xft font will be loaded 610when used. Compiling it out ensures that no Xft font will be loaded
522accidentally when rxvt-unicode tries to find a font for your characters. 611accidentally when rxvt-unicode tries to find a font for your characters.
523</dd> 612</dd>
595<p>Here are values that are supposed to resemble a VGA screen, 684<p>Here are values that are supposed to resemble a VGA screen,
596including the murky brown that passes for low-intensity yellow:</p> 685including the murky brown that passes for low-intensity yellow:</p>
597</dd> 686</dd>
598<dd> 687<dd>
599<pre> 688<pre>
600 URxvt*color0: #000000 689 URxvt.color0: #000000
601 URxvt*color1: #A80000 690 URxvt.color1: #A80000
602 URxvt*color2: #00A800 691 URxvt.color2: #00A800
603 URxvt*color3: #A8A800 692 URxvt.color3: #A8A800
604 URxvt*color4: #0000A8 693 URxvt.color4: #0000A8
605 URxvt*color5: #A800A8 694 URxvt.color5: #A800A8
606 URxvt*color6: #00A8A8 695 URxvt.color6: #00A8A8
607 URxvt*color7: #A8A8A8</pre> 696 URxvt.color7: #A8A8A8</pre>
608</dd>
609<dd> 697</dd>
698<dd>
610<pre> 699<pre>
611 URxvt*color8: #000054 700 URxvt.color8: #000054
612 URxvt*color9: #FF0054 701 URxvt.color9: #FF0054
613 URxvt*color10: #00FF54 702 URxvt.color10: #00FF54
614 URxvt*color11: #FFFF54 703 URxvt.color11: #FFFF54
615 URxvt*color12: #0000FF 704 URxvt.color12: #0000FF
616 URxvt*color13: #FF00FF 705 URxvt.color13: #FF00FF
617 URxvt*color14: #00FFFF 706 URxvt.color14: #00FFFF
618 URxvt*color15: #FFFFFF</pre> 707 URxvt.color15: #FFFFFF</pre>
619</dd>
620<dd> 708</dd>
709<dd>
621<p>And here is a more complete set of non-standard colors described as 710<p>And here is a more complete set of non-standard colors described (not by
622``pretty girly'':</p> 711me) as ``pretty girly''.</p>
623</dd> 712</dd>
624<dd> 713<dd>
625<pre> 714<pre>
626 URxvt.cursorColor: #dc74d1 715 URxvt.cursorColor: #dc74d1
627 URxvt.pointerColor: #dc74d1 716 URxvt.pointerColor: #dc74d1
641 URxvt.color14: #73f7ff 730 URxvt.color14: #73f7ff
642 URxvt.color7: #e1dddd 731 URxvt.color7: #e1dddd
643 URxvt.color15: #e1dddd</pre> 732 URxvt.color15: #e1dddd</pre>
644</dd> 733</dd>
645<p></p> 734<p></p>
735<dt><strong><a name="item_how_can_i_start_rxvtd_in_a_race_2dfree_way_3f">How can I start rxvtd in a race-free way?</a></strong><br />
736</dt>
737<dd>
738Despite it's name, rxvtd is not a real daemon, but more like a
739server that answers rxvtc's requests, so it doesn't background
740itself.
741</dd>
742<dd>
743<p>To ensure rxvtd is listening on it's socket, you can use the
744following method to wait for the startup message before continuing:</p>
745</dd>
746<dd>
747<pre>
748 { rxvtd &amp; } | read</pre>
749</dd>
750<p></p>
646<dt><strong><a name="item_what_27s_with_the_strange_backspace_2fdelete_key_b">What's with the strange Backspace/Delete key behaviour?</a></strong><br /> 751<dt><strong><a name="item_what_27s_with_the_strange_backspace_2fdelete_key_b">What's with the strange Backspace/Delete key behaviour?</a></strong><br />
647</dt> 752</dt>
648<dd> 753<dd>
649Assuming that the physical Backspace key corresponds to the 754Assuming that the physical Backspace key corresponds to the
650BackSpace keysym (not likely for Linux ... see the following 755BackSpace keysym (not likely for Linux ... see the following
677 # use Backspace = ^? 782 # use Backspace = ^?
678 $ stty erase ^? 783 $ stty erase ^?
679 $ rxvt</pre> 784 $ rxvt</pre>
680</dd> 785</dd>
681<dd> 786<dd>
682<p>Toggle with ``ESC[36h'' / ``ESC[36l'' as documented in rxvt(7).</p> 787<p>Toggle with <code>ESC [ 36 h</code> / <code>ESC [ 36 l</code> as documented in rxvt(7).</p>
683</dd> 788</dd>
684<dd> 789<dd>
685<p>For an existing rxvt-unicode:</p> 790<p>For an existing rxvt-unicode:</p>
686</dd> 791</dd>
687<dd> 792<dd>
703</dd> 808</dd>
704<dd> 809<dd>
705<p>The Delete key is a another casualty of the ill-defined Backspace problem. 810<p>The Delete key is a another casualty of the ill-defined Backspace problem.
706To avoid confusion between the Backspace and Delete keys, the Delete 811To avoid confusion between the Backspace and Delete keys, the Delete
707key has been assigned an escape sequence to match the vt100 for Execute 812key has been assigned an escape sequence to match the vt100 for Execute
708(ESC[3~) and is in the supplied termcap/terminfo.</p> 813(<code>ESC [ 3 ~</code>) and is in the supplied termcap/terminfo.</p>
709</dd> 814</dd>
710<dd> 815<dd>
711<p>Some other Backspace problems:</p> 816<p>Some other Backspace problems:</p>
712</dd> 817</dd>
713<dd> 818<dd>
722<dt><strong><a name="item_i_don_27t_like_the_key_2dbindings_2e_how_do_i_chan">I don't like the key-bindings. How do I change them?</a></strong><br /> 827<dt><strong><a name="item_i_don_27t_like_the_key_2dbindings_2e_how_do_i_chan">I don't like the key-bindings. How do I change them?</a></strong><br />
723</dt> 828</dt>
724<dd> 829<dd>
725There are some compile-time selections available via configure. Unless 830There are some compile-time selections available via configure. Unless
726you have run ``configure'' with the <a href="#item__2d_2ddisable_2dresources"><code>--disable-resources</code></a> option you can 831you have run ``configure'' with the <a href="#item__2d_2ddisable_2dresources"><code>--disable-resources</code></a> option you can
727use the `keysym' resource to alter the keystrings associated with keysym 832use the `keysym' resource to alter the keystrings associated with keysyms.
7280xFF00 - 0xFFFF (function, cursor keys, etc).
729</dd>
730<dd> 833</dd>
731<p>Here's an example for a tn3270 session started using `rxvt -name tn3270'</p>
732</dd> 834<dd>
835<p>Here's an example for a URxvt session started using <code>rxvt -name URxvt</code></p>
733<dd> 836</dd>
734<pre>
735 !# ----- special uses ------:
736 ! tn3270 login, remap function and arrow keys.
737 tn3270*font: *clean-bold-*-*--15-*</pre>
738</dd> 837<dd>
838<pre>
839 URxvt.keysym.Home: \033[1~
840 URxvt.keysym.End: \033[4~
841 URxvt.keysym.C-apostrophe: \033&lt;C-'&gt;
842 URxvt.keysym.C-slash: \033&lt;C-/&gt;
843 URxvt.keysym.C-semicolon: \033&lt;C-;&gt;
844 URxvt.keysym.C-grave: \033&lt;C-`&gt;
845 URxvt.keysym.C-comma: \033&lt;C-,&gt;
846 URxvt.keysym.C-period: \033&lt;C-.&gt;
847 URxvt.keysym.C-0x60: \033&lt;C-`&gt;
848 URxvt.keysym.C-Tab: \033&lt;C-Tab&gt;
849 URxvt.keysym.C-Return: \033&lt;C-Return&gt;
850 URxvt.keysym.S-Return: \033&lt;S-Return&gt;
851 URxvt.keysym.S-space: \033&lt;S-Space&gt;
852 URxvt.keysym.M-Up: \033&lt;M-Up&gt;
853 URxvt.keysym.M-Down: \033&lt;M-Down&gt;
854 URxvt.keysym.M-Left: \033&lt;M-Left&gt;
855 URxvt.keysym.M-Right: \033&lt;M-Right&gt;
856 URxvt.keysym.M-C-0: list \033&lt;M-C- 0123456789 &gt;
857 URxvt.keysym.M-C-a: list \033&lt;M-C- abcdefghijklmnopqrstuvwxyz &gt;
858 URxvt.keysym.F12: command:\033]701;zh_CN.GBK\007</pre>
739<dd> 859</dd>
740<pre>
741 ! keysym - used by rxvt only
742 ! Delete - ^D
743 tn3270*keysym.0xFFFF: \004</pre>
744</dd> 860<dd>
745<dd> 861<p>See some more examples in the documentation for the <strong>keysym</strong> resource.</p>
746<pre>
747 ! Home - ^A
748 tn3270*keysym.0xFF50: \001
749 ! Left - ^B
750 tn3270*keysym.0xFF51: \002
751 ! Up - ^P
752 tn3270*keysym.0xFF52: \020
753 ! Right - ^F
754 tn3270*keysym.0xFF53: \006
755 ! Down - ^N
756 tn3270*keysym.0xFF54: \016
757 ! End - ^E
758 tn3270*keysym.0xFF57: \005</pre>
759</dd>
760<dd>
761<pre>
762 ! F1 - F12
763 tn3270*keysym.0xFFBE: \e1
764 tn3270*keysym.0xFFBF: \e2
765 tn3270*keysym.0xFFC0: \e3
766 tn3270*keysym.0xFFC1: \e4
767 tn3270*keysym.0xFFC2: \e5
768 tn3270*keysym.0xFFC3: \e6
769 tn3270*keysym.0xFFC4: \e7
770 tn3270*keysym.0xFFC5: \e8
771 tn3270*keysym.0xFFC6: \e9
772 tn3270*keysym.0xFFC7: \e0
773 tn3270*keysym.0xFFC8: \e-
774 tn3270*keysym.0xFFC9: \e=</pre>
775</dd>
776<dd>
777<pre>
778 ! map Prior/Next to F7/F8
779 tn3270*keysym.0xFF55: \e7
780 tn3270*keysym.0xFF56: \e8</pre>
781</dd> 862</dd>
782<p></p> 863<p></p>
783<dt><strong><a name="item_i_27m_using_keyboard_model_xxx_that_has_extra_prio">I'm using keyboard model XXX that has extra Prior/Next/Insert keys. 864<dt><strong><a name="item_i_27m_using_keyboard_model_xxx_that_has_extra_prio">I'm using keyboard model XXX that has extra Prior/Next/Insert keys.
784How do I make use of them? For example, the Sun Keyboard type 4 865How do I make use of them? For example, the Sun Keyboard type 4
785has the following mappings that rxvt-unicode doesn't recognize.</a></strong><br /> 866has the following mappings that rxvt-unicode doesn't recognize.</a></strong><br />
792 F29 == Prior 873 F29 == Prior
793 F33 == End 874 F33 == End
794 F35 == Next</pre> 875 F35 == Next</pre>
795</dd> 876</dd>
796<dd> 877<dd>
797<p>Rather than have rxvt-unicode try to accommodate all the various possible keyboard 878<p>Rather than have rxvt-unicode try to accommodate all the various possible
798mappings, it is better to use `xmodmap' to remap the keys as required for 879keyboard mappings, it is better to use `xmodmap' to remap the keys as
799your particular machine.</p> 880required for your particular machine.</p>
800</dd> 881</dd>
801<dt><strong><a name="item_how_do_i_distinguish_if_i_27m_running_rxvt_2dunico">How do I distinguish if I'm running rxvt-unicode or a regular xterm? 882<dt><strong><a name="item_how_do_i_distinguish_wether_i_27m_running_rxvt_2du">How do I distinguish wether I'm running rxvt-unicode or a regular xterm?
802I need this to decide about setting colors etc.</a></strong><br /> 883I need this to decide about setting colors etc.</a></strong><br />
803</dt> 884</dt>
804<dd> 885<dd>
805rxvt and rxvt-unicode always export the variable ``COLORTERM'', so you can 886rxvt and rxvt-unicode always export the variable ``COLORTERM'', so you can
806check and see if that is set. Note that several programs, JED, slrn, 887check and see if that is set. Note that several programs, JED, slrn,
855</dd> 936</dd>
856<p></p></dl> 937<p></p></dl>
857<p> 938<p>
858</p> 939</p>
859<hr /> 940<hr />
860<h1><a name="synopsis">SYNOPSIS</a></h1> 941<h1><a name="rxvt_technical_reference">RXVT TECHNICAL REFERENCE</a></h1>
861<pre>
862 # set a new font set
863 printf '\33]50;%s\007' 9x15,xft:Kochi&quot; Mincho&quot;</pre>
864<pre>
865 # change the locale and tell rxvt-unicode about it
866 export LC_CTYPE=ja_JP.EUC-JP; printf &quot;\33]701;$LC_CTYPE\007&quot;</pre>
867<pre>
868 # set window title
869 printf '\33]2;%s\007' &quot;new window title&quot;</pre>
870<p> 942<p>
871</p> 943</p>
872<hr /> 944<hr />
873<h1><a name="description">DESCRIPTION</a></h1> 945<h1><a name="description">DESCRIPTION</a></h1>
874<p>The rest of this document describes various technical aspects of 946<p>The rest of this document describes various technical aspects of
876followed by menu and pixmap support and last by a description of all 948followed by menu and pixmap support and last by a description of all
877features selectable at <code>configure</code> time.</p> 949features selectable at <code>configure</code> time.</p>
878<p> 950<p>
879</p> 951</p>
880<hr /> 952<hr />
881<h1><a name="rxvt_technical_reference">RXVT TECHNICAL REFERENCE</a></h1>
882<p>
883</p>
884<hr />
885<h1><a name="definitions">Definitions</a></h1> 953<h1><a name="definitions">Definitions</a></h1>
886<dl> 954<dl>
887<dt><strong><a name="item_c"><strong><code>c</code> </strong>&gt;</a></strong><br /> 955<dt><strong><a name="item_c"><strong><code>c</code> </strong>&gt;</a></strong><br />
888</dt> 956</dt>
889<dd> 957<dd>
1069</dd> 1137</dd>
1070<p></p> 1138<p></p>
1071<dt><strong><a name="item_esc_z"><strong><code>ESC Z</code> </strong>&gt;</a></strong><br /> 1139<dt><strong><a name="item_esc_z"><strong><code>ESC Z</code> </strong>&gt;</a></strong><br />
1072</dt> 1140</dt>
1073<dd> 1141<dd>
1074Obsolete form of returns: <strong><code>ESC[?1;2C</code> </strong>&gt; <em>rxvt-unicode compile-time option</em> 1142Obsolete form of returns: <strong><code>ESC [ ? 1 ; 2 C</code> </strong>&gt; <em>rxvt-unicode compile-time option</em>
1075</dd> 1143</dd>
1076<p></p> 1144<p></p>
1077<dt><strong><a name="item_esc_c"><strong><code>ESC c</code> </strong>&gt;</a></strong><br /> 1145<dt><strong><a name="item_esc_c"><strong><code>ESC c</code> </strong>&gt;</a></strong><br />
1078</dt> 1146</dt>
1079<dd> 1147<dd>
1090</dt> 1158</dt>
1091<dd> 1159<dd>
1092Invoke the G3 Character Set (LS3) 1160Invoke the G3 Character Set (LS3)
1093</dd> 1161</dd>
1094<p></p> 1162<p></p>
1095<dt><strong><strong><code>ESC</code> ( C</strong> &gt;&gt;</strong><br /> 1163<dt><strong><strong><code>ESC ( C</code> </strong>&gt;</strong><br />
1096</dt> 1164</dt>
1097<dd> 1165<dd>
1098Designate G0 Character Set (ISO 2022), see below for values of <a href="#item_c"><code>C</code></a>. 1166Designate G0 Character Set (ISO 2022), see below for values of <a href="#item_c"><code>C</code></a>.
1099</dd> 1167</dd>
1100<p></p> 1168<p></p>
1101<dt><strong><a name="item_esc__29_c_3e"><strong><a href="#item_esc"><code>ESC</code></a> ) C</strong> &gt;&gt;</a></strong><br /> 1169<dt><strong><a name="item_esc__29_c"><strong><code>ESC ) C</code> </strong>&gt;</a></strong><br />
1102</dt> 1170</dt>
1103<dd> 1171<dd>
1104Designate G1 Character Set (ISO 2022), see below for values of <a href="#item_c"><code>C</code></a>. 1172Designate G1 Character Set (ISO 2022), see below for values of <a href="#item_c"><code>C</code></a>.
1105</dd> 1173</dd>
1106<p></p> 1174<p></p>
1281<dt><strong><a name="item_esc__5b_ps_c"><strong><code>ESC [ Ps c</code> </strong>&gt;</a></strong><br /> 1349<dt><strong><a name="item_esc__5b_ps_c"><strong><code>ESC [ Ps c</code> </strong>&gt;</a></strong><br />
1282</dt> 1350</dt>
1283<dd> 1351<dd>
1284Send Device Attributes (DA) 1352Send Device Attributes (DA)
1285<strong><code>Ps = 0</code> </strong>&gt; (or omitted): request attributes from terminal 1353<strong><code>Ps = 0</code> </strong>&gt; (or omitted): request attributes from terminal
1286returns: <strong><code>ESC[?1;2c</code> </strong>&gt; (``I am a VT100 with Advanced Video 1354returns: <strong><code>ESC [ ? 1 ; 2 c</code> </strong>&gt; (``I am a VT100 with Advanced Video
1287Option'') 1355Option'')
1288</dd> 1356</dd>
1289<p></p> 1357<p></p>
1290<dt><strong><a name="item_esc__5b_ps_d"><strong><code>ESC [ Ps d</code> </strong>&gt;</a></strong><br /> 1358<dt><strong><a name="item_esc__5b_ps_d"><strong><code>ESC [ Ps d</code> </strong>&gt;</a></strong><br />
1291</dt> 1359</dt>
1403</dt> 1471</dt>
1404<dd> 1472<dd>
1405Save Cursor (SC) 1473Save Cursor (SC)
1406</dd> 1474</dd>
1407<p></p> 1475<p></p>
1476<dt><strong><a name="item_esc__5b_ps_3bpt_t"><strong><code>ESC [ Ps;Pt t</code> </strong>&gt;</a></strong><br />
1477</dt>
1478<dd>
1479Window Operations
1480</dd>
1481<table>
1482<tr><td>Ps = 1</td><td>Deiconify (map) window</td></tr>
1483<tr><td>Ps = 2</td><td>Iconify window</td></tr>
1484<tr><td>Ps = 3</td><td>ESC [ 3 ; X ; Y t Move window to (X|Y)</td></tr>
1485<tr><td>Ps = 4</td><td>ESC [ 4 ; H ; W t Resize to WxH pixels</td></tr>
1486<tr><td>Ps = 5</td><td>Raise window</td></tr>
1487<tr><td>Ps = 6</td><td>Lower window</td></tr>
1488<tr><td>Ps = 7</td><td>Refresh screen once</td></tr>
1489<tr><td>Ps = 8</td><td>ESC [ 8 ; R ; C t Resize to R rows and C columns</td></tr>
1490<tr><td>Ps = 11</td><td>Report window state (responds with Ps = 1 or Ps = 2)</td></tr>
1491<tr><td>Ps = 13</td><td>Report window position (responds with Ps = 3)</td></tr>
1492<tr><td>Ps = 14</td><td>Report window pixel size (responds with Ps = 4)</td></tr>
1493<tr><td>Ps = 18</td><td>Report window text size (responds with Ps = 7)</td></tr>
1494<tr><td>Ps = 19</td><td>Currently the same as Ps = 18, but responds with Ps = 9</td></tr>
1495<tr><td>Ps = 20</td><td>Reports icon label (ESC ] L NAME \234)</td></tr>
1496<tr><td>Ps = 21</td><td>Reports window title (ESC ] l NAME \234)</td></tr>
1497<tr><td>Ps = 24..</td><td>Set window height to Ps rows</td></tr>
1498</table><p></p>
1499<dt><strong><a name="item_esc__5b_u"><strong><code>ESC [ u</code> </strong>&gt;</a></strong><br />
1500</dt>
1501<dd>
1502Restore Cursor
1503</dd>
1504<p></p>
1408<dt><strong><a name="item_esc__5b_ps_x"><strong><code>ESC [ Ps x</code> </strong>&gt;</a></strong><br /> 1505<dt><strong><a name="item_esc__5b_ps_x"><strong><code>ESC [ Ps x</code> </strong>&gt;</a></strong><br />
1409</dt> 1506</dt>
1410<dd> 1507<dd>
1411Request Terminal Parameters (DECREQTPARM) 1508Request Terminal Parameters (DECREQTPARM)
1412</dd>
1413<p></p>
1414<dt><strong><a name="item_esc__5b_u"><strong><code>ESC [ u</code> </strong>&gt;</a></strong><br />
1415</dt>
1416<dd>
1417Restore Cursor
1418</dd> 1509</dd>
1419<p></p></dl> 1510<p></p></dl>
1420<p></p> 1511<p></p>
1421<p> 1512<p>
1422</p> 1513</p>
1687<dt><strong><a name="item__5btitle_3a_2bstring_5d"><strong>[title:+<em>string</em>] </strong>&gt;</a></strong><br /> 1778<dt><strong><a name="item__5btitle_3a_2bstring_5d"><strong>[title:+<em>string</em>] </strong>&gt;</a></strong><br />
1688</dt> 1779</dt>
1689<dd> 1780<dd>
1690set the current menuBar's title to <em>string</em>, which may contain the 1781set the current menuBar's title to <em>string</em>, which may contain the
1691following format specifiers: 1782following format specifiers:
1692<strong>%%</strong> : literal <strong>%</strong> character 1783</dd>
1693<strong>%n</strong> : rxvt name (as per the <strong>-name</strong> command-line option) 1784<dd>
1694<strong>%v</strong> : rxvt version 1785<pre>
1786 B&lt;%n&gt; rxvt name (as per the B&lt;-name&gt; command-line option)
1787 B&lt;%v&gt; rxvt version
1788 B&lt;%%&gt; literal B&lt;%&gt; character</pre>
1695</dd> 1789</dd>
1696<p></p> 1790<p></p>
1697<dt><strong><a name="item__5bdone_5d"><strong>[done]</strong></a></strong><br /> 1791<dt><strong><a name="item__5bdone_5d"><strong>[done]</strong></a></strong><br />
1698</dt> 1792</dt>
1699<dd> 1793<dd>
1891non-+<strong>NUL</strong> characters, the leading <strong>NUL</strong> is stripped off and the 1985non-+<strong>NUL</strong> characters, the leading <strong>NUL</strong> is stripped off and the
1892balance is sent back to rxvt.</p> 1986balance is sent back to rxvt.</p>
1893<p>As a convenience for the many Emacs-type editors, <em>action</em> may start 1987<p>As a convenience for the many Emacs-type editors, <em>action</em> may start
1894with <strong>M-</strong> (eg, <strong>M-$</strong> is equivalent to <strong>\E$</strong>) and a <strong>CR</strong> will be 1988with <strong>M-</strong> (eg, <strong>M-$</strong> is equivalent to <strong>\E$</strong>) and a <strong>CR</strong> will be
1895appended if missed from <strong>M-x</strong> commands.</p> 1989appended if missed from <strong>M-x</strong> commands.</p>
1896<p>As a convenience for issuing XTerm <strong>ESC]</strong> sequences from a menubar (or 1990<p>As a convenience for issuing XTerm <strong>ESC ]</strong> sequences from a menubar (or
1897quick arrow), a <strong>BEL</strong> (<strong>^G</strong>) will be appended if needed.</p> 1991quick arrow), a <strong>BEL</strong> (<strong>^G</strong>) will be appended if needed.</p>
1898<dl> 1992<dl>
1899<dt><strong><a name="item_for_example_2c">For example,</a></strong><br /> 1993<dt><strong><a name="item_for_example_2c">For example,</a></strong><br />
1900</dt> 1994</dt>
1901<dd> 1995<dd>
2482where accents are encoded as seperate unicode characters. This is 2576where accents are encoded as seperate unicode characters. This is
2483done by using precomposited characters when available or creating 2577done by using precomposited characters when available or creating
2484new pseudo-characters when no precomposed form exists. 2578new pseudo-characters when no precomposed form exists.
2485</dd> 2579</dd>
2486<dd> 2580<dd>
2487<p>Without --enable-unicode3, the number of additional precomposed 2581<p>Without --enable-unicode3, the number of additional precomposed characters
2488characters is rather limited (2048, if this is full, rxvt will use the 2582is rather limited (2048, if this is full, rxvt-unicode will use the
2489private use area, extending the number of combinations to 8448). With 2583private use area, extending the number of combinations to 8448). With
2490--enable-unicode3, no practical limit exists. This will also enable 2584--enable-unicode3, no practical limit exists.</p>
2491storage of characters &gt;65535.</p> 2585</dd>
2586<dd>
2587<p>This option will also enable storage (but not display) of characters
2588beyond plane 0 (&gt;65535) when --enable-unicode3 was not specified.</p>
2492</dd> 2589</dd>
2493<dd> 2590<dd>
2494<p>The combining table also contains entries for arabic presentation forms, 2591<p>The combining table also contains entries for arabic presentation forms,
2495but these are not currently used. Bug me if you want these to be used.</p> 2592but these are not currently used. Bug me if you want these to be used (and
2593tell me how these are to be used...).</p>
2496</dd> 2594</dd>
2497<p></p> 2595<p></p>
2498<dt><strong><a name="item_fallback">--enable-fallback(=CLASS)</a></strong><br /> 2596<dt><strong><a name="item_fallback">--enable-fallback(=CLASS)</a></strong><br />
2499</dt> 2597</dt>
2500<dd> 2598<dd>
2634<p></p> 2732<p></p>
2635<dt><strong><a name="item__2d_2denable_2dxgetdefault">--enable-xgetdefault</a></strong><br /> 2733<dt><strong><a name="item__2d_2denable_2dxgetdefault">--enable-xgetdefault</a></strong><br />
2636</dt> 2734</dt>
2637<dd> 2735<dd>
2638Make resources checking via <code>XGetDefault()</code> instead of our small 2736Make resources checking via <code>XGetDefault()</code> instead of our small
2639version which only checks ~/.Xdefaults, or if that doesn't exist 2737version which only checks ~/.Xdefaults, or if that doesn't exist then
2640then ~/.Xresources. 2738~/.Xresources.
2739</dd>
2740<dd>
2741<p>Please note that nowadays, things like XIM will automatically pull in and
2742use the full X resource manager, so the overhead of using it might be very
2743small, if nonexistant.</p>
2641</dd> 2744</dd>
2642<p></p> 2745<p></p>
2643<dt><strong><a name="item__2d_2denable_2dstrings">--enable-strings</a></strong><br /> 2746<dt><strong><a name="item__2d_2denable_2dstrings">--enable-strings</a></strong><br />
2644</dt> 2747</dt>
2645<dd> 2748<dd>
2661<dd> 2764<dd>
2662Add support for many small features that are not essential but nice to 2765Add support for many small features that are not essential but nice to
2663have. Normally you want this, but for very small binaries you may want to 2766have. Normally you want this, but for very small binaries you may want to
2664disable this. 2767disable this.
2665</dd> 2768</dd>
2769<dd>
2770<p>A non-exhaustive list of features enabled by <a href="#item__2d_2denable_2dfrills"><code>--enable-frills</code></a> (possibly
2771in combination with other switches) is:</p>
2772</dd>
2773<dd>
2774<pre>
2775 MWM-hints
2776 EWMH-hints (pid, utf8 names) and protocols (ping)
2777 seperate underline colour
2778 settable border widths and borderless switch
2779 settable extra linespacing
2780 iso-14755-2 and -3, and visual feedback
2781 backindex and forwardindex escape sequence
2782 window op and locale change escape sequences
2783 tripleclickwords
2784 settable insecure mode
2785 keysym remapping support
2786 -embed and -pty-fd options</pre>
2787</dd>
2666<p></p> 2788<p></p>
2667<dt><strong><a name="item__2d_2denable_2diso14755">--enable-iso14755</a></strong><br /> 2789<dt><strong><a name="item__2d_2denable_2diso14755">--enable-iso14755</a></strong><br />
2668</dt> 2790</dt>
2669<dd> 2791<dd>
2670Enable extended ISO 14755 support (see rxvt(1), or 2792Enable extended ISO 14755 support (see rxvt(1), or
2741</dd> 2863</dd>
2742<p></p> 2864<p></p>
2743<dt><strong><a name="item__2d_2dwith_2dname_3dname">--with-name=NAME</a></strong><br /> 2865<dt><strong><a name="item__2d_2dwith_2dname_3dname">--with-name=NAME</a></strong><br />
2744</dt> 2866</dt>
2745<dd> 2867<dd>
2746Set the basename for the installed binaries (default: urxvt, resulting in 2868Set the basename for the installed binaries (default: <code>urxvt</code>, resulting
2747urxvt, urxvtd etc.). Specify --with-name=rxvt to replace rxvt. 2869in <code>urxvt</code>, <code>urxvtd</code> etc.). Specify <code>--with-name=rxvt</code> to replace with
2870<code>rxvt</code>.
2748</dd> 2871</dd>
2749<p></p> 2872<p></p>
2750<dt><strong><a name="item__2d_2dwith_2dterm_3dname">--with-term=NAME</a></strong><br /> 2873<dt><strong><a name="item__2d_2dwith_2dterm_3dname">--with-term=NAME</a></strong><br />
2751</dt> 2874</dt>
2752<dd> 2875<dd>
2753Change the environmental variable for the terminal to NAME (default 2876Change the environmental variable for the terminal to NAME (default
2754``rxvt'') 2877<code>rxvt-unicode</code>)
2755</dd> 2878</dd>
2756<p></p> 2879<p></p>
2757<dt><strong><a name="item__2d_2dwith_2dterminfo_3dpath">--with-terminfo=PATH</a></strong><br /> 2880<dt><strong><a name="item__2d_2dwith_2dterminfo_3dpath">--with-terminfo=PATH</a></strong><br />
2758</dt> 2881</dt>
2759<dd> 2882<dd>

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines