XTerm Changelog

New in version 314

December 31st, 2014
  • fix a minor bug in the termcap-specific version of resize when the lines or columns values are at the very end of an incomplete termcap string (prompted by coverity report).
  • improve paste64 feature (report by Olaf Rogalsky)
  • fix “p;” command in paste64.pl example.
  • modify _OwnSelection to allow the paste64 control to cause primary/clipboard selections to be disowned and cleared.
  • omit an extra "=" used in padding, to make the base64 response a multiple of four characters.
  • modify _ConvertSelectionHelper to not stop converting on embedded nulls in the primary or clipboard selection. That makes the behavior consistent with cut-buffers. Nulls are not passed on to the application because they are used for separators in the X library calls that convert XTextProperty values.
  • add configure option --with-man2html to allow an alternative to groff's man/html conversion.
  • review and modify resource-settings which can be set via control sequences, etc:
  • add OSC 6, to enable/disable colors set via OSC 5, without changing the color assignments (prompted by patch by Ingo Brückl).
  • add command-line option -itc for italics.
  • add colorIT and colorITMode for italics, like colorBD, etc.
  • guard allowPasteControls against modification by editres.
  • change passedPty from fixed-length to allocated to ensure that it is long enough to hold the -S option value (report by Ben Longbons).
  • improve ReGIS graphics initialization (Ross Combs):
  • add a new string resource to set the default ReGIS font.
  • fix a caching problem where the font name wasn't taken into consideration when looking up cached metrics.
  • enables use of fractional values in coordinates (which in turn allows setting the coordinates to something like [0,1][1,0])
  • doubles the minimum ReGIS graphic to 200x200
  • set the default ReGIS image size to "auto"
  • fix some swapped width/height parameters in TRACE messages
  • add support for scaling and mirrored coordinate systems to the screen address command
  • sets a minimum ReGIS graphics size of 100x100 -- smaller address ranges will be scaled up
  • reset the image if either the width or height is zero (which should happen together or not at all, but switching the logic gets rid of some parentheses)
  • adds support for alternate screen coordinates (just offsets, not inverted coordinates or scaling)
  • keeps the graphics state across ReGIS calls unless P1 or P3 entry codes are used
  • changes loops to continue after parsing whitespace to allow trailing whitespace
  • fixes some incorrect character casts

