*** empty log message ***
[dana/urxvt.git] / doc / rxvt.7.pod
1 =head1 RXVT TECHNICAL REFERENCE
2
3 =head1 Definitions
4
5 =over 4
6
7 =item B<< C<c> >>
8
9 The literal character c.
10
11 =item B<< C<C> >>
12
13 A single (required) character.
14
15 =item B<< C<Ps> >>
16
17 A single (usually optional) numeric parameter, composed of one or more
18 digits.
19
20 =item B<< C<Pm> >>
21
22 A multiple numeric parameter composed of any number of single numeric
23 parameters, separated by C<;> character(s).
24
25 =item B<< C<Pt> >>
26
27 A text parameter composed of printable characters.
28
29 =back
30
31 =head1 Values
32
33 =over 4
34
35 =item B<< C<ENQ> >>
36
37 Enquiry (Ctrl-E) = Send Device Attributes (DA)
38 request attributes from terminal. See B<< C<ESC [ Ps c> >>.
39
40 =item B<< C<BEL> >>
41
42 Bell (Ctrl-G)
43
44 =item B<< C<BS> >>
45
46 Backspace (Ctrl-H)
47
48 =item B<< C<TAB> >>
49
50 Horizontal Tab (HT) (Ctrl-I)
51
52 =item B<< C<LF> >>
53
54 Line Feed or New Line (NL) (Ctrl-J)
55
56 =item B<< C<VT> >>
57
58 Vertical Tab (Ctrl-K) same as B<< C<LF> >>
59
60 =item B<< C<FF> >>
61
62 Form Feed or New Page (NP) (Ctrl-L) same as B<< C<LF> >>
63
64 =item B<< C<CR> >>
65
66 Carriage Return (Ctrl-M)
67
68 =item B<< C<SO> >>
69
70 Shift Out (Ctrl-N), invokes the G1 character set.
71 Switch to Alternate Character Set
72
73 =item B<< C<SI> >>
74
75 Shift In (Ctrl-O), invokes the G0 character set (the default).
76 Switch to Standard Character Set
77
78 =item B<< C<SPC> >>
79
80 Space Character
81
82 =back
83
84 =head1 Escape Sequences
85
86 =over 4
87
88 =item B<< C<ESC # 8> >>
89
90 DEC Screen Alignment Test (DECALN)
91
92 =item B<< C<ESC 7> >>
93
94 Save Cursor (SC)
95
96 =item B<< C<ESC 8> >>
97
98 Restore Cursor
99
100 =item B<< C<ESC => >>
101
102 Application Keypad (SMKX). See also next sequence.
103
104 =item B<<< C<< ESC >> >>>
105
106 Normal Keypad (RMKX)
107
108 B<Note:> If the numeric keypad is activated, eg, B<Num_Lock> has been
109 pressed, numbers or control functions are generated by the numeric keypad
110 (see Key Codes).
111
112 =item B<< C<ESC D> >>
113
114 Index (IND)
115
116 =item B<< C<ESC E> >>
117
118 Next Line (NEL)
119
120 =item B<< C<ESC H> >>
121
122 Tab Set (HTS)
123
124 =item B<< C<ESC M> >>
125
126 Reverse Index (RI)
127
128 =item B<< C<ESC N> >>
129
130 Single Shift Select of G2 Character Set (SS2): affects next character
131 only I<unimplemented>
132
133 =item B<< C<ESC O> >>
134
135 Single Shift Select of G3 Character Set (SS3): affects next character
136 only I<unimplemented>
137
138 =item B<< C<ESC Z> >>
139
140 Obsolete form of returns: B<< C<ESC[?1;2C> >> I<rxvt-unicode compile-time option>
141
142 =item B<< C<ESC c> >>
143
144 Full reset (RIS)
145
146 =item B<< C<ESC n> >>
147
148 Invoke the G2 Character Set (LS2)
149
150 =item B<< C<ESC o> >>
151
152 Invoke the G3 Character Set (LS3)
153
154 =item B<< C<ESC>(C<C> >>
155
156 Designate G0 Character Set (ISO 2022), see below for values of C<C>.
157
158 =item B<< C<ESC>)C<C> >>
159
160 Designate G1 Character Set (ISO 2022), see below for values of C<C>.
161
162 =item B<< C<ESC * C> >>
163
164 Designate G2 Character Set (ISO 2022), see below for values of C<C>.
165
166 =item B<< C<ESC + C> >>
167
168 Designate G3 Character Set (ISO 2022), see below for values of C<C>.
169
170 =item B<< C<ESC $ C> >>
171
172 Designate Kanji Character Set
173
174 Where B<< C<C> >> is one of:
175
176 =begin table
177
178         C = C<0>        DEC Special Character and Line Drawing Set
179         C = C<A>        United Kingdom (UK)
180         C = C<B>        United States (USASCII)
181         C = C<< < >>    Multinational character set I<unimplemented>
182         C = C<5>        Finnish character set I<unimplemented>
183         C = C<C>        Finnish character set I<unimplemented>
184         C = C<K>        German character set I<unimplemented>
185
186 =end table
187
188 =back
189
190 X<CSI>
191
192 =head1 CSI (Command Sequence Introducer) Sequences
193
194 =over 4
195
196 =item B<< C<ESC [ Ps @> >>
197
198 Insert B<< C<Ps> >> (Blank) Character(s) [default: 1] (ICH)X<ESCOBPsA>
199
200 =item B<< C<ESC [ Ps A> >>
201
202 Cursor Up B<< C<Ps> >> Times [default: 1] (CUU)
203
204 =item B<< C<ESC [ Ps B> >>
205
206 Cursor Down B<< C<Ps> >> Times [default: 1] (CUD)X<ESCOBPsC>
207
208 =item B<< C<ESC [ Ps C> >>
209
210 Cursor Forward B<< C<Ps> >> Times [default: 1] (CUF)
211
212 =item B<< C<ESC [ Ps D> >>
213
214 Cursor Backward B<< C<Ps> >> Times [default: 1] (CUB)
215
216 =item B<< C<ESC [ Ps E> >>
217
218 Cursor Down B<< C<Ps> >> Times [default: 1] and to first column
219
220 =item B<< C<ESC [ Ps F> >>
221
222 Cursor Up B<< C<Ps> >> Times [default: 1] and to first columnX<ESCOBPsG>
223
224 =item B<< C<ESC [ Ps G> >>
225
226 Cursor to Column B<< C<Ps> >> (HPA)
227
228 =item B<< C<ESC [ Ps;Ps H> >>
229
230 Cursor Position [row;column] [default: 1;1] (CUP)
231
232 =item B<< C<ESC [ Ps I> >>
233
234 Move forward B<< C<Ps> >> tab stops [default: 1]
235
236 =item B<< C<ESC [ Ps J> >>
237
238 Erase in Display (ED)
239
240 =begin table
241
242         B<< C<Ps = 0> >>        Clear Below (default)
243         B<< C<Ps = 1> >>        Clear Above
244         B<< C<Ps = 2> >>        Clear All
245
246 =end table
247
248 =item B<< C<ESC [ Ps K> >>
249
250 Erase in Line (EL)
251
252 =begin table
253
254         B<< C<Ps = 0> >>        Clear to Right (default)
255         B<< C<Ps = 1> >>        Clear to Left
256         B<< C<Ps = 2> >>        Clear All
257
258 =end table
259
260 =item B<< C<ESC [ Ps L> >>
261
262 Insert B<< C<Ps> >> Line(s) [default: 1] (IL)
263
264 =item B<< C<ESC [ Ps M> >>
265
266 Delete B<< C<Ps> >> Line(s) [default: 1] (DL)
267
268 =item B<< C<ESC [ Ps P> >>
269
270 Delete B<< C<Ps> >> Character(s) [default: 1] (DCH)
271
272 =item B<< C<ESC [ Ps;Ps;Ps;Ps;Ps T> >>
273
274 Initiate . I<unimplemented> Parameters are
275 [func;startx;starty;firstrow;lastrow].
276
277 =item B<< C<ESC [ Ps W> >>
278
279 Tabulator functions
280
281 =begin table
282
283         B<< C<Ps = 0> >>        Tab Set (HTS)
284         B<< C<Ps = 2> >>        Tab Clear (TBC), Clear Current Column (default)
285         B<< C<Ps = 5> >>        Tab Clear (TBC), Clear All
286
287 =end table
288
289 =item B<< C<ESC [ Ps X> >>
290
291 Erase B<< C<Ps> >> Character(s) [default: 1] (ECH)
292
293 =item B<< C<ESC [ Ps Z> >>
294
295 Move backward B<< C<Ps> >> [default: 1] tab stops
296
297 =item B<< C<ESC [ Ps '> >>
298
299 See B<< C<ESC [ Ps G> >>
300
301 =item B<< C<ESC [ Ps a> >>
302
303 See B<< C<ESC [ Ps C> >>
304
305 =item B<< C<ESC [ Ps c> >>
306
307 Send Device Attributes (DA)
308 B<< C<Ps = 0> >> (or omitted): request attributes from terminal
309 returns: B<< C<ESC[?1;2c> >> (``I am a VT100 with Advanced Video
310 Option'')
311
312 =item B<< C<ESC [ Ps d> >>
313
314 Cursor to Line B<< C<Ps> >> (VPA)
315
316 =item B<< C<ESC [ Ps e> >>
317
318 See B<< C<ESC [ Ps A> >>
319
320 =item B<< C<ESC [ Ps;Ps f> >>
321
322 Horizontal and Vertical Position [row;column] (HVP) [default: 1;1]
323
324 =item B<< C<ESC [ Ps g> >>
325
326 Tab Clear (TBC)
327
328 =begin table
329
330         B<< C<Ps = 0> >>        Clear Current Column (default)
331         B<< C<Ps = 3> >>        Clear All (TBC)
332
333 =end table
334
335 =item B<< C<ESC [ Ps i> >>
336
337 Printing
338
339 =begin table
340
341         B<< C<Ps = 4> >>        disable transparent print mode (MC4)
342         B<< C<Ps = 5> >>        enable transparent print mode (MC5) I<unimplemented>
343
344 =end table
345
346 =item B<< C<ESC [ Pm h> >>
347
348 Set Mode (SM). See next sequence for description of C<Pm>.
349
350 =item B<< C<ESC [ Pm l> >>
351
352 Reset Mode (RM)
353
354 =over 4
355
356 =item B<< C<Ps = 4> >>
357
358 =begin table
359
360         B<< C<h> >>     Insert Mode (SMIR)
361         B<< C<l> >>     Replace Mode (RMIR)
362
363 =end table
364
365 =item B<< C<Ps = 20> >> (partially implemented)
366
367 =begin table
368
369         B<< C<h> >>     Automatic Newline (LNM)
370         B<< C<l> >>     Normal Linefeed (LNM)
371
372 =end table
373
374 =back
375
376 =item B<< C<ESC [ Pm m> >>
377
378 Character Attributes (SGR)
379
380 =begin table
381
382         B<< C<Ps = 0> >>        Normal (default)
383         B<< C<Ps = 1 / 21> >>   On / Off Bold (bright fg)
384         B<< C<Ps = 3 / 23> >>   On / Off Italic (NYI)
385         B<< C<Ps = 4 / 24> >>   On / Off Underline
386         B<< C<Ps = 5 / 25> >>   On / Off Slow Blink (bright bg)
387         B<< C<Ps = 6 / 26> >>   On / Off Rapid Blink (bright bg)
388         B<< C<Ps = 7 / 27> >>   On / Off Invisible (NYI)
389         B<< C<Ps = 8 / 27> >>   On / Off Inverse
390         B<< C<Ps = 30 / 40> >>  fg/bg Black
391         B<< C<Ps = 31 / 41> >>  fg/bg Red
392         B<< C<Ps = 32 / 42> >>  fg/bg Green
393         B<< C<Ps = 33 / 43> >>  fg/bg Yellow
394         B<< C<Ps = 34 / 44> >>  fg/bg Blue
395         B<< C<Ps = 35 / 45> >>  fg/bg Magenta
396         B<< C<Ps = 36 / 46> >>  fg/bg Cyan
397         B<< C<Ps = 37 / 47> >>  fg/bg White
398         B<< C<Ps = 39 / 49> >>  fg/bg Default
399         B<< C<Ps = 90 / 100> >> fg/bg Bright Black
400         B<< C<Ps = 91 / 101> >> fg/bg Bright Red
401         B<< C<Ps = 92 / 102> >> fg/bg Bright Green
402         B<< C<Ps = 93 / 103> >> fg/bg Bright Yellow
403         B<< C<Ps = 94 / 104> >> fg/bg Bright Blue
404         B<< C<Ps = 95 / 105> >> fg/bg Bright Magenta
405         B<< C<Ps = 96 / 106> >> fg/bg Bright Cyan
406         B<< C<Ps = 97 / 107> >> fg/bg Bright White
407         B<< C<Ps = 99 / 109> >> fg/bg Bright Default
408
409 =end table
410
411 =item B<< C<ESC [ Ps n> >>
412
413 Device Status Report (DSR)
414
415 =begin table
416
417         B<< C<Ps = 5> >>        Status Report B<< C<ESC [ 0 n> >> (``OK'')
418         B<< C<Ps = 6> >>        Report Cursor Position (CPR) [row;column] as B<< C<ESC [ r ; c R> >>
419         B<< C<Ps = 7> >>        Request Display Name
420         B<< C<Ps = 8> >>        Request Version Number (place in window title)
421
422 =end table
423
424 =item B<< C<ESC [ Ps;Ps r> >>
425
426 Set Scrolling Region [top;bottom]
427 [default: full size of window] (CSR)
428
429 =item B<< C<ESC [ s> >>
430
431 Save Cursor (SC)
432
433 =item B<< C<ESC [ Ps x> >>
434
435 Request Terminal Parameters (DECREQTPARM)
436
437 =item B<< C<ESC [ u> >>
438
439 Restore Cursor
440
441 =back
442
443 X<PrivateModes>
444
445 =head1 DEC Private Modes
446
447 =over 4
448
449 =item B<< C<ESC [ ? Pm h> >>
450
451 DEC Private Mode Set (DECSET)
452
453 =item B<< C<ESC [ ? Pm l> >>
454
455 DEC Private Mode Reset (DECRST)
456
457 =item B<< C<ESC [ ? Pm r> >>
458
459 Restore previously saved DEC Private Mode Values.
460
461 =item B<< C<ESC [ ? Pm s> >>
462
463 Save DEC Private Mode Values.
464
465 =item B<< C<ESC [ ? Pm t> >>
466
467 Toggle DEC Private Mode Values (rxvt extension). I<where>
468
469 =over 4
470
471 =item B<< C<Ps = 1> >> (DECCKM)
472
473 =begin table
474
475         B<< C<h> >>     Application Cursor Keys
476         B<< C<l> >>     Normal Cursor Keys
477
478 =end table
479
480 =item B<< C<Ps = 2> >> (ANSI/VT52 mode)
481
482 =begin table
483
484         B<< C<h> >>     Enter VT52 mode
485         B<< C<l> >>     Enter VT52 mode
486
487 =end table
488
489 =item B<< C<Ps = 3> >>
490
491 =begin table
492
493         B<< C<h> >>     132 Column Mode (DECCOLM)
494         B<< C<l> >>     80 Column Mode (DECCOLM)
495
496 =end table
497
498 =item B<< C<Ps = 4> >>
499
500 =begin table
501
502         B<< C<h> >>     Smooth (Slow) Scroll (DECSCLM)
503         B<< C<l> >>     Jump (Fast) Scroll (DECSCLM)
504
505 =end table
506
507 =item B<< C<Ps = 5> >>
508
509 =begin table
510
511         B<< C<h> >>     Reverse Video (DECSCNM)
512         B<< C<l> >>     Normal Video (DECSCNM)
513
514 =end table
515
516 =item B<< C<Ps = 6> >>
517
518 =begin table
519
520         B<< C<h> >>     Origin Mode (DECOM)
521         B<< C<l> >>     Normal Cursor Mode (DECOM)
522
523 =end table
524
525 =item B<< C<Ps = 7> >>
526
527 =begin table
528
529         B<< C<h> >>     Wraparound Mode (DECAWM)
530         B<< C<l> >>     No Wraparound Mode (DECAWM)
531
532 =end table
533
534 =item B<< C<Ps = 8> >> I<unimplemented>
535
536 =begin table
537
538         B<< C<h> >>     Auto-repeat Keys (DECARM)
539         B<< C<l> >>     No Auto-repeat Keys (DECARM)
540
541 =end table
542
543 =item B<< C<Ps = 9> >> X10 XTerm
544
545 =begin table
546
547         B<< C<h> >>     Send Mouse X & Y on button press.
548         B<< C<l> >>     No mouse reporting.
549
550 =end table
551
552 =item B<< C<Ps = 10> >> (B<rxvt>)
553
554 =begin table
555
556         B<< C<h> >>     menuBar visible
557         B<< C<l> >>     menuBar invisible
558
559 =end table
560
561 =item B<< C<Ps = 25> >>
562
563 =begin table
564
565         B<< C<h> >>     Visible cursor {cnorm/cvvis}
566         B<< C<l> >>     Invisible cursor {civis}
567
568 =end table
569
570 =item B<< C<Ps = 30> >>
571
572 =begin table
573
574         B<< C<h> >>     scrollBar visisble
575         B<< C<l> >>     scrollBar invisisble
576
577 =end table
578
579 =item B<< C<Ps = 35> >> (B<rxvt>)
580
581 =begin table
582
583         B<< C<h> >>     Allow XTerm Shift+key sequences
584         B<< C<l> >>     Disallow XTerm Shift+key sequences
585
586 =end table
587
588 =item B<< C<Ps = 38> >> I<unimplemented>
589
590 Enter Tektronix Mode (DECTEK)
591
592 =item B<< C<Ps = 40> >>
593
594 =begin table
595
596         B<< C<h> >>     Allow 80/132 Mode
597         B<< C<l> >>     Disallow 80/132 Mode
598
599 =end table
600
601 =item B<< C<Ps = 44> >> I<unimplemented>
602
603 =begin table
604
605         B<< C<h> >>     Turn On Margin Bell
606         B<< C<l> >>     Turn Off Margin Bell
607
608 =end table
609
610 =item B<< C<Ps = 45> >> I<unimplemented>
611
612 =begin table
613
614         B<< C<h> >>     Reverse-wraparound Mode
615         B<< C<l> >>     No Reverse-wraparound Mode
616
617 =end table
618
619 =item B<< C<Ps = 46> >> I<unimplemented>
620
621 =item B<< C<Ps = 47> >>
622
623 =begin table
624
625         B<< C<h> >>     Use Alternate Screen Buffer
626         B<< C<l> >>     Use Normal Screen Buffer
627
628 =end table
629
630 X<Priv66>
631
632 =item B<< C<Ps = 66> >>
633
634 =begin table
635
636         B<< C<h> >>     Application Keypad (DECPAM) == C<ESC =>
637         B<< C<l> >>     Normal Keypad (DECPNM) == C<< ESC > >>
638
639 =end table
640
641 =item B<< C<Ps = 67> >>
642
643 =begin table
644
645         B<< C<h> >>     Backspace key sends B<< C<BS> (DECBKM) >>
646         B<< C<l> >>     Backspace key sends B<< C<DEL> >>
647
648 =end table
649
650 =item B<< C<Ps = 1000> >> (X11 XTerm)
651
652 =begin table
653
654         B<< C<h> >>     Send Mouse X & Y on button press and release.
655         B<< C<l> >>     No mouse reporting.
656
657 =end table
658
659 =item B<< C<Ps = 1001> >> (X11 XTerm) I<unimplemented>
660
661 =begin table
662
663         B<< C<h> >>     Use Hilite Mouse Tracking.
664         B<< C<l> >>     No mouse reporting.
665
666 =end table
667
668 =item B<< C<Ps = 1010> >> (B<rxvt>)
669
670 =begin table
671
672         B<< C<h> >>     Don't scroll to bottom on TTY output
673         B<< C<l> >>     Scroll to bottom on TTY output
674
675 =end table
676
677 =item B<< C<Ps = 1011> >> (B<rxvt>)
678
679 =begin table
680
681         B<< C<h> >>     Scroll to bottom when a key is pressed
682         B<< C<l> >>     Don't scroll to bottom when a key is pressed
683
684 =end table
685
686 =item B<< C<Ps = 1047> >>
687
688 =begin table
689
690         B<< C<h> >>     Use Alternate Screen Buffer
691         B<< C<l> >>     Use Normal Screen Buffer - clear Alternate Screen Buffer if returning from it
692
693 =end table
694
695 =item B<< C<Ps = 1048> >>
696
697 =begin table
698
699         B<< C<h> >>     Save cursor position
700         B<< C<l> >>     Restore cursor position
701
702 =end table
703
704 =item B<< C<Ps = 1049> >>
705
706 =begin table
707
708         B<< C<h> >>     Use Alternate Screen Buffer - clear Alternate Screen Buffer if switching to it
709         B<< C<l> >>     Use Normal Screen Buffer
710
711 =end table
712
713 =back
714
715 =back
716
717 X<XTerm>
718
719 =head1 XTerm Operating System Commands
720
721 =over 4
722
723 =item B<< C<ESC ] Ps;Pt ST> >>
724
725 Set XTerm Parameters. 8-bit ST: 0x9c, 7-bit ST sequence: ESC \ (0x1b,
726 0x5c), backwards compatible terminator BEL (0x07) is also accepted. any
727 B<octet> can be escaped by prefixing it with SYN (0x16, ^V).
728
729 =begin table
730
731         B<< C<Ps = 0> >>        Change Icon Name and Window Title to B<< C<Pt> >>
732         B<< C<Ps = 1> >>        Change Icon Name to B<< C<Pt> >>
733         B<< C<Ps = 2> >>        Change Window Title to B<< C<Pt> >>
734         B<< C<Ps = 3> >>        If B<< C<Pt> >> starts with a B<< C<?> >>, query the (STRING) property of the window and return it. If B<< C<Pt> >> contains a B<< C<=> >>, set the named property to the given value, else delete the specified property.
735         B<< C<Ps = 4> >>        B<< C<Pt> >> is a semi-colon separated sequence of one or more semi-colon separated B<number>/B<name> pairs, where B<number> is an index to a colour and B<name> is the name of a colour. Each pair causes the B<number>ed colour to be changed to B<name>. Numbers 0-7 corresponds to low-intensity (normal) colours and 8-15 corresponds to high-intensity colours. 0=black, 1=red, 2=green, 3=yellow, 4=blue, 5=magenta, 6=cyan, 7=white
736         B<< C<Ps = 10> >>       Change colour of text foreground to B<< C<Pt> >> B<(NB: may change in future)>
737         B<< C<Ps = 11> >>       Change colour of text background to B<< C<Pt> >> B<(NB: may change in future)>
738         B<< C<Ps = 12> >>       Change colour of text cursor foreground to B<< C<Pt> >>
739         B<< C<Ps = 13> >>       Change colour of mouse foreground to B<< C<Pt> >>
740         B<< C<Ps = 17> >>       Change colour of highlight characters to B<< C<Pt> >>
741         B<< C<Ps = 18> >>       Change colour of bold characters to B<< C<Pt> >>
742         B<< C<Ps = 19> >>       Change colour of underlined characters to B<< C<Pt> >>
743         B<< C<Ps = 20> >>       Change default background to B<< C<Pt> >>
744         B<< C<Ps = 39> >>       Change default foreground colour to B<< C<Pt> >> I<rxvt compile-time option>
745         B<< C<Ps = 46> >>       Change Log File to B<< C<Pt> >> I<unimplemented>
746         B<< C<Ps = 49> >>       Change default background colour to B<< C<Pt> >> I<rxvt compile-time option>
747         B<< C<Ps = 50> >>       Set fontset to B<< C<Pt> >>, with the following special values of B<< C<Pt> >> (B<rxvt>) B<< C<#+n> >> change up B<< C<n> >> B<< C<#-n> >> change down B<< C<n> >> if B<< C<n> >> is missing of 0, a value of 1 is used I<empty> change to font0 B<< C<n> >> change to font B<< C<n> >>
748         B<< C<Ps = 55> >>       Log all scrollback buffer and all of screen to B<< C<Pt> >>
749         B<< C<Ps = 701> >>      Change current locale to B<< C<Pt> >>, or, if B<< C<Pt> >> is B<< C<?> >>, return the current locale (@@RXVT_NAME@@ extension)
750         B<< C<Ps = 702> >>      find font for character, used for debugging (@@RXVT_NAME@@ extension)
751         B<< C<Ps = 703> >>      menubar command B<< C<Pt> >> I<rxvt compile-time option> (@@RXVT_NAME@@ extension)
752
753 =end table
754
755 =back
756
757 X<menuBar>
758
759 =head1 menuBar
760
761 B<< The exact syntax used is I<almost> solidified. >>
762 In the menus, B<DON'T> try to use menuBar commands that add or remove a
763 menuBar.
764
765 Note that in all of the commands, the B<< I</path/> >> I<cannot> be
766 omitted: use B<./> to specify a menu relative to the current menu.
767
768 =head2 Overview of menuBar operation
769
770 For the menuBar XTerm escape sequence C<ESC ] 703 ; Pt ST>, the syntax
771 of C<Pt> can be used for a variety of tasks:
772
773 At the top level is the current menuBar which is a member of a circular
774 linked-list of other such menuBars.
775
776 The menuBar acts as a parent for the various drop-down menus, which in
777 turn, may have labels, separator lines, menuItems and subMenus.
778
779 The menuItems are the useful bits: you can use them to mimic keyboard
780 input or even to send text or escape sequences back to rxvt.
781
782 The menuBar syntax is intended to provide a simple yet robust method of
783 constructing and manipulating menus and navigating through the
784 menuBars.
785
786 The first step is to use the tag B<< [menu:I<name>] >> which creates
787 the menuBar called I<name> and allows access. You may now or menus,
788 subMenus, and menuItems. Finally, use the tag B<[done]> to set the
789 menuBar access as B<readonly> to prevent accidental corruption of the
790 menus. To re-access the current menuBar for alterations, use the tag
791 B<[menu]>, make the alterations and then use B<[done]>
792
793 X<menuBarCommands>
794
795 =head2 Commands
796
797 =over 4
798
799 =item B<< [menu:+I<name>] >>
800
801 access the named menuBar for creation or alteration. If a new menuBar
802 is created, it is called I<name> (max of 15 chars) and the current
803 menuBar is pushed onto the stack
804
805 =item B<[menu]>
806
807 access the current menuBar for alteration
808
809 =item B<< [title:+I<string>] >>
810
811 set the current menuBar's title to I<string>, which may contain the
812 following format specifiers:
813 B<%%> : literal B<%> character
814 B<%n> : rxvt name (as per the B<-name> command-line option)
815 B<%v> : rxvt version
816
817 =item B<[done]>
818
819 set menuBar access as B<readonly>.
820 End-of-file tag for B<< [read:+I<file>] >> operations.
821
822 =item B<< [read:+I<file>] >>
823
824 read menu commands directly from I<file> (extension ".menu" will be
825 appended if required.) Start reading at a line with B<[menu]> or B<<
826 [menu:+I<name> >> and continuing until B<[done]> is encountered.
827
828 Blank and comment lines (starting with B<#>) are ignored. Actually,
829 since any invalid menu commands are also ignored, almost anything could
830 be construed as a comment line, but this may be tightened up in the
831 future ... so don't count on it!.
832
833 =item B<< [read:+I<file>;+I<name>] >>
834
835 The same as B<< [read:+I<file>] >>, but start reading at a line with
836 B<< [menu:+I<name>] >> and continuing until B<< [done:+I<name>] >> or
837 B<[done]> is encountered.
838
839 =item B<[dump]>
840
841 dump all menuBars to the file B</tmp/rxvt-PID> in a format suitable for
842 later rereading.
843
844 =item B<[rm:name]>
845
846 remove the named menuBar
847
848 =item B<[rm] [rm:]>
849
850 remove the current menuBar
851
852 =item B<[rm*] [rm:*]>
853
854 remove all menuBars
855
856 =item B<[swap]>
857
858 swap the top two menuBars
859
860 =item B<[prev]>
861
862 access the previous menuBar
863
864 =item B<[next]>
865
866 access the next menuBar
867
868 =item B<[show]>
869
870 Enable display of the menuBar
871
872 =item B<[hide]>
873
874 Disable display of the menuBar
875
876 =item B<< [pixmap:+I<name>] >>
877
878 =item B<< [pixmap:+I<name>;I<scaling>] >>
879
880 (set the background pixmap globally
881
882 B<< A Future implementation I<may> make this local to the menubar >>)
883
884 =item B<< [:+I<command>:] >>
885
886 ignore the menu readonly status and issue a I<command> to or a menu or
887 menuitem or change the ; a useful shortcut for setting the quick arrows
888 from a menuBar.
889
890 =back
891
892 X<menuBarAdd>
893
894 =head2 Adding and accessing menus
895
896 The following commands may also be B<+> prefixed.
897
898 =over 4
899
900 =item B</+>
901
902 access menuBar top level
903
904 =item B<./+>
905
906 access current menu level
907
908 =item B<../+>
909
910 access parent menu (1 level up)
911
912 =item B<../../>
913
914 access parent menu (multiple levels up)
915
916 =item B<< I</path/>menu >>
917
918 add/access menu
919
920 =item B<< I</path/>menu/* >>
921
922 add/access menu and clear it if it exists
923
924 =item B<< I</path/>{-} >>
925
926 add separator
927
928 =item B<< I</path/>{item} >>
929
930 add B<item> as a label
931
932 =item B<< I</path/>{item} action >>
933
934 add/alter I<menuitem> with an associated I<action>
935
936 =item B<< I</path/>{item}{right-text} >>
937
938 add/alter I<menuitem> with B<right-text> as the right-justified text
939 and as the associated I<action>
940
941 =item B<< I</path/>{item}{rtext} action >>
942
943 add/alter I<menuitem> with an associated I<action> and with B<rtext> as
944 the right-justified text.
945
946 =back
947
948 =over 4
949
950 =item Special characters in I<action> must be backslash-escaped:
951
952 B<\a \b \E \e \n \r \t \octal>
953
954 =item or in control-character notation:
955
956 B<^@, ^A .. ^Z .. ^_, ^?>
957
958 =back
959
960 To send a string starting with a B<NUL> (B<^@>) character to the
961 program, start I<action> with a pair of B<NUL> characters (B<^@^@>),
962 the first of which will be stripped off and the balance directed to the
963 program. Otherwise if I<action> begins with B<NUL> followed by
964 non-+B<NUL> characters, the leading B<NUL> is stripped off and the
965 balance is sent back to rxvt.
966
967 As a convenience for the many Emacs-type editors, I<action> may start
968 with B<M-> (eg, B<M-$> is equivalent to B<\E$>) and a B<CR> will be
969 appended if missed from B<M-x> commands.
970
971 As a convenience for issuing XTerm B<ESC]> sequences from a menubar (or
972 quick arrow), a B<BEL> (B<^G>) will be appended if needed.
973
974 =over 4
975
976 =item For example,
977
978 B<M-xapropos> is equivalent to B<\Exapropos\r>
979
980 =item and
981
982 B<\E]703;mona;100> is equivalent to B<\E]703;mona;100\a>
983
984 =back
985
986 The option B<< {I<right-rtext>} >> will be right-justified. In the
987 absence of a specified action, this text will be used as the I<action>
988 as well.
989
990 =over 4
991
992 =item For example,
993
994 B</File/{Open}{^X^F}> is equivalent to B</File/{Open}{^X^F} ^X^F>
995
996 =back
997
998 The left label I<is> necessary, since it's used for matching, but
999 implicitly hiding the left label (by using same name for both left and
1000 right labels), or explicitly hiding the left label (by preceeding it
1001 with a dot), makes it possible to have right-justified text only.
1002
1003 =over 4
1004
1005 =item For example,
1006
1007 B</File/{Open}{Open} Open-File-Action>
1008
1009 =item or hiding it
1010
1011 B</File/{.anylabel}{Open} Open-File-Action>
1012
1013 =back
1014
1015 X<menuBarRemove>
1016
1017 =head2 Removing menus
1018
1019 =over 4
1020
1021 =item B<< -/*+ >>
1022
1023 remove all menus from the menuBar, the same as B<[clear]>
1024
1025 =item B<< -+I</path>menu+ >>
1026
1027 remove menu
1028
1029 =item B<< -+I</path>{item}+ >>
1030
1031 remove item
1032
1033 =item B<< -+I</path>{-} >>
1034
1035 remove separator)
1036
1037 =item B<-/path/menu/*>
1038
1039 remove all items, separators and submenus from menu
1040
1041 =back
1042
1043 X<menuBarArrows>
1044
1045 =head2 Quick Arrows
1046
1047 The menus also provide a hook for I<quick arrows> to provide easier
1048 user access. If nothing has been explicitly set, the default is to
1049 emulate the curror keys. The syntax permits each arrow to be altered
1050 individually or all four at once without re-entering their common
1051 beginning/end text. For example, to explicitly associate cursor actions
1052 with the arrows, any of the following forms could be used:
1053
1054 =over 4
1055
1056 =item B<< <r>+I<Right> >>
1057
1058 =item B<< <l>+I<Left> >>
1059
1060 =item B<< <u>+I<Up> >>
1061
1062 =item B<< <d>+I<Down> >>
1063
1064 Define actions for the respective arrow buttons
1065
1066 =item B<< <b>+I<Begin> >>
1067
1068 =item B<< <e>+I<End> >>
1069
1070 Define common beginning/end parts for I<quick arrows> which used in
1071 conjunction with the above <r> <l> <u> <d> constructs
1072
1073 =back
1074
1075 =over 4
1076
1077 =item For example, define arrows individually,
1078
1079  <u>\E[A
1080
1081  <d>\E[B
1082
1083  <r>\E[C
1084
1085  <l>\E[D
1086
1087 =item or all at once
1088
1089  <u>\E[AZ<><d>\E[BZ<><r>\E[CZ<><l>\E[D
1090
1091 =item or more compactly (factoring out common parts)
1092
1093  <b>\E[<u>AZ<><d>BZ<><r>CZ<><l>D
1094
1095 =back
1096
1097 X<menuBarSummary>
1098
1099 =head2 Command Summary
1100
1101 A short summary of the most I<common> commands:
1102
1103 =over 4
1104
1105 =item [menu:name]
1106
1107 use an existing named menuBar or start a new one
1108
1109 =item [menu]
1110
1111 use the current menuBar
1112
1113 =item [title:string]
1114
1115 set menuBar title
1116
1117 =item [done]
1118
1119 set menu access to readonly and, if reading from a file, signal EOF
1120
1121 =item [done:name]
1122
1123 if reading from a file using [read:file;name] signal EOF
1124
1125 =item [rm:name]
1126
1127 remove named menuBar(s)
1128
1129 =item [rm] [rm:]
1130
1131 remove current menuBar
1132
1133 =item [rm*] [rm:*]
1134
1135 remove all menuBar(s)
1136
1137 =item [swap]
1138
1139 swap top two menuBars
1140
1141 =item [prev]
1142
1143 access the previous menuBar
1144
1145 =item [next]
1146
1147 access the next menuBar
1148
1149 =item [show]
1150
1151 map menuBar
1152
1153 =item [hide]
1154
1155 unmap menuBar
1156
1157 =item [pixmap;file]
1158
1159 =item [pixmap;file;scaling]
1160
1161 set a background pixmap
1162
1163 =item [read:file]
1164
1165 =item [read:file;name]
1166
1167 read in a menu from a file
1168
1169 =item [dump]
1170
1171 dump out all menuBars to /tmp/rxvt-PID
1172
1173 =item /
1174
1175 access menuBar top level
1176
1177 =item ./
1178
1179 =item ../
1180
1181 =item ../../
1182
1183 access current or parent menu level
1184
1185 =item /path/menu
1186
1187 add/access menu
1188
1189 =item /path/{-}
1190
1191 add separator
1192
1193 =item /path/{item}{rtext} action
1194
1195 add/alter menu item
1196
1197 =item -/*
1198
1199 remove all menus from the menuBar
1200
1201 =item -/path/menu
1202
1203 remove menu items, separators and submenus from menu
1204
1205 =item -/path/menu
1206
1207 remove menu
1208
1209 =item -/path/{item}
1210
1211 remove item
1212
1213 =item -/path/{-}
1214
1215 remove separator
1216
1217 =item <b>Begin<r>Right<l>Left<u>Up<d>Down<e>End
1218
1219 menu quick arrows
1220
1221 =back
1222 X<XPM>
1223
1224 =head1 XPM
1225
1226 For the XPM XTerm escape sequence B<< C<ESC ] 20 ; Pt ST> >> then value
1227 of B<< C<Pt> >> can be the name of the background pixmap followed by a
1228 sequence of scaling/positioning commands separated by semi-colons. The
1229 scaling/positioning commands are as follows:
1230
1231 =over 4
1232
1233 =item query scale/position
1234
1235 B<?>
1236
1237 =item change scale and position
1238
1239 B<WxH+X+Y>
1240
1241 B<WxH+X> (== B<WxH+X+X>)
1242
1243 B<WxH> (same as B<WxH+50+50>)
1244
1245 B<W+X+Y> (same as B<WxW+X+Y>)
1246
1247 B<W+X> (same as B<WxW+X+X>)
1248
1249 B<W> (same as B<WxW+50+50>)
1250
1251 =item change position (absolute)
1252
1253 B<=+X+Y>
1254
1255 B<=+X> (same as B<=+X+Y>)
1256
1257 =item change position (relative)
1258
1259 B<+X+Y>
1260
1261 B<+X> (same as B<+X+Y>)
1262
1263 =item rescale (relative)
1264
1265 B<Wx0> -> B<W *= (W/100)>
1266
1267 B<0xH> -> B<H *= (H/100)>
1268
1269 =back
1270
1271 For example:
1272
1273 =over 4
1274
1275 =item B<\E]20;funky\a>
1276
1277 load B<funky.xpm> as a tiled image
1278
1279 =item B<\E]20;mona;100\a>
1280
1281 load B<mona.xpm> with a scaling of 100%
1282
1283 =item B<\E]20;;200;?\a>
1284
1285 rescale the current pixmap to 200% and display the image geometry in
1286 the title
1287
1288 =back
1289 X<Mouse>
1290
1291 =head1 Mouse Reporting
1292
1293 =over 4
1294
1295 =item B<< C<< ESC [ M <b> <x> <y> >> >>
1296
1297 report mouse position
1298
1299 =back
1300
1301 The lower 2 bits of B<< C<< <b> >> >> indicate the button:
1302
1303 =over 4
1304
1305 =item Button = B<< C<< (<b> - SPACE) & 3 >> >>
1306
1307 =begin table
1308
1309         0       Button1 pressed
1310         1       Button2 pressed
1311         2       Button3 pressed
1312         3       button released (X11 mouse report)
1313
1314 =end table
1315
1316 =back
1317
1318 The upper bits of B<< C<< <b> >> >> indicate the modifiers when the
1319 button was pressed and are added together (X11 mouse report only):
1320
1321 =over 4
1322
1323 =item State = B<< C<< (<b> - SPACE) & 60 >> >>
1324
1325 =begin table
1326
1327         4       Shift
1328         8       Meta
1329         16      Control
1330         32      Double Click I<(Rxvt extension)>
1331
1332 =end table
1333
1334 Col = B<< C<< <x> - SPACE >> >>
1335
1336 Row = B<< C<< <y> - SPACE >> >>
1337
1338 =back
1339 X<KeyCodes>
1340
1341 =head1 Key Codes
1342
1343 Note: B<Shift> + B<F1>-B<F10> generates B<F11>-B<F20>
1344
1345 For the keypad, use B<Shift> to temporarily override Application-Keypad
1346 setting use B<Num_Lock> to toggle Application-Keypad setting if
1347 B<Num_Lock> is off, toggle Application-Keypad setting. Also note that
1348 values of B<Home>, B<End>, B<Delete> may have been compiled differently on
1349 your system.
1350
1351 =begin table
1352
1353                 B<Normal>       B<Shift>        B<Control>      B<Ctrl+Shift>
1354         Tab     ^I      ESC [ Z ^I      ESC [ Z
1355         BackSpace       ^H      ^?      ^?      ^?
1356         Find    ESC [ 1 ~       ESC [ 1 $       ESC [ 1 ^       ESC [ 1 @
1357         Insert  ESC [ 2 ~       I<paste>        ESC [ 2 ^       ESC [ 2 @
1358         Execute ESC [ 3 ~       ESC [ 3 $       ESC [ 3 ^       ESC [ 3 @
1359         Select  ESC [ 4 ~       ESC [ 4 $       ESC [ 4 ^       ESC [ 4 @
1360         Prior   ESC [ 5 ~       I<scroll-up>    ESC [ 5 ^       ESC [ 5 @
1361         Next    ESC [ 6 ~       I<scroll-down>  ESC [ 6 ^       ESC [ 6 @
1362         Home    ESC [ 7 ~       ESC [ 7 $       ESC [ 7 ^       ESC [ 7 @
1363         End     ESC [ 8 ~       ESC [ 8 $       ESC [ 8 ^       ESC [ 8 @
1364         Delete  ESC [ 3 ~       ESC [ 3 $       ESC [ 3 ^       ESC [ 3 @
1365         F1      ESC [ 11 ~      ESC [ 23 ~      ESC [ 11 ^      ESC [ 23 ^
1366         F2      ESC [ 12 ~      ESC [ 24 ~      ESC [ 12 ^      ESC [ 24 ^
1367         F3      ESC [ 13 ~      ESC [ 25 ~      ESC [ 13 ^      ESC [ 25 ^
1368         F4      ESC [ 14 ~      ESC [ 26 ~      ESC [ 14 ^      ESC [ 26 ^
1369         F5      ESC [ 15 ~      ESC [ 28 ~      ESC [ 15 ^      ESC [ 28 ^
1370         F6      ESC [ 17 ~      ESC [ 29 ~      ESC [ 17 ^      ESC [ 29 ^
1371         F7      ESC [ 18 ~      ESC [ 31 ~      ESC [ 18 ^      ESC [ 31 ^
1372         F8      ESC [ 19 ~      ESC [ 32 ~      ESC [ 19 ^      ESC [ 32 ^
1373         F9      ESC [ 20 ~      ESC [ 33 ~      ESC [ 20 ^      ESC [ 33 ^
1374         F10     ESC [ 21 ~      ESC [ 34 ~      ESC [ 21 ^      ESC [ 34 ^
1375         F11     ESC [ 23 ~      ESC [ 23 $      ESC [ 23 ^      ESC [ 23 @
1376         F12     ESC [ 24 ~      ESC [ 24 $      ESC [ 24 ^      ESC [ 24 @
1377         F13     ESC [ 25 ~      ESC [ 25 $      ESC [ 25 ^      ESC [ 25 @
1378         F14     ESC [ 26 ~      ESC [ 26 $      ESC [ 26 ^      ESC [ 26 @
1379         F15 (Help)      ESC [ 28 ~      ESC [ 28 $      ESC [ 28 ^      ESC [ 28 @
1380         F16 (Menu)      ESC [ 29 ~      ESC [ 29 $      ESC [ 29 ^      ESC [ 29 @
1381         F17     ESC [ 31 ~      ESC [ 31 $      ESC [ 31 ^      ESC [ 31 @
1382         F18     ESC [ 32 ~      ESC [ 32 $      ESC [ 32 ^      ESC [ 32 @
1383         F19     ESC [ 33 ~      ESC [ 33 $      ESC [ 33 ^      ESC [ 33 @
1384         F20     ESC [ 34 ~      ESC [ 34 $      ESC [ 34 ^      ESC [ 34 @
1385                                         B<Application>
1386         Up      ESC [ A ESC [ a ESC O a ESC O A
1387         Down    ESC [ B ESC [ b ESC O b ESC O B
1388         Right   ESC [ C ESC [ c ESC O c ESC O C
1389         Left    ESC [ D ESC [ d ESC O d ESC O D
1390         KP_Enter        ^M                      ESC O M
1391         KP_F1   ESC O P                 ESC O P
1392         KP_F2   ESC O Q                 ESC O Q
1393         KP_F3   ESC O R                 ESC O R
1394         KP_F4   ESC O S                 ESC O S
1395         XK_KP_Multiply  *                       ESC O j
1396         XK_KP_Add       +                       ESC O k
1397         XK_KP_Separator ,                       ESC O l
1398         XK_KP_Subtract  -                       ESC O m
1399         XK_KP_Decimal   .                       ESC O n
1400         XK_KP_Divide    /                       ESC O o
1401         XK_KP_0 0                       ESC O p
1402         XK_KP_1 1                       ESC O q
1403         XK_KP_2 2                       ESC O r
1404         XK_KP_3 3                       ESC O s
1405         XK_KP_4 4                       ESC O t
1406         XK_KP_5 5                       ESC O u
1407         XK_KP_6 6                       ESC O v
1408         XK_KP_7 7                       ESC O w
1409         XK_KP_8 8                       ESC O x
1410         XK_KP_9 9                       ESC O y
1411
1412 =end table
1413
1414 =head1 CONFIGURE OPTIONS
1415
1416 General hint: if you get compile errors, then likely your configuration
1417 hasn't been tested well. Either try with --enable-everything or use the
1418 ./reconf script as a base for experiments. ./reconf is used by myself,
1419 so it should generally be a working config. Of course, you should always
1420 report when a combination doesn't work, so it can be fixed. Marc Lehmann
1421 <rxvt@schmorp.de>.
1422
1423 =over 4
1424
1425 =item --enable-everything
1426
1427 Add support for all non-multichoice options listed in "./configure
1428 --help". Note that unlike other enable options this is order dependant.
1429 You can specify this and then disable options which this enables by
1430 I<following> this with the appropriate commands.
1431
1432 =item --enable-xft
1433
1434 Add support for Xft (anti-aliases, among others) fonts. Xft fonts are
1435 slower and require lots of memory, but as long as you don't use them, you
1436 don't pay for them.
1437
1438 =item --with-codesets=NAME,...
1439
1440 Compile in support for additional codeset (encoding) groups. These codeset
1441 tables are currently only used for driving X11 core fonts, they are not
1442 required for Xft fonts. Compiling them in will make your binary bigger
1443 (together about 700kB), but it doesn't increase memory usage unless you
1444 use an X11 font requiring one of these encodings.
1445
1446 =begin table
1447
1448         all     all available codeset groups
1449         cn      common chinese encodings
1450         cn_ext  rarely used but very big chinese encodigs
1451         jp      common japanese encodings
1452         jp_ext  rarely used but big japanese encodings
1453         kr      korean encodings
1454
1455 =end table
1456
1457 =item --enable-xim
1458
1459 Add support for XIM (X Input Method) protocol. This allows using
1460 alternative input methods (e.g. kinput2) and will also correctly
1461 set up the input for people using dead keys or compose keys.
1462
1463 =item --enable-unicode3
1464
1465 Enable direct support for displaying unicode codepoints above
1466 65535 (the basic multilingual page). This increases storage
1467 requirements per character from 2 to 4 bytes. X11 fonts do not yet
1468 support these extra characters, but Xft does.
1469
1470 Please note that rxvt-unicode can store unicode code points >65535
1471 even without this flag, but the number of such characters is
1472 limited to a view thousand (shared with combining characters,
1473 see next switch), and right now rxvt-unicode cannot display them
1474 (input/output and cut&paste still work, though).
1475
1476 =item --enable-combining
1477
1478 Enable automatic composition of combining characters into
1479 composite characters. This is required for proper viewing of text
1480 where accents are encoded as seperate unicode characters. This is
1481 done by using precomposited characters when available or creating
1482 new pseudo-characters when no precomposed form exists.
1483
1484 Without --enable-unicode3, the number of additional precomposed
1485 characters is rather limited (2048, if this is full, rxvt will use the
1486 private use area, extending the number of combinations to 8448). With
1487 --enable-unicode3, no practical limit exists. This will also enable
1488 storage of characters >65535.
1489
1490 The combining table also contains entries for arabic presentation forms,
1491 but these are not currently used. Bug me if you want these to be used.
1492
1493 =item --enable-fallback(=CLASS)
1494
1495 When reading resource settings, also read settings for class CLASS
1496 (default: Rxvt). To disable resource fallback use --disable-fallback.
1497
1498 =item --with-res-name=NAME
1499
1500 Use the given name (default: urxvt) as default application name when
1501 reading resources. Specify --with-res-name=rxvt to replace rxvt.
1502
1503 =item --with-res-class=CLASS
1504
1505 Use the given class (default: URxvt) as default application class
1506 when reading resources.  Specify --with-res-class=Rxvt to replace
1507 rxvt.
1508
1509 =item --enable-utmp
1510
1511 Write user and tty to utmp file (used by programs like F<w>) at
1512 start of rxvt execution and delete information when rxvt exits.
1513
1514 =item --enable-wtmp
1515
1516 Write user and tty to wtmp file (used by programs like F<last>) at
1517 start of rxvt execution and write logout when rxvt exits.  This
1518 option requires --enable-utmp to also be specified.
1519
1520 =item --enable-lastlog
1521
1522 Write user and tty to lastlog file (used by programs like
1523 F<lastlogin>) at start of rxvt execution.  This option requires
1524 --enable-utmp to also be specified.
1525
1526 =item --enable-xpm-background
1527
1528 Add support for XPM background pixmaps.
1529
1530 =item --enable-transparency
1531
1532 Add support for inheriting parent backgrounds thus giving a fake
1533 transparency to the term.
1534
1535 =item --enable-fading
1536
1537 Add support for fading the text when focus is lost.
1538
1539 =item --enable-tinting
1540
1541 Add support for tinting of transparent backgrounds.
1542
1543 =item --enable-menubar
1544
1545 Add support for our menu bar system (this interacts badly with
1546 dynamic locale switching currently).
1547
1548 =item --enable-rxvt-scroll
1549
1550 Add support for the original rxvt scrollbar.
1551
1552 =item --enable-next-scroll
1553
1554 Add support for a NeXT-like scrollbar.
1555
1556 =item --enable-xterm-scroll
1557
1558 Add support for an Xterm-like scrollbar.
1559
1560 =item --enable-plain-scroll
1561
1562 Add support for a very unobtrusive, plain-looking scrollbar that
1563 is the favourite of the rxvt-unicode author, having used it for
1564 many years.
1565
1566 =item --enable-half-shadow
1567
1568 Make shadows on the scrollbar only half the normal width & height.
1569 only applicable to rxvt scrollbars.
1570
1571 =item --enable-ttygid
1572
1573 Change tty device setting to group "tty" - only use this if
1574 your system uses this type of security.
1575
1576 =item --disable-backspace-key
1577
1578 Disable any handling of the backspace key by us - let the X server
1579 do it.
1580
1581 =item --disable-delete-key
1582
1583 Disable any handling of the delete key by us - let the X server
1584 do it.
1585
1586 =item --disable-resources
1587
1588 Remove all resources checking.
1589
1590 =item --enable-xgetdefault
1591
1592 Make resources checking via XGetDefault() instead of our small
1593 version which only checks ~/.Xdefaults, or if that doesn't exist
1594 then ~/.Xresources.
1595
1596 =item --enable-strings
1597
1598 Add support for our possibly faster memset() function and other
1599 various routines, overriding your system's versions which may
1600 have been hand-crafted in assembly or may require extra libraries
1601 to link in. (this breaks ANSI-C rules and has problems on many
1602 GNU/Linux systems).
1603
1604 =item --disable-swapscreen
1605
1606 Remove support for swap screen.
1607
1608 =item --enable-frills
1609
1610 Add support for many small features that are not essential but nice to
1611 have. Normally you want this, but for very small binaries you may want to
1612 disable this.
1613
1614 =item --enable-iso14755
1615
1616 Enable extended ISO 14755 support (see @@RXVT_NAME@@(1), or
1617 F<doc/rxvt.1.txt>). Basic support (section 5.1) is enabled by
1618 C<--enable-frills>, while support for 5.2, 5.3 and 5.4 is enabled with
1619 this switch.
1620
1621 =item --enable-linespace
1622
1623 Add support to provide user specified line spacing between text rows.
1624
1625 =item --enable-keepscrolling
1626
1627 Add support for continual scrolling of the display when you hold
1628 the mouse button down on a scrollbar arrow.
1629
1630 =item --enable-mousewheel
1631
1632 Add support for scrolling via mouse wheel or buttons 4 & 5.
1633
1634 =item --enable-slipwheeling
1635
1636 Add support for continual scrolling (using the mouse wheel as an
1637 accelerator) while the control key is held down.  This option
1638 requires --enable-mousewheel to also be specified.
1639
1640 =item --disable-new-selection
1641
1642 Remove support for mouse selection style like that of xterm.
1643
1644 =item --enable-dmalloc
1645
1646 Use Gray Watson's malloc - which is good for debugging See
1647 http://www.letters.com/dmalloc/ for details If you use either this or the
1648 next option, you may need to edit src/Makefile after compiling to point
1649 DINCLUDE and DLIB to the right places.
1650
1651 You can only use either this option and the following (should
1652 you use either) .
1653
1654 =item --enable-dlmalloc
1655
1656 Use Doug Lea's malloc - which is good for a production version
1657 See L<http://g.oswego.edu/dl/html/malloc.html> for details.
1658
1659 =item --enable-smart-resize
1660
1661 Add smart growth/shrink behaviour when changing font size via from hot
1662 keys. This should keep in a fixed position the rxvt corner which is
1663 closest to a corner of the screen.
1664
1665 =item --enable-256-color
1666
1667 Add support for 256 colours rather than the base 16 colours.
1668
1669 This option will likely go away in the future. Speak up if you don't want
1670 this.
1671
1672 =item --enable-cursor-blink
1673
1674 Add support for a blinking cursor.
1675
1676 =item --enable-pointer-blank
1677
1678 Add support to have the pointer disappear when typing or inactive.
1679
1680 =item --with-name=NAME
1681
1682 Set the basename for the installed binaries (default: urxvt, resulting in
1683 urxvt, urxvtd etc.). Specify --with-name=rxvt to replace rxvt.
1684
1685 =item --with-term=NAME
1686
1687 Change the environmental variable for the terminal to NAME (default
1688 "rxvt")
1689
1690 =item --with-terminfo=PATH
1691
1692 Change the environmental variable for the path to the terminfo tree to
1693 PATH.
1694
1695 =item --with-x
1696
1697 Use the X Window System (pretty much default, eh?).
1698
1699 =item --with-xpm-includes=DIR
1700
1701 Look for the XPM includes in DIR.
1702
1703 =item --with-xpm-library=DIR
1704
1705 Look for the XPM library in DIR.
1706
1707 =item --with-xpm
1708
1709 Not needed - define via --enable-xpm-background.
1710
1711 =back
1712
1713 =head1 AUTHORS
1714
1715 Marc Lehmann <rxvt@schmorp.de> converted this document to pod and
1716 reworked it from the original Rxvt documentation, which was done by Geoff
1717 Wing <gcw@pobox.com>, who in turn used the XTerm documentation and other
1718 sources.
1719