diff options
-rw-r--r-- | Changes | 1903 | ||||
-rw-r--r-- | src/rxvtperl.xs | 2530 |
2 files changed, 4433 insertions, 0 deletions
@@ -0,0 +1,1903 @@ +rxvt-unicode changelog <= google-friendly title + +TODO: xcopyarea pass broken, fix and improve +TODO: event mechanism that replaces on_user_command with something more scalable. +TODO: slipwheeling needs a keyboard grab to get key release events. +TODO: overlays collide with the way the out-of-focus cursor is being drawn +TODO: "slow" rendering mode for bidi and scripts, pango! +TODO: read property sequence is broken with respect to utf-8 etc. +TODO: slow drag selection on remote display - other things seem fast (rxvt illness, motion hints?) +TODO: better resource handling for tabbar in -pe tabbed. +WISH: investigate -pe tabbed -g 80x25 being 23 not 24 or 25 lines + => when setting the constraints, the wm might (correctly) + resize the outer window, which might result in a smaller window overall. + or something like that. guys, send me a patch. +WISH: coloured pastebin +WISH: load system-wide config file even if we don't have one +WISH: look into XAddConnectionWatch, does anybody need that? +DUMB: support tex fonts +TODO: perl-shell-window? perl-unix-socket? +TODO: command line editing when icanon? +TODO: split ROW into a ROW_fast (0..total*2-1) and ROW macros? +TODO: catch exceptions when calling perl hooks +TODO: xdbe +TODO: optimise bg reeval for resize for common patterns (pixmap bigger than window?) +TODO: pack rxvt_fatal messages into the exception object +TODO: load must not cache, but global image cache must be cleaned +TODO: description into --help output? +TODO: rxvt -help => (see rxvt-XXX(1))? +TODO: xor_rect should shift right +TODO IMPL: recalc bg only when not fully covering (no alpha, repeat|extend etc..) + +TODO IMPL: colour-change event with index +TODO IMPL: recalc bg always on bg colour change + +TODO: document typical actions in rxvt.1.pod keysyms +TODO: warn with a graphical message when env has been modified +TODO: c&c perl socket via daemon-ext mechanism +TODO: simplify extension metainfo cache, cache on disk +TODO: URxvt::Ext::Name installs urxvt ext name and provides pod/manpage for URxvt::Ext::Name +TODO: üpixel droppins idenrasm,ll,scrollup +TODO: cuu/cud and probably others default to 1 when arg is 0, not just missing, in xterm/vt102, but not in rxvt +TODO: implement xterms nih 1006 mouse mode because the fud campaign against urxvt's 1015 mode works. + +TODO: confirm-pastes should check for any ctl +TODO: fix ESC G reply forever, or simply completely disable it? + - work around API change breakage in perl 5.28, based on a patch by + Roman Bogorodskiy. + - improved security: rob nation's (obsolete) graphics mode queries + no longer reply with linefeed in secure/default mode. + - ISO 8613-3 direct colour SGR sequences (patch by Fengguang Wu). + - xterm focus reporting mode (patch by Daniel Hahler). + - in some window managers, if smart resize was enabled, urxvt + erroneously moved the window on font change - awesome bug + #532, arch linux bug ##34807 (patch by Uli Schlachter). + - fix urxvtd crash when using a background expression. + - properly restore colors when using fading and reverse video + is enabled while urxvt is focused and then disabled while it + is not focused, or vice versa (patch by Daniel Hahler). + - fix high memory usage when an extension repeatedly hides and + shows an overlay (reported by Marcel Lautenbach). + - the old bg image resources are now provided by the background + extension, and perl is thus required for bg image support. No + configuration change is needed: urxvt autoloads the background + ext if any bg image resource/option is present. The old bg image + resources are also now deprecated; users are encouraged to + switch to the new bg image interface (see man urxvt-background). + - expose priv_modes member and constants to perl extensions + (patch by Rastislav Barlik). + +9.22 Sat Jan 23 21:07:33 CET 2016 + - NOTICE: this release updates terminfo. + - add terminfo capabilities for various ctrl and shift-ctrl key variants + (patch by Sebastian Schmidt). + - fix longstanding core font encoding bug where some character + ranges could not be mapped from unicode to the font: affected + encodings are big5, gb2312, iso8859-8 (hebrew), jis0201 and + ksc5601 (reported by Mikachu). + - fix crash when the number of columns is 1 and a 0 width character is inserted + (reported by Kuang-che Wu). + - fix a crash when parsing an invalid color specification (reported by Kuang-che Wu). + - fix a buffer overflow in font name parser (reported by Kuang-che Wu). + - do not start blinking cursor if the window is unfocused (reported by + Devin J. Pohly). + - change the width of underline and i-beam cursor to 2 pixels (based on + a patch by Omar Sandoval). + - add pointerShape resource to change the mouse pointer shape + (based on a patch by Brian Watson). + - a keysym resource for a key which is already bound to an + action now properly rebinds the key. + - do not report mouse motion events if Shift is active (patch by Daniel Hahler). + - put the alpha component last in responses to OSC color queries + (patch by Benjamin Herr). + - the key_press hook is now invoked before processing the + event, as documented. This change was done in 9.21 but not + announced and fixes debian bugs #511377, #531751 and red hat + bug #1105069. Note that this change breaks a few scripts, + such as mark-yank-urls, which rely on the previous buggy + behaviour that urxvt processes the event (in particular + keysym bindings) before invoking the hook. + - the tabbed extension now properly refreshes the active tab + on a key press when the mouse pointer is outside the terminal + window. + - add 'lookup_keysym' perl method to lookup the action bound + to a key combination. + - a key combination bound to 'matcher:select' can now be used + to cycle through the matches in matcher. + - change perl integer accessors (->width et al.) into mutators. + +9.21 Wed Dec 31 14:50:03 CET 2014 + - the "moa redraw 8-bit british vintage colour management" release. + - NOTICE: this release updates terminfo. + - fix pixel droppings on overdraw when a secondary core font has the + same height but different ascent. + - implement cvvis in terminfo as blinking cursor, to distinguish it + from cnorm (emacs uses cvvis which is commonly a blinking cursor). + - when xft support was compiled in, colour queries erroneously returned + premultiplied values, this also affected internal queries, for example + when calculating faded colour. alpha is now divided out when possible, + which is more correct but loses colour resolution. + - add DECSCUSR xterm extension to set the cursor to a vertical bar. + - add 'extension:string' action, and associated on_action perl + hook, for keysym resources that invokes actions provided by + perl extensions. The 'perl:string' action and + on_user_command hook are deprecated but still supported. + - add 'builtin-string' action for keysym resources that restores string + mappings for keys that have predefined actions in urxvt. + - add -k option to urxvtc for killing the daemon process. + - document urxvtd's -e/--eval option that was implemented in 9.16, + but not documented. + - add -dockapp option to make the wm treat urxvt as a dockapp. + - add -mc option and multiClickTime resource to set the maximum time + between multi-click select events (patch by Joe Peterson). + - new 'eval' extension to evaluate arbitrary perl code with keysym + bindings. The extension also provides methods that implement basic + actions, such as pasting selections and scrolling. + - the macosx-clipboard and macosx-clipboard-native extensions have been removed. + - kuake extension now uses the kuake.hotkey resource to specify the hotkey. + - new 'matcher:select' mode of matcher to iterate over the matches with the keyboard. + - the 'matcher:list' feature of matcher now honours the launcher + associated to a matched pattern. + - speed-up matcher underlining on very long lines (reported by Edward Z. Yang). + - fix up/down commands of searchable-scrollback so that they always move + to the previous/next logical line with a match, if any. + - searchable-scrollback resource has been deprecated (use keysym instead). + - extension parameter passing is deprecated (use resource mechanism instead). + - upgrade to GPLv3 (see COPYING). + - compile out of the box on Solaris 10, again. + - fix height and position of the stippled area in next scrollbar (patch + by Thomas Otto). + - fix off-by-one bug causing the iso14755 window not to jump out of the + way properly. + - fix crash that may happen if a lib to which urxvt is linked to calls setenv. + - fix memory leak in special_{encode,decode} perl methods. + - fix refresh bug that occurs when reverse video is set on a cell + containing a space and with the same bg and fg colour, red hat bug + #830236. + - fix crash that may happen if an x error is received after a terminal + window/popup has been destroyed already. + - removed superfluous 0 digit from sgr terminfo sequence. + - greatly improve colour allocation on colour-starved pseudocolour + displays to avoid read-write cells instead of simply failing + (this is only relevant for antique 8bpp frame buffers). + - do not free fade colours when not doing fading (this is likely + only relevant for antique 8bpp frame buffers). + - do not specialcase 2 or 4 colour visuals, leading to + simpler and actually more correct code. + - hopefully no longer leak colours on !truecolour visuals. + - use consistent method names (scr_recolour => scr_recolor). + - use simpler (but slightly less bogus) formula for nearest + colour choice (this is likely only relevant for antique 8bpp + frame buffers). + - remove fallback behaviour when initialising colours - the + behaviour was inconsistent between startup vs. later and + was only effective when valid colours couldn't be allocated. + +9.20 Sat Apr 26 16:22:27 CEST 2014 + - (libptytty) fix bug that prevented urxvtd from writing utmp + entries when using --fork (reported by Ryan Kavanagh). + - security bugfix: window property values could be queried even + in secure mode (reported by Conor McCarthy). + - fix build when perl is enabled and fading is disabled. + - fix regression that broke continuous scrolling when pressing + and holding the scrollbar up or down button, gentoo bug #493992. + - increase the maximum length of a command sequence to 32k bytes, + to allow longer OSC sequences (previous limit was 2k). + - new Ctrl-Meta-c and Ctrl-Meta-v bindings to interact with + the CLIPBOARD selection. + - new extension: selection-to-clipboard. + - the extensions macosx-clipboard and macosx-clipboard-native + are deprecated and will be removed in the next release. + Support for the clipboard on OS X can be more generally + enabled by setting the XQuartz preference to sync the OS X + pasteboard and the X11 clipboard. + +9.19 Sun Oct 27 17:16:07 CET 2013 + - work around perl 5.18.0 breakage in tabbed extension + (reported by Karol Blazewicz) and in pod (Dominic Hargreaves). + - fix regression that caused the double-click word selection to + erroneously include a tab on the left of the selected word. + - implement FOCUS variable and focus_fade function in background + expression, to allow focus-sensitive background images. + - add support for the set cursor style (DECSCUSR) control + function. + - honour cursorColor also when the cursor style is underline. + - export some Color_xxx constants to Perl. + +9.18 Sun Mar 24 15:33:35 CET 2013 + - fix regression that caused artifacts on resize. + +9.17 Fri Mar 1 13:46:08 CET 2013 + - add shade operator in background perl extension. + - avoid starting or ending the selection in the middle of wide + characters to avoid artifacts (reported by Tiago Resende). + - fix artifacts that may occur if the character in the cursor + cell has width > 1 (reported by Tiago Resende). + - fix regression that causes artifacts on scrolling if + saveLines is 0 and the window is resized (reported by Bert + Münnich). + - fix build when perl is enabled and pixbuf and transparency + are disabled. + +9.16 Thu Dec 27 11:56:43 CET 2012 + - the "so much new stuff your eyes will pop out" release. + - INCOMPATIBLE CHANGE: renamed urlLauncher resource to url-launcher. + - fix processing of DEC private mode save sequences (patch by Patrick + Hemmer). + - perl extensions now have their own manpages, installed as urxvt-NAME(1), + e.g. urxvt-background(1) - see urxvt-extensions(1) for a list. + - fix disabling of cursor blink with the option-popup menu (based on a + patch by Jan Larres). + - the font height is not augmented anymore when lineSpace is non zero. + - fix "new pagemap" vs. "delete pagemap" mismatch ([] vs. non-[]), + as diagnosed by clang. + - fix height mismatch between active and inactive cursor when + lineSpace is non zero (patch by Stanislav Seletskiy). + - make it compile with LOCAL_X_IS_UNIX again (reported by + nickfailure@gmail.com). + - completely redone background pixmap support - users can now + specify arbitrary expressions (And programs) that calculate + new terminal backgrounds. see the urxvt-background manpage + for details. + - xrender is now required for background pixmap support. + - perl extensions can now provide commandline switches and resources + which show up in -help etc. + - iso14755 51 mode window now displays row and column. + - implement a -visual switch and move that and -depth to frills, also + warn when we can't get the requested visual. + - new env variable: RXVT_PERL_LIB. + - allocate all screen memory in one go and let the virtual memory + subsystem sort it out. this simplifies code, improves access + locality, saves a bit of ram and makes things a bit faster, too. + - remove support for libafterimage. + - update to CVS version of libev, for a whopping 11kb size decrease. + - do not ship yet another copy of ecb.h, use the one in libev or + libptytty instead. + - selectively mark some methods as cache-hot/cache cold, which + might speed up execution but definitely decreases codesize. + - Fix regression that prevented the scrollbar trough color + from being applied (reported by Derek B. Noonburg). + - Fix the scrollbar size for rxvt style (patch by Mark Robinson). + +9.15 Sat Jan 21 13:36:56 CET 2012 + - remove "using namespace std" because clang erroneously + thinks thats an error. + - finding a matching font (e.g. bold version of the base font) + was broken (reported by Eamon Walker). + - fix parsing of bg image styles. They really work now. + - fix blurring of bg image borders when using xrender. + - fix xrender blur on common xrender implementations that do + not behave correctly when the same pixmap is used as source + and destination in composite operations. + - fix regression that caused tabbed to compute the wrong size + for tabs. + - allow again an empty suffix in a keysym list spec (patch by + Sung Pae). + - unsupported support for sun studio's CC added. + - fix -C option on solaris. + +9.14 Wed Dec 21 18:40:33 CET 2011 + - INCOMPATIBLE CHANGE: the urxvtd default socket path is now + $HOME/.urxvt/urxvtd-<nodename>. + - INCOMPATIBLE CHANGE: the "list" keysym expansion now requires + loading of the "keysym-list" perl extension. + - INCOMPATIBLE CHANGE: A scale value of 0 in the bg image + geometry no longer enables tiling, so as to make it possible + to disable both scaling and tiling. + - overhaul of the bg image operations. The old operations have + been deprecated in favour of elementary operations and + styles built on top of the new operations and scale/position + settings. (Emanuele Giaquinta). + - support for libafterimage is deprecated and will be removed + in the next release. + - fix a crash caused by selection_check not properly resetting + out-of-bounds mark values (can happen when extending a selection + while scrolling up in curses programs for example). + - do not move the selection when scrolling up and the selection is + outside the scrolling region (Emanuele Giaquinta). + - fix display of bold bright black (reported by Ben Winslow). + - fix memory leak when urgentOnBell is set (patch by Nathaniel + Filardo). + - fix a redraw bug that occurs when a bg pixmap is set and the + wm does not honour the size hints set by urxvt. Now urxvt + forces the size of the terminal window to be a multiple of + the cell size. + - sanitise the argument of SD / SU sequences. Fixes a possible + crash when the argument is big enough, red hat bug #711137 + (Emanuele Giaquinta). + - correctly split long lines when scrolling. + - urxvt now looks for perl extensions also in $HOME/.urxvt/ext. + - add bell-command perl extension to execute a command when a + bell event occurs (Ryan Kavanagh). + - add set_urgency perl binding to set/reset the urgency hint. + - consume button release event in matcher (exg). + - keyboard accessible list of recent matches in matcher + (Bob Farrell). + - properly process 'keysym' sequences in tabbed when using + 'focus follows mouse' and the focus is on the main window + but not on the active terminal window (patch by Martin + Pohlack). + - support for the freedesktop startup-notification protocol (patch by + Michael Stapelberg). + - the direction of VPR and VPB commands was reversed. + - fix alignment of inherited root pixmap when it is a different size + than the root window and the terminal window is off the left or top + edge (Mikachu). + - make $self visible in "eval perl expression" popup action, also + handle exceptions better. + - fix parsing of '-e' when it occurs as an option argument, such as in + 'urxvt -title -e' (Emanuele Giaquinta). + +9.12 Wed Jun 29 14:34:28 CEST 2011 + - fix regression in processing of SelectionNotify events. + urxvt would fail to request a selection if the owner did not + support the UTF8_STRING target. + - fix rendering of double width chars in certain circumstances, more + likely to happen if urxvt is compiled with 256 colors support as + urxvt runs out of fonts much earlier then. Fixes gentoo bug #358151 + (Emanuele Giaquinta). + - restore support for 'list' syntax in keysym resources (requested by Sung Pae). + - always premultiply colour values - while this increases differences between + core fonts and xft, it is "more correct" in practical situations. + - disable PTYTTY_REENTRANT option - not needed for urxvt and saves a bit of code. + - remove lucidatypewriter from the list of fallback fonts, it was the only + non-xft non-cellfont in the list anyway. + +9.11 Mon May 2 10:34:46 CEST 2011 + - fix compilation on GNU/Hurd, debian bug #624736. + - remove 'list' syntax for keysym resources, as it serves no useful purpose. + If you need it, poke us and provide a use case. + - fix alpha channel support. Premultiply alpha in colours if the visual + supports an alpha channel, as xrender expects premultiplied alpha + (Emanuele Giaquinta). + - fix reply to a selection request sent by an obsolete client + such as syncterm (patch by Marcin Cieslak). + - fix crash when the window is resized and the overlay is active + (Emanuele Giaquinta, reported by Ryan Kavanagh). + - match character-wise rather than byte-wise in selection + extension again. perl 5.8.9+ is required to avoid extreme + slowdowns. Fixes debian bugs #523072, #616463. + - fix a possible crash if the INCR transfer process for a + selection property timeouts and at least one chunk is + received. (Emanuele Giaquinta) + - work around a memory corruption bug in xorg's XrmSetDatabase (apparently + broken since http://lists.freedesktop.org/archives/xorg-commit-diffs/2004-March/000239.html). + - fix memory corruption bug when custom command sequences bound to keys + were injected into an already-full pty input buffer. + - gdk-pixbuf is autodetected by default and preferred over libafterimage. + - do not prepend a newline to the selection text when the starting line + of the selection is not highlighted (Emanuele Giaquinta). + - don't swap perl env with real env, save and restore it, just in case + we ever get recursive perl invocations. also saves a bit of codespace + with gcc. + - fix various memory leaks (Emanuele Giaquinta). + - fix typo in kIC terminfo capability, debian bug #446444. + - document 'thickness' resource. + - fix debian bug #504817, to the extent possible. + - try to detect byte order at compile time, saves a couple of + hundred bytes, if your compiler is smart enough. + - add support for previewing the pasted data in confirm-paste + (Emanuele Giaquinta). + - added "newlines to spaces" option in selection-popup. + - actually enabled solaris event ports backend (was disabled by accident). + - revert to 38400 baud max., mission accomplished. + - no longer create scary "pty_fill: PLEASE REPORT" message, instead, + silently drain the input (problem is well understood now). + - no longer swallow rob nation's own graphics mode commands. + +9.10 Mon Dec 13 17:43:52 CET 2010 + - the "schmorp=north korea dickey=south korea" release. + - INCOMPATIBLE CHANGE: make OSC 20 simpler and more correct + (Emanuele Giaquinta). + - if options were compiled out, this could lead to the option + count to be defined wrongly. This is likely behind the + failures with gcc 4.5. + - explicitly depend on fontconfig and xrender when xft support + is enabled. Although the public Xft api uses types from + both, in Xft 2.2.0 these libs are private + dependencies only thanks to an idiotic behaviour of + pkg-config that was added to workaround cases like this one. + Fixes linking when using GNU ld with --as-needed or GNU gold + (based on patch by Jan Palus). + - fix minor memory leaks in urxvt and urxvtd. + - fix regression in urxvtd that prevented options from being correctly + set (reported by Michal Vaner). + - implement xterm's horribly broken 1005 mouse reporting mode, + and an alternative 1015 mode that works in non-utf-8 locales + and has fewer limitations. + - fix a possible bug where mouse notifications didn't work after + startup for the upper left corner. + - implement our own pixbuf to pixmap rendering to get rid of + dependency on buggy gdk-pixbuf-xlib. Only truecolor visuals + are supported (Emanuele Giaquinta). + - apply tinting before shading when both operations are requested. + Previously they were intermixed when lightening and the result + was inaccurate and confusing. Note that now a black tint yields a + completely black image, regardless of shading (Emanuele Giaquinta). + - avoid spurious redraws of the bg image when bg is transparent or + when using 'root' mode (Emanuele Giaquinta). + - fix build on XFree86. + - dynamically number options according to compiletime requirements. + For the extra saved byte. Or so. Yay. + - start options at one, not zero. Wastes a bit per terminal. Maybe. + saves 50 instruction bytes. Possibly. + +9.09 Sat Nov 13 01:39:07 CET 2010 + - NOTICE: this release updates terminfo/termcap. + - the bestest release ever. + - it was verified that urxvt handles µ and μ correctly. + - add support for blending and blurring with XRender (Emanuele Giaquinta). + - add support for using gdk-pixbuf as image backend (Emanuele Giaquinta). + - cleanup and minor fixes of the image code (Emanuele Giaquinta). + - new perl extension "confirm-paste" (Emanuele Giaquinta). + - new on_tt_paste perl hook and tt_paste perl binding (Emanuele Giaquinta). + - new on_bell perl hook (Emanuele Giaquinta). + - searchable-scrollback no longer ignores the first line + (Emanuele Giaquinta). + - properly set VSTATUS in termios for *BSD (reported by Ed Schouten). + - fix utmpx detection on upcoming FreeBSD 9. + - Use COMPOUND_TEXT encoding for WM_NAME/WM_ICON_NAME value when it + is not fully convertible to STRING (patch by James Cloos). + - fix a buffer overflow that would cause wrong key sequences to + be generated for numpad keys (introduced in 9.05). + - fix definition of sgr0 to work around limitations in luit. + - extend ISO 14755 5.4 mode to also print the font name of the + characters other than first one in the selected cell + (Emanuele Giaquinta). + - new iso14755 option to disable ISO 14755 at runtime + (Emanuele Giaquinta). + - make sure pagewise scrolling scrolls at least one line + (found by Mikachu). + - remove deprecated OSC 18 / 19 and make OSC 17 / 19 apply to + highlightColor / highlightTextColor (Emanuele Giaquinta). + - add highlightTextColor resource to change the foreground colour of + highlighted characters (Emanuele Giaquinta). + - make highlightColor apply also to selected cells with reverse video + but not to non selected cells with reverse video (Emanuele Giaquinta). + - remove colorRV resource (it was enabled only with frills off). + - fix numlock handling, the most longstanding bug to date (Emanuele Giaquinta). + - reduce the number of custom bits to 4, to make room + for 256 colours. + - add support for 256 colors (Emanuele Giaquinta, Marc Lehmann). + - add rxvt-unicode-256color terminfo and use it by default in 256 colors mode. + - update rxvt-unicode terminfo to state 7744 colour pairs to cover all + 88*88 possible pairs. + - actually added macosx-clipboard-native, which should have been in + the 9.07 release but had been forgotten. + - fix hang if DECAWM is not set and there are not enough columns to insert a + character (Emanuele Giaquinta). + - cub1 ("backspace") will now respect wrapping when past the rightmost column, + working around a shortcoming of most tty line discipline's line editing. + - add support for grabbing the clipboard selection and extend + selection{_clear,_grab,} perl bindings to optionally work + on the clipboard selection (based on patch by Dana Jansens). + - no longer force CERASE to BACKSPACE - use the system default. affects + default value for VERASE only when no compatible setting for + backspacekey was given. + - use higher than 38400 baudrate setting, if detected. + - erase screen would clear to the wrong background when blinking + was enabled (which selects high intensity under some circumstances). + - scr_kill_char didn't touch the line. + - upgrade and port to libev-4.01. + - enabled solaris event ports and kqueue backends (if available). + +9.07 Wed Dec 30 07:07:18 CET 2009 + - port to glibc-2.10 changes (strchr etc. returning const char * + in C++), based on patches by Milos Jakubicek and Oliver Mader. + - the binary search algorithm to find precomposed characters + was faulty, skipping some possible combinations (found by + Mikachu). + - new -letterspace option, patch by Mark H. Wilkinson. + - enable --mlock option for urxvt with frills on + systems supporting it (patch by Russell Harmon). + - urxvt did not compile without frills enabled + (analysed by Matthew Rosewarne). + - correctly reset the mbstate after an illegal + input sequence when handling terminal output (Emanuele Giaquinta). + - avoid redrawing wide characters with combining enabled on every + refresh (reported by Mikachu). + - fix a typo preventing the ISO-646.1991 character set from being + recognized (http://achurch.org/patch-pile/). + - better warning for x11 font encoding detection failures, also, + try to deduce encoding from both font properties and name + (adapted from http://achurch.org/patch-pile/). + - resizing the window with the scrollbar disabled via the escapes + sequence could make the window bigger again (Mikachu). + - make sure the alignment for fd passing control messages + is correct and work around some NetBSD issues (Taylor R Campbell). + - update to libptytty 1.3. + - replace macosx-clipboard by a nicer version by Reza Jelveh, and move + the old version to macosx-clipboard-native. + - document the -uc option (Emanuele Giaquinta). + - assertions in libev are now enabled depending on frills. + - update AnyEvent implementation to version 5.23 API. + - work around arrogant bsd idiocies again: netbsd spills the default + namespace with lots of symbols "for gnu/gcc compatibility" even + though neither of them does it, and then calls the rest of the world + in need of fixing. go figure. + - on_keyboard_command is on_user_command (patch by Michael Witten). + - setting the selection from perl will now reset the selection screen + to the current screen. the screen can be manipulated using + the new ->selection_screen method. + - implement --enable-assert configure option and get rid of DEBUG_STRICT + (based on patch by Emanuele Giaquinta). + - fix printpipe data output (patch by Emanuele Giaquinta). + - allow `xxx' quoting style for perl selection. + - upgrade to libev-3.9 prerelease. + - updated compose tables to unicode 5.2.0. + +9.06 Sat Nov 8 17:47:18 CET 2008 + - NOTICE: this release updates terminfo/termcap. + - updates libev to 3.48. + - the aterm code now frees the as visual and image manager objects + when a window was closed. + - do not (wrongly) adjust the virtual line length inside + scr_insdel_chars/ERASE (Miroslav Lichvar). + - fix an issue where wide tab characters caused character shifts + when part of them was deleted (tracked down by Miroslav Lichvar). + - artificially enlargen the previous character at the end of a line + when trying to output a character that doesn't fit. looks ugly, but + makes copy&paste work. + - remove bogus "setuid/setgid security issues" from rxvt.1.pod, they + no longer apply. + - the urgency hint is now cleared on both focus in and focus out. + - cache urgency hint locally to avoid server rtt on every focus change. + - perl 5.10 needs PERL_SYS_INIT3 on hppa. + - ignore byte-order marks and do not treat them like combining characters. + - fix build issue when CURSOR_BLINK is not defined (Emanuele Giaquinta). + - do some µ-optimisations to the character fast path. + - use a less cunning, but more robust algorithm to avoid one terminal + monopolising the whole process by outputting a lot of text. + - try to work around linux first breaking sched_yield and now breaking + the only known workaround. + - new option -icon to set _NET_WM_ICON (based on patch by Frank Schmitt). + - initialise the as visual only on demand, instead of unconditionally, + to save memory in the common case of not using visual gimmicks. + - try to work around bugs in a few wm's that erroneously resize + client windows on hint property updates by temporarily + disabling size hints. + - implement the DECSTR soft reset sequence and use it for tput init, + and make hard RIS and DECSTR both reset more private modes, such + as mouse reporting. + - redundantly clear mouse reporting and a few other states in + tput init/tput reset, for older urxvts. + - partial/full clear screens did cause flickering and possibly pixel + droppings when urxvt viewed the scrollback buffer. + - use current rendition style in DCH sequence. + - the 132/80 mode switch no longer forces a screen reset. + - add an osc sequence to change the border colour (Emanuele Giaquinta). + - new perl extension "overlay-osc", for status displays and the like. + - fix some minor cursor drawing issues with overlays by allowing + overlays to modify screen flags (to disable the cursor themselves). + - work around programs not restoring rstyle before rmcup + (analysed by Miroslav Lichvar). + +9.05 Sun Jun 15 20:09:20 CEST 2008 + - new option --cd/chdir to set the starting working directory. + - tabbed extension now starts in the "correct" working directory. + - work around fedora 9 providing isastream but not the relevant + header file for it (report by Tuncer Ayaz). + - upgrade libev, fixing a bug in the select backend. + with more than 31 file descriptors on non-linux 64 bit systems. + - correctly reset the multibyte state to the initial one + after EILSEQ (patch by Neil Booth). This fixes the + issue of rxvt-unicode not properly displaying text after an illegal + sequence on NetBSD and probably other systems. + - more intelligent property handling with -pe tabbed, works around + broken window managers (kwm et al.), saves bandwidth and should + help working window managers as well. + - made tabs moveable (based on a patch by Petr Machata). + - implement ESC [ 3 K as a more rational alternative to ESC [ 0 K. + - support relative paths for RXVT_SOCKET in urxvtd. + - the tabbed extension now blindly copies over all (rxvt-) resources + from the toplevel window to the children. + - better diagnostic on 0x0 window geometries. + - update AnyEvent API to version 3.4 and above. + - document the default value of :0 for DISPLAY. + - rename perl method XChangeWindowProperty to XChangeProperty. + +9.02 Tue Jan 29 11:58:36 CET 2008 + - the "exg makes everybody happy" release. + - fix build with !xft. + - always compile in plain style scrollbar (simplifies code and looks great). + +9.01 Sat Jan 26 20:49:27 CET 2008 + - be more aggressive about handling X events, this seems to be required + with newer xlibs (should fix the "screen stays black until event is + received" problem, again :) + - add buffered resource to control xft double-buffering. + +9.0 Fri Jan 25 19:34:04 CET 2008 + - fix a crash bug where urxvtd would crash when urxvtc was called + with wrong arguments (I wish debian maintainers in general would + report bugs and their proposed fixes to the original package maintainers + instead of sitting on them for good measure to see if anybody notices). + - drawing xft compose characters was causing garbage to be drawn. + - correctly clear xft character background in all cases. + - implement bracketed paste mode (xterm private mode 2004). + - improve documentation on alpha channel handling, make urxvt + work better on servers lacking the RENDER extension when alpha + channels or background images are used. + - check for refresh after initialising to avoid staying blank + till the first event arrives. or so. + - the FORCE_UNBUFFERED_XFT feature macro works again. + - continuously update transparency while moving/resizing now. + - OSC 39/49 are deprecated and aliased to OSC 10/11. + - cub1 now acts as advertised (and ignores the "wrapped" state). + - the 132/80 mode switch now forces a height of 24, too, and + resets the terminal. + - scrollbar code cleanups. + - stopping children is no longer confused with children exiting. + - removed (undocumented) #aarrggbb format. + - updated to libev 3.0. + +8.9 Mon Dec 24 07:51:40 CET 2007 + - fix the issue where urxvtd would not immediately close a window + when the command exited but only on the next X event. + - changed terminfo file not to use application keypad mode. + - fix the issue where making a selection in one urxvtd window + would not clear it visually in another. + - fix an issue of urxvt not getting background pixmap updates + and flickering after bg pixmap changes (reported by Mikachu). + - fix redraw bug in xterm scrollbar with -sr (reported by Mikachu). + - correctly provide dependencies for libev (µikachu). + - minor code reorganisations and cleanups. + - be more robust in case the urxvt-popup extension cannot be loaded. + +8.8 Sat Dec 15 19:40:39 CET 2007 + - option -C was aliased to all unsupported options, activating + options that shouldn't be compiled in, leading to interesting + effects. + - updated libev, working around a bug in linux 2.4, curing the + symptom of urxvt not closing its window on shell exit. also + fixes a problem with urxvt not refreshing. + - the text blink callback was called even when no blinking + text was visible. + - pre-8.4 slipwheeling behaviour has been reinstated, with + some minor improvements. + - streamlined x events processing to only flush once per + display and not once per terminal window. + - quite a bit of minor code cleanups and codesize optimisations. + +8.7 Sun Nov 25 10:23:49 CET 2007 + - update libev with an important bugfix that would cause crashes + when closing windows (when using rxvtd, and update is recommended). + - do not compile in the block builtin graphics with --disable-frills. + +8.6 Fri Nov 23 14:10:57 CET 2007 + - upgrade libev to disable kqueue on anything but netbsd as it + seems to be broken everywhere else w.r.t. ptys. + - allow for spurious event notifications, as at least epoll and + especially solaris ports like to lie about them (symptoms: + urxvt "hangs" until there is some x11 related activity). + - -keysym command line options are now subjected to xlib parsing. + - add 'xrm' option analogous to Xt one. + +8.5a Wed Nov 21 10:16:33 CET 2007 + - make it compile with --disable-transparency. + +8.5 Wed Nov 21 05:19:20 CET 2007 + - expect major portability issues in this release: please test and report. + - converted from the veritable io manager event loop to + the high performance libev (http://software.schmorp.de/pkg/libev). + - minor tuning to the perl selection (include single words and more quoting chars). + - fix memory leak in pixmap code. + - fix a serious bug while setting the XIM destroy callback + on (typical) 64 bit systems. + - automove-background functionality re-implemented internally using :root op in pixmap + geometry string. For example: rxvt -pixmap "image.jpg;:root" + - do not link rxvtc against every lib on the planet anymore. + - parallel builds should work once more. + +8.4 Sat Oct 27 14:02:13 CEST 2007 + - overhaul of the transparency/pixmap code (sasha). + - fix possible race between visual bell and poweron. + (reported by Martin von Gagern, gentoo?). + - urxvt -e no longer crashes the child. + - fixed some minor memleaks on incorrect usage or + missing DISPLAY. + - implement xterm 1002/1003 mouse tracking modes (exg). + - source code organisational cleanups (exg). + - updated io_manager. + +8.3 Wed Aug 1 20:21:31 CEST 2007 + - new option: skipScroll/-ss, enabled by default. + - go with the times and expect x11 library files in /usr/lib, not + /usr/X11R6/lib. + - initial transparency improvement/afterimage support + patch by Sasha Vasko. + - add urgentOnBell resource to set the urgency hint + (patch by Philip Paeps). + - do not process focus events caused by grabs + (patch by Mikachu). + - add iso14755_52 resource to disable iso14755 5.2 (exg). + - add binding for backspace in iso14755 5.1 to remove the last + digit (exg). + - better option handling, support more than 30 options (exg). + - nuke reconf script, serves no purpose anymore. + - fixed and documented matcher/on_user_command processing in matcher + extension (tpope). + - compile out of the box on Solaris 10 (exg). + - fix MappingNotify events (reported by Stephan Walter). + - zero-initialise mwmhints, this seems to solve all sorts of minor + problems. + +8.2 Sat Feb 17 21:35:28 CET 2007 + - fix make depend in src/, reported by exg. + - fixed typo in urxvt::GET_CUSTOM, causing the result to be wrong. + (patch by Sergey Vlasov). + - unbundled iom perl interface somewhat. + - scrollbar-xterm now uses the selected scrollColor instead of fg + (found by Aiviru). + - disabled linux kernel bug workaround again: disabling it gives + a 50% speed hit on affected machines, while enabling it gives + a similar speed hit to screen, which is likely the more common + case to work around for :/ + - urxvt::rend2mask perl function, and utilization of it by matcher + (patch by Moshe Kamensky). + - use perl:matcher on a keysym to open most recently displayed URL. + - with matcher, when multiple patterns match, last wins, not first. + - fix make and make install with srcdir != builddir (exg). + - updated bundled libptytty to fix a bug where the tty would be kept + open (see the libptytty ChangeLog for details). + - delay setting the IUTF8 flag to after the tty settings have been + set so its value does not get lost (reported and analysed by Andrei + Paskevich). + - rip out support for obsolete sgtty.h interface. + - rip out support for non-POSIX termios variants. + - update libptytty. + - update iom.C, make it call ptytty::sanitise_stdfd on init. + - when !XFT, change rounding of colours to use a less correct formula to + meet user expectancies (#aaa becomes #a000a000a000 not #9f9f9f9f9f9f). + - change the starting offset of the pixmap set with backgroundPixmap + from (50,50) to (0,0) (exg). + - fix a typo in button_release, now meta-button2 request the value of + the Clipboard selection as it should (patch by Serge Koksharov). + - fix a bug in drawing a cell with a nonspacing char when using an xft + font with inheritPixmap and tintColor (exg). + +8.1 Thu Dec 7 22:27:25 CET 2006 + - ケリスマスプレゼント - zomg!!1, it's too early!!! + - fix the assumption that chars < 256 are single-width. Now + only assume this for codepoints 32 to 126 (reported by Dai.H.). + - $term->strwidth returned wide chars as width 1, because some jerk + confused min and max. Fixing this also fixes xim-onthespot. + Reported by Takano Akio. + - secondaryScroll is now enabled by default (as per the manpage), + reported by exg. + - correct the description of [percent]color rgba format in the manpage. + - incorporated macosx-clipboard extension by Samuel Ljungkvist. + - ignore (some) useless focus events (reported by mmc). + - updated compose table to unicode 5.0.0. + +8.0 Thu Nov 2 18:35:19 CET 2006 + - combining characters cleared the area instead of creating an overlay, + thus losing the ability to draw combining characters properly in most + circumstances (reported by exg). + - specified fonts were incorrectly morphed to bold/italic according to the + basefont, even if explicitly specified (tracked down by tpope). + - fixed urxvt::strwidth to calculate width in the same way as screen.C. + - fix a crash caused by passing negative widths to overlay functions. + - added 'matcher' extension by tpope, replacing the mark-urls extension. + - improve url regex to match anything www.* (tpope). + - fixed bug with outline curs |