New in version 313 (November 29th, 2014)

  • add regisScreenSize resource setting to allow custom screensizes for ReGIS graphics (prompted by discussion with Scott Froebe).
  • fix some minor issues in manpage (Jens Schweikhardt).
  • improve ReGIS font-handling (Ross Combs):
  • remove "random junk" generation for unknown characters
  • add xterm extension to load user glyphs for alphabet 0
  • add xterm extension to specify loading an alphabet from a font by name
  • fix bug with use of empty alphabet slots which caused slot 0 to be clobbered
  • update/clarify ReGIS-related comments
  • add DECprint extension for printing/clearing the screen (only clearing is performed)
  • improve ReGIS colorspec conversion (Ross Combs):
  • avoid some floating point math for colorspace conversion
  • move two copies of colorspec parsing to a single function
  • change colorspec parsing to handle components being out of order or with spaces and commas between them
  • add support for an extension where RGB components can be given instead of HLS
  • improve use of const, e.g., for the LineData pointers (patch by Ross Combs).
  • clip of graphics that overlap the scrollback buffer and alt screen (patch by Ross Combs).
  • amend change to focus-change events in patch #287 to limit it to suppressing the reset of the urgency-hint, because some useful FocusOut events were lost (report by Joe Peterson).
  • modify dpkg build-script to configure xterm-dev as an x-terminal-emulator alternative.
  • extend the --with-xterm-symlink feature to make symbolic links for the other programs and scripts.
  • minor fix to vttests/resize.pl to avoid undefined variable when receiving broken/missing response, e.g., from mrxvt.
  • change the way that ReGIS graphics are refreshed (patch by Ross Combs):
  • it pre-composes any overlapping graphics to avoid unnecessary and flickering draws
  • it adds a three-dimensional lookup table for RGB -> pixel values and uses this across all graphics
  • it draws in line segments when there is a run of the same color
  • in cases where there are no transparent parts, it uses an XImage to draw
  • it hooks into the double-buffering support if it is enabled (though this doesn't seem to get rid of all flicker).
  • This has the effect of reducing flicker and speeding up redraws.

New in version 312 (October 4th, 2014)

  • undo change to do_select_regex() in patch #311 (reports by H Merijn Brand, Sven-Haegar Koch, Debian #762978).

New in version 311 (September 20th, 2014)

  • mention xclip in manpage as an alternative workaround for copying clipboard data, noting that selectToClipboard (from patch #209) is the recommended approach (Debian #639094).
  • correct comparison in do_select_regex() of working position against starting column.
  • correct initialization for regular-expression feature of exec-selectable and insert-selectable actions (Debian #758633).
  • modify logic for exec-formatted and insert-formatted actions to ensure that the formatting occurs just after the selection is received (Debian #758633).
  • account for state of reverse-video in special case of cursor coloring (Debian #759734).
  • fix a sign-extension problem in ReGIS support, as well as correcting a case where ignored-characters were not really ignored (patch by Ross Combs).
  • Enable the "Escape Sequence" menu entry when an OSC 50 is received. Also disable it if the escape sequence specifies no font (Debian #760208).
  • improve fix for the fontsel menu entry from patch #304: because the recovery used the "current font", it would fail if one first selected a valid font, then an invalid font (Debian #760207).
  • correct an off-by-one in limit-check for ScrnLimitChar function (report by Egmont Koblinger).

New in version 309 (July 17th, 2014)

  • modify configure script to work around debris left by XQuartz upgrades.
  • modify test-package scripts to enable ReGIS graphics.
  • improvements/additions to ReGIS graphics, e.g., drawing text (Ross Comb).
  • add --with-Xaw3dxft, to link with Xaw 3d xft library (Stephen P Wall).
  • amend reset for cursor-shape to take into account cursorUnderline resource (report by Christian Weisgerber).
  • update config.guess, config.sub

New in version 304 (May 7th, 2014)

  • add debugging check for parsing table entries, fixed a few inconsistencies.
  • handle utmp/utmpx strings consistently with new function that null-pads unused locations.
  • build-fix for imake configuration with FreeBSD 9 and later, to account for replacing utmp with utmpx.
  • improve handling of the fontsel (font-selection) menu item:
  • initialize the menu entry differently if the toolbar configuration is used, i.e., enabling it without attempting to use the current selection as a font name. Because of the way in which the toolbar is setup, this attempt usually failed, and would result in a warning.
  • if the menu action fails, e.g., no font can be loaded for the given selected name, then recover by resuming with the current font. Before, the recovery went to the default font. That was done to work around missing bitmap font in patch #276.
  • document OSC 119 in the control sequences listing (report by Egmont Koblinger).
  • modify special handling of XF86Paste or SunPaste keysyms (see patch #227) to use the standard shift/lock modifiers in case those are, for example, used in level 3 in an XKB file (patch by Matthieu Herrb).
  • configure macro updates:
  • drop the -no-gcc option from CF_INTEL_COMPILER
  • modify CF_XOPEN_SOURCE to suppress the check for defining _XOPEN_SOURCE on Solaris
  • reduce bss storage used for ReGIS/Sixel modules, as well as cleanup storage usage in other modules.
  • initial changes for ReGIS support (patch by Ross Combs):
  • document control-sequences
  • separate ifdef's for sixel and color-register features
  • add configuration for VT382

New in version #301 (January 20th, 2014)

  • OSC 104 and 105 did not accept parameter to reset a specific color (patch by Egmont Koblinger).
  • add configure check for initgroups, and use that function to complement its use of setgid (prompted by patch by Miroslav Lichvar).
  • improve manpage description of scrollbar translations versus the vt100 translations (Debian #723573).
  • add a few paragraphs to manpage explaining the implications of xterm's reliance on X Toolkit for command-line parsing.
  • modify cursor-theme logic to check if the environment variable XCURSOR_THEME is set to a nonempty value before constructing a dummy them (prompted by similar check added in OpenBSD CVS).
  • add check for a case where TrueType bold font is missing a glyph where the non-bold font has it. Temporarily switch to the non-bold font to draw the glyph (report by David Demelier).
  • minor documentation fixes for ctlseqs.ms
  • only set SHELL environment variable to programs found in /etc/shells (prompted by patch/report by Al Poole).
  • build-fix, when --disable-wide-chars --disable-boxchar is used (prompted by patch by Andrey Panov).

New in version #300 (December 5th, 2013)

  • amend workaround for Xcursor library from patch #298; the suggested solution for Debian #466704 fell afoul of a bug in Xcursor which treated an empty value for Inherits= as a valid theme—and resulted in a stack overflow due to unbounded recursion. Certain environments such as XFCE4 exposed the bug. A related report in Debian #531679 was closed without following the recommendation to limit stack recursion in this library (reported by Sergey V Dyatko, Debian #731269).

New in version #299 (December 2nd, 2013)

  • Fix regression in line-drawing from patch #297 changes for NRCS exposed by change to assumeAllChars resource in patch #298 (report by Markus Waldeck).