Remove useless assignments.
[dana/urxvt.git] / doc / changes.txt
1 The changes for rxvt-unicode are summarized in the file ../Changes.
2
3 2.7.10 to 2.7.11
4 \-----------------------------------
5
6 Geoff Wing <gcw@pobox.com> et al.
7         fixed handling of cursor colour when reverse colour is displayed
8         fixed utmp writing if we have ttyslot
9         fixed compile when --with-encoding=kr
10         added hiding of mouse pointer while the user is typing or from
11                 mouse inactivity, with configure --enable-pointer-blank,
12                 resource pointerBlank (default: false) and
13                 resource pointerBlankDelay (default: 2 seconds)
14         added "-bc" blinking cursor, configure --enable-cursor-blink
15
16 Glyn Kennington <glyn_k@sourceforge>
17         added feature ACS_ASCII which converts ACS line drawing characters
18                 to similar ASCII characters, resource acsChars
19
20 Rob McMullen <robm@flipturn.org>
21         added selection scrolling - scrolling viewpoint when making a
22                 selection and going past top/bottom of window, with
23                 configure --enable-selectionscrolling
24
25 Chris Wareham <chris.wareham@btinternet.com>
26         added rconf utility for rclock appointment configuration
27
28 2.7.9 to 2.7.10
29 \-----------------------------------
30
31 Geoff Wing <gcw@pobox.com> et al.
32         removed screen dump feature as it can aid as a security hole
33         removed menubar escape sequence access as it can aid a security hole
34         removed reporting of title and icon settings as they can aid a security
35                 hole
36
37 Mikko Leppänen <m.leppanen@iki.fi>
38         fixed clearing problem when internalBorder is zero
39
40 Steve O <bub@io.com>
41         added Cygwin port
42
43 Rob McMullen <robm@flipturn.org>
44         fixed handling of control characters inside escape sequences
45         added resource "mouseWheelScrollPage" to allow the mouse wheel
46                 scroll a page full
47         added support for VT52 commands
48
49 2.7.8 to 2.7.9
50 \-----------------------------------
51
52 Geoff Wing <gcw@pobox.com> et al.
53         added -sbt/--thickness to allow user-supplied scrollbar width (not
54                 yet available with NeXT style scrollbars)
55
56 Matthew W. Roberts <matt@cgijobs.com>
57         fixed rclock -iconic option
58         added rclock day of month on clockface (define DATE_ON_CLOCK_FACE
59                 in feature.h)
60         added rclock "-mailspawn cmd" if MAIL_SPAWN is not hard coded in
61                 feature.h
62
63 Kazutoshi Kubota <tu7k-kbt@asahi-net.or.jp>
64         added 256 colour mode (instead of the base 16 colour mode) with
65                 configure --enable-256-color
66
67 2.7.7 to 2.7.8
68 \-----------------------------------
69
70 Geoff Wing <gcw@pobox.com> et al.
71         fixed determination of NumLock key, noticed by
72                 Matthew Gabeler-Lee <msg2@po.cwru.edu>
73         fixed continual and slipwheel scrolling, noticed by
74                 Joshua Swink
75         fixed connecting with IM whenever it is started, partly from
76                 Tung-Han Hsieh <thhsieh@linux.org.tw>
77         fixed Ultrix acquiring useful pty/tty pair, noticed by
78                 Bert De Knuydt <Bert.Deknuydt@esat.kuleuven.ac.be>
79         fixed CSI sequence parser overriding a 0 parameter with default value
80         changed -ip to not clear ancestor windows when using inherit pixmap
81                 transparency type
82         added -ipf/--inheritPixmapforce to clear ancestor windows when -ip
83                 and inherit pixmap transparency is used
84         added "-hc colour" (define OPTION_HC in feature.h) to provide
85                 background highlighting of selection, partly from
86                 Christian W. Zuckschwerdt <zany@triq.net>
87         added -j/--jumpScroll to provide jump or smooth scrolling, defaults to
88                 jump scrolling as per previous behaviour
89
90 Stephen Isard <S.Isard@ed.ac.uk>
91         fixed DECSTBM sequence default when only one parameter is given
92
93 Rudolf Jaksa <jaksa@neuron.tuke.sk>
94         added basic support for $XAPPLRESDIR/Rxvt resources
95
96 T. Alexander Popiel <popiel@wolfskeep.com>
97         added --scrollBar_align (top|bottom|...) for alignment of scrollbar
98                 thumb with middle button.  Defaults to centre as per prior
99                 state.  Supercedes FUNKY_SCROLL_BEHAVIOUR
100
101 2.7.6 to 2.7.7
102 \-----------------------------------
103
104 Geoff Wing <gcw@pobox.com> et al.
105         fixed check for GLIBC and STREAMS pty/tty types, noticed by
106                 Venkatesh Krishnamurthi <vk@spies.com>
107         fixed check for PTC pty/tty type, noticed by
108                 Andreas Bierfert <Andreas.Bierfert@AtosOrigin.com>
109         fixed to not automatically clear selection on screen size change,
110                 noticed by Dominik Vogt <d.vogt@lifebits.de>
111         fixed a possible buffer overflow problem, noticed by
112                 Samuel Dralet <samuel.dralet@mastersecurity.fr>
113         fixed to reallow parallel builds
114         fixed builds for some SYSV utmp/utmpx systems
115         fixed INCR transfers
116         fixed resource "greektoggle_key" as per doc/README.greek, noticed by
117                 Martin Husemann <martin@duskware.de>
118         fixed STREAMS again, hopefully the last time
119         changed overstrike pixel dropping avoidance to speed/size optimise
120         changed define WTMP_ONLY_ON_LOGIN in feature.h to be the default
121         added CSI s & CSI u as alternative save & restore cursor sequences
122         added pasting-only support for SECONDARY and CLIPBOARD selections,
123                 automatically tried if internal selection and PRIMARY
124                 selections are not present.  CUT_BUFFER0 is tried last
125
126 Kazutoshi Kubota <tu7k-kbt@asahi-net.or.jp>
127         added "-lsp <num>" option ("--lineSpace <num>") to give specified
128                 spacing between rows with configure --enable-linespace
129                 
130 Tomohiro KUBOTA <kubota@debian.org>
131         fixed some font default calculations to match previous behaviour
132
133 Ali Rahimi <ali@MIT.EDU>
134         added slip wheel support providing continual scrolling with the
135                 control key depressed and using the mouse wheel as an
136                 accelerator.  Control key release stops scrolling
137
138 Mark Schreiber <mark7@andrew.cmu.edu>
139         added -sw/--scrollWithBuffer to try to make views into the
140                 scrollback buffer stay unmoving upon new lines (needs -si)
141
142 2.7.5 to 2.7.6
143 \-----------------------------------
144
145 Geoff Wing <gcw@pobox.com> et al.
146         fixed build with XTERM_COLOR_CHANGE undefined, noticed by
147                 John Waggenspack <jwag@usa.net>
148         fixed build for Solaris/SunOS (maybe others) using STREAMS
149         fixed default icon name, noticed by
150                 Jeremy C. Reed <reed@wcug.wwu.edu>
151         fixed setting of icon name with -e argument, noticed by
152                 John Waggenspack <John_Waggenspack@adc.com>
153         fixed problems with selection by changing some types and type casting 
154         fixed some parallel build problems
155         fixed text placement in graphics mode
156         fixed some build problems with graphics/qplot
157         fixed reverse video mode to act like the invocation option
158         fixed query of locale ("Setting locale failed.") when locale is set
159         fixed autowrap bug when restoring cursor from last column, noticed by
160                 witek@mat.uni.torun.pl
161         fixed build & run when PREFER_24BIT is undefined
162         fixed loading of fonts with noenc multichar encoding, noticed by
163                 Mark White <mark.white@st-edmund-hall.oxford.ac.uk>
164         fixed an abort on sending some selections, from
165                 Xianping Ge <xge@ics.uci.edu>
166         fixed tty opening for systems with openpty(), e.g. OSF1
167         fixed build for utmpx/wtmpx platforms
168         fixed a bug in memmove() if --enable-strings is given, noticed by
169                 Larry W. Virden <lvirden@cas.org>
170         fixed some termcap/terminfo entries
171         fixed some division operations to use the same integer type
172         changed configure detection method for pty/ttys
173         changed handling of ConfigureNotify events for fast event streams
174         changed internal handling of window size calculation
175         changed internal handling of window size and placement manipulation
176         changed define PREFER_24BIT in feature.h to be set via
177                 configure --enable-24bit (default is now off)
178         changed screen refresh to optimise X calls more, noticeable with 
179                 slower machines or over network displays
180         changed pty/tty code to be able to be built separately for testing
181         changed selection sending to send the original raw form if locale
182                 conversion fails
183         updated libtool for configure
184         added DEC private modes 1047 / 1048 (no ti/te handling yet)
185         added SCROLL_ON_HOMEEND_KEYS in feature.h a la SCROLL_ON_UPDOWN_KEYS
186                 from Marius Gedminas <marius.gedminas@uosis.mif.vu.lt>
187         added "tests" target in main directory to build and run basic tests
188         added (frills) -tcw (--tripleclickwords) alternative triple click
189                 selection which selects words to the end of possibly-wrapped
190                 lines with trailing blanks and blank lines removed
191
192 Chuan-kai Lin <cklin@oink.cc.ntu.edu.tw> and Brian Mays <brian@debian.org>
193         added -mcc option (--multibyte_cursor) for multibyte cursor movement
194                 in legacy programs
195
196 Maxime Froment <maxime@turbolinux.co.jp>
197         fixed placement with OverTheSpot input method
198         fixed characters sent through IM being truncated to 4 bytes
199         fixed encoding method being overridden by default encoding method
200         added loading of locale specific app-defaults from directory
201                 /usr/X11R6/lib/X11/$LC_CTYPE/app-defaults/Rxvt (see
202                 XAPPLOADDIRLOCALE is feature.h)
203
204 Tomohiro KUBOTA <kubota@debian.org>
205         added method to provide base font sets based on user's locale
206         added more flexible font allocation, specifying a maximum number of
207                 fonts in feature.h instead of a set number
208
209 Marius Gedminas <marius.gedminas@uosis.mif.vu.lt>
210         added --enable-smart-resize which may reposition the window on
211                 resizing so that we try to stay within the screen boundaries
212
213 2.7.3 to 2.7.5
214 \-----------------------------------
215
216 Geoff Wing <gcw@pobox.com> et al.
217         fixed scrollTtyKeypress not active for all keypresses, noticed by
218                 Reuben Thomas <Reuben.Thomas@cl.cam.ac.uk>
219         added -xrm option to accept dummy invocation arguments, from
220                 Christian W. Zuckschwerdt <zany@triq.net>
221                 & Chris Green <cgreen@matthaak.com>
222         fixed documentation for options: -tr, -ic, -pt, -im, -mod, -xrm;
223                 and resources: scrollBar_right, scrollBar_floating,
224                 scrollTtyOutput, scrollTtyKeypress, preeditType, inputMethod,
225                 modifier.
226         fixed OSC sequences to accept 7 and 8 bit ST as well as BEL
227         added MAX_COLS & MAX_ROWS in feature.h to limit columns/rows on resize
228         added copy root pixmap variant of transparency - make this the default
229                 with previous method as fallback
230         fixed allocation of new lines to not set base attributes, including
231                 underline or reverse video information, noticed by
232                 Brian Mays <brian@debian.org>
233         added ability for different scrollbars to be compiled in, determined
234                 by --scrollstyle
235         fixed Meta key detection - has priority over Alt, noticed by
236                 Paul D. Smith <psmith@baynetworks.com>
237         fixed configure check for mawk/gawk/nawk/awk
238         added use of libtool in build procedure
239         added SCROLL_ON_NO_SECONDARY to feature.h to scroll the screen when no
240                 swap is compiled in and a change screen request is made
241         removed slightly buggy ConfigureNotify queue/ignore from our resizes
242         fixed use of extended character classes, from
243                 Samoylov Olleg <olleg@faki-campus.mipt.ru>
244         fixed timeout in select() call when unmapped, noticed by
245                 Tore Bjorkeli <tore.bjorkeli@runit.no>
246         changed feature.h NO_BOLDUNDERLINE to NO_BOLD_UNDERLINE_REVERSE
247         added support for XCopyArea() on screen display - good for slower links
248         fixed CSI parameter parsing, including omitted parameters
249         fixed allocation of new lines when in reverse video mode
250         added answerbackString resource which sets the reply to ENQ (CTRL-E)
251         fixed InheritPixmap interaction with fvwm2 by delaying a bit to allow
252                 the WM to do its stuff before we meddle with its windows
253
254 Thomas Woerner <thomas@linux.de>
255         added colorRV resource for reverse video colour (dependent on
256                 NO_BOLD_UNDERLINE_REVERSE in feature.h)
257
258 Jun Morimoto <morimoto@xantia.citroen.org>
259         fixed argument checking in rclock - ignore bad arguments
260
261 Matthew W. Roberts <matt@lehi.tamu.edu>
262         added -mailfile option to rclock
263
264 Christian W. Zuckschwerdt <zany@triq.net>
265         added OSC sequences to change base colours; also cursor, highlight,
266                 bold, pointer and underline colours.  See rxvtRef
267
268 Paul Sheer <psheer@obsidian.co.za>
269         added initial INCR (incremental pasting) support
270         
271 2.7.2 to 2.7.3
272 \-----------------------------------
273
274 Geoff Wing <gcw@pobox.com>
275         fixed clean up (utmp/wtmp/etc.) on fatal signal, noticed by
276                 Jim Diamond <jdiamond@fox.nstn.ca>
277         added use of configure options --program-prefix, --program-suffix &
278                 --program-transform-name, allowing, say, Kanji users to do
279                 --program-transform-name='s,rxvt,kxvt,;' for installing
280         changed configure --with-encoding value "euckr" to "kr" to match
281                 multichar_encoding option and resource values
282         added configure --with-encoding value "noenc" (and multichar_encoding
283                 option and resource values) to disable encoding allowing
284                 normal eight bit characters in multichar compile
285         fixed -si/+si option, noticed by
286                 Thomas Lofgren <tlofgren@cup.hp.com>
287         fixed detection of struct utmpx, noticed by
288                 Paul 'TBBle' Hampson <Paul.Hampson@Pobox.Com>
289         added basic support for openpty() which should help with people on
290                 Alpha platform using Tru64/<insert new OS name here>
291
292 Jun Morimoto <morimoto@xantia.citroen.org>
293         added basic argument checking for rclock to detect missing arguments
294
295 Tung-Han Hsieh <thhsieh@linux.org.tw>
296         fixed configure notify bypass checking for self window configurations
297         fixed fontset creation to match sizes properly and recreate fontset
298                 on size change
299
300 Chih-Wei Huang <cwhuang@linux.org.tw>
301         added fontset (locale dependent) menubars
302         added example Big5 menu
303
304 Hans de Goede <hans@highrise.nl>
305         added colour determination for low colour (4 to 8 bit) displays
306
307 2.7.1 to 2.7.2
308 \-----------------------------------
309
310 Geoff Wing <gcw@pobox.com>
311         fixed screen refresh output to handle more cases
312         changed resource storage to a struct rather than a char* arrary,
313                 to aid debugging
314         changed how ptys/ttys are opened (again)
315         fixed processing of some resources to strip double-quotes when using
316                 XGetDefaults() and also for backspace_key/delete_key
317         fixed large paste problem, noticed by
318                 Dominik Vogt <dominik_vogt@agilent.com>
319         fixed utmp removal problem for SYSV style utmps
320         changed BORDERWIDTH in feature.h to EXTERNALBORDERWIDTH to clarify
321                 its usage.
322         added (frills) resources "internalBorder" (-b) and
323                 "externalBorder" (-w)(-bw)(-borderwidth)
324         added NO_BELL to feature.h to allow disabling all bell indications
325
326 D J Hawkey Jr <hawkeyd@visi.com>
327         added QNX support
328         added logging into lastlog in login shells (-ls option)
329
330 Oskar Liljeblad <osk@hem.passagen.se>
331         added SCROLL_ON_UPDOWN_KEYS to feature.h to allow scrolling via
332                 (shift|meta|ctrl) modifier and up/down keys, default off
333                 for backward (2.6.x) compatibility
334
335 2.7.0 to 2.7.1
336 \-----------------------------------
337
338 Geoff Wing <gcw@pobox.com>
339         cleaned up CSI processing slightly
340         fixed clearing of pixel droppings on right side of cell
341         added clearing of pixel droppings for fonts which exceed the left side
342                 of their cells, noticed by J Scott Berg <jsberg@earthlink.net>
343         changed --disable-memset to --enable-strings and not enable by default
344         added LOCAL_X_IS_UNIX to feature.h to work-around Irix problem, opens
345                 unix:0.0 instead of :0 or :0.0
346         fixed some configure errors
347         changed how ptys/ttys are opened and which is opened by parent or child
348         added delay to screen refresh when receiving a fast stream of X events
349
350 Jim Knoble <jmknoble@pobox.com>
351         fixed scrollbar slider jitter
352         added named constants for scrollbar calculations
353
354 MANTANI Nobutaka <nobutaka@nobutaka.com>
355         changed interaction with XIM server to fix several problems
356
357 2.6.? to 2.7.0
358 \-----------------------------------
359
360 Geoff Wing <gcw@pobox.com>
361         added OSC escape sequence #55 to dump scrollback/screen to a file
362
363 SEO Young-Jin <yjseo@mizi.co.kr>
364         fixed XGetDefaults() to use standard files (and then some)
365
366 2.6.0 to 2.6.1
367 \-----------------------------------
368
369 Geoff Wing <gcw@pobox.com>
370         fixed setting of tty permission/ownership with grantpt(). ie. don't
371         fixed configuration for some systems
372         changed a timeout to previous setting giving smoother scrolling.
373         fixed reversed --scrollTtyOutput (noticed (this time) by
374                 Thomas Lofgren <lofgren@sics.se>)
375         fixed offset for writing into BSD utmp file
376         added seperate cursor save/restore information for secondary screen
377         fixed CSI cursor movement
378         fixed typos causing compile failure - reported by various
379         fixed UNSHIFTED_SCROLLKEYS
380
381 Mike Hopkirk (Hops) <hops@sco.COM>
382         fixed SB_BORDER scrollbar delineator
383
384 2.6.PRE3 to 2.6.0
385 \-----------------------------------
386
387 Geoff Wing <gcw@pobox.com>  et al.
388         fixed configuration for many systems
389
390 Ha Shao <hashao@china.com>
391         added support for ZH_CN (GB2312) fonts and encoding.
392
393 2.6.PRE2 to 2.6.PRE3
394 \-----------------------------------
395
396 Geoff Wing <gcw@pobox.com>
397         fixed several OOB memory accesses and leaks (mostly found by
398                 Rob Somerville <somervil@cadvision.com>)
399         added shift up/down arrows a la shift prior/next
400         added SCROLL_ON_SHIFT, SCROLL_ON_META, SCROLL_ON_CTRL to feature.h
401
402 Vaughn Cato <vcato@bellsouth.net>
403         fixed jerky selection for some people (esp. Linux)
404
405 Peter H. Chou <pchou@leland.Stanford.EDU>
406         fixed floating scrollbar (trough) to not affect NeXT scrollbar 
407
408 MANTANI Nobutaka <nobutaka@nobutaka.com>
409         fixed two problems on X Input Method: 1) Can't display preedit area
410                 in "OverTheSpot" input style with some input methods.
411                 2) The location of preedit area in "OffTheSpot" input style
412                 is wrong.
413
414 Yasuda Tsutomu <_tom_@sf.airnet.ne.jp>
415         fixed some multichar set (Kanji) selection
416         added better selection request type conversion
417
418 2.6.PRE1 to 2.6.PRE2
419 \-----------------------------------
420
421 Geoff Wing <gcw@pobox.com>
422         fixed declaration position for COLORFGBG env var - really fixed this
423                 time (noticed by Rob Somerville <somervil@cadvision.com>)
424         fixed transparent term reparenting/configure issues
425         fixed some documentation (noticed by
426                 Richard Browne <richb@timestone.com.au>)
427
428 MANTANI Nobutaka <nobutaka@nobutaka.com>
429         added XIM (X Input Method) enhancements
430         added input of multibyte characters with XIM (X Input Method)
431                 enhancements via input styles "OverTheSpot",
432                 "OffTheSpot" and "Root"
433         added configure option --enable-xim
434         added resources "inputMethod" (-im), "preeditType" (-pt)
435         changed configure to search for libxpg4, needed for FreeBSD's
436                 setlocale()
437
438 2.4.10 to 2.6.PRE1
439 \-----------------------------------
440
441 Geoff Wing <gcw@pobox.com>
442         fixed scrollbar slider drawing to have a minimum size (noticed by
443                 Brian Korver <briank@cs.stanford.edu>)
444         fixed backward #ifdef's on JUMP_MOUSE_WHEEL
445         fixed coredump on paste after terminal reset
446         fixed bad marking on selection with old selection (noticed by
447                 Paul Slootman <paul@wau.mis.ah.nl>)
448         fixed bad cursor colour setting (noticed by
449                 Louis-David Mitterrand <mito@aparima.com>)
450         fixed octal recognition from strings (hopefully no-one noticed)
451         fixed proto generation awk script (noticed by
452                 Paul D. Smith <psmith@BayNetworks.COM>)
453         changed distribution to include protos, for bad systems
454         added configure check for XPointer (needed for SunOS; comments by
455                 Moritz Barsnick <barsnick@gmx.net>)
456         fixed export of COLORFGBG (noticed by
457                 Moritz Barsnick <barsnick@gmx.net>)
458
459 Alfredo K. Kojima <kojima@windowmaker.org>
460         changed NEXT_SCROLLBAR code to produce real NEXTSTEP scrollers
461         added inheritPixmap support - terminal window uses parent pixmap
462
463 Sasha Vasko <sashav@sprintmail.com>
464         fixed handling of background change via property _XROOTPMAP_ID
465
466 2.4.9 to 2.4.10
467 \-----------------------------------
468
469 Geoff Wing <gcw@pobox.com>
470         fixed screen refreshing - significant reduction of XDrawString() et al
471                 calls in many cases leading to large speed increase,
472                 especially for remote X clients
473         fixed source code const stuff
474         fixed DISPLAY_IS_IP feature
475         changed window creation, menubar reading, etc. order and removed one of
476                 my earlier hacks
477         changed configure to be less extreme about X libs
478
479 2.4.8 to 2.4.9
480 \-----------------------------------
481
482 Geoff Wing <gcw@pobox.com>
483         changed screen allocation to be safer
484         added several xterm style window operations and reports DEC style
485                 escape sequences
486         fixed handling of some DEC style escape sequences
487         fixed menubar display
488         fixed outline cursor removal
489         fixed clear selection when writing within a selection
490         added resources to handle backspace and delete
491         changed source code organisation again - also be nicer when making
492                 in a different directory
493         added probe of ModifierMapping for Meta/Alt and NumLock keys
494         removed resource to set Meta/Alt key
495         added support to allow compilation of both old and new selection
496                 styles
497         changed internals - allocate rs_* as rs[Rs_*]
498
499 Stanislav Meduna <stano@trillian.eunet.sk>
500         fixed checking of Xsetlocale(), setlocale() in configure
501
502 2.4.7 to 2.4.8
503 \-----------------------------------
504
505 Geoff Wing <gcw@pobox.com>
506         fixed XPM handling of position in geometry
507         changed XPM tiling to have the X server tile in the basic case
508         moved several configuration options from feature.h to configure
509         fixed introduced pixel dropping bug when RS_DIRTY was removed
510         added `troughColor' resource - the original patch written by
511                 Reid D Rivenburgh (noted below) was lost and never added
512         fixed border pixel colour - if not set, use foreground not background
513         fixed handling of cursorColor/cursorColor/colorBD/colorUL to always
514                 use the _current_ fg/bg colours appropriately if unset
515         changed source code organisation - moved some things into screen.h -
516                 to allow other add-ons to access screen structures without
517                 including all of rxvt.h
518         changed internals - ripped out RS_Cursor/RS_Select to make basic
519                 multichar sets (not Kanji/Big5) always enabled - thus handle
520                 selection and cursor display differently
521         fixed bug on scroll lines affecting selection
522         changed rmemset to use a type which is the same size as an (int *) -
523                 based on comments by Paul Slootman <paul@wurtel.demon.nl>
524         fixed pointer colour change on default fg colour change
525         changed handling of backspace/delete keys - if not disabled during
526                 ./configure then settable via resources - defaults similar
527                 to previous
528
529 2.4.6 to 2.4.7
530 \-----------------------------------
531
532 Geoff Wing <gcw@pobox.com>
533         moved several configuration options from feature.h to configure
534         added configure option to use system memset()
535         added support for no multichar sets to allow 2 byte rendition type
536         changed rmemset for slightly more optimised execution
537         changed source code organisation slightly
538
539 Guillaume Laurent <glaurent@worldnet.fr>
540         added Meta modifier selectable via resource ``modifier''
541
542 John E. Davis <davis@space.mit.edu>
543         added print mode to accept ESC sequence variation
544
545 2.4.5 to 2.4.6
546 \-----------------------------------
547
548 Geoff Wing <gcw@pobox.com>
549         merged support for Big5 & Kanji.
550         changed short option: fk --> fm
551         changed long options: kfont/cfont --> mfont
552         changed long option: kanji_encoding --> multichar_encoding
553         changed font list in feature.h - user define list of fonts
554         fixed configure check for Xlocale()
555         added configure option --enable-dmalloc (Gray Watson's malloc)
556         added configure option --enable-dlmalloc (Doug Lea's malloc)
557         added support for Cygnus Solution's GNU-Win32 extensions (b18 tested)
558         fixed utmp/wtmp handling on machines with updwtmpx()
559         added support for old rxvt style selection - OLD_SELECTION
560         changed define of struct screen_t to rxvt.h
561         changed internal handling of bold overstrike pixel dropping - prescan
562               line
563         changed internal handling of selection mechanism to properly support
564               multiple methods - and optimized
565         changed internal handling of selection sync'ing - and optimized
566         added assert()s via DEBUG_STRICT define to catch some possible bugs
567         fixed scrollbar colour on mono displays
568         changed privilege revocation to before we do anything
569         fixed selection clearing when across the screen boundary and we swap
570               screens
571         fixed resize / screen refresh order when changing scrollbar display
572         fixed font handling when we're given  per_char of NULL
573         changed internal handling of row width - maximum line length is now
574               bound by a short - not enforced
575         changed rxvt.1 and refer.html to yodl source
576         
577 Bruce Stephens <bruce@cenderis.demon.co.uk>
578         added support for buttons 4 and 5 (eg. on a mouse with wheel) to
579               scroll screen
580
581 Frank Chen Hsiung Chan <frankch@life.nthu.edu.tw>
582         fixed clash of use of BIG5 as define and enum.  Also typo fix.
583
584 John Eikenberry <jae@ai.uga.edu>
585         added window_group use to window manager properties
586         added NeXT scrollbar style - group up and down buttons together
587
588 Denis N. Antonioli <antonio@ifi.unizh.ch>
589         fixed setting of application icon name and title
590
591 Adam Spiers <adam@thelonious.new.ox.ac.uk>
592         fixed enumeration of *.keysym.* in resources
593
594
595 2.4.4 to 2.4.5 *_Official Release_*
596 \-----------------------------------
597
598 Geoff Wing <gcw@pobox.com>
599         changed the approach at the Boldoverstrike-Pixeldroppings front
600         temporarily fixed a bug in the exposure handling
601         added the --enable-ttygid
602         
603 Oezguer Kesim <kesim@math.fu-berlin.de>
604         switched rxvt licence to GPL
605         changed copyrights of the modules
606         fixed the terminfo/termcap entries
607
608 Mark Olesen <olesen@me.queensu.ca>
609         FINALLY added Double-Click mouse reporting.  Uses the upper bits
610         of the Button character for X11 reporting so should cause no 
611         compatibility problems.
612              * State = (<b> - SPACE) & 60
613                 4    = Shift
614                 8    = Meta
615                 16   = Control
616                 32   = Double Click (Rxvt extension)
617         NOTE: no Release is reported after a double-click and the
618         Release for the first click of a double-click is not reported.
619         This also means the Release event of a very fast click/release
620         won't be reported.
621
622 2.4.3 to 2.4.4
623 \-----------------------------------
624
625 Geoff Wing <mason@primenet.com.au>
626         fixed a bug in the selection mechanism
627
628 Oezguer Kesim <kesim@math.fu-berlin.de>
629         fixed the fontchange-windowresize-racecondition-bug (thanks Geoff!)
630         fixed the broken console-support under solaris
631         added a new terminfo entry for rxvt, based on the one which comes
632               with ncurses (thanks Larry!)
633         some changes on aclocal.m4 and configure
634         removed the XTERM_COLOR_TERM option from feature.h - use
635               --with-term=NAME instead
636         updated the man-page
637
638 Kikutani Makoto <kikutani@jdc.ericsson.se>
639         fixed a bug when copy&paste with kanji
640
641 Paul D. Smith <psmith@BayNetworks.COM>
642         fixed a bug which prevented rxvt to compile when configured with
643               --enable-xterm-scroll
644
645 2.4.2 to 2.4.3
646 \-----------------------------------
647
648 Geoff Wing <mason@primenet.com.au>
649         fixed a bug in scrolling lots of text
650         more work on avoiding the pixel droppings
651         further cleanups
652
653 Oezguer Kesim <kesim@math.fu-berlin.de>
654         some changes on the configure script
655
656 Frank Chen Hsiung Chan <frankch@waru.life.nthu.edu.tw>
657         added experimental big5 support
658
659 Reid D Rivenburgh <reid@lanl.gov>
660         added the "troughColor" resource
661
662 Mike Hopkirk (Hops) <hops@sco.COM>
663         added support of SCO OSr5 pty naming (also UW SysVr5)
664         correction of pty hang with large paste buffer
665             (happens on on all tested platforms)
666         fixed Weird default scroll thumb behaviour
667         fixed incorrect setting of WM_COMMAND if specified with -e switch
668         fixed # of lines of context between screen pages (Shift-Prior/Next)
669         Visual delineation of Scrollbar and vt wdw with dark internal border    
670
671 2.4.1 to 2.4.2
672 \-----------------------------------
673
674 Geoff Wing <mason@primnet.com.au>
675         new anti-bold-overstrike-pixel-dropping (plan 3)
676
677 Oezguer Kesim <kesim@math.fu-berlin.de>
678         fixed a bug which caused rxvt to dump core after resizing and
679               selecting
680
681 2.4.0 to 2.4.1
682 \-----------------------------------
683
684 Geoff Wing  <mason@primnet.com.au>
685         added --with-xpm-{include,library} to autoconf/a4local.m4
686         added VERYBOLD feature
687         fixed some misspelling in autoconf/configure.in
688         added `DEC private modes' 1010 and 1011 for scroll-to-bottom on
689               TTY output inhibit and scroll-to-bottom on keypress
690               together with resources and switches
691         fixed Bold Overstrike Pixel Dropping (Yes Sir!)
692         fixed a bug in scr_E()
693         fixed ^[[*J behaviour - clear to end, clear to beginning, clear
694               whole screen was broken
695
696 Oezguer Kesim <kesim@math.fu-berlin.de>
697         removed DONT_GUESS_BACKSPACE. Instead, you may define either
698                 FORCE_BACKSPACE or FORCE_DELETE or leave both undefined
699                 in order to get ^H, ^? or the current stty settings for
700                 'erase'
701         fixed positioning of text in the top menubar.
702         fixed some missing #define's
703         fixed conditions for MONO_BOLD in scr_refresh() to make 
704               VERYBOLD work.
705
706 Christoph L. Spiel <Christoph_Spiel@physik.tu-muenchen.de>
707         fixed usage of KEYSYM_RESOURCE only when NO_RESOURCES is
708               *not* defined
709         
710 Paul Slootman <paul@wau.mis.ah.nl>
711         added a few XK_KP_* ifdef's in order to get rxvt work with X11R4
712
713
714 Major changes from 2.21b* to 2.4.0
715 \-----------------------------------
716
717 Geoff Wing  <mason@primenet.com.au>
718         screen.c rewritten with changes including:
719                 internal management of screen lines changed
720                 rmemset() used as a fast memset() replacement
721                 selection now the same as XTerm selection
722                 several Kanji display fixes
723                 Kanji properly selectable for EUC JP encoding
724         added continuous scrolling with scrollbar buttons
725         fixed colours when using XPM background pixmaps smaller than the window
726         added resources -sr/+sr, -st/+st
727         fixed application Cursor Keys
728         added many configure enhancements
729         added delimiting line between XTerm scrollbars as per XTerm
730         fixed utmp support
731         added minimal support for proportional fonts
732         added integrated use for Gray Watson's dmalloc package
733         added automatic prototype generation via src/makeprotos-sed
734
735 Grant McDorman  <grant@isgtec.com>
736         added PREFER_24BIT: if the screen is 24 bit, then use 24 bit windows
737               even if default is 8 bit
738         fixed utmpx support
739         added handling for Keypad left/right/up/down, etc.
740         added META8_OPTION for all function keys
741         added RXVT_TERMINFO for setting TERMINFO
742         fixed some bugs in menubar
743         added expanded keysym support
744
745 Paul D. Smith  <psmith@BayNetworks.COM>
746         fixed title setting
747         fixed for building in other directories
748         added pointerColor for changing pointer colour
749         added borderColor for changing border line colour in XTerm scrollbar
750
751
752 2.21a3 to 2.21b*
753 \---------------
754      1. From: Conrad Link <conrad@akira.resnet.rochester.edu>
755         Fixed a bug in the OffiX Drag and Drop support.
756         rxvt inserted two instances of directories or links when they 
757         were dropped onto rxvt.
758         
759      2. From: <aner@zenith.att.com>
760         Fixed a bug that makes rxvt getting constantly "NoExpose" events
761         which it is not handling.
762
763      3. From: Mark Olesen <olesen@weber.me.queensu.ca>
764         Fixed a bug that caused rxvt to hang indefinitly waiting for a 
765         terminating ^G on an XTerm `ESC]' sequence.
766
767      4. From: Bernard PERROT <perrot@lal.in2p3.fr>
768               Mark Olesen <olesen@weber.me.queensu.ca>
769         Fixed a bug that prevented to handle DEC VT2xx's ApLineDel correctly
770
771      5. From: <vikas@insight.att.com>
772               Mark Olesen <olesen@weber.me.queensu.ca>
773         Now the Shift/Ctrl cursor key mappings are enabled regardless of
774         App-Cursor settings
775
776      6. From: Kai Petzke <wpp@mail.physik.TU-Berlin.DE>
777         Fixed a bug with respect to cursor movement. rxvt now handles the
778         'G' and 'd' sequences correctly
779
780      7. From: Geoff Wing <mason@primenet.com.au>
781         Fixed a couple of things in utmp.c 
782
783      8. From: Denis N. Antonioli <antonio@ifi.unizh.ch>
784         Added the "-tn" option and corresponding Xresource variable "termcap".
785         This option specifies the name of the terminal type to be set in the
786         TERM environment variable. 
787
788 2.20 to 2.21a*
789 \-------------
790      1. Oops, forgot to include time headers in menubar.c
791
792      2. Finally got the correct DEC sequence to toggling the behaviour
793         of the backspace key and removed the other non-standard ones.
794         If anyone has a listing of DEC escape sequences they'd like to
795         donate ...
796
797      3. Fixed a bug that prevented an XPM file from being found if it
798         were specified with an absolute path and a geometry string.
799         Made the default scaling zero (tiled) since this is by far the
800         most popular use.
801
802      4. The Motif-style scrollbar is back as a compile-time option.
803
804      5. Added BUGS file and (thankfully) moved coordination of the
805         project to Oezguer Kesim <kesim@math.fu-berlin.de> who also
806         has a mailing list for rxvt development
807
808         Rxvt Workers <rxvt-workers@math.fu-berlin.de>
809
810         To subscribe to the list send email to
811         <rxvt@math.fu-berlin.de> with the body: subscribe
812
813      6. Semi-retirement and finish my thesis ... bye for now - /mark
814
815    --- Oezguer started working on rxvt
816
817      7. Fixed a bug in the new menubar-feature. There were several unchecked
818         strings strcpy'ed which caused rxvt immediately to dump core.
819
820      8. From: Robert Bihlmeyer <robbe@orcus.priv.at>
821         Fixed a bug in rclock.c which prevented it to compile correctly.
822
823      9. From: Mark Olesen <olesen@weber.me.queensu.ca>
824         Overstrike boldfonts and pixmaps now work together without pixel
825         droppings on the screen (at least under Linux).
826
827     10. From: Mark Olesen <olesen@weber.me.queensu.ca>
828         Modified autoconf support: memmove() replacement function
829         supplied for those systems that need it, libXpm should now be
830         correctly found (set in src/Makefile *not* in config.h)
831
832     11. From: Mark Olesen <olesen@weber.me.queensu.ca>
833         Converted doc/rxvt.ref to HTML format.
834                 doc/html/refer.html = master copy
835                 doc/refer.txt  = text version saved using Netscape.
836
837         All HTML documents are put in here, to ease installation
838         elsewhere.
839
840     12. From: Mark Olesen <olesen@weber.me.queensu.ca>
841         Moved some file search function from main.c and some string
842         functions from xdefaults.c to misc.c.
843
844         Changed the implementation details so that `keysym' resource
845         is also available as a command-line long option ... even if
846         you have compiled with USE_XGETDEFAULT.
847
848     13. From: Mark Olesen <olesen@weber.me.queensu.ca>
849         When a new pixmap is loaded, revert to the default scaling.
850
851     14. From: Mark Olesen <olesen@weber.me.queensu.ca>
852         Reworked the menubar to permit multiple menubars in a circular
853         linked list (and all the management functions that entains)
854         and new functions including the following:
855
856                 * reading from files
857                 * dumping all the menubars
858                 * clearing a menu (without removing it)
859                 * setting a backgroudPixmap
860                 * and many other features.
861
862         The menu syntax has changed very slightly from the last
863         version, but now provides greater flexibility ... see
864         refer.html for details.
865
866         Added the `menu' resource/long-option so a startup menu
867         can be specified. eg,
868                 rxvt -menu my.menu -e rlogin machine -l user
869
870 2.19 to 2.20
871 \-----------
872      1. You can now add snazzy looking menus to any plain (non-X) text
873         application.  At the moment, the menuing system is simple but
874         functional.
875
876         The syntax for controlling the menubar is documented in
877         doc/rxvt.doc, but note that an XTerm sequence `ESC ] 10; Pt
878         BEL' is used so menus created for rxvt will be ignored by an
879         ordinary XTerm.
880
881         It provides sub-menus, click-and-drag, and even some user
882         definable `quick' arrows keys.  However menu manipulation
883         could use refinement to permit multiple menus to be defined --
884         and the menu refreshing could also use some improvement, but
885         it can be extended and refined later as required/desired.
886
887         The files doc/menu.sh and doc/jedmenu.sl show sample
888         implementations of menus.
889
890           -->   It compiles and runs on my machine (AIX 3.2.5)
891                 but THIS IS CONSIDERED BETA (or even ALPHA) CODE!
892
893      2. DEC private modes: Bug fix for 's'ave and 'r'estore parameters,
894         added a 't'oggle parameter to DEC private modes.
895
896      3. Made Backspace key selectable with DEC private mode
897         ESC [ ? 36 h/l/s/r/t (high/low/save/restore/toggle)
898
899      4. Changed the way the scrollBar is realized to permit on-the-fly
900         toggling of the scrollBar display and added a DEC private mode
901         escape sequence for that.  Smoother redraw of scrollBar.
902         Better proportions for the arrows allows a slightly narrower
903         scrollBar.
904
905      5. Added support for XTerm font changing sequence:
906         `ESC ] 50; Pt BEL', with (as usual) a few extras.
907         See doc/rxvt.ref
908
909      6. Adapted experimental XPM buffering from that supplied by
910         Carsten Haitzler <raster@zip.com.au>.
911
912      7. Replaced `wait' with `waitpid' in src/command.c::Child_signal
913         to avoid a race condition and permit use of pclose() on SunOS.
914         Patch provided by <davis@space.mit.edu>, Thanks John!
915
916      8. For easier XPM handling, added `path' resource/long-option and
917         substantially enhanced pixmap scaling to provide very exact
918         control over scaling and positioning of the XPM background
919         image.  The XPM XTerm escape sequence has been extended to
920         provide a convenient facility for on-the-fly rescaling.
921         Export COLORTERM="rxvt-xpm" instead of COLORTERM="rxvt"
922
923      9. Added export COLORFGBG to give hints to color applications.
924         Typically one of these values is exported, in which `fg' and
925         `bg' are numbers 00-15:
926
927         COLORFGBG="default;default"
928                 -fg -bg colors don't match any of color 0-15
929
930         COLORFGBG="fg;default"
931                 -fg color matches color 0-15, but -bg color doesn't
932
933         COLORFGBG="default;bg"
934                 -bg color matches color 0-15, but -fg color doesn't
935
936         COLORFGBG="fg;bg"
937                 -fg -bg colors match color 0-15
938
939         When compiled with XPM support, the last two values are
940         rendered as follows:
941
942         COLORFGBG="default;default;bg"
943                 -bg color matches color 0-15, but -fg color doesn't
944
945         COLORFGBG="fg;default;bg"
946                 -fg -bg colors match color 0-15
947
948     10. Disable Shift+Prior/Next and scrollBar if saveLines == 0.
949         Slight change to key-processing so `shift+meta+key' and
950         `shift+ctrl+key' gets processed as `shift+key'.  This provides
951         a way to avoid interpretating `Shift+Prior', `Shift+Next', and
952         `Shift+Insert'.
953
954         Also, added DEC private mode sequence `ESC [ ? 35 h/l/s/r/t'
955         to disable Shift+key interpretation.
956
957         Provide for Ctrl+Shift+<KEY> combinations for function keys.
958         See doc/rxvt.ref
959
960     11. Always match long-option names, even when only preceded by a
961         single -/+.
962
963 2.18 to 2.19
964 \-----------
965      1. Minor alteration to input mode for Kanji processing.
966
967      2. rclock: -adjust option, support for exec on startup syntax,
968         date format may now also include the century
969
970      3. Made mouse double-click respect autowrap lines.
971
972      4. Added marks for folded editing.
973
974      5. Added Offix DND (Drag 'n' Drop) protocol.
975         Added support for XA_TARGETS.
976
977      6. added Carsten Haitzler <raster@zip.com.au> XPM patches to load
978         an XPM file for the background of the terminal window.
979         Uses resource `Rxvt.backgroundPixmap' or long-option
980         `--backgroundPixmap'
981
982      7. Use these (XTerm) keybindings exclusively and remove the old
983         equivalent bindings:
984                 Shift-Prior  = scroll up
985                 Shift-Next   = scroll down
986                 Shift-Insert = paste mouse selection
987
988                 Shift-KP_Add      = bigger font
989                 Shift-KP_Subtract = smaller font
990
991 2.17 to 2.18
992 \-----------
993      1. Check for NULL pointers in command-line processing (oops)
994         Also fixed processing of `hidden' arguments such as -d, -g, -T
995
996      2. Fixed terminfo hpa/vpa: was `\E..' instead of `\E[..'
997         added invisible cursor (ESC[?25h / ESC[?25l)
998
999      3. Fixed broken kanji characters (?? and disappeared cursor box ??)
1000         thanks to <manabe@Roy.dsl.tutics.tut.ac.jp>
1001
1002      4. In privileges(), changed setuid/setgid to seteuid/seteguid so that
1003         it's possible to switch back to root later.
1004
1005         Perhaps fixed svr4 problems (reports no tty, no job control) in
1006         get_tty() ... need to detect these SVR4 features in the configure
1007         script.
1008
1009      5. Restored scrollColor, topShadowColor, bottomShadowColor resources
1010         that somehow got lost between the beta and release versions.  For
1011         monochrome displays, fixed scrollbar so it will be visible and
1012         suppress color changes.
1013
1014      6. Final? iteration on selection.  Store selection text with LF
1015         line-endings but paste into rxvt with CR endings.  Selection now
1016         preserves the newline when trailing space is stripped from
1017         non-autowrap lines.  Compile-time support for using a keystroke to
1018         paste from the cut-buffer.
1019
1020      7. Fixed utmp.c to handle both sysv and bsd pty names.  More changes in
1021         the works to improve documentation and eliminate race conditions ...
1022         this, thankfully, is being done by someone else.
1023
1024      8. Added European language support (X11R6) - let me know of problems
1025         and fixes since I only have X11R5.
1026
1027      9. Changed names of color10-color17 to color8-color15 to match with
1028         those used by color_xterm ... sorry for the inconvenience, but I
1029         didn't have an X11R6 xterm manpage until now and long-term
1030         compatibility is quite important.
1031
1032         Added a real bold font (define USE_BOLDFONT).  I still think it's
1033         too much work to avoid pixel droppings for overstrike fonts.
1034         Added support for specifying colors for bold/underline
1035         (colorBD/colorUL) but it's only done when the foreground = the default
1036         foreground ... see the manpage.
1037
1038         Compile-time selection of TERM="xterm-color".
1039
1040         Reduced the number of rarely-used command-line options since they
1041         are accessible on the command-line via their resource names as long
1042         options.  More rigid differentiation between long and short options:
1043         long options are --/++ prefixed; short options -/+ prefixed.  Added
1044         long-option help to give the resource names.
1045         Removed run-time selection of right-hand scrollbar and arrows.
1046         Removed run-time selection of (pageup_key/pagedown_key/alert_key).
1047
1048     10. Changed Ctrl-Up,Down,Left,Right to emit "\EOa,b,c,d" instead of the
1049         previous "\E[^A,^B,^C,^D" to avoid problems associated with having
1050         an embedded "^C" in a key-sequence.  Disallow 80/132 column
1051         switching as the default (same as xterm).
1052
1053     11. Check for seteuid().  Add "ttcompat" module for SVR4.
1054
1055     12. A few people suggested removing the keystroke for toggling MapAlert
1056         and so I have.  I agree that it was pointless and/or annoying since
1057         there was no way of determining the current toggled state anyhow.
1058
1059     13. Fixed missing `ttydev' for _sgi.  Fixes for BSD utmp support.
1060         Exported WINDOWID before the window was created (oops).
1061
1062     14. Mouse cut&paste of autowrapped lines should be improved, fixed
1063         bug in screen.c::scroll_text().
1064
1065     15. As was pointed by a user -->> in keeping with X conventions, only an
1066         application that starts with 'x' should capitalize the first two
1067         letters of the resource file, so the rxvt resource file (and class
1068         name) should be named Rxvt not RXvt, this is a minor point.
1069
1070     16. rclock: As well as message reminders, rclock can launch programs and
1071         (if no message text is given) act as a cron-type of program.  Made
1072         default font `7x14'.  Fixed graphics context when mail is waiting
1073         and a reminder is issued - so the message is actually visible!
1074
1075     17. As suggested by a user, changed the bolding algorithm to be slightly
1076         more intuitive:
1077                 1. colorBD (if specified)
1078                 2. color0-7 -> color8-15 (if possible)
1079                 3. boldFont (if specified and found)
1080                 4. overstrike (last resort)
1081
1082         This takes advantage of the color capability and is the most
1083         consistent when toggling font sizes on-the-fly.  If you never want
1084         overstrike (looks ugly and leaves pixel droppings) or boldFont (you
1085         like to switch font sizes on-the-fly), you can remove them at
1086         compile-time.  The other elements are similarly compile-time
1087         selectable.
1088
1089     18. Another user suggestion: scrollbar made more distinct by having the
1090         `trough' a different color from the slider -- I opted for making it
1091         the same as the default background color so that the slider and
1092         arrows appear to `float' on the window.  Also removed topShadowColor,
1093         bottomShadowColor resources as unnecessary.
1094
1095     19. Dropped distribution of vttest since Tom Dickey <dickey@clark.net>
1096         is working on an improved version.
1097
1098 2.16 to 2.17
1099 \-----------
1100      1. Fixed problem in scr_refesh_region() that was introduced in v2.16
1101         The problem of `pixel droppings' continues when bold is simulated
1102         using overstrike.  Using XCopyArea() sometimes helps, but the
1103         preferred and simplest solution is item 4 below.
1104
1105     2.  Removed 7bit mode.
1106
1107         Changed definition of meta so that the ESCAPE is the default and
1108         using meta to set the 8bit on an option that can be made run-time
1109         configurable (assuming people still use this).
1110
1111         Added -/+rv command-line option, resource reverseVideo.  NB: it works
1112         slightly differently from xterm's in that foreground/background are
1113         swapped even if they have been explicitly set.
1114
1115         Removed NO_COLOR option -- no more monochrome rxvt (one too #ifdef's).
1116
1117         Inherit existing stty settings (at least for control characters)
1118         and set value of BackSpace appropriately.
1119
1120         Added defines DONT_GUESS_BACKSPACE and NO_DELETE_KEY
1121
1122     3.  Added 3D style scrollbar and removed all the old bitmapped
1123         scrollbars and arrows with the only exception being the xterm
1124         lookalike XTERM_SCROLLBAR which is available in a single width.
1125         With arrows, scrollbar behaviour somewhat resembles Motif
1126         behaviour.  Without arrows, it's the standard xterm behaviour.
1127
1128         The default scrollbar (defined at compile-time or set by using
1129         scrollBar: True) is to have a scrollbar with arrows arranged on the
1130         right-hand side. The scrollBar resource is now exclusively a boolean
1131         value
1132
1133         scrollbar resources:
1134
1135                 scrollColor
1136                 topShadowColor
1137                 bottomShadowColor
1138
1139         NB: if topShadowColor/bottomShadowColor are unset, their values are
1140             calculated from scrollColor using an algorithm adapted from
1141             fvwm so it shouldn't be too hard to find scrollbar colours that
1142             look good with your window manager and don't consume an entire
1143             colormap.
1144
1145     4.  Added smarter handling of bold/blink when applied to the default
1146         fg/bg colours:
1147
1148         If the pixel value of fg/bg matches the pixel value of colour COLOR0
1149         through COLOR7, then applying bold/blink to the default fg/bg will
1150         select the appropriate colour from BOLD0 through BOLD7 instead of
1151         using the overstrike bold.
1152
1153         This seems to be the best way to handle bold/blink attributes when
1154         the foreground/background match and ANSI colour anyhow.  For
1155         convenience, it is possible to use colour aliases (next item) for
1156         the foreground/background colours instead.
1157
1158         My preference is a dull Canadian look:
1159
1160                 RXvt*foreground:        7
1161                 RXvt*background:        10
1162
1163     5.  Changed colour aliases (item 7 of last change) and dropped the `#'
1164         prefix.  This avoids confusion with the regular #rrggbb format of
1165         specifying colours and is unambiguous since there are no X11 colours
1166         starting with a digit.  This also avoids the need to quote the `#'
1167         to protect against shell interpretation.
1168
1169     6.  Added colour cursor support.
1170             -cr (cursorColor), as per XTerm -> the (rectangle) cursor colour
1171             -cr2 (cursorColor2), only RXvt -> the text colour.
1172
1173         The cursorColor2 maintains contrast in a colour environment and
1174         is optional.
1175
1176         Thanks Raul Garcia Garcia <rgg@tid.es> for the idea.
1177         Cleaned up scr_refresh (again <sigh>) to avoid some unnecessary
1178         colour changes and removed the reverse video graphics context and
1179         just swap foreground/background colours instead.
1180
1181     7.  Typo in command.c: had seteuid() instead of seteguid() <sigh>
1182         Use cfsetospeed()/cfsetispeed() for POSIX termios handling.
1183
1184     8.  Ignore the loginShell option/resource for programs that DON'T end
1185         with "sh".  A hack but it keeps `rxvt -ls -e rlogin machine' from
1186         failing and I don't know of (m)any shells that don't end in "sh".
1187
1188     9.  Hard-code dependencies in Makefiles to avoid using X11 makedepend.
1189         Added check for atexit() to catch the problem that exists on SunOS
1190         but not on Solaris.
1191
1192    10.  Collected command-line option parsing and X11 resources into a
1193         single file (xdefaults.c), and introduced a monolithic structure
1194         (with bit-flags for logical options) to eliminate the massive
1195         if-else-if parsing and to reduce possible overlaps/oversights
1196
1197         Short help provided for an incorrect argument.
1198
1199         For more consistency, more flexibility, and fewer switches,
1200         made -grk4/-grk9 options obsolete, and replaced with `-grk mode'.
1201         Added the resource `greek_keyboard' while I was there.
1202
1203         It is also possible to use a `--' or `++' prefix to get so-called
1204         `long options' that correspond to the resource name.
1205         For example,
1206
1207                 rxvt +ls -bg Blue
1208                 rxvt +loginShell -background Blue
1209                 rxvt ++loginShell --background Blue
1210
1211                 rxvt ++ls --bg Blue             Error!
1212
1213    11.  Changed REFRESH_PERIOD to 1 in command.c, the old idea of providing
1214         for fast and furious scrolling needs to be reconsidered so that `cat'
1215         works.  Still needs some investigation.
1216
1217    12.  Changed scr_poweron(), which corresponds to `ESC c', to also reset
1218         the scrollback buffer.
1219
1220    13.  Changed scr_change_screen() (when compiled with NO_SECONDARY_SCREEN)
1221         so that switching from the secondary to primary screen will push the
1222         old secondary screen into the scrollback buffer.  This is fairly
1223         useful if your terminfo has have rmcup=\E[?47l\E8, smcup=\E7\E[?47h.
1224         It is NOT particularly useful if rmcup includes \E[2J, like some do.
1225
1226         Running with NO_SECONDARY_SCREEN provides faster switching than
1227         with a real secondary screen and saves memory too.
1228
1229    14.  Now that key values have mostly stabilized, moved the compile-time
1230         key choices to "feature.h" ("keys.h" now obsolete).
1231
1232 2.15 to 2.16
1233 \-----------
1234     1.  Misc cleanup, rxvt once again passes the vttest (and reverse video
1235         works again).  Kanji support tested and seems to be okay.  Finally,
1236         an okay set of regular/bold colours.  Compile-time option for a
1237         right-side scrollbar.
1238
1239     2.  Ctrl-minus now (correctly) generates ^_ [0x1F].
1240         Changed termcap/terminfo to use normal cursor keys instead of
1241         application cursor keys (rmkx/smkx, ke/ks) -- otherwise subsequent
1242         rxvt/xterm starts with the application cursor keys active.
1243
1244     3.  Fixed scr_reset() so that resizing is a lot more sensible.
1245         Implemented the equivalent SouthWest resizeGravity (xterm X11R5) so
1246         the bottom line of text on the screen stays fixed.  If the window is
1247         made taller, additional saved lines will be scrolled down onto the
1248         screen; if the window is made shorter, lines will be scrolled off
1249         the top of the screen, and the top saved lines will be dropped. The
1250         old resizing code is available with -DOLD_UGLY_RESIZE.
1251
1252     4.  Altered code so all man-page documented command-line options will
1253         not trigger errors even if the feature wasn't compiled into rxvt.
1254         Added old, backward compatibility command-line options, but they're
1255         simply ignored. Eventually they can be removed -- perhaps Jan'97?
1256
1257                 `-8':           use `+7'
1258                 `-fat':         use `-sb'
1259                 `-thin':        use `-arrows'
1260                 `-meta8thbit'   use `-meta8'
1261                 `-metaescape'   use `-meta'
1262                 `-font_list'    use `-font1', `-font2', etc.
1263
1264         These ones are just too weird to support:
1265
1266                 `-ls-':         use `+ls'
1267                 `-ma-':         use `+ma'
1268
1269     5.  Removed secure-keyboard option, too problematic and obscure.
1270
1271     6.  First attempt at GNU autoconfig.
1272         Still needs some work, but it's mostly okay.
1273
1274     7.  Added minor aliases for foreground/background colours.  This permits
1275         colour specifications like -fg "#13" -bg "#10", which would set the
1276         foreground to colour 13 (bright yellow) and the background to colour
1277         10 (bright black).  It's not terribly useful yet, but might
1278         eventually be a nice way to have bold/blink colour work even on with
1279         the standard fg/bg colours.
1280
1281 2.14 to 2.15
1282 \-----------
1283     1.  Small bug: initial width incorrect when there was no scrollBar.
1284
1285     2.  Close the gaping security hole.  Renounce setuid/setgid privileges
1286         immediately and only take them up as needed -- chown() or writing
1287         into /etc/utmp.
1288
1289     3.  Reverted to using `<' and '>' to toggle smaller/bigger fonts. It
1290         seems that many didn't like KP_Subtract/XK_KP_Add -- conflicts with
1291         some editors, and not all terminals have a Keypad anyhow.
1292
1293     4.  Man page reformatted by Piercarlo Grandi <piercarl@sabi.demon.co.uk>
1294         so that it "now is done in the most delightful [sic] elegant 'roff
1295         style :-)"
1296
1297     5.  Started to integrate the Kanji support based on old patches from the
1298         Linux-JE (Japanese Extensions) project.  Consider it alpha until one
1299         of the JE authors gives it a thorough check.
1300
1301     6.  Added compile-time selection of a few different scrollbar widths.
1302
1303     7.  When reading X resources, rxvt now recognizes two class names:
1304         "XTerm" and "RXvt".  The reason for two distinct names is that there
1305         are many options common between rxvt and xterm -- to which the class
1306         name "XTerm" permits easy access and configuration -- but there are
1307         also several options, notably colours and key-handling, unique to
1308         rxvt but which are useful to share between different rxvt
1309         configurations; the class name "RXvt" permits this.
1310
1311         NB: The "RXvt" class takes precedence (in the event of a clash) and
1312             is the only one ever used for the application defaults file.
1313
1314     8.  The initial value used for the Backspace key (^H or ^?) is now
1315         determined from the value of CERASE used to set the termios
1316         structures.  This removes the need for the BACKSPACE_AS_DELETE
1317         compile-time option.
1318
1319 2.13 to 2.14
1320 \-----------
1321     1.  Default HOTKEY prefix can now be choosen as `meta', `ctrl' or
1322         `shift'. Moved font toggle to KP_Add/KP_Subtract to resemble
1323         resolution toggling of the XFree86 server (Linux) and so that Alt-<
1324         can generate ESC-< for Emacs usage.  Man page and usage() reflect
1325         the changes. Note that if you choose the hotkey to be `shift', to
1326         mimic the Linux console scrollback, you'll probably want different
1327         keybindings for mapAlert and Secure.
1328
1329         The choice of the HOTKEY (ctrl or meta) prefix and some of the
1330         key-strings can be compile-time defined in "rxvtkeys.h", although
1331         probably the only changes desired will be in the string value
1332         associated with XK_Delete and in the choice of a HOTKEY (ctrl or
1333         meta) prefix.
1334
1335         Use shift or ctrl to temporarily toggle Backspace from ^H to ^?.
1336         Use shift to temporarily toggle the application keypad.
1337
1338     2.  Patch so that setting bold or blink works before or after changing
1339         the colour (it used to only work before changing the colour). Also
1340         added the option of having DOS VGA colours.
1341         Thanks Avery Pennarun <apenwarr@foxnet.net>
1342
1343     3.  Extensive reworking of pseudo-tty handling and addition of BSD sgtty
1344         terminal handling and new utmpx (Solaris 2.x) support. MANY thanks
1345         to Raul Garcia Garcia (rgg@tid.es).
1346
1347         POSIX wtmp support added by Piet W. Plomp (piet@icce.rug.nl)
1348
1349         Added -/+ut option (resource: utmpInhibit) so you can sometimes be
1350         harder to find :)
1351
1352     4.  Finally? cleaned-up selection so that it works properly -- clears a
1353         previously selected region without causing a core dump -- define
1354         NEW_SELECTION.
1355
1356         I believe that this should fix a long-standing problem with the
1357         selection mechanism -- probably back from when selection of the
1358         scrollback was added -- whereby all accounting was done in terms of
1359         screen row values [0 .. RxvtWin.rows-1] plus the current offset
1360         value.  The anchor and end points were scrolled with the screen, but
1361         the beginning point wasn't and extending a region that had its
1362         anchor scrolled-off would give complete garbage.  The new selection
1363         scheme has lots of bounds-checking (too much?) to prevent these
1364         problems.  If PRINT_PIPE is not defined, then you can use
1365         PrintScreen to dump some of the current selection state -- this
1366         should help debugging.
1367
1368         Thanks to John Davis (davis@space.mit.edu) and Piet W. Plomp
1369         (piet@icce.rug.nl) for helping to diagnose the problem.
1370
1371     5.  Use information request `ESC [ 8 n' to change the window title
1372         to the current rxvt version so you can find out what version you
1373         have.
1374
1375     6.  Added simple code to permit run-time definition of the keysyms
1376         0xFF00 - 0xFFFF if KEYSYM_RESOURCE (for FAKE_RESOURCES only) is
1377         defined.  It's not as pretty as that used by xterm since it only
1378         works with keysym values rather that key names, but the impact on
1379         code size is quite minimal.  I use it in conjunction with `-name vm'
1380         to remap arrow and function keys for tn3270 ... quite handy.
1381         At the moment the string length is only limited by the line length
1382         (currently 256) used in "resources.c"
1383
1384         The syntax (at the moment) is
1385
1386                 rxvt*keysym.0xFFnn:     "a string value"
1387
1388         where `nn' is a 2 digit hex value 00 to FF.  Of course if there were
1389         an easy and small means of converting key names to keysym values,
1390         then that would be better.
1391
1392         The enclosing quotes are required to start/end with whitespace.
1393         Most of the usual escape values can be used:
1394
1395                 \b - backspace
1396                 \e - escape
1397                 \n - newline
1398                 \r - carriage return
1399                 \t - tab
1400                 \000 - octal number
1401
1402         Anyhow, here's a brief example of what it looks like
1403         in ~/.Xdefaults:
1404
1405         ! F11 key - mimic the output of F1
1406         rxvt*keysym.0xFFC8: \e[11~
1407
1408         ! F12 key - whatever
1409         rxvt*keysym.0xFFC9: Hello World!\n"\"String\" ends with whitespace  "
1410
1411         ! Delete key - remap
1412         rxvt*keysym.0xFFFF: "Delete :)"
1413
1414         !Scroll_Lock as flow-control (^S)
1415         rxvt*keysym.0xFF14: \023
1416
1417     7.  Oops -- fixed resource name from scrollbar to scrollBar. Fixed
1418         cursor colours to black on white (like xterm) for the scrollbar
1419         cursors, but I've left the xterm (`I'-bar) cursor as foreground on
1420         background because it looks so nice.  Allocate all colours when
1421         creating the window so that we don't have to worry about it later
1422         and so that we can avoid potential hassles with colour-hungry
1423         applications like Netscape.
1424
1425     8.  Added a way to distinguish an rxvt from an xterm via the obsolete
1426         ESC Z sending the vt100 answer string with 'c' -> 'C'.
1427
1428         Added support for resolving the actual IP number of the host for
1429         remote DISPLAYs.  Changed the answer back for ESC[7n to add a
1430         trailing newline to support easier input into the shell.  When the
1431         display is local (i.e. :0), we add support for sending the first
1432         non-loopback interface IP number as the DISPLAY instead of just
1433         sending the incorrect ":0".  This way telnet/rlogin shells can
1434         actually get the correct information into DISPLAY for xclients.
1435
1436         Courtesy of Chuck Blake <cblake@BBN.COM>
1437         [Note: I've not had a chance to thoroughly test this -- mjo]
1438
1439 2.12 to 2.13
1440 \-----------
1441     1.  Shift and Control now only work for non-application mode cursor
1442         keys and with function keys.
1443
1444     2.  Override XTerm mouse reporting with either Mod1 or Shift.  X11
1445         mouse reporting now properly includes modifier keys (see rxvt.ref).
1446         Although this effectively degenerates to the Control modifier alone
1447         since both Shift and Meta are used to temporarily disable mouse
1448         reporting -- I don't know an easy way around this but that's what
1449         XTerm does, although since it uses Control to pop-up menus, that
1450         doesn't get transmitted either.
1451
1452     3.  Moved a few more configuration items from Imakefile to configure.h
1453
1454     4.  Added XAPPLOADDIR define to the Imakefile to allow use of the
1455         application defaults file XAPPLOADDIR/RXvt when rxvt has been
1456         compiled with FAKE_RESOURCES.  Now, the following files are
1457         checked:
1458                 XAPPLOADDIR/RXvt        (compile-time defined)
1459                 $HOME/.Xdefaults or $HOME/.Xresources
1460         suggested by John Gotts <jgotts@engin.umich.edu>
1461
1462     5.  Applied patches by Edward D.H. Liu <dhliu@solar.csie.ntu.edu.tw>
1463         to fix the speed of pasting rxvt's selection to motif, xew or tk.
1464         Finally! reasonable pasting speed to these applications.
1465
1466     6.  patches by Gregory Margo <gmargo@newton.vip.best.com>
1467         for xterm-style proportional scrollbar behaviour:
1468                 If pointer is near top, scroll one line.
1469                 If pointer is near bottom, scroll full page.
1470         refreshPeriod resource and -refresh option ... still wishing
1471         for faster screen refreshing.
1472
1473     7.  Bug fix for partial matches (FAKE_RESOURCES).  In addition to
1474         resources for resource name `rxvt', also get resources for class
1475         name `XTerm' as well.  Remove checking for `command' resource since
1476         it's not found in xterm nor was there any code in place to parse the
1477         command arguments ... better just to use the command-line -e option.
1478         Replace `fontList' with font1, font2, ... etc. for better xterm
1479         compatibility and for ease of configuration.  Changed processing of
1480         string resources and command-line string options to avoid allocating
1481         redundant memory.
1482
1483     8.  Previously selected region is now properly cleared when Button1 is
1484         pressed.  Still have problems with click-and-drag when Mod1 or Shift
1485         is used to override mouse reporting -- argh!  Until someone gets
1486         this properly patched, use Button1 followed by Button3 (to extend
1487         region) in these instances.
1488
1489     9.  Understands ANSI set default fg/bg colour (\E[39m / \E[49m)
1490
1491    10.  In the screen accounting used in screen.c, use a '\n' to terminate
1492         wrapped lines instead of '\0'.  This should avoid mouse selection of
1493         wrapped lines from including a bogus newline.  No known
1494         side-effects, but changes isolated by #define NEW_WRAPTYPE.
1495
1496 2.11 to 2.12
1497 \-----------
1498     1.  Extra functionality for XTerm mouse report mode.  If mouse reporting
1499         is enabled (the application will handle mouse events) the normal
1500         scrollbar operation is disabled -- instead rxvt sends UP/DOWN for
1501         the arrow buttons and PageUp/PageDown when Button1 or Button3 are
1502         clicked on the scrollbar.  Use Mod1 (Alt) key to get the normal
1503         scrollbar/arrow button actions and also to get the normal selection
1504         functions -- so that you can still cut/paste between X applications.
1505
1506     2.  New colour possibilities -- 16 colours.  Instead of using fatter
1507         characters, a bold attribute now uses a brighter foreground colour.
1508         Similarly, a blink attribute will use a brighter background colour.
1509         It is also possible to choose these colours through the resources
1510         (color0 -- color7) permit specification of the ANSI colours (black,
1511         red, green, yellow, blue, magenta, cyan, white), the resources
1512         (color10 -- color17) are the brighter bold/blink equivalents.
1513         Define USE_FAKE_BOLD to disable.
1514
1515     3.  Extensive clean-up of source and headers to separate
1516         interdependencies, remove unused variables.  Introduced static
1517         variables wherever possible to limit scoping and reduced the number
1518         of external variables.
1519
1520     4.  Allow NumLock to toggle on/off the application keypad.
1521
1522         Backspace sends '\b', Ctrl-Backspace sends '\177'.
1523         Define BACKSPACE_AS_DELETE to reverse these values or use the
1524         escape sequence:
1525
1526                 ESC [ 36 h              Backspace key sends BS
1527                 ESC [ 36 l              Backspace key sends DEL
1528
1529         XK_End used to send "\033Ow", which is identical to XK_KP_7 and
1530         confuses EDT-type editors. Now,
1531         Home = "\033[7~"
1532         End  = "\033[8~"
1533
1534         Changed Alert & Secure keys from Alt-i & Alt-s to Alt-I & Alt-S so
1535         they aren't so easily toggled.
1536
1537     5.  Extra keystroke info.  Pass Control and Shift indicators for
1538         function keys (similar to the XJed editor)
1539         eg,
1540                 F1      = ESC [11~
1541                 C-F1    = ESC [11^
1542                 S-F1    = ESC [11$
1543
1544         also, pass indication of shift status for arrow-keys
1545         eg,
1546                 Up, Down, Right, Left
1547                   = ESC [A, ESC [B, ESC [C, ESC [D
1548                 S-Up, S-Down, S-Right, S-Left
1549                   = ESC [a, ESC [b, ESC [c, ESC [d
1550
1551         You wouldn't be able to use these keys for termcap/terminfo
1552         applications, but the key sequences are available for remapping
1553         within an application.
1554
1555     6.  Added configure.h which is included by each source file and by the
1556         Imakefile.  Common compilation defines are now all contained in
1557         configure.h with minor system defines remaining in Imakefile --
1558         makes it much easier to configure.  Used XCOMM macro in Imakefile so
1559         that it actually works.  Also added defaults.h for defining
1560         user-specific startup defaults.
1561
1562     7.  Added rxvt.ref to provide documentation of the various terminal
1563         sequences that are processed.  Updated man page to reflect changes.
1564
1565     8.  Use xterm-style -/+ to turn on/off options, rationalized resource
1566         names to more closely resemble xterm.
1567
1568                 Option                  Resource
1569                 -help                   -
1570                 -display displayname    -
1571                 -geometry geom          geometry:
1572                 -bg color               background:
1573                 -fg color               foreground:
1574                 -color<n> color         color<n>: <string>
1575                                         where <n> = [0-7], 1[0-7]
1576                 -fn fontname            font: <string>
1577                 -fontList names         fontList: <string> <string> ...
1578                 -name string            -
1579                 -/+ls                   loginShell: True/False
1580                 -/+ma                   mapAlert: True/False
1581                 -/+vb                   visualBell: True/False
1582                 -/+sb                   scrollbar: True/False
1583                 -/+arrows               scrollbar: Arrows/True/False
1584                 -ic                     -
1585                 -meta8                  meta: 8bit
1586                 -/+meta                 meta: True/False
1587                 -sl number              saveLines: <num>
1588                 -grk4                   -
1589                 -grk9                   -
1590                 -print-pipe name        pipe-pipe: <string>
1591                 -e command arg ...      command: <string>
1592                 -T string               title: <string>
1593                 -n string               iconName: <string>
1594                 -C                      -
1595                 -/+7                    bits: 7/8
1596                 -secure keysym          secure_key: <string>
1597                 -pageup keysym          pageup_key: <string>
1598                 -pagedown keysym        pagedown_key: <string>
1599                 -bigfont keysym         bigfont_key: <string>
1600                 -smallfont keysym       smallfont_key: <string>
1601                 -prkey keysym           printscreen_key: <string>
1602                                         greektoggle_key: <string>
1603                                         cutchars: <string>
1604
1605     9.  Fixed Button actions for XTerm-style scrollbar so that Button1 and
1606         Button3 do different things as they are supposed to.  Replace -/+fat
1607         with -/+sb and -/+arrows for more consistency with XTerm. Decreased
1608         width of `fat' scrollbar (make closer to xterm) and increased width
1609         of `thin' scrollbar (arrows too small) -- they are now the same
1610         width.  Also made it possible to remove the scrollbar altogether.
1611         Added a visual bell.
1612
1613         Added many more defines to further reduce code size for various
1614         cases, see "configure.h".  It is also possible to alter settings in
1615         "defaults.h" for configuration options that will only affect
1616         screen.c and xsetup.c, this should help with compile-time
1617         customization for those who don't want to use Xdefaults.
1618
1619         Added the define REPLACE_SELECTION_NEWLINE to make the substitution
1620         of newlines with carriage returns for selection pasting a
1621         compile-time option.
1622
1623    10.  Fixed the graphics samples so that if you want to it's actually
1624         possible to compile them.  Added -name command-line option so that
1625         it's possible to select different sets of resources.
1626
1627    11.  Integrated initial support for X11 mouse reporting and added
1628         Shift + Function Keys support.
1629
1630 2.10 to 2.11
1631     1.  If NEW_COLOR_MODEL is defined in screen.c, the new model I described
1632         in an earlier email is used. (apparantly there are two, slightly
1633         differnt models for using color extensions in a vt-compatible
1634         terminal. This flag lets you switch.
1635
1636     2.  If XTERM_MOUSE_REPORT is defined in command.c, mouse reporting is
1637         turned on/off via the appropriate escape sequences.  XTerm already
1638         provides this support.
1639
1640     3.  If .Xdefaults does not exist, .Xresources is searched for.  It seems
1641         that many here use .Xresources.
1642
1643 2.09 to 2.10
1644     1.  Really fixed the color problem (?) Got color-ls, and it works now.
1645     2.  Added patch to allow run-time selection of font list.
1646
1647 2.07 to 2.09
1648     1.  Fixed some color-usage errors.
1649     2.  Added double and triple-click support
1650         compliments of ah@doc.ic.ac.uk (Angelo Haritsis)
1651     3.  Added Print Screen capability, as in most vt-100's
1652 2.06 to 2.07
1653     1.  Fixed problems with rxvt screwing up tty permisssions (?)
1654 2.03 to 2.06
1655     1.  Fixed a limit which imposed a maximum width for the
1656         terminal window of 255 characters. There is no limit now.
1657     2.  Made provision for applications to get mouse-click feedback
1658         when user clicks in a graphics window. See graphics_sample
1659 2.02 to 2.03
1660     1.  Fixed memory management just a little.
1661
1662 2.0 to 2.02
1663     1.  Bug fixes for color and graphics.
1664
1665 1.97 to 2.0
1666     1.  Added ANSI color support. Compile with -DCOLOR
1667     2.  Added a graphics mode. Compile with -DGRAPHICS
1668 1.96 to 1.97
1669     1.  Bug in refresh() which was causing slow refreshes after
1670         clear-screens was fixed. Showed up during emacs start-up.
1671
1672 1.95 to 1.96
1673     1.  rxvt did bad things if it received mouse - Motion events
1674         without a preceeding button-press. Fixed.
1675 1.94 to 1.95
1676     1.  Created a substitute for XGetDefaults, which seemed to account for
1677         1/2 to 2/3 of the memory used by rxvt (according to the SIZE field
1678         of ps output). My substitute only reads the .Xdefaults file. Compile
1679         with -DFAKE_RESOURCES to get my mini- XDefaults handling,
1680         -DREAL_RESOURCES to keep XGetDefault.
1681
1682 1.93 to 1.94
1683     1.  Fixed some minor long-standing errors in the vt100 emulation.
1684     2.  Fixed ALT-<char> handling in command.c
1685     3.  Fixed minor bug with start-of-selection location.
1686     4.  Added xterm-type "extend selection" feature using
1687         mouse button 3. Button 1 always starts a new selection. Button3
1688         tries to extend the current selection if possible.
1689     5.  Fixed problem with bold-face fonts overflowing into
1690         the next character for some fonts.
1691
1692 1.92 to 1.93
1693     1.  ran gprof to find bottle-necks in the code. Halved user
1694         time, but had little effect on total time required to
1695         update the display. Seems worth keeping for the more efficient
1696         user-time, though. At this point, I think that most of the elapsed
1697         time is spent waiting for input or waiting for the X buffers
1698         to flush.
1699     2.  Used to refresh the screen every 2.2 screen-fulls during
1700         flat-out scrolling. Really cuts down on scroll-time. Now,
1701         refresh every screen-full (or when there's a pause in activity),
1702         but when flat-out scrolling starts, decrease the refresh period,
1703         so that its every 10th screenful after a little while. This has
1704         no noticeable visible effect, since the scrolling text is
1705         absolutely unintelligible anyway, but will improve the scroll
1706         "feel" when doing just one or two screenfulls, ie in an ls -l.
1707     3.  Surrounded  the code which uses XCopyArea with #ifdef's
1708         I have never seen this help performance, but I think that there
1709         may be some video-systems which benefit from this, particularly
1710         in a full-screen editor or slow scrolling type of setting.
1711     4.  Performance in flat out scrolling, text only, on a sparc-10,
1712         displaying rxvt on an HDS x-terminal:
1713           nation@snoopy>/usr/bin/time rxvt -e cat k
1714                 6.1 real         3.1 user         2.5 sys
1715           nation@snoopy>/usr/bin/time xterm -e cat k
1716                 40.8 real         4.6 user         3.4 sys
1717
1718 1.91 to 1.92
1719     1.  Added greek-keyboard support patches.
1720 1.85 to 1.91
1721     1.  assorted minor patches
1722 1.82 to 1.85
1723     1.  Fixed ESC c handling.
1724     2.  Fixed minor selection handling bug.
1725
1726 1.81 to 1.82
1727     1.  Fixed slow refresh during selection process
1728     2.  Fixed problem of not correctly clearing selections of 1 character.
1729
1730 1.80 to 1.81
1731     1.  Fixed some scrolling problems, problems with partially obscured
1732         windows.
1733     2.  Added some neat debugging capability in debug.c
1734     3.  Patched up rclock.
1735
1736 1.74 to 1.80
1737     1.  Fixed core dump from selecting past the bottom of the screen
1738     2.  Fixed a few escape sequences, per the vttest program
1739     3.  Broke and fixed handling of moved/resize/new-font handling.
1740     4.  Still can't change tab stops correctly.
1741     5.  Ran vt-100 test suite. Added capability to change tab stops
1742         and enter reverse video, and to switch from 80 to 132
1743         columns and back. Fixed a seg-fault in scroll().
1744
1745 1.70 to 1.74
1746     1.  Fixed cursor drawing errors.
1747     2.  Improved smoothness of scroll-back operations.
1748     3.  Applied some SVR4 patches.
1749     4.  Applied HPUX patches, and a few cursor display patches
1750     5.  Fixed up font-changing routines a bit.
1751     6.  Fixed a scrolling problem for windows taller than the scroll-back
1752         buffer.
1753
1754 1.6 to 1.7
1755     1.  Fixed the problem with random rendition flags in the scroll
1756         back buffer
1757     2.  Fiddled with re-drawing on the scroll-bar, and with
1758         how often refreshing occurs.
1759     3.  Incorporated some AIX patches.
1760     4.  Included #ifdef'd changes to support vt100 printer.
1761     5.  Fixed send_string routine, so that it doesn't loose
1762         data.
1763     6.  Complete re-write of screen.c
1764 1.5 to 1.6
1765     1.  Removed all use of a seperate bold font. Now uses
1766         over-striking exclusively.
1767     2.  Added some more optimizations for drawing speed when
1768         the window is re-sized or moved.
1769     3.  Implemented speed ups in screen.c
1770
1771 1.47 to 1.48
1772     1.  Cleaned up re-drawing on expose events, so rxvt only
1773         re-draws the newly exposed parts of the screen.
1774     2.  Fixed backspace, which must have broken in 1.45.
1775     3.  Added command line option of iconic startup.
1776
1777 from 1.45 to 1.47
1778     1.  Incorporated improved bsd utmp handling from
1779         dperry@ringer.cs.utsa.edu (David Perry)
1780     2.  Fixed a very minor bug where the solid-cursor can leave a
1781         a bit of a ghost when you resize the window. Its stupid,
1782         but it always bothered me.
1783
1784 from 1.4 to 1.45
1785     1.  Fixed scrolling error when switching to larger fonts
1786     2.  Fixed utmp-entry removal for SYSV type systems.
1787     3.  Icorportated patches for FreeBSD and svr4