<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="style.css">
<script language="JavaScript" type="text/javascript">
if (top.select) {
	top.select ("changes");
}

// support synchronous navigation highlighting
function chapter (ch) {
	if (ch.id) {
		/* highlight chapter in navigation */
		if (top.select2) {
			top.select2 ("changes", ch.id);
		}
	}
	if (ch != "releases" && top.navigation.setrelease) {
		top.navigation.setrelease ("Releases");
	}
}
function release (ch) {
	/* highlight chapter in navigation */
	if (top.select2) {
		top.select2 ("changes", "releases");
	}
	if (ch.name && top.navigation.setrelease) {
		top.navigation.setrelease (ch.name);
	}
}
</script>
<style>
li {list-style-position: inside;}
.latest {background-color: yellow;}
</style>
</head>


<a name=index>
<span name=index id=index onMouseOver="chapter (this);">
<h3>MinEd release history and change log</h3>


<h4>Release history with major enhancements / new features</h4>
(For the detailed change log, see below.)

<dl>

<p><dd><a href=#2022.27>mined 2022.27</a>
	<b>highlights:</b>
<ul class=latest>
	<p><dt><b>Character information:</b>
	<li>Updated to Unicode 15.0.
</ul>

<p><dd><a href=#2022.26>mined 2022.26</a>
	<b>highlights:</b>
<ul class=latest>
	<p><dt><b>Character information:</b>
	<li>Updated to Unicode 13.0.
	<li>Support for emoji width handling.

	<p><dt><b>Editing:</b>
	<li>Search and replacement patterns can contain substitution references 
	like \1 to matching sub-expressions like \(...\) (can be nested).

	<p><dt><b>Bug fixes:</b>
	<li>Tweaked smart undentation (on Backspace) of auto-numbering.
	<li>Fixed line split of long lines read from file.
	<li>Tweaked menu background colour handling.
</ul>

<p><dd><a href=#2015.25>mined 2015.25</a>
	<b>highlights:</b>
<ul>
	<p><dt><b>Editing:</b>
	<li>Transparent editing of encrypted files.
	Using filters configurable by file type (configured in $HOME/.minedrc).
	<li>Enhanced auto-indentation, bullet list and numbered list support.
	<li>Enhanced smart spaces/dashes/arrows/minus.

	<p><dt><b>Interaction:</b>
	<li>Revised flag menus and header line.
	<li>Configurable appearance of menu background (in $HOME/.minedrc).
	<li>Enhanced double-click and focus-then-click handling.
	<li>CUPS printer selection.

	<p><dt><b>Character handling support:</b>
	<li>Configurable character information in status line ($HOME/.minedrc).
	<li>Additional character transformation support for Italian, East European, Tatar, Bashkir.
	<li>Character information includes Unicode named sequences and spacing combined status.
	<li>Support for ISO 8859/EBCDIC Next Line character (NL U+0085).

	<p><dt><b>Character encoding support:</b>
	<li>EBCDIC support ("bracket" codepage CP1047 as used by z/OS USS).
	<li>Option -E disables text encoding auto-detection, using locale instead.
	<li>Updated some character encoding tables according to libiconv 1.14.
	Added some character encodings.
	<li>Dropped the bogus idea of merging JIS X 0213 and EUC-JP code tables.
	Offering EUC-JP and EUC-JIS X 0213, and their Shift_JIS counterparts.

	<p><dt><b>File handling:</b>
	<li>Handling directory access failure when opening menu.
	<li>Enhanced disk file modification or replacement detection.
	<li>Additional mechanisms to prevent data loss in case of file I/O errors.

	<p><dt><b>Interworking / Interoperability:</b>
	<li>Using new features of xterm 280 to finally achieve the distinction 
	between all (modified) keypad keys.
	<li>Preventing editing screen from being spoiled by other processes.
	<li>Adusting menu colours to detected terminal colours.
	<li>Mouse handling workaround for rxvt-unicode quirks and cygwin console 
	multi-character split-ups.
	<li>Workarounds for query problems with mlterm, old xterm, cygwin console, 
	and 'screen'.
	<li>Revamped CJK terminal features and fixed some width handling cases.
	<li>DOS versions (djgpp, Turbo-C): Fixed Ctrl-space, ^R, ^C.

	<p><dt><b>Bug fixes:</b>
	<li>Fixed handling of interrupts while reading file.
	<li>Fixed new unnamed UTF-16 text to actually be saved as UTF-16.
	<li>Fixed text encoding auto-detection on unsigned char platforms (since 2000.14).
	<li>Fixed pasting invalid UTF-8 as digit '8' in non-UTF-8 text.
</ul>

<p><dd><a href=#2014.24.2>mined 2014.24.2</a>
	<b>highlights:</b>
<ul>
	<p><dt><b>Character information:</b>
	<li>Updated to Unicode 7.0.

	<p><dt><b>Editing:</b>
	<li>Improved and fixed JavaScript/HTML highlighting.
	<li>Improved and fixed line end handling in search/replace.

	<p><dt><b>Interworking:</b>
	<li>Interworking with Windows PowerShell and xterm 306 dim mode.
</ul>

<p><dd><a href=#2014.24>mined 2014.24</a>
	<b>highlights:</b>
<ul>
	<i>This is a major update with a list of new features and enhancements.</i>

	<p><dt><b>Internationalization and Character information:</b>
	<li>Revamped smart quotes feature.
	<ul>
		<li>Revised Quotes menu according to investigations of international styles.
		<li>Supporting opening quotation mark repetition for new paragraphs.
		<li>Automatic French quotation marks spacing.
		<li>Primary/alternate styles controlled by locale environment or option.
	</ul>

	<li>Tuned special title casing (Shift-F3) e.g. for Dutch "IJsselmeer".

	<li>Updated to Unicode 6.3.

	<p><dt><b>Editing:</b>
	<li>File tabs and file name tab titles for quick file selection and browsing.

	<li>Revamped rectangular text selection.
	<ul>
		<li>Toggle with Alt-mouse-move during click-and-drag.
		<li>Consistent selection to mouse position (even on shorter lines) 
			including shifted lines.
	</ul>

	<li>Revamped and enhanced HTML and scripting highlighting.
	<ul>
		<li>Distinct highlighting for HTML/XML/JSP attributes and values.
	</ul>
	<li>TAB width 2 enabled in addition to 4 or 8.
	<li>Smarter clipboard pasting (cygwin/Windows).

	<p><dt><b>User configuration:</b>
	<li>Enhanced user configuration features.
	<ul>
		<li>Preferences specific for file name pattern or terminal type.
		<li>Consistent handling of preferences when editing multiple files.
		<li>Added cursor style setting preference.
	</ul>

	<p><dt><b>File handling improvements</b>

	<p><dt><b>Terminal interworking improvements</b>
	<li>(mlterm, tmux, older xterm, missing terminfo, CJK in 'screen')

	<p><dt><b>Bug fixes:</b>
	<li>File handling: Various pipe handling fixes.
	<li>File handling: Detecting "quota exceeded" write error.
	<li>Case conversion function fixes.
	<li>Handling search expressions with ^M or \r.
	<li>Keyboard: Ctrl-Backarrow again deleting only one character.
	<li>Fixed some menu handling cases.
	<li>Fixed input of typographic apostrophe in some cases.
	<li>Made file basename visible in long prompt lines.
	<li>HTML highlighting cases, especially after insert.
</ul>

<p><dd><a href=#2013.23.4>mined 2013.23.4</a>
<ul>
	<li>Fixed build problems on Debian 7 64 bit.
</ul>

<p><dd><a href=#2013.23.3>mined 2013.23.3</a>
<ul>
	<li>Fixed build problems on systems using /lib64 or /lib/64.
</ul>

<p><dd><a href=#2013.23.2>mined 2013.23.2</a>
<ul>
	<li>Fixed build problems on newer Debian/Ubuntu.
</ul>

<p><dd><a href=#2013.23>mined 2013.23</a>
	<b>highlights:</b>
<ul>
	<p><dt><b>Editing:</b>
	<li>New double-click feature for word selection.
	<li>Tweaks on smart editing features (undent, wrap, identifier search etc).

	<p><dt><b>Filename handling:</b>
	<li>Suppressing backup file names as generated by command line 
	auto-completion if they appear after their base version name 
	(x~, x;N, x.~N~), so that, e.g., mined x* edits x and x1 but not x~.

	<p><dt><b>Character information:</b>
	<li>Updated to Unicode 6.2.

	<p><dt><b>Interworking:</b>
	<li>Speed-up of directory browsing, especially on slow network drives.
	<li>Ported stand-alone Windows installer to Windows 7.
	<li>Ported to MSYS, Raspberry Pi, Irix.
	<li>Revamped file information statistics to accomodate slow systems.
	<li>Enhancements for newer mlterm.

	<p><dt><b>Bug fixes:</b>
	<li>Explicit tab width option (-4/-8) takes precedence over file info memory.
	<li>Fix 'screen' Unicode display by limiting previous workaround to older version.
	<li>Fixed Alt-digit accent prefix functions for mintty and rxvt (since 2012.20).
	<li>Fixes related to NUL or NONE pseudo lineends.
</ul>

<p><dd><a href=#2012.22>mined 2012.22</a>
	<b>highlights:</b>
<ul>
	<p><dt><b>User configuration:</b>
	<li>New user preferences configuration file $HOME/.minedrc.

	<p><dt><b>Interactive:</b>
	<li>Backarrow now also performs dual-mode function like Del 
	(delete selection if active, or character left).
	<li>Revamped keypad function modes and their setup, including 
	more interoperable handling of Home/End keys.
	<li>Enabled opening flag menu on terminals missing mouse 
	right-click support (e.g. gnome-terminal).

	<p><dt><b>Editing:</b>
	<li>Revamped keypad function assignments, esp. for Shift-select mode.
	<li>Support for Windows clipboard (Windows and cygwin version only).

	<p><dt><b>Interworking:</b>
	<li>Mouse moving interaction works in rxvt-unicode / urxvt as well.
	<li>Shift-selection works in DOS version as well (key and mouse).
	<li>Fixed terminal detection and attribute handling for 'screen'.
	<li>Fixed paste buffer to work in DOSBox and Android.
</ul>

<p><dd><a href=#2012.21>mined 2012.21</a>
	<b>highlights:</b>
<ul>
	<p><dt><b>Interactive:</b>
	<li>New File switcher: menu listing of opened files (tab-like).
	<li>New Shift selection mode: visual selection with Shift-keys (Windows-like).

	<p><dt><b>Character information:</b>
	<li>Updated to Unicode 6.1.

	<p><dt><b>Interworking:</b>
	<li>Ported to Android.
	<li>Interworking enhancements both for more legacy systems and terminals.
</ul>

<p><dd><a href=#2012.20>mined 2012.20</a>
	<b>highlights:</b>
<ul>
	<p><dt><b>Interworking enhancements:</b>
	<li>Re-ported to VMS (OpenVMS), this time without curses.
	<li>Supporting DEC locator for mouse-like navigation on DEC terminals.
	<li>Workaround for cygwin lock files on network drives.
	<li>Workarounds for configuration problems with various terminals.
	<li>Ported to SCO UnixWare.
	<li>Optimized escape sequence detection for slow terminal connections.
	<li>Workaround for systems not reporting proper window size/changes.
</ul>

<p><dd><a href=#2011.19>mined 2011.19</a>
	<b>highlights:</b>
<ul>
	<p><dt><b>File handling:</b>
	<li>This release features major enhancements in file management:
	<li>Interactive file chooser to navigate file system.
	<li>Backup files, interoperable with other editors; optional numbered backups.
	<li>File locking, using interoperable lock files.
	<li>Recovery files (if mined quits), interoperable with other editors.
	<li>Checking/warning whether disk file was changed while being edited (2011.18).
	<li>Enhancement and migration of file info storage (2011.18).

	<p><dt><b>Interactive:</b>
	<li>Mouse movement navigation between menus, especially to open submenus.

	<p><dt><b>Interworking and Deployment:</b>
	<li>Using glyph detection feature of mintty for optimal marker selection.
	<li>Assigned HOP function to Shift-TAB and to keypad "*", to support 
	laptop keyboards and some dumb terminals (KDE konsole, BSD console).
	<li>Windows stand-alone package: Installing into Start Menu and Desktop.
	<li>Enhanced Linux desktop integration (2011.18).
	<li>Other interoperability and portability enhancements,
	including port to Haiku (2011.18).
</ul>

<p><dd><a href=#2011.18>mined 2011.18</a>
	<b>highlights (mainly maintenance release):</b>
<ul>
	<li>Checking/warning if disk file was changed while being edited.
	<li>New Back/Forward navigation functions in Search/go menu.
	<li>Enhancement and migration of file info storage.
	<li>Enhanced Linux desktop integration.
	<li>Tweaks to build and install on more systems 
	(Linux low memory, Windows older version, Haiku).
	<li>Ported to Haiku.
	<li>Workaround for cursor positioning bug of 'screen'.
</ul>

<p><dd><a href=#2011.17>mined 2011.17</a>
	<b>highlights:</b>
<ul>
	<p><dt><b>Character encoding support enhancements:</b>
	<li>Updated to Unicode 5.2 and Unicode 6.0:
	<li>Supporting Arabic ligature joining in all terminals.

	<p><dt><b>Interactive:</b>
	<li>Sub-menu (in Options menu) to change keyboard emulation interactively.
	<li>Improved display of status line information.
	<li>Automatically adjusting HTML syntax highlighting colour to dark background.
	<li>Improved file info handling, includes selected input method.
	<li>Interactive help viewing uses mined rather than less.

	<p><dt><b>Interworking:</b>
	<li>Supporting extended mouse-coordinates mode (xterm 262 and 268, 
	mintty 0.9), for up to 2015 lines/columns screen width.
	<li>Improved handling of function keys on badly-configured terminals.

	<p><dt><b>Installation:</b>
	<li>Major version number is now the year of release.
	<li>Cygwin package: no longer registering for Windows context menu (postinstall).
	<li>Revamped configuration of Windows version:
	<ul>
		<li>Stand-alone package uses self-installing archive.
		<li>Registers for both context menu and command line path.
		<li>Invocation in window uses Windows keyboard emulation mode.
	</ul>

	<p><dt><b>Bug fixes:</b>
	<li>Fixed keyboard mapping in xterm to accept sequences with 
	subsequent capital letters (like hE, HE).
	<li>Fixed printing under Windows and Interix.
	<li>Fixed UTF-16 handling.
	<li>Fixed stalled mined with modified text after terminal is killed on Linux.
</ul>

<p><dd><a href=#2000.16>mined 2000.16</a>
	<b>highlights:</b>
<ul>
	<p><dt><b>Text editing features:</b>
	<li>New rectangular copy/paste area mode.
	<li>Enhanced smart quotes algorithm and input support for apostrophe.
	<li>Support fow Hawai'ian input.
	<p><dt><b>Interactive:</b>
	<li>Self-made visual selection highlighting, supporting all terminals.
	<li>Changed Del keypad key to more common behaviour.
	<li>Calculated dim attribute for line markers in xterm and mintty.
	<li>Enabled keyboard mapping (input method handling) for DOS/djgpp version.
	<li>Menu navigation: On a submenu entry, cursor-right enters the submenu too.
	<p><dt><b>File handling:</b>
	<li>The text position is now more easily remembered.
	<p><dt><b>Interworking:</b>
	<li>For cygwin:
	<ul>
		<li>Fixed creation of inter-window paste buffer in case hard link does not work 
		(on FAT or network drives).
		<li>Enabled mouse navigation without button pressed for cygwin (1.7.2) console.
		<li>With cygwin 1.7.2, mouse interaction will be enhanced.
	</ul>
	<li>For mintty/cygwin:
	<ul>
		<li>Various tuning measures to make optimal use of this fine terminal.
		<li>The mined scrollbar is now enabled by default.
		(For right-to-left text editing, reduce visual confusion with -o.)
	</ul>
	<li>For DOS/djgpp:
	<ul>
		<li>Enhanced keyboard interaction to Unix level.
		<li>Avoid busy wait during keyboard input.
		<li>Enabled Alt-shortcuts.
	</ul>
	<li>For legacy systems:
	<ul>
		<li>Enhanced terminal support by built-in fallback information.
		<li>Improved handling of slow connections.
	</ul>
</ul>

<p><dd><a href=#2000.15.4>mined 2000.15.4</a>
	<b>highlights:</b>
<ul>
	<p><dt><b>Maintenance release:</b>
	<li>Further tweaks for MinTTY and DOS/djgpp
	<ul>
		<li>Enhanced handling of MinTTY CJK wide mode.
		<li>Handling of MinTTY CJK wide mode dynamic changing.
		<li>Enhanced handling of DOS codepage detection.
	</ul>
	<li>Workaround for mlterm bug with screen update on bidi text.
	<li>Workaround for "screen" terminal obstructing proper width detection.
</ul>

<p><dd><a href=#2000.15.3>mined 2000.15.3</a>
	<b>highlights:</b>
<ul>
	<p><dt><b>Maintenance release:</b>
	<li>Enhanced mouse control
	<ul>
		<li>Menu navigation with mouse without button pressed.
		<li>Mouse click escapes from input prompt.
	</ul>
	<li>Further tweaks for MinTTY
	<ul>
		<li>Detecting MinTTY as modified from 0.4.
		<li>Fixed various character width handling issues.
		<li>Support for dynamic adjustment of CJK width property 
		by font change.
		<li>Adapted encoding handling of window title.
	</ul>
	<li>Mouse operation fixes.
</ul>

<p><dd><a href=#2000.15.2>mined 2000.15.2</a>
	<b>highlights:</b>
<ul>
	<p><dt><b>Maintenance release:</b>
	<li>Tweaks for Cygwin console and MinTTY terminals
	<li>Tweaks for DOS versions
</ul>

<p><dd><a href=#2000.15>mined 2000.15</a>
	<b>highlights:</b>
<ul>
	<p><dt><b>Character encoding support enhancements:</b>
	<li>Updated to Unicode 5.1; added XHC Hanyu pinyin pronunciation information.
	<li>Enhanced character information display, also in non-UTF-8 text encoding.
	<br>Adding Unicode character name and Unicode decomposition, see Info menu.
	<li>Enhanced character substitution display for non-Unicode terminals; 
	using base character according to Unicode decomposition.
	<li>Encoding conversion from UTF-8 enhanced to all text encodings.
	<li>Enhanced terminal support for cygwin 1.7, including UTF-8 mode.
	<li>Character replacement commands (e.g. ESC _) also unescape 
	URL escape notation (%E2%82%AC) and HTML numeric entities (&_#x20AC;).

	<p><dt><b>Text editing features:</b>
	<li>Enhanced line begin/end navigation, may also go to previous/next line.

	<p><dt><b>Interactive:</b>
	<li>Changed cursor positioning when moving vertically over multi-column characters:
	<ul>
		<li>Turning to the closest side of a TAB.
		<li>Options -T/+T for preference to stay left/right of TAB.
	</ul>
	<li>Enhanced menu navigation (Ctrl-mouse-scroll, initial key word finding).
	<li>Multi-option selection in open Info display ("?") menu.
	<li>Scrollbar mouse control enhancements:
	<ul>
		<li>Scroll direction adapted to other applications (old mode with option -oo).
		<li>Click-and-drag scrollbar scrolling.
		<li>Accelerated scrolling (by half a page) while over scrollbar.
	</ul>
	<li>Added usage hints to messages on typical keyboard interaction misconceptions.
	<li>Help function improvements.
	<li>Tweaked handling of Home/End/Del and modified keypad keys.

	<p><dt><b>Interworking enhancements:</b>
	<li>Distinction of small/numeric keypad keys for djgpp-compiled DOS version.
	<li>Tweaked uterm terminal invocation script:
	<ul>
		<li>Workaround to safely ensure UTF-8 on cygwin.
		<li>Best guess for user preference of rxvt (if rxvt-unicode is found).
		<li>Command line options for user preference for xterm or rxvt.
	</ul>
	<li>Tweaked cygwin script wmined to use mintty if available.
	<li>Tuned keypad assignments to achieve more uniform keypad functions 
	among different kinds of terminals as much as possible.
	<li>Support of additional terminal codepages as supported by cygwin 1.7, 
	also in the djgpp-compiled DOS version.
	<li>Recognising and adapting to PuTTY or MinTTY.

	<p><dt><b>Printing:</b>
	<li>Added printing feature using notepad /p for cygwin and DOS versions.

	<p><dt><b>Miscellaneous:</b>
	<li>Applying computed dim screen attribute for line indications (in xterm),
	actived by defining an empty environment variable MINEDDIM.
	<li>Revised/enhanced line end handling support:
	<ul>
		<li>Added option +r to convert Unix lineends (LF) to DOS lineends (CRLF).
		<li>Enhanced Mac lineend handling options -R and +R.
		<li>Either of -r/+r can be combined with either of -R/+R.
		<li>Added search pattern "\r" to search for CRLF (DOS/Windows) line ends.
	</ul>
</ul>

<p><dd><a href=#2000.14>mined 2000.14</a>
	<b>highlights:</b>
<ul>
	<p><dt><b>Text editing features:</b>
	<li>Case-insensitive search (except when searching for an identifier).
	<li>New command Alt-x toggles preceding character and its hexadecimal code.

	<p><dt><b>Character encoding support enhancements:</b>
	<li>Additional option -E? just determines and displays text file encoding(s).
	<li>Additional option +E? just determines and displays terminal encoding.
	<li>Separated display of "isolated" combining characters (e.g. after TAB).
	<li>Improved text encoding auto-detection:
	<ul>
		<li>Improved detection of CJK encodings vs. 8-bit encodings.
		<li>Added auto-detection of Windows-"ANSI" (CP1252), PC-Latin (CP850), MacRoman.
		<li>Improved configuration of auto-detection.
	</ul>

	<p><dt><b>Character input enhancements:</b>
	<li>New shortcuts for input of plain quote marks (in smart quotes mode).

	<p><dt><b>Interworking enhancements:</b>
	<li>Terminal encoding handling:
	<ul>
		<li>Added options -f / -F to indicate limited font coverage of special characters.
		<li>Detecting and handling non-Unicode terminal with Arabic ligature joining.
		<li>Detecting and handling special width behaviour of rxvt, mlterm, konsole 
		  concerning unassigned characters, non-BMP, or non-Unicode characters.
		<li>Applying display replacement for illegal Unicode characters by default 
		  (codes ending with FFFE/FFFF, surrogates, non-Unicode code points).
		<li>Fixed a lot of other remaining width display inconsistencies.
	</ul>
	<li>Making use of window focus out/in reports (xterm 224).
	<li>Workaround for xterm 224 bug which could lock up the terminal.
	<li>Adjusting display details to properties of gnome-terminal, konsole.
	<li>Considering termcap information of function key escape sequences.

	<p><dt><b>Miscellaneous changes:</b>
	<li>Increased speed of some UTF-8 search operations by a factor of ~ 40.
	<li>Colour highlighting of DOS/Mac line end indications.
</ul>

<p><dd><a href=#2000.13.2>mined 2000.13.2</a>
	<b>highlights:</b>
<ul>
	<p><dt><b>Maintenance release:</b>
	<li>Character input support enhancements
	<li>Interoperability enhancements
</ul>

<p><dd><a href=#2000.13>mined 2000.13</a>
	<b>highlights:</b>
<ul>
	<p><dt><b>Documentation enhancements:</b>
	<li>Revised manual structure, featuring more comprehensive new 
	chapters on
	<ul>
		<li>Structured editing support
		<li>Character handling support
		<li>Language support
	</ul>

	<p><dt><b>Character encoding support enhancements:</b>
	<li>Auto-detection and explicit selection of UTF-16 with 
	and without BOM (big endian and little endian).
	<li>Updated to Unicode 5.0.0 (final, from beta2 in 2000.12).

	<p><dt><b>Character input support enhancements:</b>
	<li>Added support for multiple accented character input.
	<li>Additional accent prefix keys for most frequent accents of all 
	Latin-based languages (macron, breve, dot above, ogonek, caron, stroke).
	<li>Added support for convenient combining character input with accent prefix keys.
	<li>Added support for convenient quotation marks input with accent prefix keys.
	<li>Support for Greek (monotonic and polytonic).
	<li>Support for Cyrillic accented characters.

	<p><dt><b>Interactive enhancements:</b>
	<li>Revised menu structure to be more intuitive.
	<li>Improved menu handling system.

	<p><dt><b>Interoperability enhancements:</b>
	<li>Making use of xterm 216 mode which provides detection of 
	Alt-/Control-modified digits and punctuation keys.
	<li>Improved support for some legacy terminals.

	<p><dt><b>File handling enhancements:</b>
	<li>Consistent setting of file access modes when cloning a file 
	or creating a new file with executable permission.
</ul>

<p><dd><a href=#2000.12>mined 2000.12</a>
	<b>highlights:</b>
<ul>
	<p><dt><b>Character encoding support enhancements:</b>
	<li>Updated to Unicode 5.0.0 beta2:
	<ul>
		<li>Case conversion, Script information.
		<li>Combining character width properties.
		<li>Han information (from Unihan database) for CJK characters.
		<li>Radical/Stroke input method.
		<li>Added character input mnemonics for new LATIN characters.
	</ul>
	<li>Supplemented Big5 character set with HKSCS-2004 update from
	<a target=hkscs href=http://info.gov.hk/digital21/eng/hkscs/>
	http://info.gov.hk/digital21/eng/hkscs/</a>, adding more than 
	100 characters.
	Handling covers mappings to two Unicode characters, 
	like for JIS encodings.
	<li>Revised interpretation of locale environment variables to 
	comply with de-facto locale standard but yet allowing flexible 
	locale configuration for both text and terminal encoding.
	This mechanism is supplemented by other options with useful 
	precedences.
	Command line options to specify text or terminal encoding were 
	revised, enhanced, and made more comprehensive.
	<li>Revised terminal encoding handling to support also mapped 
	8-bit encodings including handling of combining characters 
	(with auto-detection).
	<li>Generally revised handling of text and terminal encoding 
	to support all combinations of them.
	<li>Supporting lots of additional 8-bit encodings for both 
	text encoding and terminal encoding. Structured Encoding menu 
	with submenus for concise text encoding selection.
	<li>Optional Unicode Copy/Paste buffer mode with implicit conversion.

	<p><dt><b>Character handling support enhancements:</b>
	<li>Supplemented Cangjie input method with additional mappings 
	from HKSCS-2004 Changjie input code table.
	<li>Case conversion is now always (i.e. in all encodings) 
	based on Unicode.
	<li>Shift-F3 case cycling function now uses actual Unicode 
	title case characters when appropriate and available.
	<li>Smart quotes enabled in all text encodings.
	<li>Updated HTML character mnemonics to HTML 4.01.

	<p><dt><b>Interworking enhancements:</b>
	<li>Improved intuitive assignment of copy/paste functions to 
	keypad, enhanced flexbility of usage.
	<li>Further improvements on terminal interworking (even 
	version-specific), especially with KDE konsole. Added kterm 
	encoding auto-detection.

	<p><dt><b>Other enhancements:</b>
	<li>New password hiding feature, selected by default for "hidden" files.
	<li>Extended default installation by some aliases and wrappers:
	<ul>
		<li>minmacs, mstar, mpico for invocation of mined in 
		emulation modes for emacs, WordStar, pico (alpha), 
		respectively
		<li>umined, xmined for invocation of mined in a 
		separate terminal window
		<li>uterm to invoke a new terminal window with a 
		maximum of Unicode support achievable on the system, 
		including best-choice font selection
	</ul>
</ul>

<p><dd><a href=#2000.11>mined 2000.11</a>
	<b>highlights:</b>
<ul>
	<p><dt><b>Unicode support enhancements:</b>
	<li>Updated to Unicode 4.1.0:
	<ul>
		<li>Case conversion, Script information.
		<li>Combining character width properties.
		<li>Han information (from Unihan database) for CJK characters.
		<li>Radical/Stroke input method (to include new CJK characters).
		<li>Added Hanyu Pinlu and Tang pronunciation information 
		(from Unihan database) to Han information options.
		<li>Added generic and supplemental character input mnemonics 
		for new LATIN characters.
	</ul>
	<li>Indication and character information of Unicode combining 
	characters now refers to the most recent Unicode version, not 
	the actual terminal capabilities.

	<p><dt><b>Interactive enhancements:</b>
	<li>Conciliated keypad assignment preference conflict between 
	Cut/Paste functions (as propagated by mined) and character 
	deletion / line positioning functions (as often commonly expected):
	<ul>
		<li>The more common Home/End/Delete function 
		assignments to the respective keypad keys are also 
		easily accessible (e.g. Alt-Del).
		<li>Documentation for alternative assignment option improved.
		<li>Using Del without a paste buffer gives an 
		additional hint on alternative usage.
	</ul>
	<li>Additional assignment of "Delete single" function 
	(to delete without auto-undent, or to delete the last 
	combining accent only) to F5 Backarrow.
	<li>Additional commands (HOP) F1 F1 / Shift-F1 / Control-F1 / Alt-F1 
	to display a help status line of (shifted) function key assignments.
	<li>Slight revision of function key assignments to improve 
	intuitive usage and compliance with common usage.
	Unification of DOS version function key assignments.

	<p><dt><b>Interoperability enhancements:</b>
	<li>Improved detection of shifted function keys on various 
	kinds and modes of terminals.
	<li>Added keyboard configuration examples for Control-function 
	key detection for rxvt and mlterm to the runtime support library.
	<li>Added script to support Unicode X font installation to the 
	runtime support library.
	<li>Modified xterm start script "uterm" so that with newer xterm 
	versions (from 201) usage of the xterm built-in most recent 
	version of Unicode width data is enabled (which is often more 
	current than the system-provided locale version).
	<li>Provided makefile for Interix.

	<p><dt><b>Feature enhancements:</b>
	<li>Smart arrows added to optional smart input text replacements.
	<li>New word case toggle function Shift-F3 cycling word casing 
	between all small, beginning capital, and all capitals.
	<li>The "search corresponding bracket" commands ESC ( or ESC ) 
	now also match /* */ pairs and #if #else/#elsif #endif structures.
	<li>New TAB expansion option (-+4 or -+8) that expands TAB key 
	input to an appropriate number of Space characters.

	<p><dt><b>Further enhancements:</b>
	<li>Using paps (a Pango printing script) for printing if available.
	<li>Added PC DOS encoding ("codepage 437") to available encodings.
</ul>

<p><dd><a href=#2000.10>mined 2000.10</a>
	<b>highlights:</b>
<ul>
	<p><dt><b>Character encoding, CJK, and input support enhancements:</b>

	<li>Printing feature revamped; now working with all encodings.
	<li>Updated character properties to Unicode 4.0.1.
	<li>Added support for major mapped 8 bit character encodings.
	<li>Added transparent handling of UTF-16 encoded files (with BOM).
	<li>Full support for combining characters in CJK encodings 
	and 8 bit encodings, including optional separated display mode 
	and partial editing (within combined character).

	<li>Added Han character information (description / pronunciation) 
	while browsing text or input method pick lists.
	<li>Enhanced character information conforming to ISO 14755.

	<li>Additional input support for CJK, Vietnamese, Thai, Hebrew.
	<li>Added preinstalled WuBi input method (used by professional 
	typists in mainland China).
	<li>Added radical/stroke lookup input method for CJK characters, 
	especially useful for not CJK speaking users.
	<li>Added two Vietnamese input methods (VIQR and VNI) to 
	preconfigured keyboard mappings, as well as a Vietnamese 
	accent prefixing input support method.
	<li>Added two more ways of supporting input of Vietnamese 
	multiple accented characters.
	<li>Revamped mnemonic input support; completed mnemonic patterns 
	and enhanced documentation.
	<li>Enhanced numeric character input support; conforming to 
	ISO 14755.

	<p><dt><b>Interactive enhancements:</b>
	<li>Revamped menu control; added subtitles and flag markers 
	(showing active options); enabled menu navigation by item letters 
	or mouse wheel movement.

	<p><dt><b>Runtime environment enhancements:</b>
	<li>Enhanced interoperability with various terminals; enhanced 
	detection and handling of available menu border styles as well 
	as screen attributes used for scrollbar and special character 
	display for a wide range of terminals.
	<li>Providing runtime support library with X configuration patterns 
	and terminal startup scripts.

	<p><dt><b>Portability enhancements:</b>
	<li>Revamped makefiles; enhanced portability and compilation 
	on legacy systems.
	<li>Enhanced makefiles to provide more installation options; 
	fixed default target directories for a wider range of target 
	systems.
</ul>

<p><dd><a href=#2000.9>mined 2000.9</a>
	<b>highlights:</b>
<ul>
	<li>Position stack and return function also work across files 
	(esp. after identifier definition searches using tags file)
	<li>Smart quotes: auto-detection of quotation marks style on 
	file loading
	<li>Interactive Latin-1 / UTF-8 conversion support
	<li>Support for VIM keyboard mapping files
</ul>

<p><dd><a href=#2000.8>mined 2000.8</a>
	<b>highlights:</b>
<ul>
	<li>Major extension of CJK character set support: GB18030, 
	full EUC-JP, CNS (EUC-TW)
	<li>Vietnamese VISCII character set support
	<li>Auto-detection of UTF-8 / CJK terminal features
	<li>Flexible locale configuration for both text and terminal encoding
	<li>Smart dashes
	<li>Multiple paste buffers (emacs-style)
	<li>emacs command mode
</ul>

<p><dd><a href=#2000.7>mined 2000.7</a>
	<b>highlights:</b>
<ul>
	<li>Enhanced East Asian input method support; 
	selection menu for multiple character choices ("pick list")
	<li>Support for editing CJK encoded files in UTF-8 terminal
</ul>

<p><dd><a href=#2000.6>mined 2000.6</a>
	<b>highlights:</b>
<ul>
	<li>Arabic ligature joining support
	<li>New command "return to previous position"
</ul>

<p><dd><a href=#2000.5>mined 2000.5</a>
	<b>highlights:</b>
<ul>
	<li>Bidirectional terminal support
	<li>Keyboard mapping
	<li>Script highlighting
</ul>

<p><dd><a href=#2000.4>mined 2000.4</a>
	<b>highlights:</b>
<ul>
	<li>Mouse dragging support
	<li>Clever justification (line-wrapping) with auto-indentation
	<li>Back-TAB (undent)
	<li>Version control system support (checkin/-out)
	<li>Enhanced composed character input support
</ul>

<p><dd><a href=#2000.3>mined 2000.3</a>
	<b>highlights:</b>
<ul>
	<li>Documentation revision; manual page source changed to HTML
</ul>

<p><dd><a href=#2000.2>mined 2000.2</a>
	<b>highlights:</b>
<ul>
	<li>Auto-indentation
	<li>Input support for indented parentheses pairs
	<li>HTML syntax highlighting
	<li>Enabled newline in search/replace
	<li>Mouse support for DOS versions
</ul>

<p><dd><a href=#2000.1>mined 2000.1</a>
	<b>highlights:</b>
<ul>
	<li>Smart quotes
	<li>Context-dependent Unicode case toggle
</ul>

<p><dd><a href=#2000>mined 2000</a>
	<b>highlights:</b>
<ul>
	<li>Binary transparency, including different line-end handling, 
	    unterminated lines, and NUL characters
	<li>Unicode combined character handling 
	    (combined or separated display)
	<li>Optional Unicode line-end display
	<li>Cross-file identifier definition search (using tags file)
	<li>Right-to-left input support ("poor man's bidi" mode)
	<li>Scrollbar
</ul>

<p><dd><a href=#98>mined 98</a>
	<b>highlights:</b>
<ul>
	<li>UTF-8 support
	<li>Mouse support
	<li>Pull-down and popup menus
</ul>

<p><dd><a href=#6>release 6</a>

<p><dd><a href=#5>release 5</a>

<p><dd><a href=#3>release 3</a>
	<b>highlights:</b>
<ul>
	<li>Paragraph justification
	<li>16-Bit character set support
</ul>

<p><dd><a href=#2>release 2</a>
</dl>

</span>


<a name=releases id=releases onMouseOver="chapter (this);">
<hr>
<h4>Change log</h4>
</a>

<pre>

<div class=latest>

<a name=2022.26 onMouseOver="release (this);">
=============================================================================
Changes from mined 2022.26 -> mined 2022.27 (December 2022)
===========================================

Character information and encoding support:
-------------------------------------------
Updated to Unicode 15.0.

Build:
------
Speed up UTF-8 character insertion in generated tables.

</div>


<a name=2022.26 onMouseOver="release (this);">
=============================================================================
Changes from mined 2015.25 -> mined 2022.26 (November 2022)
===========================================

Features:
---------
Backup function added (to File menu, command script "bu" must exist in path).

Trying to trigger auto-remount if file access failed.


Editing:
--------
Substitution references to matching sub-expressions: Like sed, mined 
search expressions support marked sub-expressions \(...\) which the 
substitution expression can refer to with numbered references \1 through \9.
Sub-expressions can be nested.

Tweaked auto-bullet list handling, no auto-bullet after empty line.
Added ° (degree sign) to item bullet category.

Tweaked inconsistent deletion behaviour over combined characters, e.g. ZWSP.

Added configuration option "Bidi mode" to Options and Justification menus.


Interaction:
------------
Don't disable Home/End selection for gnome terminals and cygwin console.

Right mouse-click on file tab area opens the file switcher menu.
Control-mouse wheel scroll switches to next/previous file tab.

Enhanced feedback on read errors or empty buffer when pasting.

Support SGR mouse mode (DECSET 1006).

Proper mouse mode switching in gnome terminals.

Workaround for/swallowing pending mouse sequences after disabling screen mode.

Workaround for "Late screen mode response" in cygwin console.

Workaround for lengthy delay in Linux console.

Fixed -Qv VT100 graphics menu borders in cygwin console.


Interworking:
-------------
Clipboard exchange with X server via xsel, xclip, or (Mac) pbcopy/pbpaste.


Character information and encoding support:
-------------------------------------------
Updated to Unicode 13.0 (partially 15.0).
Updated Unihan character information, added Readings TGHZ and Nushu.

Support for emoji width handling.

ISO 6937 support.

Tweak detection of non-BMP support.
Tweak width handling of unassigned characters for lxterminal/gnome-terminal.

Not showing wrong byte counts when editing UTF-16 files.

Workaround for bug of KDE konsole to handle all non-BMP characters as wide.

Supporting mintty options WideIndic and WideExtra.

New mnemonics:
* "^V est " or "^V estim " for U+2259 ESTIMATES
* "^V info " for U+2139 INFORMATION SOURCE
* Updated HTML Entities mnemos.

VGA character set (CP437 plus graphics in the control range) can be selected 
with -E:VG or -E=VGA.


Configuration:
--------------
EBCDIC auto-detection can be enabled by including the letter 
"E" in the environment variable MINEDDETECT.


Bug fixes:
----------
Workaround for buggy colour report of lxterminal, xfce4-terminal.

Fixed stack overflow when updating syntax state in large areas.

Tweaked smart undentation (on Backspace) of auto-numbering.

Fixed line split of long lines read from file.

Tweaked menu background colour handling.

If opening in explicit (not auto-detected) UTF-8 encoding (-u), 
fixed misinterpretation of 0x85 byte as Next Line character.

Fixed missing character decompositions for Unicode 7.0 character information.

Fixed handling of keypad-+ if mapped to keypad-comma (xterm VT220 mode).
Keypad-comma now scrolls forward (while keypad-minus scrolls backward).

Fixed repeat command (ESC nn ...) to not apply smart substitution initially.

Fixed character encoding of some auxiliary file-related messages.

Fixed mnemonic for ¾.

Preventing encoding switching when editing EBCDIC file (like UTF-16).

Fixed loop when trying to justify paragraph if file is locked or view-only.

Fixed sample font configuration for xterm and rxvt-unicode in 
Xdefaults.mined in the Mined runtime support library.

Tweaked screen handling in tmux on cygwin, fixed display, width, colour bugs.

Fixed attribute layout of ^X/^K/^O command prompts in emacs/WordStar modes.

Fixed detection of cygwin version for multi-byte console bug workaround.


<a name=2015.25 onMouseOver="release (this);">
=============================================================================
Changes from mined 2014.24.2 -> mined 2015.25 (March 2015)
=============================================

Editing:
--------
Transparent editing of encrypted files.
Using filters configurable by file type (configured in $HOME/.minedrc).

Enhanced auto-indentation and list support:
Bullet list support: Auto-indentation duplicates leading bullet.
Numbered list support: Auto-indentation auto-increments numbering.
List support considers item paragraphs and Unicode line separators.
Undent removes bullets / numbering levels.
Cloning TAB characters regardless of TAB expansion mode.

Enhanced smart spaces/dashes/arrows/minus:
* suppressing double spaces by smart and input spaces (e.g. x -- y, « q »)
* suppressing smart input handling after cursor has moved
* new: leading smart dash on line when entering single hyphen before white space: "- "
* new: smart minus sign when entering single hyphen embedded in spaces: " - "
* enabled smart dashes also in non-UTF-8 encoded text

Made initial search (option +/...) repeatable with F9.
Preserving search repeating expression after search matching parenthesis.

Stopping at non-space end-of-line when moving word forward/backward.

Tuned HTML highlighting to be suppressed for indenting white space.

Enabled script highlighting also for non-UTF-8 text.

Configuration option 'plain_BS' (command line option +Bp) switches the 
Backarrow key from smart backspacing to plain backspacing, i.e. no 
auto-undent and only delete one combining character of a combined character.
Use Shift-Control-Backarrow to perform smart backspacing then.


Interaction:
------------
Revised/joined some flag menus:
* Indent/TAB menu: Auto indent, TAB expand, TAB size.
* Justification menu: Word wrap mode, Paragraph end mode.
Revised geometry of menu header line.
Distinctly highlighting all flag menu headers for better recognition.
Tuned flag menu click to not toggle other than open menu (rather open it).

Options->About displays mined homepage and build timestamp in turn.

New command HOP ESC . to center current position on screen.

Improved documentation on alternative HOP keys in the manual section 
"The HOP function".

The appearance of the menu background and borders can be configured 
in the runtime configuration file ($HOME/.minedrc).

Limited double-click (for word selection) to a timeout (500ms).
Limited focus-in-followed implicit click suppression to a timeout (100ms).

Added "not found" message for initial search (option +/...).

Enhanced printing script 'uprint' to offer printer selection also 
with CUPS (lpstat) - not thoroughly tested yet.


Character handling support:
---------------------------
Configuration options for $HOME/.minedrc to adjust status line information.

Smart quotes input enhancement:
Alt-" and Alt-' now enter the previous/standby style typographic quote marks.

Special casing rules:
Applying Turkish casing (of dotless i <-> I / i <-> I with dot above) 
also to locales Crimean Tatar (crh), Volga Tatar (tt), and Bashkir (ba).

Accented character composing transformation:
Additional national preferences variations of the mnemonic transformation 
command ESC _ (similar to ESC ö, ESC é, ESC æ etc.):
* Italian: ESC ì or ESC ò transforms 'e or ´e to è rather than é etc
* East European: ESC < accented letter typical on East European keyboard >
  (like l with stroke, u with ring, o with double acute, s with caron, etc) 
  transforms ,e to e with ogonek (rather than cedilla) etc., 
  and -d to d with stroke

Displaying Unicode named sequences with character information on status line.

Displaying spacing combined status of a character (if followed by a 
spacing combining character) as "with" similar to "combined" or "joined".

Slightly revised format of character code display, making line ends uniform.

Added groff glyphs (roff special characters) to mnemonic character 
input support, all mnemonics beginning with "(".

Tuned Ctrl-comma prefix to apply cedilla with preference to ring (on r).

Support for ISO 8859/EBCDIC Next Line character (NL U+0085) in EBCDIC text, 
ISO 8859 encodings (not after auto-detection of text encoding), and UTF-8.
Enter NL with Control-Shift-Enter.


Character encoding support:
---------------------------
Fixed the environment variable LANGUAGE to not affect assumed text encoding.

Updated character encoding tables according to libiconv 1.14:
* ISO 8859-7 (Greek, Euro and Drachma sign, Ypogegrammeni)
* EUC-KR (Korean)
* Johab (Korean)
* EUC-TW (CNS, Euro sign)
* GB18030 (using GB18030-BMP table with some more entries)
* BIG5-HKSCS-2008 (adding Euro sign from BIG5-2003)
* added ARMSCII (Armenian 8-bit) as there are locales referring to it
* added CP1258 (Windows Vietnamese with combinings) as supported by cygwin
* added CP720 (DOS Arabic) as supported by cygwin
* added CP1131 (DOS Ukrainian) as there are locales referring to it

Dropped the bogus idea of merging JIS X 0213 and EUC-JP code tables.
Replaced two Japanese encodings with these four:
* EUC-JP (used in locales/by terminals)
* EUC-JIS X 0213 (x0213.org standard EUC-JIS-2004)
* 'Shift_JIS' (Windows name) / CP932 (used in locales *.sjis/by terminals)
* Shift_JIS X 0213 (x0213.org standard Shift_JIS-2004)

EBCDIC support ("bracket" codepage CP1047 as used by z/OS USS), 
selected with option -E=cp1047 or -E.EBCDIC or -E:47 , 
including support for Next Line character; enter LF with Control-Enter.

New option -E- or just -E to disable text encoding auto-detection and 
derive it from the locale environment.

Revamped CJK text encoding auto-detection.

Locales and terminal encoding:
Added zh_MO to indicators of Big5 encoding.
Revamped CJK terminal width detection and ambiguous-width character handling.
Revamped handling of non-displayable characters in CJK terminals.

Added support for additional locales (largely from glibc):
UTF-8: fy_NL, fy_NL@euro, hy_AM, as_IN, az_AZ, dv_MV, fil_PH, ii_CN, kok_IN, 
	ky_KG, mn_CN, ps_AF, sa_IN, sr_BA, sr_ME, sr_RS, syr_SY, tn_ZA, 
	ar_SS, en_ZM, pap_AW, pap_CW, ta_LK, ur_IN
	ak_GH, anp_IN, ayc_PE, bem_ZM, bho_IN, brx_IN, cmn_TW, cv_RU, doi_IN, 
	es_CU, ff_SN, hak_TW, ia_FR, lb_LU, lij_IT, lzh_TW, mag_IN, mhr_RU, 
	mni_IN, my_MM, nhn_MX, niu_NU, niu_NZ, os_RU, quz_PE, sat_IN, 
	sq_MK, sw_KE, sw_TZ, szl_PL, the_NP, unm_US, wae_CH, wal_ET, yue_HK
ISO-8859-2: hr_BA, hsb_DE@euro
ISO-8859-5: ba_RU, sah_RU
ISO-8859-6: prs_AF
ISO-8859-15: et_EE
EUC-KR/JP/TW/CN: ko_KR.EUC, ja_JP.EUC, zh_TW.EUC, zh_*.EUC
ARMSCII: hy_AM.armscii8, hy_AM.ARMSCII-8
DOS Byelorussian/Ukrainian: be_BY.CP1131


File handling:
--------------
Handling directory access failure when opening menu, fallback to homedir or /.

Enhanced detection whether file got changed while editing to check not only 
modification time but also size, device and inode (in case the 
file got replaced by rename/move/mount operations).
Checking this also after shell commands (ESC !, ESC c, ESC z).

Improved detection and handling of read-only condition if changed while editing.

On read error during file recovery, original file will not be overwritten.

Clearing file name after read error to double-prevent accidental overwriting.

Not truncating file info file .@mined after read error.


Interworking / Interoperability:
--------------------------------
Enhanced pipe behaviour enables mined to act as a filter in a pipe even 
together with other screen programs (so e.g. mined | mined would now work):
* Mined does not manipulate the screen mode before data is available 
  from the pipe, so to some extent it can interwork even with screen 
  programs providing its input.
* If mined exits after writing to a pipe, it does not manipulate the 
  screen mode after beginning to write, so to some extent it can 
  interwork even with screen programs taking its output.

Tweaked mouse handling for rxvt-unicode so that window focus-in is 
properly detected despite the quirky codes rxvt sends on it.

Workaround for cygwin console (since cygwin 1.7.10) not always reporting 
complete escape sequences when queried with the select function.

Tweaked detection of Unicode 6.0 width data for BMP-only terminals.

New command line option +# to assume dark terminal background.

Disabling attempt to use VT100 graphic borders in old OpenWindows xterm.

User configuration file on Windows systems: Added documentation that 
if %HOME% is not set, %USERPROFILE%\.minedrc is used.

With xterm since 280, using modifyKeyboard resource mode in combination 
with VT220 Keyboard and Application Keypad mode, 
finally achieving the distinction between all modified keypad keys 
as well as numeric keypad vs. editing keypad keys (esp. Home/End) in xterm.

Preventing editing screen from being spoiled by other processes.
(Acquire tty lock, does not lock against root processes, 
does not work on cygwin as of 1.7.30.)

Enhanced handling of Unicode characters in manual page:
* automatic generation provides presentation substitutes
* automatic generation adjusts arrow width in tables

Detecting and ignoring bogus setting of TERM variable in cygwin console.

Workaround for 'screen' in cygwin console where host terminal attribute 
enquiry would not be captured (and would later be inserted as garbage).

Messages for copy/paste operations in case they are slow.

Detecting colour problems (yellow misconfigured as brown, 
foreground almost yellow, cursor colour contrast);
fixing/adjusting menu and cursor colours accordingly.

Added SIXEL graphics splash logo in xterm (if supported) and mlterm.

Tweaked terminal query handling in mlterm, old xterm, cygwin console.

DOS versions (djgpp, Turbo-C):
Tweaked Ctrl-space to work (marking position for copy/cut).


Bug fixes:
----------
Fixed HOP flag sometimes staying active in display although used up.

Fixed handling of interrupts while reading file.

Fixed new unnamed UTF-16 text to actually be saved as UTF-16.

Fixed double click to not select word if position changed meanwhile.

Fixed smart quotes option -q to not also set paste buffer append mode.

Fixed printing for file names with spaces (or unnamed edit buffer).
Fixed handling of interrupted print script.

Fixed reporting newer recovery file even if it was older (since 2014.24).

Build: Fixed make target wildcard issue with non-Gnu-make (since 2014.24.2).

Installation: Really fixed targets of alias links minmacs, mpico, mstar.

Fixed text encoding auto-detection on unsigned char platforms (since 2000.14).

Preserving also initial smart quotes style when changing file tabs.

Workaround for interference between SIGWINCH and focus report which could 
suppress mouse function after changing font in mintty (since 2012.20).

Tuned initial resetting of terminal scrolling region to fix workaround 
in case tty setting (stty size) is inconsistent with actual terminal size.

Fixed script highlighting in terminals with less than 256 colours.

Fixes in CJK terminals:
* Fixed character width lookup for some cases in CJK terminals.
* Fixed screen width problem for Unicode C1 controls in GBK terminals.
* Fixed screen width problem with illegal UTF-8 indication in CJK terminals (since 24).
* Revamped/fixed handling of non-displayable characters in CJK terminals.
* Fixed menu marker in GB-encoded terminal.
* Fixed width handling in CJK mode terminals not supporting wide characters.

Fixed entry of non-ASCII HTML attribute values (Alt-h) in some non-UTF-8 
text/terminal encoding combinations.

Fixed combined/joined character information in some special CJK cases.

Fixed pasting invalid UTF-8 as digit '8' in non-UTF-8 text.

Fixed menu layout with options -Q@ and -Qn (digit n).

Fixed Mac and DOS line end indicators monochrome terminal fallback for UTF-8.

Fixed alternate screen handling on leaving screen mode (exit, suspend etc).

VMS: Fixed directory name of recovery file.
VMS, Turbo-C: Tweaked wildcard expansion to not prefix "./".

DOS versions (djgpp, Turbo-C): Fixed ^R and ^C for paging.

Fixed detection of Windows PowerShell terminal.

Fixed alignment of double-height splash logo in xterm -cjk_width mode.

Removed obsolete bug comment from manual page about pipes and device files.


<a name=2014.24.2 onMouseOver="release (this);">
=============================================================================
Changes from mined 2014.24 -> mined 2014.24.2 (July 2014)
=============================================

Editing:
--------
Not triggering HTML highlighting anymore on "< ...", i.e. within JavaScript, 
if using the proper habit to nicely format operators with surrounding space.

Revised line end search patterns to allow searching for 
any line end (^V^J) or specific line end types (\n, \r, \R, \0).


Character information:
----------------------
Updated to Unicode 7.0.


Interworking:
-------------
Detecting Windows PowerShell terminal and adjusting to its limitations.

Using dim attribute of xterm 305/306 on light background for markers.


Bug fixes:
----------
Fixed trouble when using line end (^J) in search expression.
Fixed line end type of last line changed after substitution.

Fixed HTML formatting problem after toggling HTML highlighting and editing.

Fixed some width data handling issues since Unicode 5.2.
Fixed former wide properties of some Hangul characters (until Unicode 6.1).

(Installation: Fixed targets of alias links minmacs, mpico, mstar.)


<a name=2014.24 onMouseOver="release (this);">
=============================================================================
Changes from mined 2013.23 -> mined 2014.24 (June 2014)
===========================================

This is a major update with a list of enhancements, two major new features, 
and a number of bug fixes.


Internationalization and Character information:
-----------------------------------------------
Revamped smart quotes feature.
* Revised Quotes menu according to investigations of international styles.
* Supporting opening quotation mark repetition for new paragraphs.
* Automatic French quotation marks spacing.
* Deriving primary/active and alternate/standby styles from locale.
* Option -q (and configuration option) to set active style from locale.
* Additionally considering locale environment variable LANGUAGE.
* Locale variables LANGUAGE or TEXTLANG implicitly enable smart quotes mode.

Support for special title casing (Shift-F3) for Dutch like in IJsselmeer, 
enabled if locale value begins with "nl".

Updated to Unicode 6.3.

Additional mnemos for triangular/white bullet, white/dotted/large circle.


Editing:
--------
File tabs and file name tab titles.
* Select file by clicking on tab title.
* Quickly browse files by moving the mouse over tab titles.

Revamped rectangular text selection.
* Alt-mouse-move during click-and-drag toggles rectangular selection.
* Rectangular mouse selection now extends to final mouse position 
  even if beyond final line length.
* Rectangular parts of shifted lines are selected consistently.

Revamped and enhanced HTML and scripting highlighting.
* Added distinct highlighting for HTML/XML attributes and values.
* Added distinct highlighting for JSP value expressions.
* Added highlighting for ASP and PHP scripting.
* Command line option +H and configuration option to enable highlighting.
* Fixed reformatting synchronization when inserting multiple formatted lines.

TAB width 2 enabled in addition to 4 or 8. Use option -2 or -+2.
Toggle with ESC T (Alt-T) or from Options menu.

REPEAT (ESC =) followed by character composition (using ^V, F5/F6, Control-/ 
etc) repeats the composed character, not the procedure of composing, n times.

VT100 special graphics character set display support (from Options menu).

Smart lineend type pasting:
If pasting from clipboard (Shift-Ins, Windows) the lineend type is not copied 
from the clipboard (i.e. typically CRLF) but adapted to the current line.


User configuration:
-------------------
Enhanced user configuration features (using file $HOME/.minedrc, see 
sample file in Mined runtime support library).
* Handling file name pattern specific preferences.
* Consistent handling of preferences when editing multiple files.
* Handling terminal type pattern specific preferences.
* Added some preference options (see documentation in sample file), 
  e.g. cursor_style.

Added options +V:k, +V:a to tweak visual selection behaviour.


File handling:
--------------
Considering file as modified also if its timestamp has become older.

Refusing to open or save to character/block device file.
On cygwin, /dev/clipboard can be edited as a special case.

Not trying to open file in read-write mode with option -v.

Detecting write error due to "quota exceeded".


Interworking:
-------------
Tweaked font usage in mlterm (matching observations with cygwin mlterm).
Enabled option +o to enable scrollbar in mlterm.
Removed cursor flickering at right screen border when paging in mlterm.

Detecting tmux, adapting terminal feature usage.

Tweaked startup interaction again by reducing timeout for specific 
terminal queries to avoid inconvenient delay if responses are disabled 
(X resource allowWindowOps: false with older xterm).

Added configuration option cursor_style to change cursor style while editing.

Enabled screen size changing for DEC VT terminals (80/132, lines from VT420).

Tweaked makefiles to build seamlessly on Ultrix.


Bug fixes:
----------
File handling fixes:
* Wrong timestamp checking when opening another file after reading pipe.
* Changed save target after redirected editing for stdout.
* Interference of file backup with editing a fifo.
* Glitch of timestamp checking when editing a fifo.
* Reenabled editing fifo (which would block on non-cygwin).
* Fixed handling of write errors when saving file (since 2011.17).
* Fixed initial update of viewonly flag ('V') after file read error.
* Workaround for lock file handling on weird network file systems.
* VMS: Fixed file chooser navigation to parent directory in VMS mode.

Fixed character set confusion when composing character in file menu.

Character function fixes:
* Tweaked case conversion to not delete the character if the converted 
  character cannot be encoded in the current text encoding.
* Fixed Ctrl-F11 to not delete rest of line (since 2012.22).
* Fixed string conversion (Shift-F11, Shift-F3) to not drop handling of 
  language-specific cases after special cases (e.g. ßi in Turkish locale).

Terminal handling:
* Fixed HPterm icon string setting sequence (length).
* Fixed terminal scrolling region setup if not using terminfo.
* Fixed CJK display in 'screen'; fixed width detection with 'screen' 4.0.
* Fixed confusion when changing screen/font size from menu or keyboard/mouse.
* Fixed useless terminal query with garbage display on VT52 (since 2012.20).

Search expressions:
* Fixed ^M in search expression which used to match CRLF lineends too.
* Fixed ^M or \r from matching rest of line (incl lineend) for replacement.

Keyboard:
* Reenabled Ctrl-Backarrow to delete only one character (i.e. 
  without auto-undent or deleting only combining characters, resp.) 
  unless keyboard is configured e.g. to Windows mode (since 2012.22).

Fixed offset error in some flag menus when scrolled.

Fixed occasional input corruption after switching from CJK to Unicode text.

Fixed smart quotes from sometimes inserting apostrophe on double quote key.

Fixed wrong encoding detection if e.g. LC_ALL=en_GB (since 2012.20).

Fixed input of typographic apostrophe (U+2019) with HOP ' in non-Unicode text.
Fixed input of typographic apostrophe (U+2019) with HOP ´ in some encodings.

Tweaked prompt whether to quit with unsaved changes to align right 
so that the file base name is seen and rather the path prefix gets dropped.

Tweaked password hiding so that editing behind a password is not hidden.

HTML highlighting: Fixed reformatting synchronization after insert.

Fixed highlighting of whole line with Unicode lineend in HTML code 
which could render the line unreadable in dark terminals.

Avoiding cygwin postinstall error by disabling deprecated commands 
(the postinstall script was implicitly re-enabled when switching to cygport).


<a name=2013.23.4 onMouseOver="release (this);">
=============================================================================
Changes from mined 2013.23.3 -> mined 2013.23.4 (September 2013)
===============================================

Build:
------
Tweaked makefile yet again to re-enable build on weird 64 bit systems 
that have /lib64 but hide the termcap API somewhere else (Debian 7).


<a name=2013.23.3 onMouseOver="release (this);">
=============================================================================
Changes from mined 2013.23.2 -> mined 2013.23.3 (September 2013)
===============================================

Build:
------
Tweaked makefile again to re-enable build on systems using /lib64 or /lib/64.


<a name=2013.23.2 onMouseOver="release (this);">
=============================================================================
Changes from mined 2013.23 -> mined 2013.23.2 (August 2013)
=============================================

Build:
------
Tweaked makefile to build on newer Debian/Ubuntu.


<a name=2013.23 onMouseOver="release (this);">
=============================================================================
Changes from mined 2012.22 -> mined 2013.23 (August 2013)
===========================================

Editing:
--------
New double-click feature for word selection.

Apply undent/backtab function also on first indented line.

Made Shift-F3 more consistent about included underlines and single letters.

Tweaked word-wrap to handle all letters alike and not indent e.g. on "e.g.".

Tweaked identifier definition search (Alt-t) to consider ctags -a.

New character mnemos for U+2E18 inverted interrobang.
New mnemos for black left/right-pointing pointers: -->.

New item in Options menu: Toggle password hiding.

Added TAB expansion to file info memory.

(Windows/Cygwin): Control-Shift-Ins pastes the Windows buffer and stays left.


Filename handling:
------------------
Suppressing backup file names as generated by command line auto-completion 
if they appear after their base version name (x~, x;N, x.~N~), 
so that, e.g., mined x* edits x and x1 but not x~.


Character information:
----------------------
Updated to Unicode 6.2.


Interworking:
-------------
Speed-up of directory browsing, especially on slow network drives.
On file systems that do not support this speed up, feedback about 
directory access delay; notification during readdir, 
speed-up of initial directory display (retrieving dir info lazy per page), 
directory display flush per line (providing feedback in worst case).

Ported stand-alone Windows installer to Windows 7.

Ported to MSYS.

Ported to Raspberry Pi (using mkmined build script).

Ported to Irix.

Build ported to DOSBox: new basic makefile.dos.

Revamped file information statistics to monitor line number changes 
instead of recounting from start every time - this could slow down 
considerably on systems with low memory (due to swapping) as seen on Ultrix.

Supporting encoding detection for locales tt_RU and tt_RU@iqtelif.

Implemented optional WINCH-interruptible read, activated for cygwin 1.7 
until cygwin 1.7.17 (which did not interrupt select() or read() on WINCH).
See COMPILE.DOC for details, or how to activate this for other systems.

New option -nc to suppress usage of terminal colour attributes.

Enabling numeric extended mouse reporting mode (1015) in newer mlterm 
(supported since 3.1.2).

Tweaked detection of modified keypad keys for newer mlterm.


Bug fixes:
----------
Explicit tab width option (-4/-8) takes precedence over file info memory.

Fix 'screen' Unicode display by limiting previous workaround to older version.

Fixed Alt-digit accent prefix functions for mintty and rxvt (since 2012.20).

Fixed fast ESC-capital letter (e.g. ESC E, ESC K) for xterm.

Fixed insertion of Unicode line separators (Ctrl/Shift-Enter) in lines 
ending with NUL pseudo-lineend or no lineend (split lines).

Fixed loading of NUL-terminated file to enable positioning to end of file.

Fixed search/replace with newline not to duplicate NUL/NONE lineends.

Trailing lineend could be deleted even in view-only mode.

Fixed crash when pressing Enter while editing in view-only mode.


<a name=2012.22 onMouseOver="release (this);">
=============================================================================
Changes from mined 2012.21 -> mined 2012.22 (May 2012)
===========================================

User configuration:
-------------------
New file $HOME/.minedrc for configuration of user preferences.
Sample file with documentation included in Mined runtime support library.


Interactive:
------------
The Backarrow key (Backspace or DEL character as configured on keyboard) 
now performs the usual dual-mode function as well as the keypad Del key:
it deletes the current selection if visual selection is active, otherwise 
it deletes left.

Tweaked keypad functions (esp. Home/End assignments) for new keypad modes.
New -kw option to select Windows keypad (+t deprecated).
New -kS option to select Shift-select keypad (+tt deprecated).
New -km option to select mined keypad.
Extended submenu Options - Keyboard/Editing with keypad mode selection.
New -kc option to enforce Mark/Copy to paste buffer function on small keypad.
New -kC option to enforce Mark/Copy to paste buffer function on big keypad.

Renamed "Shift selection mode" to "Windows keypad mode".
Renamed "Combined/conditional shift selection mode" to "Shift-select mode".

Left click on flag (upper-right flags area) opens flag menu (for the sake 
of terminals that do not pass right-click to applications, esp. 
gnome-terminal and descendants). Another left click toggles.
Middle click still toggles.

Alt-F12 (in terminals that support an alternate screen view)
switches to normal screen (to view command line history and possibly 
mouse-copy/paste) until next input.
The previous Alt-F12 function to toggle the keyboard mapping / input method 
is now available at Ctrl-Alt-F12 (and still at Ctrl-k of course).

Only adding files to the File switcher list if opened explicitly.

Auto-undent / implicit Back-Tab (Backarrow key) is only applied if 
auto-indentation is enabled, so it can be toggled off from the Options menu.


Editing:
--------
Fixed cursor position after rectangular cut to upper left of cut area.

Added a number of (and modified a few) functions of modified keypad keys, 
mainly enabled with -kw (Windows keypad mode):
- Control-Backspace: delete word left
- Control-Delete: delete word right
- HOP Control-Backspace: delete line left
- HOP Control-Delete: delete line right
- Control-Up: go to previous start of paragraph
- Control-Down: go to next end of paragraph
- Control-Home: go to start of file (already in 2012.21)
- Control-End: go to end of file (already in 2012.21)
- Shift-Control-Up: select to previous start of paragraph
- Shift-Control-Down: select to next end of paragraph
- Shift-Control-Home: select to start of file (already in 2012.21)
- Shift-Control-End: select to end of file (already in 2012.21)
- Backspace if Highlight Selection is active: delete selection

New screen helper function:
- Alt-F12: flip screen to command line view (xterm "normal screen")
  (e.g. for Shift-mouse quick copy/paste from command line)

(Windows and cygwin version only) Support for Windows clipboard:
- Shift-Ins: paste from Windows clipboard
- copy/cut operations: also copy to Windows clipboard

New feature "virtual bold stropping" displays keywords of Algol-like 
programming languages in bold while transparently editing them in 
all-capital letters ("upper stropping"). Enabled with +ZZ (+Z_ for 
"underline stropping") or implicitly on file name suffix .a68.


Interworking:
-------------
Fixed mouse moving interaction to work in rxvt-unicode / urxvt as well.

Tweaked Shift-selection to work in DOS version as well (key and mouse).

Extended mlterm key configuration example file to include workarounds.

Fixed heuristic detection of 'mlterm'.

Fixed terminal detection and attribute handling for 'screen'.

Using extended mouse coordinates mode 1015 if appropriate for terminal.


Bug fixes:
----------
Fixed paste buffer to work in DOSBox and Android.

Removed interactive terminal size detection from DOS version (useless delay).

Avoid double slash when composing temporary file names (e.g. in case $HOME=/).

Tweaked Alt-x to work also on prompt line.

Fixed visual highlight clearing in some cases when splitting a line.


<a name=2012.21 onMouseOver="release (this);">
=============================================================================
Changes from mined 2012.20 -> mined 2012.21 (March 2012)
===========================================

Interactive:
------------
New File switcher which offers a menu listing of files to select from, 
listing files supplied on the command line or opened later 
(replaces command ESC #).
- Invoke with Alt-# or ESC #, or Alt-F3 or ESC F3, or from the File menu.

New Close file command (in File menu).

New text selection mode ("Shift selection") for visual selection like in 
more common practice: Shift-cursor keys start or extend text selection;
auto-copy (after click-and-drag) is disabled, Shift-mouse-left-click 
extends the selection; in addition, Shift-HOP is mapped to the Copy function.
- Triggered by option +t (also implied by option +ew).
- Option +tt triggers a combined mode in which Shift selection is 
  only applied with an actually shifted keypad key (or mouse button).


Character handling:
-------------------
Updated to Unicode 6.1:
- Combining character width properties.
- Han information (from Unihan database) for CJK characters.
- Radical/Stroke input method.
- Added Bopomofo input method.
- Minor additions to Hiragan and Katakana input methods.
- Added a few character input mnemonics.


Interworking:
-------------
Porting to more legacy systems ensured, tweaked makefiles and some features.

Ported to Android.

Recovering from STOP signal; restoring screen mode after CONTinue signal.

Tweaked mouse setup for crttool.

Fixed terminal model detection to re-enable mouse with old Sun openwin xterm.

For dtterm, not setting terminal encoding to ASCII anymore since this 
would only be needed with the broken default font setup.


Bug fixes:
----------
Fixed rare hangup condition in view-only mode (which was revealed now 
because editing a locked file sets view-only).

Fixed colour detection and handling in mintty.

Fixed workaround for mlterm mouse wheel-down quirk not to interfere with mintty.


<a name=2012.20 onMouseOver="release (this);">
=============================================================================
Changes from mined 2011.19.2 -> mined 2012.20 (January 2012)
=============================================

Interworking:
-------------
Re-ported to VMS, this time without curses.

Using environment variable MINEDOPT for configured options (accepting 
MINED for compatibility), to separate from command name (for VMS, DOS).

For DEC terminals, supporting DEC locator for mouse-like navigation.

Generic handling of lock files created by Cygwin on network drives; 
(these are likely to be plain files rather than symbolic links) 
thus preventing network files from staying locked due to 
Cygwin's limited symbolic link handling.

Fixed rxvt key sequences to work even if TERM variable is not rxvt.

For dtterm, setting terminal encoding to ASCII.

Added makefile switch for SCO UnixWare.
Added generic makefile attempt for unknown non-GNU systems.

Workaround for systems not reporting proper window size (and changes).
Workaround for related KDE konsole problems (seen on SCO Caldera Linux).

Accepting all known codepages as locale suffix.


Interactive and other small enhancements:
-----------------------------------------
Middle mouse button (normally displaying the file status and text position) 
shows character information if permanent file status display is enabled.

Enhanced file chooser with context-sensitive usage hints.

Enabled poor man's bidi mode also for non-Unicode encodings.

Tweaked title setting and title encoding; for xterm (since 251) / 
mintty (since 1.0.3), using window title push/pop rather than query.

Only setting basename into icon label (not full pathname).

Optimized escape sequence detection for slow terminal connections.


Bug fixes:
----------
Checking out-of-memory conditions when setting up a file chooser.

Fixed interfering of pick list (of input method) with file chooser.
Fixed interfering of pick list with prompt input (since 2000.10).

Fixed retrieval of user name (for buffer files) in case 'su' is effective, 
thus avoiding the blocking of the creation of further inter-window buffers.

Preventing backup file write problems by making it writable for the owner.
Further avoiding backup file write problems by deleting old backup file first.

Number input (e.g. for repeat command ESC =) uses unmapped keyboard.

Restored screen size change detection capability of MSDOS/djgpp version.

Windows command line invocation script mined.bat does not improperly 
set the environment variable MINED anymore (confusing mined options).


<a name=2011.19.2 onMouseOver="release (this);">
=============================================================================
Changes from mined 2011.19 -> mined 2011.19.2 (November 2011)
=============================================

Bug fixes:
----------
Fixed xterm startup interaction problem with resource allowWindowOps disabled.


<a name=2011.19 onMouseOver="release (this);">
=============================================================================
Changes from mined 2011.18 -> mined 2011.19 (November 2011)
===========================================

* See also changes to 2011.18 which was not announced as a general release.

File handling:
--------------
Interactive file chooser to navigate file system for any file operation.

Backup files, interoperable with other editors; optional numbered backups.

File locking, using interoperable lock files.

Recovery files (if mined quits), interoperable with other editors.


Interactive:
------------
Mouse movement navigation between menus, especially to open submenus
(works in xterm, gnome-terminal, mintty, cygwin console).

HOP Mark while already on Mark position toggles rectangular selection.

Checking whether it is safe to suspend mined (ESC z), rejecting otherwise.

Tweaked handling of delayed escape sequences (at slow remote terminal 
connections) to not enter fragments as text anymore.


Editing:
--------
The command ESC t, normally looking up identifier definitions, if typed 
on an include statement, opens the included file.


Character encoding support enhancements:
----------------------------------------
Handling combinations with spacing combining characters, including Arabic 
tail fragment (U+FE73), like combined characters for cursor movement and 
character deletion.

Modified Arabic codepage CP864 towards CP864E (replacing GUILLEMET marks).

Fixed character code information display (ESC u) when editinig UTF-16 files.

Considering Unicode file NameAliases.txt with precedence for character names.


Interworking:
-------------
Using glyph detection feature of mintty (since 0.9.9) to choose an optimal 
set of line markers and menu borders.

Assigned the Go/HOP function additionally to Shift-TAB, for the 
sake of laptop keyboards without numeric keypad.

Assigned the Go/HOP function additionally to the keypad "*" key, for the 
sake of those terminals that have been deprived of the middle keypad 
key by ignorant designers (KDE konsole, BSD console).

Recognizing BSD console Home/End keys and application keypad of rxvt-unicode.


Build, Package, Install, Deployment:
------------------------------------
Upgraded licence to GPL Version 3.

Windows stand-alone package: Using (cygwin-based) bash installer script 
rather than DOS cmd scripts, avoiding codepage problems with system folder 
names (like %USERPROFILE% or %PROGRAMFILES%).

Windows stand-alone package: Installing into Start Menu and Desktop now 
that this has become useful with the new mined file chooser.

Using option +eW also for mined.bat command line invocation script 
(triggers Windows control keys and CRLF lineends for new files).

The djgpp version now also checks the SHELL environment variable for the 
shell escape command ESC !, so a shell preference can be configured.

Tuned makefile to work with non-GNU make on NetBSD.

Fixed make minced on cygwin and BSD.


Bug fixes:
----------
Fixed bottom lines to be cleared after replace with confirm when screen not 
filled near end of file (since 2000.16).

Fixed double-width submenu markers in xterm -cjk_width mode.

Fixed character information display when editing UTF-16 files.

Fixed an HTML attribute ending with % (eg width=50%) to end HTML highlighting.

Fixed Replace with Confirm after wrapped prompt line (long search or replace 
expression) to not present the first confirmation on a blank text display.

Fixed recognition of out-of-bounds cursor position reports.

Hiding passwords also if separated with "=" and white space.

Tweaked escape sequence detection for better handling of slow connections.


<a name=2011.18 onMouseOver="release (this);">
=============================================================================
Changes from mined 2011.17 -> mined 2011.18 (July 2011, Haiku port release)
===========================================

Character encoding support enhancements:
----------------------------------------
Tweaked character wide/combining property of display char info (ESC u) 
to refer to Unicode version rather than terminal (Unicode text only).


Interactive:
------------
Checking whether disk file was changed while being edited. Warning the 
user before overwriting.

Fixed "Save As" in case file name entry is aborted with ESC.

New Back/Forward navigation functions in Search/go menu.


Install:
--------
Trying to install desktop files to add application entry to file context menu.

Tweaked Windows stand-alone version to install in difficult cases.

Tweaked makefiles to build on more systems with few memory resources.

Added build configuration for Haiku.


Tweaks and fixes:
-----------------
Migrating previous marker files @mined.mar to info files .@mined, 
to make the file name hidden and remove duplicate entries.

Enabled marks (for active items) also in non-flags menus; 
used in editor/keyboard emulation submenu.

Fixed identifier definition search (Alt-t):
- not needing double Alt-Return to return in certain cases anymore
- finding #define after #undef (using last occurrence instead of first)
- matching line numbers precisely in the presence of non-LF line ends

Tweaked mark stack handling to provide Back/Forward navigation.

Ported to Haiku: workaround for Terminal mouse handling bug, build, install.

Generation of Han description tables tweaks some typos more carefully.

Using a raw format (concatenated info strings) for Han description table;
making it more likely to be compilable on systems with low memory,
and saving 1MB code size.

Enhanced Windows installer to install into user's folder if there is 
no access to system's program files folder (using %APPDATA% which is 
the only environment variable available to indicate a user subfolder).

Workaround for cursor positioning bug of 'screen' e.g. if it runs in a 
UTF-8 terminal but assumes an 8 bit terminal (screen apparently transforms 
cursor positioning escape sequences from the application into relative 
cursor positioning movements towards the host terminal which is grossly 
incorrect in the case of a mismatch of terminal width assumptions).

Using more compact table format for script and category names.

Tweaked makefile.gcc to link -lncurses as a fallback, in case no library 
is found in the usual locations (e.g. for Haiku).

Also checking for "Operation not supported" error code after link to 
support inter-window paste buffer on Haiku.


<a name=2011.17 onMouseOver="release (this);">
=============================================================================
Changes from mined 2000.16 -> mined 2011.17 (June 2011)
===========================================

Character encoding support enhancements:
----------------------------------------
Updated to Unicode 5.2 and Unicode 6.0:
* Added Hanyu Pinyin pronunciation information (from Unihan database) 
  to Han information options.
* Updated handling of character properties as appropriate.
* Added mnemos for new Latin/Cyrillic characters and 
  parenthesized capital letters.

Supporting Arabic ligature joining in putty and mintty (which apply 
joining themselves in a buggy way), likewise also in other terminals 
(still relying on native support in mlterm);
in prompt line only in UTF-8 text mode.

Amended Arabic codepage CP864 with 4 characters to upgrade to AR864.


Interactive:
------------
Keyboard emulation:
* Added emulation options +eX to select emacs (+ee), Windows (+ew), 
  pico (+ep), WordStar (+es) or mined (+em) control key assignments 
  and some other emulating behaviour.
* Sub-menu (in Options menu) to change keyboard emulation interactively.

Menu borders no longer use rounded corners by default (in xterm) 
because the TrueType fonts more and more used also by xterm 
unfortunately do not contain them.
Use option -Qr to enable rounded menu corners.

Tweaked interactive prompt handling, y/n highlighting, filename information.

Automatically adjusting HTML syntax highlighting colour to dark background 
(works with xterm and mintty).

Remember the selected keyboard mapping (input method) together with 
file position and other editing settings (margins, quote marks style).

For help viewing, an instance of mined is started (rather than 'less').
Removed alternative to view help within the same mined session (HOP help).


Interworking:
-------------
Supporting extended mouse-coordinates mode (xterm 262 and 268, mintty 0.9), 
for up to 2015 lines/columns screen width.

Resetting VT100 graphics alternate character set on exit: For terminals 
configured (via termcap/terminfo) to switch VT100 graphics via the ISO 2022 
"G1" character set, this is restored to normal.

New option +eW to use Windows control keys, and CRLF lineends for new files.
Using this setting for Windows stand-alone version and wined.bat script.

New options -@ and +@ to control handling of file info file.

The DOS version now uses the current codepage as default text encoding.

Tweaked escape sequence recognition (of function keys); giving priority 
to built-in escape sequences before considering terminfo definitions.
This fixes misbehaviour with some incorrect terminfo entries, e.g. when 
running in mintty on SunOS.

Recognizing modified cursor keys of mlterm.

Constrained assumptions about character availability in 'screen'.

Finally tweaked default assumptions about cygwin or mintty terminal 
encoding if locale indicates "C" or nothing.

Workaround for mintty sending mouse release event after Shift-click pasting.

Checking xterm (>= 213) window title encoding (can be UTF-8 or Latin-1) 
only when needed (non-ASCII file name).


Editing features:
-----------------
Line end type conversion for current line or all lines (Options menu).

Added key combinations for input of DOS/Unix lineend (whichever is not 
current default): Ctrl-Alt-Enter, and Mac lineend: Ctrl-Shift-Alt-Enter.


Compile/Make/Install:
---------------------
Beginning with this version, major version number is the year of release.

Cygwin package: no longer registering for Windows context menu (postinstall).

Housekeeping of file info is now covered by mined - dropped "minedmar" script.

Fixed linking with 64 bit libraries.

Removed make target 'static' again; described in COMPILE.DOC and INSTALL.DOC 
how to link statically.

Static linking on cygwin to avoid dependency to specific ncurses version.

Revamped configuration of Windows version:
* Stand-alone package uses self-installing archive.
* Integrating into registry for both context menu and command line path.
* Invocation in window (with wined.bat or from context menu) uses 
  Windows keyboard emulation mode (+ew).


Bug fixes:
----------
In Options menu, moved "Toggle TAB expansion" 
from "display settings" to "editing features" section.

Fixed previous selection highlighting to clear properly on pasting.

Fixed syntax highlighting to be updated properly for multiple lines.

Fixed scrollbar to refresh immediately after terminal resize of mintty.

Fixed scrollbar to refresh in mintty after paging with option -S.

Fixed input of control character ^^.

Fixed keyboard mapping in xterm to accept sequences with subsequent 
capital letters (like hE, HE) (failed due to modifyOtherKeys since 2000.13).

Tweaked initialization sequence to avoid interference between 
terminal resize or early window resize, according interrupt, 
file loading and screen refresh.

Enabled printing when invoked from Windows context menu.

Enabled printing with notepad for Interix version.

Fixed UTF-16 handling spoiled after pasting text.

Fixed UTF-16 auto-detection and proper handling in non-Unicode terminal.

Fixed stalled mined with modified text after terminal is killed on Linux.

Enabled revised file location marking (clean-up of old entries for edited 
file in @mined.mar) for PC version.

Escaping file names (with space, backslash or newline) in file info file.

Tweaked initialization of line end type for new files.

Fixed a crash situation if a Unicode paste buffer containing a combining 
character used for JIS encoding of two Unicode characters would be 
pasted into a GB18030 text.

Tweaked printing spoolfile retry system.

Tweaked detection and library selection for 64 bit systems to work on SunOS.

Fixed graphic menu borders in VT52.

DOS version (djgpp): Enabled printing when running in Windows console.

DOS version (djgpp): Fixed file mode after "Save As" (was read-only).

DOS versions: Clearing screen on exit.


<a name=2000.16 onMouseOver="release (this);">
=============================================================================
Changes from mined 2000.15.4 -> mined 2000.16 (Feb 2010)
=============================================

Text editing features:
----------------------
New rectangular copy/paste area mode.
Toggle on Paste buffer flag (% for normal / [ for rectangular),
or in Paste buffer menu, or preselect with option +[.

For auto-indentation, added other space characters to the characters 
cloned on the new line.

Enhanced smart quotes algorithm to better distinguish apostrophe 
automatically (except initial apostrophe).

New input shortcuts for apostrophe and glottal stop / 'okina (for Hawai'ian):
* HOP ´ (acute accent) enters apostrophe (U+2019).
* In smart quotes mode, ´ alone also enters apostrophe.
* HOP ` (grave accent) enters glottal stop (U+02BB).
* In smart quotes mode, ` alone also enters glottal stop.


Interactive:
------------
Self-made visual selection highlighting, supporting all terminals for 
keyboard-driven selection, supporting xterm, gnome-terminal, mintty and 
cygwin console (from 1.7.2) for mouse-driven selection.

Changed Del keypad key to more common dual-mode behaviour: if a visual 
selection is active, delete it, otherwise delete next character.

The colour of line markers (esp. indicating TAB and line end) can be 
configured with the environment variable MINEDDIM for which now also 
a percentage value can be given (e.g. MINEDDIM="50%"); the colour value 
is computed from the current foreground and background colours 
(works in xterm, and MinTTY from version 404).

Enabled keyboard mapping (input method handling) for DOS/djgpp version.

Added mnemo Control-V n space for U+00A0 no-break space.

Menu navigation: On a submenu entry, cursor-right enters the submenu too.


File handling:
--------------
The text position is now also remembered if Save file (e.g. F2) is invoked 
without the file needing to be saved. So a double F2 will always save the 
file position (and created the file marker file @mined.mar).


Interworking:
-------------
For cygwin:
* For cygwin 1.7, the terminal encoding needs to be properly indicated 
  with a LANG (or LC_CTYPE) environment variable especially because 
  UTF-8 auto-detection does not work in a cygwin 1.7.1 console.
* Disabling "fine scrollbar" in cygwin console to adjust to font limitations.
* Fixed creation of inter-window paste buffer in case hard link does not work 
  (on FAT or network drives) (cygwin 1.5 used to copy instead in that case).
* Enabled mouse navigation without button pressed for cygwin (1.7.2) console.
* With a locale setting of "C" or "POSIX", mined only assumes ASCII as 
  the terminal encoding of the cygwin console or mintty.

For mintty/cygwin:
* Various tuning measures to make optimal use of this excellent terminal.
* The mined scrollbar is now enabled by default. For right-to-left 
  text editing, this interferes with the bidi feature of mintty; you 
  may disable the scrollbar with -o to reduce visual confusion. 
  (Context-dependent scrollbar display is planned for a later version.)
* Non-BMP characters are now enabled in mintty by default.

For systems lacking terminal information:
* Mined has built-in fallback information for some terminals (cygwin, 
  xterm, rxvt, vt100, vt*) so that these can be supported even without 
  termcap/terminfo available, especially for the cygwin stand-alone version.
* For a completely unknown terminal, mined tries to apply minimal ANSI 
  terminal control.

For DOS/djgpp:
* Avoiding busy wait during keyboard input (with 99% CPU usage) by 
  releasing VM time slice.
* Implemented keyboard input timeout detection, enabling the same 
  user interaction as with Unix versions (help display half a second 
  after hitting ESC, HOP, etc, limited blocking during multi-key 
  keyboard mapping in input method handling).
* Enabled shortcuts Alt-k (to toggle keyboard input method), Alt-t (to 
  search for identifier), Alt-x (to toggle character/hex code in text).

For cxterm and kterm:
* Added keypad translation resources to sample file Xdefaults.mined so 
  that the HOP key (middle keypad key, "5") and Home and End are enabled.

For typeahead in slow terminals / slow remote terminal connections:
* Flushing keyboard input before enquiring terminal reports, to avoid 
  missing the report response (message "Unexpected device attribute report").


Character input:
----------------
New mnemonics ee and EE for the Euro sign.

New mnemonics for input of arrows with stroke, and for 1/4, 1/2, 3/4.


Miscellaneous:
--------------
Changed header spelling of "mined" in documentation to "MinEd" to suggest 
better its pronunciation min-ed.

Simplified option -o to disable the scrollbar, +o enables it.
(More specific -oN continues to be available.)

Supporting a larger list of locales to derive the encoding.

Removed rxvt option from 'wined' script for mined invocation on Windows.

The Windows stand-alone package comes with an install script.
The cygwin package and the Windows stand-alone package register MinEd 
for invocation from the Windows Explorer context menu for text files.

Fixed quick menu sometimes not being cleared completely after doing "Cut" 
from it (since 2000.8).


Compilation/Make:
-----------------
Fixed SunOS make problem in sub-directory 'man' with /usr/ccs/bin/make.

For SunOS (non-gnu compilation environment), static linking was disabled 
again; see COMPILE.DOC for details.

New make target 'static' for static linking; useful to cross-compile 
mined for a machine without termcap/ncurses library.

Dropped obsolete makefile.curses (use make target minced to build with 
ncursesw) and makefile.djc (djgpp with curses, never worked); deprecated EMX.


<a name=2000.15.4 onMouseOver="release (this);">
=============================================================================
Changes from mined 2000.15.3 -> mined 2000.15.4 (July 2009)
===============================================

Interworking:
-------------
For MinTTY:
* Tuned handling of CJK ambiguous width change notification.
* Adaptations for CJK wide mode when changed dynamically.
* Fixed VT100 graphics style menu borders in CJK wide mode.
* Prepared for proper detection of later MinTTY version which should 
  apply LAM/ALEF ligature joining, not to be mistaken for mlterm.

For DOS/djgpp:
* Tuned detection of DOS codepage information for DR-DOS/FreeDOS.
* Fixed handling of failed codepage detection.
* Added detection of ISO 8859 alias codepages (e.g. CP819 etc).
* Not checking locale environment variables anymore as they are likely 
  to confuse the djgpp-compiled version of mined if it happens to be 
  called from a cygwin 1.7 shell.

For mlterm:
* Workaround for mlterm bug with clear-to-end-of-line behind bidi text.

For "screen":
* Transparently applying proper width properties detection within 
  "screen" terminal emulation, provided TERM=screen (which is the default).


Character encoding support enhancements:
----------------------------------------
Tuned substitution display of single quote marks and combining characters.

Added substitution display support for glottal stop mark 'okina (U+2BB).


Miscellaneous:
--------------
Changed script name "wmined" to "wined". It invokes mined in a separate 
terminal session on Windows, using MinTTY if available, otherwise using 
old rxvt with option -uas (if available) in stand-alone (non-X) mode.

Added documentation of new mouse movement menu navigation (without button 
pressed) introduced in 2000.15.3.


Bug fixes:
----------
Fixed combining character deletion anomaly: If the cursor was on a 
combining character not considered combining by the terminal (which may 
be referring to an older Unicode version than mined knows of), Backspace 
would have deleted the combining character together with the character 
left of the cursor.


<a name=2000.15.3 onMouseOver="release (this);">
=============================================================================
Changes from mined 2000.15.2 -> mined 2000.15.3 (June 2009)
===============================================

Interactive:
------------
Mouse click escapes from input prompt.

Enhanced mouse control:
* Menu items can be navigated with the mouse without button pressed.
  - Enabled by default for MinTTY, xterm, gnome-terminal.
  - Enable with option +*, disable with option -*.


Interworking:
-------------
For MinTTY:
* Detection of MinTTY 0.4 by terminal type of device attribute response.
* Fixed various character width handling issues.
* Support for dynamic adjustment of CJK width property.
* Handling screen supporting right-to-left but not ligature joining.
  - Also introduced explicit option +UU-U to configure this.
* Handling codepage-dependant encoding of window title (since MinTTY 0.3.9).

For PuTTY, a few tweaks handle differences from MinTTY (e.g. title encoding).

For djgpp version, enhanced codepage detection for FreeDOS.


Bug fixes:
----------
Fixed mouse operation stopped after opening a menu in cxterm and hanterm.

Fixed mouse drag-release-copy operation which used to stop working after 
a menu was opened or the scrollbar was used in MinTTY (due to handling 
of the xterm mouse tracking mode).


<a name=2000.15.2 onMouseOver="release (this);">
=============================================================================
Changes from mined 2000.15 -> mined 2000.15.2 (May 2009)
=============================================

Interworking:
-------------
In cygwin terminal (also on Linux/Unix after rlogin), fixed Home/End 
key handling to be consistent with previous versions.

For MinTTY:
* Tweaked screen feature adjustment.
* Disabled scrollbar (workaround for right-to-left problem, like mlterm).

For djgpp version, tweaked codepage detection to work.

Tweaks to make Turbo-C compilation work again.


<a name=2000.15 onMouseOver="release (this);">
=============================================================================
Changes from mined 2000.14 -> mined 2000.15 (April 2009)
===========================================

Text editing features:
----------------------
Line begin/end navigation (small keypad Home/End keys, or Alt-Home/End keys) 
may go to previous/next line, respectively, if the current position is 
already at line beginning/end.


Character encoding support enhancements:
----------------------------------------
Updated to Unicode 5.1:
* Added XHC Hanyu pinyin pronunciation information (from Unihan database) 
  to Han information options.
* Updated handling of character properties as appropriate.
* Added mnemos for new Latin characters, revised some redundant mnemos.

Enhanced character information display:
* Showing Unicode information also in non-UTF-8 text encoding.
* Adding character information options for:
  Unicode character name, Unicode decomposition, input mnemonics.
* The character or file information to be shown on the status line is 
  configurable in the Info menu, 
* or with a command-line option (+?...) or entry in the MINED variable.

Enhanced character substitution display for non-Unicode terminals; if a 
character cannot be displayed by the terminal, mined tries to replace it 
with its base character according to Unicode decomposition, and displays it 
with cyan background as a substitution indication.

Enhanced encoding conversion function (Alt-Shift-F11, ESC _) to 
convert from UTF-8 to any current text encoding.

Added supported Unicode version to the About message.

Tweaked auto-detection of text encoding:
* Not counting sequences of 8 bit no-break space (0xA0) as CJK anymore.

No longer interpreting Unicode LS/PS line/paragraph separators as 
line ends if opening a file explicitly in non-Unicode encoding. This 
does not work however if non-Unicode encoding is just auto-detected.

Tuned CJK file encoding auto-detection which yielded too many 
false positives for Shift-JIS.

Support of additional terminal encodings (esp. in support of cygwin 1.7), 
see Interworking enhancements below for a listing.

Revised online help page "Unicode Howto".


Character input enhancements:
-----------------------------
Character replacement commands (ESC _ , ESC ö etc) also unescape 
* URL escape notation like %E2%82%AC
* HTML numeric character entities (&_#x20AC; &_#8364;)

Additional command line parameter syntax -K=im-im to preselect an 
input method and/or a standby input method (for quick switching 
wich Alt-k). Examples: -K=gr-py (select Greek, standby Pinyin) 
or -K=-py (standby Pinyin).

Enabled keyboard mapping always by default (made option +K obsolete).


Interactive:
------------
Changed cursor positioning when moving vertically over multi-column characters:
* Moving vertically over a TAB now turns to the side of the TAB column range 
  closer to the previous position.
* Revised/added TAB navigation options -T/+T;
* With -T, position stays left when moving vertically over TAB or wide char.
* With +T, position stays right when moving vertically over TAB or wide char.
* Fixed alternating left/right over wide characters.

Menu item navigation with initial keys looks for any word in menu label 
starting with key.

Menus can be switched with Control-mouse-wheel scroll.
Added documentation about mouse control in open menus.

Info display menu ("?" menu): While selecting multiple sub-options 
of displaying char info or Han pronunciations, the menu stays open.

Scrollbar mouse control enhancements:
* Scroll direction adapted to other applications:
  Left-click on scrollbar scrolls towards mouse position, right-click in 
  the other direction (old behaviour left=down/right=up with option -oo).
* New left-click-and-drag scrollbar scrolling.
* Accelerated scrollbar scrolling:
  Mouse wheel scrolling on the scrollbar scrolls by half a page.
  (Mouse wheel on text: 3 lines; with control: 1 line.)

Added usage hints to messages on typical keyboard interaction misconceptions.

Help function improvements:
* Revised Options -> help menu items.
* Revised keyboard help bars (for function keys and accent prefix 
  keys); input keys are consistently marked red, accent functions are 
  marked in cyan highlighting.
* Keyboard help bars can now be invoked with F1 followed by any of the 
  respective keys to get help on 
  (not just (Control-/...)F1 / Control-, / Control-1).

Tweaked handling of modified keypad keys to implement the distinction 
especially between Home/End/Del and Alt-Home/End/Del as described; 
also improved the documentation of keypad interpretation in the manual.
However, available keypad function assignments are unfortunately 
limited by the typical insufficiency of terminal emulators to support 
all kinds of key recognition as it would be desirable.


Interworking enhancements:
--------------------------
Working with UTF-8 mode of cygwin 1.7 console (detected e.g. by 
CYGWIN=codepage:utf8). Note: After rlogin from this console, UTF-8 
indication has to be ensured explicitly, e.g. by environment setting, 
or by mined option +U.

Terminal encoding handling:
* Detecting bidi markers (format controls, RTL etc) to be printable 
  since xterm 230.

Terminal features:
* Handling xterm mode formatOtherKeys: 1 (xterm 235).
* Making use of terminal capability to erase multiple characters.

The djgpp-compiled DOS version can now distinguish keys of the 
small ("editing") keypad and the numeric ("application") keypad so 
especially the Home and End keys are assigned different functions 
as with xterm or (more limited) rxvt.

Revised uterm script (for invocation of a Unicode terminal):
* Tweaked uterm script with workaround to safely ensure UTF-8 with xterm 
  on cygwin.
* Modified uterm to start rxvt-unicode if the current terminal is rxvt 
  (but only if rxvt-unicode is found, e.g. as urxvt on cygwin).
* Added command line options -rx / -rxvt / -xt / -xterm to explicitly 
  select user preference to use rxvt-unicode or xterm.

Tweaked cygwin script wmined to use mintty if available.

New option -O to disable script colour highlighting (for Greek, Cyrillic, 
Coptic, Armenian).
Disabling in cygwin console by default. Option +O enables it.
Making script highlighting brighter on dark terminals.

Sample file conf_user/profile.mined of the Mined runtime support library:
Suggesting different fancy settings for MINEDUTFRET and MINEDUTFTAB 
line end and tab markers, respectively, whether running rxvt or xterm.

New environment variable MINEDBORDER to control colour or menu borders;
suitable values are "35" (magenta), "34" (blue) and "31" (red, default).

Tweaked menu display with a workaround for cygwin buggy colour handling.

New options +F / +FF to indicate a better range of font support in 
case the default assumption of mined for the terminal (or an option -F 
in the environment) preconfigures font usage to be limited.

New option +k to activate "application keypad mode" of the terminal.
This is normally not needed as mined selects this mode automatically 
by the terminal it runs in. If you are running a misconfigured X 
windows system which does not facilitate distinguished keypad 
functions, you can enforce them by using the NumLock function of the 
keyboard and switching on this option.

Workaround for KDE konsole issue rendering text invisible after an 
attempt to fix the screen size (which in turn is a workaround for 
occasional remote login screen size recognition problems; that 
workaround is not applied for konsole anymore).

Tuned keypad assignments to achieve more uniform keypad functions 
among different kinds of terminals as much as possible.

Tweaks for vt100:
* Workaround for buggy terminfo vt100 entries.
* Using application keypad mode.

Recognising PuTTY or MinTTY and tuning screen capabilities accordingly.

Support of additional codepages as supported by cygwin 1.7, 
plus a few more as provided by libiconv.
These are mainly provided as terminal codepages, they do not appear 
in the Encoding menu. However, if you need, you can ask mined to use 
them as either the assumed terminal encoding (e.g. +E=CP1250 or +E:WE) 
or even text encoding (e.g. -E=CP1250 or -E:WE) using the names or 
shortcuts from the list:
	CP737	37	DOS Greek
	CP775	75	DOS Baltic
	CP852	52	DOS Central European
	CP853	53	South European, Esperanto (on request of Rugxulo)
	CP855	55	DOS Cyrillic
	CP857	57	DOS Turkish
	CP858	58	DOS Western, CP850 with Euro symbol
	CP860	60	DOS Portuguese
	CP861	61	DOS Icelandic
	CP862	62	DOS Hebrew
	CP863	63	DOS French Canadian
	CP864	64	DOS Arabic
	CP865	65	DOS Nordic
	CP866	66	DOS Russian
	CP869	69	DOS Modern Greek
	CP1125	25	DOS Ukraine
	CP1250	WE	Windows Central European
	CP1253	WG	Windows Greek
	CP1254	WT	Windows Turkish
	CP1256	WA	Windows Arabic
	CP1257	WB	Windows Baltic

In the djgpp-compiled DOS version, mined tries to detect the codepage 
using the DOS API. This is untested, however.


Printing:
---------
Added printing feature using notepad /p to the uprint script, 
effective for the cygwin version. This enables mined to print under 
Windows (unless one of paps of uniprint happens to be installed 
which would then be used).

The djgpp version of mined uses notepad directly for printing so it 
can at least print Unicode output if it is being run under Windows.


Miscellaneous:
--------------
Added search pattern "\r" to search for CRLF (DOS/Windows) line ends.

Revised line end handling options:
* Added option +r to convert Unix lineends (LF) to DOS lineends (CRLF).
* Mac lineend transformation option -R no longer implies -r.
* Mac lineend handling option +R no longer splits DOS lineends.
* Either of -r/+r can be combined with either of -R/+R.

Applying computed dim screen attribute for line indications (in xterm),
actived by defining an empty environment variable MINEDDIM; the colour 
value is computed from the current foreground and background colours.

Added environment variable MINEDEMPH to configure highlighted parts of 
status line messages separately from line indicators.

Added ".xul" to suffix list triggering HTML/XML style highlighting.

Handling encoding of window title filename display properly in cygwin console.


Bug fixes:
----------
Fixed file position marker update function which spoiled the marker file 
(@mined.mar) when editing a UTF-16 text file (in 2000.14).

Fixed search/replace problem with initial newline in the search pattern, 
which used to skip every immediately following second occurrence.

Backarrow deletes whole combined character left again (broken since 2000.14).

Enabled input of no-break space using Ctrl-Shift-space in prompt input.

Fixed garbage display after ESC _ (or alternatives) on HTML character entity.

Fixed positioning anomaly with auto-indent after right-to-left text entry.

Fixed proper recognition of shifted function keys (broken in 2000.14).

Fixed Shift-F3 word case toggle function for words prefixed by "$" or "_".

Fixed MINED=+E... setting to be accepted in DOS/Windows console.

Suppressing notification of changed input method while input is active 
on prompt line.

Fixed interpretation of Linux console shifted function keys.

Fixed changing position anomaly when moving cursor vertically over 
wide characters multiple times.

Tweaked character selection menu (pick list for CJK input methods) 
display handling to fix some colouring and width problems.

Fixed uterm script to handle resource strings properly.

Fixed confusing message "Cannot undo previous paste" (on Control-F4 
or Alt-Insert) into "No previous paste to exchange".

Fixed interix terminal interworking to assume CP437 rather than CP850.

Fixed some width handling inconsistencies in CJK terminals, especially 
Big5-encoded terminals (e.g. cxterm, rxvt):
* Display width of non-displayable character in Unicode text.
* Positioning of flags after wide quote style flag.

Suppressing display of file loading error message (esp. "Line(s) too long") 
if only using option -E?.

Fixed evaluation of select system call in case it returns -1 (sun cmdtool).

Tweaked weird file protection settings that were inconsistent among various 
operating systems if saving a file after editing text read from a pipe.

Consistently adding bold or dim attributes to different line end markers.

Removed option -t from manual which did not work since mined 2000; 
use environment variable MINEDTAB instead.

Fixed handling of mouse events if the TERM variable is not properly set 
to either xterm or rxvt (e.g. TERM=vt100 after remote login) which did not 
work since 2000.8.

Fixed garbled notification of non-ASCII input method name in non-UTF-8 
terminal.

Fixed some interference problems with selecting different information 
display options.

Fixed encoding conversion function (UTF-8 vs Latin-1) on bytes FE and FF.

In xterm with different TERM setting (e.g. TERM=rxvt), mouse focus out clicks 
were reported as "Unknown keyboard control sequence" (in 2000.14); fixed.

With option -M (no menu line), the title of a long menu is no longer 
suppressed (since being positioned above the screen). This also:
Fixed big red artefact in DOS version with -M when opening Options menu.

Fixed screen handling of scrolling up when terminal cannot delete line 
or scroll partially (e.g. VT52).

Fixed a bug that would transform a new file name (e.g. after F3) like 
"~/%s" into a formatted string.

Fixed option -X to suppress all actions on window title.

Fixed make auxiliary script mkkmlist which had a shell interworking problem 
on some systems and failed to generate the list of keyboard mappings.

</a>


<a name=2000.14 onMouseOver="release (this);">
=============================================================================
Changes from mined 2000.13.2 -> mined 2000.14 (July 2007)
=============================================

Text editing features:
----------------------
Case-insensitive search (for all small letters in plain search expression).
Not applied when searching for an identifier (current identifier occurence, 
HOP F8, or identifier definition, Alt-t).

New command Alt-x toggles preceding character and its hexadecimal code.

Control-Del (if properly configured with terminal) on combined 
character deletes only the base character, leaving combining accents 
which may then be combined with the previous character.


Character encoding support enhancements:
----------------------------------------
Additional sub-options -E? and +E? to just determine the encodings 
of text files or the terminal, respectively, print out information and quit.

Always separated display of "isolated" combining characters (like for 
all combining characters in "separated" display mode), occuring at the 
line beginning or after a TAB character, which would otherwise be 
hidden or hardly recognisable on screen.

Tweaked auto-detection of text encoding:
* UTF-8 vs 8 bit detection is no longer affected by terminal encoding 
  (UTF-8 terminal used to set a preference).
  (If auto-detection fails, however, the fallback is still affected 
  by the terminal encoding, or the TEXTLANG environment variable.)
* Improved detection of CJK encodings vs. 8-bit encodings.
* Added auto-detection of Windows-"ANSI" (CP1252), PC-Latin (CP850), MacRoman.
* Improved configuration of auto-detection:
  * Less frequent encodings are not detected by default (MacRoman, VISCII).
  * Shortcut "8" in environment variable MINEDDETECT disables auto-detection 
    of all CJK encodings.


Character input enhancements:
-----------------------------
New shortcuts Alt-' and Alt-" for input of plain single and double 
quote marks (while in smart quotes mode).


Interworking enhancements:
--------------------------
Terminal encoding handling:
* Added options -f, -ff, -fff to gradually restrict usage of special 
  graphic characters for display of menu borders, 
  menu selection highlighting, and the scrollbar.
* Added options -F, -FF to restrict usage of special characters for 
  display of line indications and selected menu items.
* Detecting and handling non-Unicode terminal with Arabic ligature joining
  (e.g. mlterm in GB18030 or ISO Arabic encoding).
* Tuned mapped terminal detection to work (as opposed to CJK assumption) 
  in a weird case (mlterm with luit).
* Fixed combining character data version detection for mlterm.
* Detecting and handling special width behaviour of rxvt and mlterm 
  (and different versions of them) concerning unassigned characters, 
  non-Unicode characters, and specific width property deviations, 
  as well as non-BMP width handling of KDE konsole.
* Fixed missing suppression of display of an unassigned Unicode character 
  (or CJK character mapped to unassigned Unicode character, esp. in GB18030) 
  in a CJK terminal. Overridden with +C.
* Applying display replacement for illegal Unicode characters 
  (codes ending with FFFE/FFFF, surrogates, non-Unicode code points).
  Overridden in three levels with +C, +CC, +CCC.
* Fixed handling of CJK width data in Unicode-based CJK terminal.
  - Added missing check for width data version to CJK auto-detection.
  - Fixed Unicode width function to consider this case.
  - Cleaned CJK width function to be generic based on fixed handling.
  - Added handling of wide characters in Latin-1 range.
* Ambiguous width handling: properly handling wide display of 
  surrogates code points by xterm -cjk_width.
* Fixed handling of mapped text encoding characters with double width 
  on CJK terminal.
* Fixed input of Control-@ (NUL, used as Mark command) in mapped 
  8 bit terminal with different text encoding.
* Fixed recognised PC terminals (e.g. TERM=cygwin) to override 
  UTF-8 encoding assumption by locale environment (auto-detection 
  which would otherwise override wrong environment settings does 
  not work with most PC terminals).
* Fixed window title display of non-ASCII characters to work in 
  CJK-encoded konsole/gnome-terminal.
* Fixed display of non-BMP characters in xterm -cjk_width mode 
  (which used to work only for plane 2/3/15/16 ranges).
* Taking care of wcwidth glitch about Yijing Hexagram Symbols.

Using window focus out/in reports (since xterm 224) to improve 
interpretation of mouse clicks (not positioning the cursor when 
the mouse is just clicked to focus the window).

Workaround for bug in xterm 224 which would lock up the terminal on 
mouse clicks (due to mouse highlight tracking mode which is now disabled 
for xterm 224).

Recognising gnome-terminal and disabling usage of fancy menu borders, 
menu selection, and fine-grained scrollbar.

Recognising more "dark colour terminals" (konsole, gnome-terminal); 
improved visibility of selected menu item on them.

Usage of terminal capabilites:
Now mined also considers the termcap information of function key 
escape sequences, in addition to its built-in knowledge of typical 
escape sequences of a large range of terminals 
(where the latter is usually the more effective resource of 
information for recognition of terminal input key escape sequences 
because installed termcap entries are largely incomplete).


Miscellaneous changes:
----------------------
Increased speed of certain search operations in UTF-8 mode (especially 
starting with ".*") by a factor of ~ 40.

Discarded option +m.

Line end indications: By default, line-end indications for DOS and 
Mac line ends will be the same as for Unix line ends but coloured; 
mined uses blue for DOS line ends and yellow for Mac line ends.
The previous default of distinct line-end indications is preserved 
for black and white terminals.
Environment variables to configure specific indications are retained 
(MINEDDOSRET, MINEDMACRET, MINEDUTFDOSRET, MINEDUTFMACRET).

Deletion of combined characters: delete character function tweaked to 
also delete Arabic joined characters with the base character in joining 
terminal (mlterm).

Enabled key navigation also in Quotes style menu.

Option -M only suppresses display of the menu header line 
(including flags) (pull-down and pop-up menus can still be opened 
with keyboard commands), but mouse control remains enabled.
Fixed menu display position in this mode (making menu titles of 
pull-down menus visible).

Tuned selected menu item marking for terminals than cannot reverse 
display or hide cursor.

Detecting slow terminal escape sequences (starting with a late '[' 
or ']' after an escape) and discarding them (rather than inserting 
garbage into the text).

Dropped ESC ] variation of the goto marker command.

Added housekeeping for the position marker file @mined.mar: old entries 
for the current file name are removed. Not used on PC versions (djgpp).


Bug fixes:
----------
Structured search: added recognition of #elif for C macro bracket searching.

Fixed password hiding for multiple occurrences of "password" in a line.

Fixed "HOP -" not to spoil the underlining by applying smart dashes.

Combined character editing:
* Fixed positioning after inserting character into combined character 
  (substituting the previous base character, also with ESC X or ESC U).
* Fixed Control-BackSpace within combinined character to delete base 
  character.
* Fixed BackSpace deletion/positioning anomalies when the cursor was 
  micro-positioned within a combined character or (after a TAB) 
  positioned on an isolated combining character.

Combined character repositioning:
* Fixed micro-position within combined character to persist after 
  display refresh (ESC .).
* Fixed micro-position within combined character to persist after 
  reloading file (e.g. in new mined session), also after returning to 
  a file with Alt-Return (marker stack), after help viewing and checkout.

Text encoding handling:
* Added handling of joining characters (Arabic LAM/ALEF) in joining 
  terminal (probably mlterm) and non-Unicode text encoding (GB18030 or 
  8-bit Arabic); both combined and separated display mode.
* Fixed handling of auto-detection vs. explicit encoding (-E) when 
  editing multiple files.

Character input support:
* Fixed ambiguous mnemonics to distinguish between input methods as 
  documented (failed in 2000.13); e.g. ^V'' -> right double quote mark, 
  while ^V space '' space -> acute accent (RFC 1345 mnemo).
* Fixed Latin-1/UTF-8 conversion function Alt-Shift-F11 from also 
  sometimes applying mnemonic conversion.

Fixed hint in manual on properly using xterm VT220 keyboard option.

Enhanced handling of line markers (special line ends) on CJK terminals.

Manual page: fixed descriptions for command variants "with HOP" in 
command reference which were missing in 2000.13.2.

Fixed uterm script in case none of LC_ALL, LC_CTYPE, LANG is defined.

Fixed cygwin version from not restoring tty mode after shell command (ESC !).

Reenabled shell escape (ESC !) when mined was invoked with redirected 
input (e.g. in a pipe) which could not access the terminal since 2000.2.
Not working in cygwin version.

Code revision: further factoring out of functional blocks (file 
operations, text buffer handling).

Reenabled QUIT signal from keyboard (sent with ^\ key) to interrupt 
search operations (did not work for ~ 10 years).

Fixed minedmar housekeeping scripts (Unix and DOS). (Also added 
implicit housekeeping, see above.)

Fixed cygwin version from not assuming "modified" with option -r.

</a>


<a name=2000.13.2 onMouseOver="release (this);">
=============================================================================
Changes from mined 2000.13.1 -> mined 2000.13.2 (December 2006)
===============================================

Documentation enhancements:
---------------------------
Improved hints on modified function key input:
* Overview of system-specific limitations and remedies.
* Additional hint on workaround to use ESC Fn instead of Alt-Fn for 
  accent prefix functions.

Revised HTML manual file to be displayed properly with other browsers 
than Firefox (IE, Opera, konqueror).

Tweaked man page generation (from HTML manual) to produce improved layout; 
also including ->NEW-> tags in man page.


Interactive enhancements:
-------------------------
Interpreting ESC Fn as Alt-Fn even after ESCAPE delay (for first accent 
key in text input, not on prompt line).


Character input support enhancements:
-------------------------------------
Additional workaround to use Control-V Fn instead of Control-Fn for 
accent prefix functions.

Added source indications to Input method menu.

Added information message after switching the input method.

Made input method tags unique - thus enabled distinguished selection 
between Kazakh and Katakana - and added check for this to makefile.
(Also added check for uniqueness of character mapping tags to makefile.)

Input methods:
* Replaced previous Thai keyboard mapping of uncertain origin with 
  slightly different Thai Kesmanee keyboard mapping from m17n.
  (Previous method is still included in the distribution and can 
  be enabled by uncommenting its entry in keymaps.cfg.)
* Re-enabled previous Amharic input method called "Ethiopic" (from yudit) 
  but leaving in new input method "Amharic" (generated from Unicode data) 
  above it in the menu (as a preferred method according to user feedback).

Mnemonics and accent prefix keys:
* Enhanced documentation for multiple accent combinations, and special 
  arrangement for accent below.
* Added additional mnemonic for line below, enabling its input with 
  3 times Control-- as a prefix.


Interoperability enhancements:
------------------------------
Terminal keyboard handling:
* Reassigned escape sequence ESC [29~ which is emitted by xterm on the 
  Menu key to invoke HOP rather than Shift-F6. This provides a more 
  easily accessible HOP function for laptops (which do not have the 
  right/numeric keypad) and enables assignment of the HOP function to 
  the middle keypad key ("5") for KDE konsole which is by default 
  deprived from this feature due to a deficiency in the QT framework.
* Using application keypad mode with xterm 216 or later since modified 
  keypad keys (Control- etc) are now distinguished in that mode.
* Added recognition of modified function keys in xterm HP and SCO keys 
  modes.

Terminal encoding handling:
* Added terminal encoding detection of FreeBSD console and a number of 
  KOI8-R, MacRoman, and ASCII terminals.
* Fixed filename encoding handling in window title of KDE konsole terminal.

Terminal screen handling:
* Tweaked highlighting of selected menu item to ensure good contrast 
  on dark terminal background too.
* In DOS version (djgpp), tweaked highlighting of selected menu header 
  to be more consistent with Unix versions.

Unicode terminal start script:
* Tweaked uterm (the script to invoke a terminal with best-choice 
  Unicode fonts) to not hang if xlsfonts ties up at the server.
* Fixed uterm to work properly with an explicit -display parameter.
* Tweaked uterm to add some X resource preferences for xterm when 
  invoked with an application (-e). (See uterm manual page for details.)

Printing:
* Tweaked printing script uprint to cooperate with newer version of paps.

Building mined / makefiles:
* Tweaked some makefiles to work also on systems with the termcap API 
  installed only in /lib (not in /usr/lib).
* Fixed makefile problem when makefile.gcc could be used but not gmake 
  (esp. on SunOS without native C compiler).
* Added hint to INSTALL.DOC to build mined with 64 bit libraries on 
  Linux (LIB=64 make) or SunOS (LIB=/64 make).
* Including pre-transformed version of Radical/Stroke input method 
  table in distribution to ensure that mined can be built on Mac OS 
  (where generation of this file fails since neither sed nor gcc can 
  handle long strings there).


Bug fixes:
----------
Menu handling:
* Fixed menu navigation with letter keys which did not work after a 
  menu had been opened with a right-click.
* Fixed middle mouse click on flag (to toggle it) not to apply HOP, so 
  especially toggling the input method works with the middle button.
* Fixed open menu not closing properly after window resizing.

Fixed display error after deleting a combining character that was 
combined with a TAB character (since 2000.6).

Fixed printing script uprint to properly report if neither the paps 
nor the uniprint utility can be found (since 2000.11).

Fixed screen size change handling to work also with ncurses.

The curses version (minced) could not detect some screen properties 
anymore (e.g. combining character support, since 2000.13.1); fixed.

In DOS version (djgpp) running in cygwin console, fixed wrong assumption 
about terminal encoding.

Fixed file name "~" to expand to $HOME, too (like in "~/something"), 
for use with ESC d command.

Fixed a new instance of inappropriate error messages "Unknown 
character mnemonic" to "Invalid character" (when a valid mnemonic was 
not found on first attempt of the new mnemonic lookup algorithm but 
the character found later cannot be inserted in the current encoding).

Fixed a crash condition in cygwin version when using the print command.

</a>


<a name=2000.13 onMouseOver="release (this);">
=============================================================================
Changes from mined 2000.12 -> mined 2000.13 (October 2006)
===========================================

Documentation enhancements:
---------------------------
Revised manual structure, featuring more comprehensive new chapters on
* Structured editing support
* Character handling support
* Language support

Equipped HTML manual version with an auto-navigation index.


Character encoding support enhancements:
----------------------------------------
Enhanced support for UTF-16 files:
* Added auto-detection of UTF-16 without BOM (big endian and little endian).
* Added explicit command line selection of UTF-16.
Now all big/little endian UTF-16 files with or without BOM can be 
auto-detected and explicitly selected. Copy/Paste when editing a 
UTF-16 file was fixed.

Updated to Unicode 5.0.0 (final, from beta2 in 2000.12):
* Cangjie input method codes (as before, supplemented with additional 
  mappings from HKSCS-2004 Changjie input code table.)
* Han information (from Unihan database) for CJK characters (6 fixes), 
  now also including Hangul pronunciation (new in Unihan database).
* Character properties for display indication (one dash association changed).

When TERM=cygwin, mined assumes a terminal encoding that is reduced by 
those Windows Latin characters which are poorly emulated by cygwin.

Unicode character code display (ESC u) now also notifies about 
too long UTF-8 encoding sequences.


Character input support enhancements:
-------------------------------------
Revised handling of accent prefix keys; turned implementation generic, 
fixing some inconsistencies in accent combination.
* Additional accent prefix keys (like Alt-3, Control-3, Control-Alt-3 
  etc) as attached to modified digits for Vietnamese input, are now 
  applicable also in the prompt line (e.g. for search expressions).

Added support for multiple accented character input:
* Multiple accent prefix keys can be combined, so e.g.
  F5 F6 u enters U+01D8 (u with diaeresis and acute),
  Control-2 Control-7 a enters U+1EB1 (a with grave and breve),
  Control-- Control-: u enters U+1E7B (u with macron and diaeresis),
  Control-, Control-( e enters U+1E1D (e with cedilla and breve),
  Alt-7 Control-, alpha
  Alt-F6 Shift-F6 Control-, alpha
  Control-less Control-` Control-, alpha
  all enter U+1F82 (alpha with psili and varia and ypogegrammeni), etc.
* Generic handling of accent prefix with precomposed base character, 
  applying implicit decomposition if needed, so e.g. F6 ü will enter u 
  with diaeresis and acute (even without explicitly configured 
  mnemonic) etc.

Added accent prefix keys:
* Additional accent prefix keys for most frequent accents of all 
  Latin-based languages (macron, breve, dot above, ogonek, caron, stroke).
* Support for convenient combining character input with accent prefix keys.
* Support for convenient quotation marks input with accent prefix keys.
* Support for Greek (monotonic and polytonic) by adding respective 
  accent keys and accented character mnemonics.
* Support for Cyrillic accented characters by adding respective 
  accent keys and accented character mnemonics.

Added character mnemonics:
* Added mnemonics for input of separate Unicode combining characters 
  using the newly-introduced accent prefix keys combined with Tab.
* Additional sets of accented mnemonics for Greek and Cyrillic.
* New short mnemonics (to be used after Control-V prefix) "zz" for the 
  DOWNWARDS ZIGZAG ARROW symbol, "cm" for the CHECK MARK symbol (in 
  addition to the "OK" mnemonic from RFC 1345).
* Alternative mnemonics like "SCHWA" in addition to "Schwa" and 
  additional more intuitive ones like "_ou" for Latin small letter ou 
  and "_alpha" for Latin small letter alpha.
* Mnemonics combining accents on precomposed characters like 
  "æ'" in addition to "ae'" so if you have "æ" on your keyboard, 
  you can now enter Latin ae with acute using it, either with a 
  mnemonic sequence (combining it with ') or also using the acute 
  accent prefix function (F6 or Control-1).

Mnemonic input improvements:
* Fixed entering accent prefix with subsequent non-ASCII character in 
  non-Unicode text mode.
* Enabled entering character mnemonics with non-ASCII characters in 
  non-Unicode text mode.
* Enabled detection of more intuitive accent mnemonics (like ^V"a as a 
  two-letter mnemonic) in full mnemonic input mode (like ^V space "a ).

Input methods:
* Added keyboard shortcut Alt-I to open Input Method menu.
* Supporting space and non-ASCII characters in menu names of input methods.
* Fixed Kazakh input method to use "`" as a prefix rather than "` " 
  (as generated from yudit kmap).
* Included Amharic input method generated from Unicode script range 
  Ethiopic, instead of previous Ethiopic mapping (from yudit) or 
  Amharic SERA mapping (from m17n) which both seem to be widely 
  inconsistent between character mnemonics and Unicode character names.
  (Those other two are included in the distribution, however, and can 
  be enabled by uncommenting their entry in keymaps.cfg.)

Added generation feature for keyboard mappings from m17n input methods 
(*.mim files from the m17n-db package) to the mkkbmap script.


Interactive enhancements:
-------------------------
Improved display of ESC, F1, Control-V, and Han info prompt lines.

Revised menu structure, improved / added some menu items:
* File menu:
	"Discard & Quit" renamed to just "Quit"
	"Save To" renamed to "Set Name"
* Edit menu:
	new item "Paste Other" pastes external buffer
		(from other instance of mined)
	integrated edit items from former Extra menu
* Search menu: renamed to "Search/Go"
* former Extra menu:
	split into editing functions (moved to Edit menu) 
	and settings (in new Options menu)
* new Options menu:
	gateway items to the flag menus (in case direct opening of flag 
		menus by right-clicking the flag is not intuitive enough)
	integrated former (DOS-only) Screen menu (now also for Unix)
		(as a sub-menu)
	added help items
		help topics viewer
		About mined
		function key help bars

Revised menu handling system:
* Pull-down menus and flag menus can also be opened by scrolling the 
  mouse wheel on the menu header or the flag indication, respectively.
* All menus are now scrollable (when window is smaller than full 
  menu); implementation of pull-down and pop-up menus was unified.
* Open menus are now closed when the window is resized in order to 
  prevent calculation problems for resizing and repositioning the 
  selected item (limitation planned to be removed in future version).

Reassigned command to invoke system command with paste buffer as input 
(pipe paste buffer into program) from ESC c (deprecated) to HOP ESC !.

Added script highlighting support to curses version.

Menu layout, highlighting of selected menu item:
* Enabled "stylish selection bar" for selected menu item by default, 
  as font support seems to have improved; this highlights the selected 
  item (during menu navigation) continuously from left to right menu border.
* Enabled stylish selection bar also for double menu borders (-Qd) 
  using adjusted graphic characters.
* Added option -Qq to disable this layout feature.
* Highlighting selected item now with coloured background; colour is 
  configurable with the environment variable MINEDSEL.

Added toggle feature for TAB expansion mode (options -+4, -+8, can 
now be changed from the Options menu or the Auto indent menu).

New commands:
* HOP ESC T toggles the TAB expansion mode.
* Alt-F12 toggles the Input method (between current and previous one, 
  like left-clicking on the Input method flag indication)
* Control-F12 opens the Input method menu
* Control-F2: save current file (if needed) and exit mined; alternative 
  to ESC ESC, avoiding without the function key detection delay

(Fixed from SUSE 10.2 alpha pre-release) In emacs command mode (-e), 
remapped two key commands:
* ESC ESC now dispatches to the mined ESCAPE commands (Alt-x deprecated)
* HOP was reassigned to ^\ (as ^^ is now overlayed as an accent prefix key)


Interoperability enhancements:
------------------------------
Detecting and enabling keyboard escape sequences generated by new 
xterm resource modifyOtherKeys mode (xterm 214/216) which facilitates 
generic detection of Alt/Shift/Control-modified keys (without having 
to setup individual key translations).

Auto-detecting and supporting xterm resource utf8Title mode (xterm 
213) which facilitates display of Unicode file names in the window title.
Added resource (value true) to sample file Xdefaults.mined.

Printing script uprint: Removed dpi option for paps which is not 
supported anymore in newer versions as paps fortunately changed to 
generating outlines.

Added application note (to manual section "Terminal interworking problems") 
indicating that kterm should be configured to run in either euc or sjis 
mode because its default mode (ISO 2022) is not supported.

Added setup for keypad support for VT220, xterm emulating VT220 mode 
(assuming proper setting of TERM=vt220), and Linux console.

Added detection of new modified function key codes for F1-F4 (e.g. with 
Control) that seem to have been introduced with xterm 216. (Modified 
F5 etc work as before.)

Skipping auto-detection of terminal features if the terminal does not 
support ANSI-like escape sequences.

Added some legacy terminal support:
* recognition of some legacy function key escape sequences
* supporting terminals that cannot insert/delete lines (was broken 
  since introduction of menus due to the menu header line)
* supporting VT52 (if indicated properly by TERM environment variable)

Abandoned the option -A (introduced in 2000.11) as disabling the ESC 
prefix detection may lead to unexpected partial escape sequences 
appearing to the user.

Added workarounds for display of menu borders in xterm -cjk_width mode 
which has some display bugs with remains of background colour after 
overwriting a character cell.


File handling enhancements:
---------------------------
When cloning a file (with Save As / Set Name / ESC n / ESC d), 
file permissions (access modes) are preserved and cloned.

With the +x command line option, new files are given executable 
permission only where read permission is also set.


Bug fixes:
----------
Fixed misconceived interpretation of "Spacing Combining" character 
category, thus spacing Marks are no longer highlighted (since 2000.11).

Toggling the text encoding (left click on Encoding flag) was improved 
to always remember the last selected encoding distinct from the current one.

Fixed locale "vi_VN" to be recognised as UTF-8 encoded.

Fixed command line option for initial search (+/EXPR) not to check 
(since 2000.3) and interpret (since 2000.7) EXPR as options.

Fixed handling of backslash in keyboard mapping tables in some cases.

Revised install targets of makefiles for improved robustness.

Fixed cygwin makefile install target to consider $(prefix) or $(root) 
for desktop icon, and to include wmined and wmined.bat.

Fixed makefile to work for installing alias links despite of 
missing main makefile. (Updated in 2000.12.2)

In cygwin makefile, fixed path to desktop installation script mkicon.
(Updated in 2000.12.2)

Added linking of appropriate makefile.* to src/makefile to configure script.
(Updated in 2000.12.1)

Tuned screen attributes of curses version to match non-curses version 
better in menus (color usage, invisible cursor, bold border), 
in case anyone would be using the curses version (make minced).

On cygwin, fixed inappropriate error message "Cannot read paste buffer" 
to "Buffer is empty" if no paste buffer exists.

Fixed Han info menu not being properly cleared after moving away from 
Han letter which led to incorrect redisplay of old info after screen refresh.

Fixed occasional screen garbage after inserting with open Han info menu.

Fixed wrong error message "Interrupted system call" (since 2000.11) when 
trying to paste non-existing buffer after screen has been resized (due 
to static nature of errno which was left untouched in this case and is 
now explicitly set to 0 which is hopefully portable).

Tuned menu width for partial menu display to be always at maximum width 
of the full menu to avoid irritating border artifacts when scrolling.

Fixed occasionally postponed correct screen adjustment when updating the 
screen after terminal/window size has changed.

Fixed failure of workaround for avoiding menu display garbage on bidi 
terminal (mlterm) when display was at top of file.
Also enabled this workaround for non-UTF-8 encoding, too.

Fixed -E option without following option parameter from randomly 
selecting a text encoding.

Fixed near-endless display loop after window was resized to a very 
thin one (since 2000.5).

(Fixed from SUSE 10.2 alpha pre-release) Multiple accent combinations 
with ambiguous mnemonics for at least one of the accents also work now.

(Fixed from SUSE 10.2 alpha pre-release) Fixed Alt-H from inserting 
the closing HTML tag at the wrong place.

(Fixed from SUSE 10.2 alpha pre-release) Fixed prompt for multiple 
accent prefixes to display properly also in non-UTF-8 text encoding.

Applying explicit workaround for invisible cursor control missing 
from terminfo/termcap data (Sun), enabling nicer menu appearance.

</a>


<a name=2000.12 onMouseOver="release (this);">
=============================================================================
Changes from mined 2000.11 -> mined 2000.12 (March 2006)
===========================================

Interactive enhancements:
-------------------------
Enabled display of left shift marker by default (indicating that a long 
line has been shifted out left for display).
Changed display of left and right shift markers to reverse coloured 
for clearer indication.

Enabled graphic menu borders in more terminals (also in CJK terminals).

Two slight reassignments of shifted function keys make room for more 
intuitive assignments:
* Detached copy function from Control-Ins. Use End/Shift-End instead.
* Detached function to move to previous/next beginning of paragraph 
  from Control-cursor-up/down. Use Control-Shift-cursor-up/down instead.

After pasting with the Insert key, the cursor is now by default placed 
behind the pasted region.
To paste and leave the cursor positioning before the pasted region, 
use ^P or Control-Insert.
See the -V/+V options to change the default behaviour.

The Alt-Insert function to paste previous buffer(s) (ring buffer function) 
now also works when the cursor stays left of the pasted region.

Changed the function of left-clicking the Input Method menu to 
toggle between the current and the previous keyboard mapping 
rather than cycle through the mappings (like on the Encoding menu).

Changed the function of left-clicking the Quote Style menu to 
toggle between the current and the previous quotation mark style 
rather than cycle through the styles (like on the Encoding menu).

New option +D sets up xterm (by sending dynamic configuration codes) 
to apply two useful keyboard handling modes:
* Delete key on small keypad sends DEL character rather than an escape 
  sequence and can thus be distinguished from the Delete key on the 
  big (numeric) keypad.
* Prepend ESC to character if pressed with the Alt or Meta key in 
  order to enable Alt-commands (e.g. Alt-f to open the file menu, 
  Alt-Shift-H to enter HTML markers etc).
(Unfortunately this cannot be done by default as it cannot be undone 
because the previous state cannot be detected.)
(This xterm setting should rather be configured permanently as 
suggested in the sample file Xdefaults.mined in the 
Mined runtime support library.)


Character encoding support enhancements:
----------------------------------------
Updated to Unicode 5.0.0 beta2:
* Case conversion, Script information.
* Combining character width properties (continuing to work with older 
  width data versions by terminal auto-detection).
* Han information (from Unihan database) for CJK characters.
* Radical/Stroke input method.
* Added generic and supplemental character input mnemonics for new 
  LATIN characters.

Supplemented Big5 character set with HKSCS-2004 update from 
<a target=hkscs href=http://info.gov.hk/digital21/eng/hkscs/>
http://info.gov.hk/digital21/eng/hkscs/</a>, adding more than 100 characters 
and fixing 5 characters that seem to be mapped incorrectly in libiconv.
Handling covers mappings to two Unicode characters, like for JIS encodings.

Revised interpretation of locale environment variables to comply with 
de-facto locale standard. Added environment variable TEXTLANG to 
specify text encoding preference (esp. for new files).
The order in which environment variables are searched for an 
encoding specification is now:
(TEXTLANG), LC_ALL, LC_CTYPE, LANG
where TEXTLANG is only considered for assumed text encoding (with 
precedence over the other variables), while the L* variables are 
considered for setting of the terminal encoding.
Note however:
* Explicit command line parameters are available to specify either 
  terminal or text encoding. They override environment variable settings.
* UTF-8 terminal auto-detection overrides other terminal encoding settings.
* Text encoding auto-detection overrides environment settings but not 
  command line settings.
* Assumed text encoding can be switched while editing as usual.

Revised and enhanced command-line options to specify encodings:
-E selects text encoding, +E assumes terminal encoding;
-/+EX (single-letter tag) uses special tag as before,
-/+E=charmap uses charmap name (as reported by locale charmap command)
-/+E.suffix uses encoding suffix as used in locale names
-/+E:flag uses 2-letter flag used by mined as indication in Encoding flag

Revised terminal encoding handling to support also mapped 8-bit encodings 
(i.e. non-Latin-1 8-bit encodings like ISO-8859-*, KOI, DOS, Windows etc).
Handling of combining characters (with auto-detection) is covered.
(PC character set handling is no longer a special case.)

Generally revised handling of text and terminal encoding to support all 
combinations of them.
CJK terminals are no longer restricted to handle text in matching CJK 
encoding only; all encodings (Unicode, other CJK, 8-bit) can now also 
be edited in CJK terminals. However, especially for CJK terminals 
proper display and width handling of characters that are not handled 
by the terminal or not contained in the font cannot always be provided 
although some auto-detection is applied for handling of extended code ranges.

Supporting lots of additional 8-bit encodings, including all that appear 
to be known by typical locale set installations, for both text encoding 
and terminal encoding. For text encoding, folding less important ones 
into sub-menus of the encoding menu to keep it concise.

New optional Unicode mode for Copy/Paste buffer which maintains its 
contents always in Unicode, so that Copy/Paste of text works between 
differently encoded files (or sections of a file, if encoding is 
switched while editing) with automatic character code conversion.
Enable with -Eu or right-click on Paste buffer menu ("="/"+") and 
select "Unicode".


Character handling enhancements:
--------------------------------
Supplemented Cangjie input method (verified for Unicode 5.0.0 beta2) 
with additional mappings from HKSCS-2004 Changjie input code table. 
Enhanced the mkkbmap script to automatically merge Unihan and HKSCS 
generated keyboard mappings into the Cangjie input method mapping table 
(invoke ./mkkbmap cj +).

Identifier character recognition - also used for word boundaries - is 
now always based on Unicode character categories.

Case conversion is now always (i.e. in all encodings) based on Unicode.

With Shift-F3 (or "Word case toggle" from the Extra menu) which cycles 
a word between all small, title case, and all capitals, for title case 
now an actual Unicode title case character is used if available.

Updated HTML character mnemonics to HTML 4.01. Added make script to derive 
them automatically.

Smart quotes enabled in all text encodings.

Tuned Quotes style menu according to new information about international 
typographic quote marks usage.

Enhanced indication of characters not displayable on the terminal:
Additional Unicode indications (like 'E' on cyan background for the 
Euro symbol already) for quotation marks and dashes.

Tweaked mnemonic input support for character mnemonics that already 
contain non-ASCII characters (e.g. for Vietnamese mnemonic input of 
multiple-accented characters) to work also in non-UTF-8 text mode.


Interoperability enhancements:
------------------------------
Checked mined with kterm.
Added auto-detection of kterm encoding.

In rxvt, the two keypad Del keys (small keypad, numeric keypad) 
are automatically distinguished from each other and invoke the 
Delete Character (small keypad) and Cut (numeric keypad) functions, 
respectively (with Control-/Shift-/Alt- alternatives, see manual).

Fixed screen color handling problem with newer configurations of 
terminfo (ncurses) entries.

Fixed display of 8-bit encoded files in UTF-8 terminal with 
wide non-CJK characters (xterm -cjk_width).

Fixed handling of CJK encoded characters in the range 0xA0** as 
extended code points, to prevent bogus display in some terminals 
(transparent display can be enforced with the +CCC option, like for 
other extended code points).

Fixed handling of JIS characters that map to two Unicode characters 
for printing (ESC f p) and character info display (ESC u).

Added control strings for more terminals to display the file name 
in the window header.

Fixed make problem with newer configurations of ncurses when ncurses 
development package is not installed by preferring ncursesw over ncurses.

Adding -ldl when linking ncurses version (make minced) and libdl library 
exists to fix make problem with newer ncursesw configuration.

Tweaked environment settings TERM=ansi or ansi-nt to let mined assume 
CP850 terminal encoding (e.g. with Windows command line telnet), 
tweaked TERM=interix to indicate CP850 rather than CP437.


Further enhancements:
---------------------
The search corresponding command for #if/#else/#endif structures was 
enhanced to consider nested structures.

Added a few supplementary mnemonics, e.g. for the downwards zigzag arrow.

Added new password hiding feature which hides all characters behind 
the string "assword" in a line (to accommodate for password and Password).
Activated with the option -P. Disabled with +P.
By default, this mode is activated when editing a file whose name starts 
with ".".

The former option to enable proportional font support was changed to +p.

Added logic to distinguish CJK locales with the ambiguous encoding suffix 
".euc".

Added pico emulation mode (function emulation unfinished).

Added aliases minmacs, mstar, mpico for invocation of mined in 
emulation modes for emacs, WordStar, pico, respectively.

Added wrapper scripts umined, xmined for invocation of mined in a new 
separate terminal window. With umined, it will be enforced to be in 
UTF-8 mode (using the uterm script).

Revised uterm script to invoke a new terminal window in UTF-8 mode with 
suitable fonts. Fixed locale manipulation. Including uterm in default 
installation to system bin directory, also installing a manual page.

Detecting terminal versions (by requesting terminal device attributes), 
which enables the version-specific application of workarounds for 
terminal bugs.

Deprecated environment variable MINEDHELPFILE, replaced by MINEDDIR 
which may point to the installation directory of the Mined runtime 
support library (unless installed in one of the typical locations) 
which also contains the uprint script.

Revised structure of Mined runtime support library, using subdirectories.


Bug fixes:
----------
Added workaround for the often missing xterm/rxvt termcap entry eA 
(enable alternate character set). Without this workaround, 
menu borders would not be displayed correctly in VT100 graphics mode 
(-Qv, default in Latin-1 terminal) if mined was linked with termcap 
(which is the default on cygwin and some other systems). Linked with 
ncurses, the termcap API would deliver the correct information to 
be handled by mined. This bug (needing such a long explanation) 
exposed only in rare situations, especially on cygwin :(

With the workaround above, enabled graphic menu borders in more terminals 
(also in CJK terminals).

PC terminal character set assumed when a PC terminal is detected was 
actually codepage 850, not 437 as previously described. Now it varies, 
according to terminal name. Adapted documentation.

Abandoned option -G (which displayed some control characters as graphics) 
which didn't work anymore since 2000.8.

Workaround: explicitly disabling 256 colour mode for KDE "konsole" terminal 
to avoid buggy blinking on using the respective control sequences.

Fixed position handling of long line with screen display shifted out left 
if left shift marker is enabled. Enabling this feature by default.

Revised format of MINEDTAB and MINEDSHIFT environment variables for 
more intuitive configuration.

Fixed the auxiliary scripts "installfonts" and "makeprint" to use 
`pwd` rather than $PWD which is not maintained by all shells.

Added option -xrm 'UXTerm*locale:false' to scripts umined and uterm in 
order to make sure UTF-8 mode is enforced and prevent xterm (older 
version) from involving luit which would occasionally stall when started.

Fixed Xdefaults.mined example resources to refer to 9x18U and 10x20U 
rather than 9x18 and 10x20 as those names are used in the Unicode 
X fonts package.

Fixed wrong screen position handling of indication of illegal CJK 
codes starting with 8E in EUC-JP encoding on CJK terminals.

When a PC terminal is detected, mined uses the brighter version of 
red for "dimmed" display of line markers instead of the almost 
invisible very dark red.

Fixed some numeric/mnemonic character input/transformation functions to 
not perform "smart" handling, e.g. TAB expansion to white spaces.

Fixed HTML tag input to not perform "smart" handling, esp. replacing 
less/greater angles with a double arrow.

Fixed search for matching MIME separator to really match the actual 
separator and not simply go to the next "--".

In rxvt, Unicode characters that are Not Assigned are always displayed 
as a single-width replacement character. This is not consistent with 
xterm behaviour which would display them as a double-width replacement 
if they are located within a double-width Unicode range (which sounds 
reasonable). This would cause display positioning inconsistencies. 
Mined now has a workaround for some of these cases (assuming that 
rxvt runs the most recent Unicode width data version available; 
or actually the same as mined assumes - handling of multiple 
auto-detected terminal Unicode versions does not cover this special case).

Fixed accent prefix keys to always give precedence to the accented 
character rather than the RFC 1345 mnemonic character in ambiguous cases.

Suppressed inappropriate message "Unknown character mnemonic" when 
a two-letter mnemonic input or control-digit accent prefix input 
is cancelled (with ESC or a function key).

Fixed inappropriate error message "Unknown mnemonic character" to 
"Invalid character" if a valid two-letter mnemonic is entered but cannot 
be inserted because the current encoding does not support the character 
(this special case had gone wrong with the general fix of this matter 
in 2000.10).

Fixed positioning error in +V mode (placing the cursor behind the pasted 
region) if the last paste buffer line contained TAB characters. This 
enables making it the default behaviour for the Insert key and 
properly supporting the ring paste buffer by default.

Tuned menu item for Hebrew quote mark style to avoid right-to-left 
display confusion on bidirectional terminal (mlterm).

Fixed mnemonic character transformation (ESC _) in non-UTF-8 
mode for non-ASCII mnemonics (like the ones for Vietnamese).

Added missing character conversion of non-ASCII input in an 8-bit terminal 
for CJK text encoding.

Printing: If the auxiliary uprint script fails, try to put the fallback 
invocation of lp/lpr into UTF-8 mode, using LC_ALL and hoping that this 
has an effect (maybe with cups properly configured).

Fixed bogus screen scroll-down on mouse click in KDE konsole.

Tuned popup menu handling to always ignore an initial (immediate) mouse 
release event so if the menu happens to pop up right under the cursor 
it does not prematurely select an action.

Fixed display of "\" character in ESC prompt in Shift-JIS or Johab 
text encoding mode (since 2000.10).

Fixed display of no-break space on prompt line in CJK terminals.

Fixed display of some special line indications (e.g. Unicode paragraph 
separator) in various situations (e.g. xterm -cjk_width).

Removed scrollable pull-down menus from the feature list of 2000.11 as this 
was not (and is not) true. Pull-down menus are cut to the screen height, 
pop-up menus and keyboard mapping selection menus are scrollable.

Revised toggling of character encoding (by clicking on the Encoding flag) 
which often used to forget its toggling alternative (since 2000.10).

Fixed environment settings TERM=ansi or ansi-nt to let mined assume 
CP850 terminal encoding (e.g. with Windows command line telnet).

</a>


<a name=2000.11 onMouseOver="release (this);">
=============================================================================
Changes from mined 2000.10 -> mined 2000.11 (July 2005)
===========================================

Interactive enhancements:
-------------------------
Conciliated keypad assignment preference conflict between Cut/Paste 
functions (as propagated by mined) and character deletion / 
line positioning functions (as often commonly expected):
- Additional character deletion function Alt-Del.
- Better documentation for alternative -k option.
- Changed error message "Mark not set" to include a hint on keyboard usage:
"Mark not set for Cut and Paste - type Alt-Del to delete char, F1 k for help".

Enabled scrolling for popup menus (esp. flag menus) so that menu 
opening in low-height terminals (e.g. 24 lines or lower) is no longer 
suppressed and esp. the Encoding and Input Method menus are always shown.

Updated to Unicode 4.1.0:
* Case conversion, Script information.
* Combining character width properties (continuing to work with older 
  width data versions by terminal auto-detection).
* Updated Han information (from Unihan database) for CJK characters.
* Updated Radical/Stroke input method to include new CJK characters.
* Added Hanyu Pinlu and Tang pronunciation information (from Unihan 
  database) to Han information options.
* Added generic and supplemental character input mnemonics for new 
  LATIN characters.

Indication of Unicode combining characters (visible indication and 
character information) now refers to the most recent Unicode version, 
not the actual terminal capabilities; a combining character not handled 
as such by the terminal will be highlighted also in combined display mode.

Renamed File menu item "Paste file" to "Insert file" (which is probably 
more common usage). So also the menu item "Print" can now be selected 
with a single "p" key.

Additional assignment of "Delete single" function (to delete without 
auto-undent, or to delete the last combining accent only) to F5 Backarrow 
in case Control-Backarrow is not configured.

Renamed File menu entry "New Name" to "Save To ..." which is considered 
more intuitive. It changes the file name associated with the edit 
buffer but doesn't save the file yet; the originally loaded file (if 
any) is not affected.

Additional commands F1 F1 / Shift-F1 / Control-F1 / Alt-F1 to display 
a help line (in the bottom status line) with short indications of the 
functions assigned to the function keys F2... in normal and shifted 
modes. With HOP, permanent display of this help information is toggled.


Interoperability enhancements:
------------------------------
Accepting xterm resource mode "XTerm*modifyCursorKeys: 3".

Accepting Alt-function key combinations from terminals that implement 
them by prefixing ESC.
New option -A to disable this feature and avoid the accompanying delay 
after ESC ESC before mined exits.

Accepting Alt-function key combinations formed by appending ;11 etc 
instead of ;3 etc after ESC [ or by inserting 11 etc after ESC O.

Detecting right keypad function key combinations as distinguished from 
small keypad in rxvt in order to better support the various shifted 
Home/End/Delete key combinations (in support of revision mentioned 
under "Interactive enhancements").

In KDE "konsole" terminal, disabling rounded menu borders by default 
as konsole is lacking decent font support for Unicode characters.
(Patch included in SuSE 9.3 mined 2000.10 package.)

Added keyboard configuration examples for Control-function key detection 
for rxvt and mlterm to the runtime support library.

Replaced function key mappings for "HP workstation keyboard" with 
those for older extended VT100, older xterm, and some others for an 
enhanced range of terminal interoperability.

Added shifted (Control-/Alt-) function key detection for HP terminals 
or (with xterm) keyboard mode.

Added function key detection for SCO terminals or (with xterm) keyboard mode, 
including Shift-/Control-/Alt- combinations, plus PuTTY SCO mode shifted keys.

Added script to support Unicode X font installation to the 
runtime support library.

Added xterm parameter -mk_width to xterm start script "uterm" for 
UTF-8 mode in addition to -u8 (applied from xterm version 201).
This enables the xterm built-in most recent version of Unicode width 
data, even if the system-provided locales maintain an older version.

Provided makefile for Interix. Included function key assignments 
(escape sequences) for Interix console.

DOS version (djgpp): Unified keypad and function key assignments to 
mined functions with general (Unix) version. Remapped specific 
screen size and mode control functions to Control-/Alt- with +, -, / 
(Control or Alt with +, -, or / keypad key).


Further enhancements:
---------------------
New TAB expansion option (-+4 or -+8) that expands TAB key input 
to an appropriate number of Space characters.

Added "smart arrows" input text replacements (in addition to smart dashes) 
if smart quotes mode is active.

Revised print script (uprint in the runtime support library) to use 
paps (a Pango printing script) if available. Removing temporary file 
after printing.

The "search corresponding bracket" commands ESC ( or ESC ) now also match 
/* */ pairs and #if #else/#elsif #endif structures.

Smart text replacements (esp. smart dashes) are suppressed while 
entering multiple characters during a repeat command.

New case toggle function Shift-F3 cycles casing of a word between 
all small, beginning capital, and all capitals. For Japanese script, 
it toggles the word between Hiragana and Katakana.

New function key assignments:
* Alt-F2 to Save to a different file ("Save As")
  (was Control-F2 previously)
* Control-(Shift-)F2 to enforce creation of the text position memory 
  file @mined.mar to ("Save Position", then Save)
* Control-F3 to View a file (edit read-only)
* Alt-F7 / Alt-F8 to search backward
* Control-F10 to open first flag menu (Info menu)

Added PC DOS encoding ("codepage 437") to available encodings.

The command ESC _ (or Control-F11) also replaces an HTML character 
tag (e.g. &_euro;) with its represented character.


Packaging, building and installation:
-------------------------------------
Moved doc/compilation to COMPILE.DOC so the subdirectory doc of the 
distribution archive now contains only user documentation.

Added PACKAGE.DOC with hints how to make system-specific mined packages.

Leaving out the default link src/makefile from the distribution as it 
used to confuse some installers for which the default (GNU make and cc) 
does not work. A generic make with auto-detection of the suitable makefile 
should be invoked from the top-level distribution directory as described 
in the file INSTALL.DOC.


Bug fixes:
----------
Fixed missing use of terminal capability to "enable alternate 
character set" (terminfo enacs, termcap eA) so graphic menu borders 
should now work in some remaining cases and no longer be replaced with 
letters.
(Patch included in SuSE 9.3 mined 2000.10 package.)

Fixed partial scrollbar update logic to prevent gaps in scrollbar display.
(Patch included in SuSE 9.3 mined 2000.10 package.)

Tweaked panic handling to terminate more smoothly after a screen output 
error (e.g. if output crashes with ncursesw 5.4 on a more than 3 bytes 
UTF-8 sequence).
(Patch included in SuSE 9.3 mined 2000.10 package.)

Suppressed activation of xterm "mouse hilite tracking" mode if compiled 
with curses.
(Patch included in SuSE 9.3 mined 2000.10 package.)

Fixed menu border handling with xterm -cjk_width mode, including a 
workaround for xterm font handling bug.

Emacs command mode (-e): Fixed ^X^C not to unconditionally save file 
but to prompt first (like mined command ESC q).
Also fixed ^Xk (which previously behaved like ESC q) to edit a new 
file (thus discarding the edit buffer, like F3).

Fixed part of keymap generation mkkbmap (yudit keymap auxiliary script).

Fixed character width interworking problem with CJK-encoded rxvt.

Fixed missing display of menu continuation indication (scrollable 
keyboard mapping pick list) with non-graphic menu borders (option -Qa).

Fixed recognition of smart quotes style in previous file editing session.

Limited display of pull-down menus (File menu etc., not flag menus) to 
screen height so that in low-height terminals (less than 22 lines) 
confusing bottom menu item display is avoided when navigating down.

Fixed incorrect usage of terminal height adjustment (workaround for 
occasional cygwin xterm mismatching xterm / tty size, since 2000.10) 
for window height lower than 24 lines.

Added error detection and message to command "Save Position" but not 
to implicit save position function when actually writing the file 
as the message would inappropriately interfere with the file writing 
information (and maybe error message referring to this).

Fixed re-positioning to previous cursor position after opening a file 
when the previous position had been after a combining character.

Fixed wrong sorting sequence of non-BMP case conversion entries 
leading to case toggle not working for various (also BMP) characters 
(since 2000.4).

Unified function key assignments of some special keyboards with those 
on usual keyboards (xterm, VT100, ...):
F6, F7 on Sun and HP keyboards, F10, F11, F12 on Iris keyboards, 
F16-F20 on 9780* keyboards.
Mapped F13-F22 on 9780* keyboards generically to Control-F3-F12 (may 
be shifted in addition).

Fixed display of control characters on prompt line in CJK mode; (they 
were incorrectly echoed, and incorrectly handled when erased, in 2000.10).

Explicit encoding option (-u, -EG, -EW etc) has to override environment 
preference for text encoding (unless for non-CJK encoding in CJK terminal 
which is not supported). Fixed missing overriding.

Removed remark in manual page (option -E with CJK encoding) that 
UTF-8 auto-detection could override explicit encoding selection which 
is not true anymore since 2000.10.

Fixed writing of panic file on nested catching of external signals.

Fixed missing update of window title (file name) in some cases when 
file name was changed for writing but writing was cancelled.

Fixed selection of usable temporary directory with respect to 
considering its write permissions.

Fixed flickering multiple update of flags area when starting mined 
(e.g. showing "L1" twice, then "U8") (since 2000.5).

Fixed smart quotes mode handling to be taken from previous editing 
session when opening a file which did not properly set 
plain style in some cases (since 2000.9).

</a>


<a name=2000.10 onMouseOver="release (this);">
=============================================================================
Changes from mined 2000.9 -> mined 2000.10 (February 2005)
==========================================

Features:
---------
Added radical/stroke lookup input method for CJK characters.

Added Han character information (Han info option in new Info menu) for 
both text browsing and pick list character selection. This displays 
selectable character pronunciations and descriptions from the Unihan 
database, either on the status line or in a popup menu.

Poor man's bidi mode was tweaked and enabled by default unless the 
terminal is detected (or configured) to be a bidi terminal; this mode 
enhances inserting small pieces of right-to-left (e.g. as quotations) 
into left-to-right text; when switching from right-to-left back to 
left-to-right by entering a left-to-right character, the cursor 
automatically skips to the end (visual end) of the previously entered 
right-to-left text on the line. This priority is justified by the 
assumption that this mode (with visual storing order) is only useful 
for inserting small right-to-left quotations into left-to-right text 
and not for editing right-to-left documents (which should be stored in 
logical order).

Many more enhancements and additions for internationalisation and 
character encoding support:
* Updated character data to Unicode 4.0.1.
* Combining characters in CJK encodings are now supported.
* Multiple mapped 8-bit character encodings are available, including 
  full combining character support.
* UTF-16 is handled transparently.
* For details and further features see below.

Many enhancements and additions for character input support:
* CJK, Vietnamese, Thai, Hebrew.
* Combined character editing in CJK and 8 bit encodings.
* For details and further features see below.

New header line command HOP "-" underlines the line that starts before 
the cursor position.

Added a printing feature that prints the text being edited 
considering the selected text encoding. (It uses a Unicode printing 
script contained in the runtime support library and the uniprint 
program from the yudit package.)
Modified the item in the File menu to print the file (or actually 
the edit buffer), not the paste buffer.

The menu interface was enhanced, see below.


User interface enhancements:
----------------------------
Enhanced menus with subtitles.
Enhanced flag menus with markers that show which options are activated.

Made menu items selectable by typing the first letter of their 
descriptions, cycling through all items beginning with that letter.

Enabled menu item selection by mouse wheel scrolling. Note that your 
mouse driver may be configured to generate multiple (e.g. 3) mouse 
wheel events on one mouse wheel movement (e.g. with Windows).

Rearranged default input method menu according to the order of the 
letters "CJK".

Keyboard mapping selection menus ("pick list") that are too large to 
fit on the screen are now scrollable and pageable (with cursor keys).

Revised navigation in pick lists (keyboard mapping selection menus); 
improved highlighting and function of cursor movement.

New mode for more stylish menu item selection highlighting (-QQ). 
Looks nice on Unicode terminals. Not made the default, however, 
because block characters used for it might not align well with simple 
borders with all fonts.

Displaying line-end entered on prompt line (esp. for searching) using 
highlighted marker representation (like for text display) rather than 
control character representation.

Revised character indications for characters (esp. CJK) that cannot 
be displayed for various reasons; made indications uniform on 
different terminals.


Command interface enhancements:
-------------------------------
^V followed by a function key now generically invokes the same function 
as with control-function key.

Enhanced numeric character input with the option of Unicode value 
input in CJK or mapped 8 bit mode by typing a 'u', 'U', or '+' (in 
addition to an optional '#' or '=' for octal or decimal numeric input).

With numeric character input, the Space key was modified to enable 
"successive multiple character entry" according to ISO 14755; so if 
the numeric code is terminated by a Space key, another numeric 
character can be entered subsequently.

Added Alt-E command to open encoding menu; modified Alt-V command 
to toggle between view only and edit mode (to reuse previous Alt-E).

Added Alt-F10 to open first flag menu (info menu).

Added cedilla accent prefix function to ctrl-F5 (combining this and 
ring above as they are not ambiguous).

Added Help to eXtra menu.

Additional command ESC @ to set marker (in addition to control-@ / 
control-Space, ESC ^, control-], or the Home or Select key, for the 
sake of keyboard configurations that cannot easily enter those - 
control-Space may not be configured, ^ may be an accent prefix "dead key", 
control-] may be caught by telnet, Home may be cumbersome on Laptops).

The "search corresponding bracket" commands ESC ( etc. were extended: 
In case you are editing a mailbox file, these commands also work for 
MIME separators or mail headers; in this case, the search direction 
depends on the command character, e.g. ESC ( searches backward, ESC ) 
searches forward.

Added command Alt-F9 to repeat the previous search but in the opposite 
direction. Added command Alt-Shift-F9 to search for current identifier 
backward.


Mnemonic input support enhancements:
------------------------------------
Completed mnemonic patterns (generic accent mnemonics) for Latin-based 
characters, supplemented more intuitive patterns for "accents below".
Completed documentation of these mnemonic patterns and enhanced the 
overview in the manual and on the "Character Mnemos" web page.

Revised additional character composition mnemonics; made additions 
consistent with generic RFC1345 mnemonics, removed redundant mnemonics, 
added missing Latin characters (esp. with multiple accents).

Tweaked mnemonic character input handling to allow input of ambiguous 
mnemonics in long mnemonic input mode (e.g. "^V pi " in contrast to 
"^Vpi", where the long form prefers the RFC 1345 mnemonic).
The ugly previous solution to prepend an additional "1" for ambiguous 
RFC 1345 mnemonics was replaced by this new mechanism.

Enabled mnemonic character input support (^V Space mnemo Return) 
for non-UTF-8 encodings.


Input method support enhancements:
----------------------------------
Added two input methods to the default set of preinstalled input methods:
WuBi (after having read it's perhaps the fastest input method used by 
professional typists in mainland China) and 4 Corner.

Added generation feature for further keyboard mapping tables 
(used as input methods) for further mappings from Unihan data 
in addition to Cangjie: MainlandTelegraph and TaiwanTelegraph codes, 
pronuncations for Cantonese, HanyuPinlu, Mandarin, Tang, 
JapaneseKun, JapaneseOn, Korean, Vietnamese.
(Not included in distribution as these seem of questionable value, 
entries included in keymaps.cfg but disabled.)

Added generation feature for further keyboard mapping tables 
used for Vietnamese input methods: VIQR , VNI , Vtelex.
Include VIQR and VNI in the default configuration.

The keyboard mapping generation script mkkbmap inserts additional 
punctuation automatically.

With the environment variable MINEDKEYMAP, both active and standby 
keyboard mappings can be preselected, e.g. MINEDKEYMAP=py-rs.

Option +K enables keyboard mappings (input methods) even in 8-bit 
terminal or when editing a Latin-1 file - although the characters thus 
entered will mostly only be displayed by substitute indications, as 
most characters anyway when editing UTF-8, CJK encoded, or mapped 
8 bit encoding files in an 8-bit terminal.

Keyboard mapping generation from Unihan data (with mkkbmap using mkkmuhan) 
sorts characters in entries according to the priorities of their 
Unicode ranges (assigning lower priority to "Supplement" and 
"Extension" and "Compatibility" ranges).
This especially affects the Cangjie input method in a few character 
selections. So the "pick lists" are now displayed more in order 
of relevance.


Further input support enhancements:
-----------------------------------
Added Vietnamese accent prefixing method found on the web, using 
control/alt-digit combinations as prefixes. This is only enabled 
when additional key translations for xterm are configured with 
the X resources. (Added to Xdefaults.mined sample file.)

Added character composition mnemonics (using generic accent prefixes) 
for Vietnamese double-composed characters, i.e. placing a second accent 
on Vietnamese base characters that already have a single composition, 
e.g. if you have mapped your keyboard to have A with circumflex 
available, you can enter "^VÂ'" (Control-V A-circumflex apostrophe) to 
produce the combined character U+1EA4 (A with circumflex and acute).

Added a Thai input method.

Added control-backspace function that removes combining accents from 
combined characters and also does not unindent on leading blanks.
This is only enabled when an additional key translation for xterm is 
configured with the X resources. (Added to Xdefaults.mined sample file.)

Added Hebrew quote style (using Gershayim U+05F4 for quotation 
and Geresh U+05F3 for apostrophe), and added Hebrew Maqaf (U+05BE) 
as a smart dash replacement for "-" if there is an adjacent Hebrew 
character.


Character encoding support enhancements:
----------------------------------------
Updated character data to Unicode 4.0.1:
case conversion, character-to-script mapping, screen width (continuing 
to work with older width data versions by terminal auto-detection).
Updated keyboard mapping table for Cangjie input method accordingly.

Combining characters in CJK encodings are now supported 
(both JIS encodings and GB18030), in either UTF-8 or CJK terminal mode.

Added further 8-bit character encodings, including full combining 
character support.

Maintaining UTF-16 transparently, i.e. a UTF-16 encoded file is 
written back in UTF-16 again (with BOM) (was previously converted 
to UTF-8). No explicit menu/command line options are currently 
available for UTF-16 as internal handling is in UTF-8.

Made handling of Unicode LS and PS line ends (previous option -uu) 
the default. New option +u-u disables them.

The character information command (ESC u) or mode (HOP ESC u) was 
enhanced to conform to ISO 14755; in UTF-8 mode, CJK mode, and 
mapped 8 bit encoding mode, Unicode character information is displayed 
additionally: script name, character category, and Unicode value.

The Han character information mode always shows the character code, 
and in CJK encoding mode additionally the Unicode value, independently 
of availability of Unihan character descriptive information for the 
current character.

Added options +C, +CC, +CCC for fine-tuning of display of unknown 
CJK character codes on CJK terminals.

Added option -CC to assume CJK terminal and override UTF terminal 
auto-detection.

Revised (fixed/tweaked) character value transformation commands 
[HOP] ESC X/U/D/A to perform a more useful and consistent set of 
functions; HOP ESC X now also scans a UTF-8 sequence; [HOP] ESC U 
now transforms values between current text encoding and Unicode; 
[HOP] ESC D/A now acts like [HOP] ESC U but using decimal/octal.


Interoperability enhancements:
------------------------------
Improved UTF-8 and CJK terminal feature auto-detection for speed-up on 
slow terminal connections.

Assuming terminal to run PC character set (codepage 850) if 
environment variable TERM begins with "pcansi", "nansi", "ansi.", 
or contains "-emx", to support remote login from DOS box to Unix.

Enabled optional PC character set operation when running cygwin version 
in DOS box (when using CYGWIN=codepage:oem in a DOS box).

Added handling for rxvt-specific cursor and function key escape sequences.

Revised handling of screen attributes for better and extended support 
of legacy terminals, relying more on termcap and checking if 
direct use of ANSI controls as a fallback is appropriate (usage 
of hard-coded ANSI controls cannot be just avoided because for many 
colour terminals, colour handling is usually not configured with 
termcap/terminfo but of course users want the xterm colour feature to 
be made use of).

Enabled semi-stand-alone operation of cygwin version (with only 
cygwin1.dll needed to be available, but without installed cygwin 
system, especially without termcap information accessible) by assuming 
hard-coded terminal properties for the "cygwin" terminal if it is 
unknown by the system.

Enabled menu border option -Qa for DOS version for use with embedded 
dosemu (esp. running in an xterm where it does not emulate DOS block 
graphics characters).

Enabled menu border option -Qa for curses version, and enabled use 
of Unicode menu borders for curses version.

Tweaked terminal block graphics capability detection, enabling block 
graphics (rather than ASCII graphics) on more terminals (e.g. cygwin).
Also using termcap "ac" / terminfo "acsc" capability now to support 
proper block graphics on more terminals (e.g. mac, ibm3151).

Abolished use of the MINEDTERM variable. Now determining all 
terminal-specific properties and restrictions from TERM.

Added make target "minced" to build a curses version; it uses 
the ncursesw library which supports UTF-8. Using curses is discouraged, 
however; see the comments in doc/compilation.


Building and installation enhancements:
---------------------------------------
Added installation of runtime support library (online help, templates 
for inclusion of environment settings and X resources, scripts to 
configure and invoke xterm in a suitable way, printing script, script 
that helps building a printing environment).

Added make targets "localinstall", "optinstall", and "homeinstall" so 
the user can choose explicitly to install in /opt or $HOME/opt, or in 
either /usr or /usr/local with corresponding different subdirectories 
as used by various systems.

Revised makefiles to improve building on legacy systems.
For dynamic make targets / dependencies, introduced dynamic makefile 
generation with non-GNU make. (Maintaining two versions and keeping 
$(shell ) feature with GNU make for less confusing user feedback.)

Revised directory names used in makefiles for installation of 
mined manual and help files as used by various systems in the 
/usr or /usr/local hierarchies.


Further enhancements:
---------------------
Added push marker stack before searching for current character (HOP ctrl-F8).

Improved documentation how to set up a common inter-window paste 
buffer in a heterogeneous network using the environment variables 
$MINEDTMP and $MINEDUSER. Enabled using the same buffer for 
DOS version (djgpp).

Added environment variables ESCDELAY and MAPDELAY to tune the waiting 
time applied for recognising function keys or input method sequences to 
be mapped, respectively.
ESCDELAY also affects the time the terminal has to respond to a 
cursor position report request (used for terminal capability detection).

Added push to marker stack before replace with confirm (ESC r) starts.

Added command line option ++ to terminate options (to support 
filenames that start with "-" or "+").

Revised checking and reporting attempts to enter, compose or transform 
character codes or mnemonics that are illegal or not valid in the 
current encoding; e.g. added "Invalid character" feedback when trying 
to insert a character that does not exist in the current encoding.

Added "o" to the set of numbering items taken into account with 
clever paragraph rewrapping.

Special handling of Turkish "i" for case toggling is now triggered 
by environment variables LANG or LC_ALL or LC_CTYPE beginning with "tr" 
(rather than the special variable MINEDTURKISH).


Bug fixes:
----------
Fixed cursor remaining invisible after using a menu in cygwin version.

Fixed makefile to enable compilation with djgpp again.
This also fixes a compilation problem with some SunOS configurations.

Fixed mnemonic character input handling to enable input of ambiguous 
HTML mnemonics starting them with "&" (e.g. "^V &_not ", broken since 
mined 2000.8).

Changed separated display mode indication flag from acute to grave to 
avoid interference with ambiguous width property (xterm option 
-cjk_width). Also its background colour was changed from reverse to 
cyan to be consistent with the combining character display itself.

Disabling fine-grained scrollbar if -cjk_width terminal mode is 
detected to avoid interference with ambiguous width property.

Constrained usage of "mouse hilite tracking" mode to xterm; 
on some other terminals (esp. cygwin, rxvt) this could interfere with 
a scroll down control sequence and would incorrectly scroll down the 
screen on left mouse clicks (since mined 2000.4).

Tweaked mkchrtab script (compiling character set mapping tables) to 
work for cygwin in some cases that used to expose weird compiler errors.

Fixed positioning problem after suppressing second quote mark in 
flags area if first quote mark is a double-width character (used 
to output a NUL character then which produces a space on some terminals, 
e.g. cygwin DOS box - this is now being suppressed).

Considered to constrain usage of 256 colour mode to "xterm" to avoid 
screen garbage if the mode is not compiled in to rxvt and other 
terminals.
This applies to scrollbar colours (unless explicitly configured with 
environment variables) and to Unicode script highlighting (by 
lowest-distance mapping of colours to the 8 basic colours).
(But as screen garbage with buggy rxvt occurs only in some 
configuration modes, 256 colour usage was left enabled there.)

Fixed GB18030 auto-detection and width handling.

Fixed EUC-JP half-width character width handling in CJK terminal 
(rxvt in EUC-JP mode). Note that these characters are not displayed 
properly by cxterm in EUC-JP mode.

Fixed overriding of explicitly selected CJK encoding (e.g. -EG) by 
VISCII auto-detection (since 2000.9).

Avoid using vt100 graphics for menu borders in rxvt and cygwin xterm which 
do not seem to support them (option -Qv is available to enforce them).

CJK character codes that do not map to Unicode are now displayed 
with the indication '?' with cyan background to avoid screen garbage by 
invalid character codes, unless overridden by the +C option for 
transparent display of CJK encoded characters.

Fixed buffer size limitation for search expression ranges not to 
corrupt buffer.

Fixed interrupted highlighting in selected line of quote style menu in 
8 bit terminals after non-8-bit quote mark replacement indication.

Fixed error messages on character input support (e.g. mnemonic) to 
be consistent with respect to "Unknown character mnemonic" versus 
"Invalid character".

Enabled input of NUL character with ^V NUL (^V control-Space).

Fixed fine scrollbar display which used to mix up top and bottom part 
of marker in some cases.

Fixed fine scrollbar display which used to leave gaps in some cases of 
adding lines.

Fixed resolving ambiguous function key control codes with certain 
specific terminals.

Fixed margin interpretation when setting left or right line margins to 
current position with Enter in a shifted line - using real line column 
now instead of screen column.

Fixed missing refresh of menu header line after cancelling a keyboard 
mapping pick list by clicking on the encoding or combined display flag.

Fixed incorrect assumption of combining screen if locale was incorrectly 
configured to indicate UTF-8 in a non-UTF-8 terminal.

Fixed reverse highlighting problem on some terminals with mnemonic 
character input on prompt line.

Enabled scrollbar display in djgpp version.

Fixed function key detection for DOS versions compiled with curses 
which was broken since 2000.7.

Disabling pipe input/output detection in DOS version when DOSBox is 
detected (by looking at %COMSPEC%).

Fixed display bug after inserting TAB in CJK-encoded text.

Fixed inappropriate "conversion" of line-end into U+3000 with 
diacritic transformation command (ESC _) (since 2000.8).

Workaround to accept delayed cursor position reports instead of 
giving an error message. This affects slow remote connections and 
the cygwin terminal if configured with CYGWIN=tty (in which case the 
cursor report comes only after the first keyboard input which is a 
cygwin bug).

Fixed generation of script colouring table from colours.cfg which 
could have failed with small-letter script names depending on locale 
environment (since mined 2000.10 alpha as script names were all-caps 
before).

Fixed ^V__ which didn't input ^_ as documented (since mined 2000.4).

Tweaked scrollbar attribute handling so that useful scrollbar display 
is enabled in hanterm. This needed a workaround so that the scrollbar 
position is now indicated by blank space in a CJK terminal using 
Korean encoding (UHC or Johab) if TERM=xterm. If you use another 
terminal in this configuration (e.g. cxterm or rxvt with TERM=xterm) 
set the environment variable MINEDSCROLLFG="44;36" or ="38;5;45" 
to reenable coloured display of the scrollbar position.

Fixed display bug when an incomplete UTF-8 sequence was followed by 
a TAB character.

Fixed non-ASCII command characters to work regardless of active 
encoding.

Fixed missing indication for no-break space (U+A0) in UTF-8 mode 
with djgpp-compiled version (was inconsistently shown as blank).

Fixed one buggy entry in VISCII character mapping.

Added ASCII remapping entries in Shift-JIS and Johab character mappings, 
and handling them for display and input.

Tweaked encoding toggle function (when clicking on the character 
encoding flag in the flags area) to properly toggle between the 
current and the previous text encoding.

Fixed xterm workaround of tweaking window title string (showing the 
filename) for non-ASCII characters in UTF-8 screen mode.

Fixed Turkish case conversion special handling which was broken since 
2000.4; added further special handling for Turkish and for Lithuanian 
COMBINING DOT ABOVE.

</a>


<a name=2000.9 onMouseOver="release (this);">
=============================================================================
Changes from mined 2000.8 -> mined 2000.9 (March 2004)
=========================================

Enhancements in character encoding handling and input support:
--------------------------------------------------------------
Used more compact representation for character set tables and 
keyboard mapping (input method) tables, reducing size of binary by > 700K.

For Japanese encoded text on a UTF-8 terminal, the JIS encodings that 
map to two Unicode characters are supported.

Keyboard mapping / input methods: Configurable function of space key 
in multiple choice selection menu (option -K).

Keyboard mapping / input methods: added support for VIM keyboard mapping 
files.

Tuned CJK encoding auto-detection.
Tuned CJK vs. ISO 8-bit auto-detection.

Added VISCII auto-detection.

Added Shift-JIS auto-detection.

CJK encodings may be selected (or disabled) to be taken into account 
for auto-detection by configuring the environment variable MINEDDETECT.

Added option -l for more intuitive selection of Latin-1 text encoding 
(and disabling of auto-detection) rather than with +u.

Tuned terminal mode auto-detection to reduce flickering delay on 8-bit 
xterm (using fewer test strings) and improve stable fallback if 
auto-detection fails partially on slow terminal connections.

The keyboard mapping menu can be grouped with separators, specified 
in the keymaps.cfg file.


Features:
---------
Smart quotes: auto-detection of quotation marks style on file loading.

Keyboard mapping / input methods: added support for VIM keyboard mapping 
files.

New functions for interactive character encoding conversion 
(Latin-1 / UTF-8) to partially fix files with mixed encoding:
A search function finds UTF-8 characters in Latin-1 mode, and vice versa.
The character can then be converted into the current encoding.
The search function is invoked with HOP search corresponding - 
e.g. HOP ESC ( - or Alt-F11 .
The conversion is invoked with the diacritic transformation function, 
e.g. ESC _ or ESC ö , which was extended for this purpose.
For repeated interactive conversion, both functions can be combined 
with Alt-Shift-F11 (convert current character, then search next).


Enhancements in user interaction:
---------------------------------
Implemented a finer-grained scrollbar in a UTF-8 terminal, using 
Unicode character cell vertical eighth blocks U+2581..U+2587.
(Can be disabled with -o1 if font does not contain those characters.)

Implemented lazy scrollbar update for speed-up on slower 
terminal lines (e.g. remote access). (Can be disabled with -o8.)

Verified correct recognition and function of mouse wheel movement. 
Scrolling by multiple lines (option -LN, default N=3), or by 1 line 
with control, or by 1 page with shift.

Added "paste previous" function (emacs style buffer ring) to Edit menu.

Added backspace capability to decimal number input function (e.g. to 
enter a line number or margin column).

Tuned position of popup menu not to appear far right of the line contents; 
if clicked there, the menu is placed on the the line end 
(which is the new cursor position in this case).

The diacritic transformation command (ESC _) derives language-specific 
preferences (such as can be explicitly applied by using the command 
variations ESC ö etc) from the locale environment.

Added a sample xterm key translation to Xdefaults.mined to assign 
the HOP function to the Scroll Lock and Pause keys in order to 
provide the HOP function easily on Laptops/Notebooks.

Making cursor invisible while menu is open.

Revised menu names for CJK encodings for better recognition.


Further enhancements:
---------------------
Position stack and return function also work across files 
(esp. after identifier definition searches using tags file).

Added /usr/share/info as a search path location for the online help file 
to meet cygwin conventions, adapted makefile.cygwin installation dirs.

When editing multiple files, switching to another one resets the 
view only flag to its invocation state (option -v).

Tuned various file loading functions (including character encoding 
auto-detection) to speed up startup with large files.


Bug fixes:
----------
Fixed declaration of getenv which caused failure on 64 bit systems.

Added quotes to egrep parameter in global makefile, needed with some 
shells (would cause make to fail on SunOS).

Fixed display of non-break space (0xA0) in Latin-1 text and terminal 
mode on prompt line.

Fixed missing tolerance against multiple blanks separating choices 
in keyboard mapping files.

Fixed encoding handling problem after toggling from VISCII to UTF-8 
(by clicking on encoding flag).

Fixed width assumption when inserting certain characters (e.g. Euro sign) 
in GB18030 mode which led to wrong cursor position.

Fixed a problem with moving between flag menus.

Fixed a missing screen update problem after replacements with 
embedded newlines.

Fixed a wrong screen update problem (missing lines near end-of-file 
on screen) after replacements with embedded newlines.

Fixed corrupted paste buffer after tags file search (for identifier 
definition, ESC t) that spoiled a subsequent paste operation with 
inserted garbage.

Added auto-detection of terminal capabilities for plane 2 double-width 
and plane 1 / plane 14 combining characters, avoiding display confusion.

Fixed cursor positioning problem when mouse was clicked during prompt 
line input after menu invocation.

Fixed cursor positioning bug (since version 2000.8) after character 
insertion on the first screen column in a shifted line (an overlong 
line shifted for display).

Fixed paragraph justification (line wrap) to use TAB for indentation 
on subsequent lines (instead of blanks) if a numbered paragraph starts 
with a TAB after the numbering (as it used to do with unnumbered 
paragraphs).

Restricted mode (--) prevents ESC E (switch from view only to edit mode) 
and ESC W (save unconditionally).

Re-included Turbo-C 2 project file which had been overwritten by 
Turbo-C 3 project file. (Turbo-C is not really recommended anymore 
but as it still compiles, I'm keeping it available.)

Adapted format of online help files to avoid multiple backspace 
characters for bold formatting which does not work with newer 
versions of less.

If the editing buffer cannot be filled (out of memory), the associated 
file name is cleared to assure that the file is not accidentally 
overwritten with its truncated buffer version. (This was already 
unlikely because the editing mode was set to View only, but it could 
still be saved with an enforced Save command like Shift-F2 or ESC W.)

Not displaying the number of characters anymore after loading a file 
with CJK encoding and without predetermined encoding (e.g. loading with 
-C only, or just by auto-detection) because the number used to be wrong.
The correct character count can be displayed at any time with the ESC ? 
command. Character count after loading is still displayed for Latin-1 
or UTF-8 encoding, or if CJK encoding was explicitly specified (e.g. -EG).

Fixed bugs in ESC t command (to find declaration of current identifier) 
if tags file search expression contained special characters (tab, \, *).

Fixed top of marker stack not being recognised as such after marker 
push operations.

</a>


<a name=2000.8 onMouseOver="release (this);">
=============================================================================
Changes from mined 2000.7 -> mined 2000.8 (August 2003)
=========================================

Features:
---------
Major extension of CJK character set support: GB18030 
(Unicode-compatible 4-byte extension of GBK), 
extended EUC-JP (including 3-byte encodings), 
and CNS (EUC-TW with 4-byte encodings).

Added support for mapped single-byte character encodings, 
enabled Vietnamese VISCII character set (option -EV).

Auto-detection of terminal features (UTF-8, different width data 
versions, handling of double-width, combining and joining characters; 
CJK, handling of non-EUC code points, GB18030, 3-byte and 4-byte encodings).

Flexible locale configuration for both text and terminal encoding:
Mined accepts both explicit encoding suffixes (starting with ".") or, 
if none are specified, also some region suffixes (starting with "_").
See manual page, section "Locale configuration".

Smart dashes: If smart quotes are active, also an input sequence 
of "--" is replaced with an en dash (if preceded by a blank) or 
an em dash.

New emacs mode: functions are assigned to control keys and Meta-keys 
(ESC commands) as defined by the emacs editor. Also the emacs paste 
buffer ring and cut/paste behaviour was implemented.
This mode is in beta state and detailed documentation (esp. command 
listing) is not available yet.
The mined ESC commands can be reached via Meta-x.
Function keys remain unaffected.
See also option +V.

The multiple buffers ring is also available in non-emacs mode.


Enhancements in special display of character encoding:
------------------------------------------------------
Enabled display of Unicode FULLWIDTH forms in Latin-1 terminal.

Enabled substitute display of CJK encodings in Latin-1 terminal, 
with clear display of FULLWIDTH ASCII.

Enabled substitute display of Euro sign in Latin-1 terminal.

Alternative options -Eg / -Ej / -Ec to set -EG / -EJ / -EC but 
if running in a CJK terminal this tells mined to assume that the 
terminal cannot display GB18030 4-byte encodings, CNS 4-byte 
encodings, EUC-JP 3-byte encodings, respectively.

Revision and improvement of CJK display indications:
¤  (cyan background) (8-bit terminal): CJK cannot be displayed here
@  (cyan background) (CJK terminal): CJK code cannot be displayed on terminal
# (cyan background): invalid CJK code (not assigned in selected encoding)
# (cyan): illegal (esp. incomplete) CJK code

The character encoding indication in the flags area was extended to 
two letters.


Enhancements in character input support:
----------------------------------------
Tweaked handling of character selection menu ("pick list" for 
multiple choice mappings) so that a blank key moves on to the next 
alternative. Also the cursor-right/left keys move within a selection 
line now.

Added input method TUT.roma for Japanese.
Revised Hiragana and Katakana input method tables.

CJK input method tables were extended with punctuation mappings.

Extended low/capital letter toggle function (F11) to toggle 
between Hiragana and Katakana.

Enhanced smart quotes heuristics to support smart quotes in CJK text.

Revised input mnemonics for Unicode accented characters; removed 
redundant mnemonics.

Additional input mnemonics :(, :), ): for smileys (Unicode mode).

Diacritic transformation function enhanced with language-specific 
preference transformations:
control-F11 and ESC _ apply the default transformations 
which are the same as available for two-letter mnemonic input (e.g. ^Vae).
With Escape commands with diacritic letters that occur on respective 
national keyboards, the according preference transformations take 
precedence:
ESC ö, ESC ä, ESC ü, ESC ß: ae->ä, oe->ö
ESC é, ESC è, ESC à, ESC ù, ESC ç: oe->oe ligature (Unicode mode, U+0153)
ESC æ, ESC å, ESC ø: ae->æ, oe->ø
ESC _, control-F11: ae->æ, oe->oe ligature (Unicode mode, U+0153)


Enhancements in command input:
------------------------------
Made Delete/Remove keys on keypads configurable to either Cut or 
Delete character right. The option -k now switches all Home/End 
and Del keys to the more usual behaviour, although I still think 
it's a waste of keypad space to have these functions on two 
keypads; I think the mined approach to leave the standard behaviour 
on the "small keypad" and assign buffer functions to the right-most 
keypad is more useful.
If the keyboard emits specific control and shift sequences, 
control-Del is always "Delete character right" and shift-Del is 
always "Cut to buffer" in either key assignment mode.
Also control-Home and control-End always moves to the beginning or 
end of the current line, while shift-Home and shift-End always 
invoke the buffer functions (mark and copy).

Revision of function key assignment.
F12 is no longer attached to the diacritic transformation function 
(assignment had been inadvertently overridden for some releases already), 
as on some (many?) terminals F12 cannot be distinguished from shift-F2.
New function assignments:
F12	enable memory for file positions in current directory
F11	(unchanged) low/capital letter toggle
shift-F11	low/capital toggle for whole word from cursor (like HOP F11)
control-F11	diacritic transformation, e.g. ae->æ
ctrl-shift-F11	(like HOP ESC U) transform Unicode value into character
shift-F2	write file even if unmodified
control-F2	save file as (prompt for new name, then save)
shift-F4	write paste buffer to file
alt-Insert	replace text just pasted with preceding paste buffer
control-F4	replace text just pasted with preceding paste buffer
shift-Home	mark position
shift-End	copy to buffer
control-Home	go to line beginning
control-End	go to line end
Home		(default) mark position
End		(default) copy to buffer
Home		(with -k option) go to line beginning
End		(with -k option) go to line end
Home/End	(on small left keypad) reverse function of right Home/End
HOP shift-F8	search for definition of current identifier (using tags file)
HOP control-shift-F8 search for identifier definition (prompts)
HOP control-F8	search for current character (new function)
VT100: Find	search
VT100: Select	mark position
VT100: Do	copy to buffer
control-Up	(new, see below) move to previous paragraph beginning
control-Down	(new, see below) move to next paragraph beginning
control-Ins	copy to buffer
control-@ (control-space) mark position

New commands to move to previous/next paragraph boundary:
control-Up, control-Down (hold control key and press cursor up or down).

The current text position is pushed on the position stack also with 
the Goto Line/% command (^G).


Enhancements in terminal operation:
-----------------------------------
Tweaked screen attribute handling to improve behaviour of certain 
terminals that do not match their termcap entry (esp. cxterm).

Tweaked screen handling for menu borders to provide workarounds 
for various weird terminal behaviours (esp. mlterm and Linux console).

Moved some ambiguous function key escape sequences into a special 
table that is (automatically) only selected if a vt100 terminal 
is set up (by the TERM variable). Added assignments for shifted 
function keys of certain terminal emulators.


Further Enhancements:
---------------------
When a menu is open, the cursor-left or cursor-right keys cycle 
through the pull-down and flag menus.

Added smart quotes style for Japanese corner brackets.

Smart quotes style can also be preselected with the environment 
variable MINEDQUOTES which should then contain the opening/closing 
quote pair or just the opening quote mark.

Renamed X resource configuration plug-in .Xdefaults.mined to 
Xdefaults.mined for better handling and to comply with other 
packages' usage.

Enhanced the script to generate man pages from HTML to handle tables.
Fixed manual page generation to filter out empty lines which spoiled 
the layout.

Manual:
* Added discussion of the disputed keypad function assignment into Key 
  layout section.
* Moved HOP section right behind the Key layout section.


Options:
--------
New option -* to disable mouse support (requested by an emacs mode 
user who prefers to use the xterm copy/paste mouse function).

Option +V to enable emacs-style paste buffer functions for "delete 
word" and "delete to end of line" commands (^T, ^K), and place the 
cursor behind the pasted region after buffer insertion.
(May become the default in a future version, disabled by -V.)

New option -QX to select the style of menu borders where X is one of
	s: simple border, 
	r: rounded corners, 
	f: fat border, 
	d: double border, 
	a: ASCII border (can be combined with another option -Qs or -Qr), 
	v: VT100 alternate character set graphics border, 
	@: reverse blank border.
Mined sets an appropriate default based on its assumptions of the 
terminal capabilities.

Latin-1 or UTF-8 character encoding can now also be selected with 
the -E option: -EL, -EU.


Bug fixes in CJK handling:
--------------------------
Removed length restriction on keyboard mapping multiple choice 
menu, thus enabling Pinyin input method to work.

Fixed mnemonic character input problem in CJK mode.

Fixed handling of unmapped Unicode characters in CJK terminal mode 
in input method selection menu, avoiding ragged menu borders 
(but leaving empty entries for menu consistency between encodings).


Bug fixes with paragraph justification:
---------------------------------------
Fixed paragraph justification on lines with two successive blanks 
(as used after a sentence by some people) which could actually wrap 
lines between the blanks (and leave leading blank on the next line) 
if the right margin happened to be at that point.

Fixed clever paragraph justification on lines without blanks which 
used to change the right margin.

Fixed a display handling bug that could lead to wrong display after 
invoking paragraph justification from the menu.


Bug fixes with screen display:
------------------------------
Fixed interference of Unicode line end display (-uu) with 
paragraph end display (-p).

Fixed menu width handling (esp. when HOP was entered in an open 
flags or popup menu near the right screen border) which could wrap the 
menu display around the screen.


Further bug fixes:
------------------
Fixed missing resp. overridden recognition of Alt-Enter in some 
situations (used for jumping in the cursor position stack).

Fixed handling of keyboard mapping selection menu in right-to-left 
terminal (e.g. mlterm) near the end of text which could crash mined.

Tweaked ESC D and ESC A commands to insert decimal resp. octal value 
of whole character, not of separate encoding bytes. Behaviour is now 
as it was already documented.

Fixed HOP ESC U command which (by the HOP prefix) inserted a pair 
of parentheses if invoked on the code of an open parenthesis.

Fixed inadvertent setting of restricted mode on "-" options prefix 
(since version 2000.7).

A function key entered on the prompt line does no longer abort 
prompting but just beeps.

Fixed explicit cursor marking in proportional terminal mode in 
CJK text mode.

</a>


<a name=2000.7 onMouseOver="release (this);">
=============================================================================
Changes from mined 2000.6 -> mined 2000.7 (May 2003)
=========================================

Features:
---------
Enhanced support for character input methods, especially for 
East Asian (CJK) character ranges; selection menu for keyboard 
mapping choices ("pick list").
Pre-compile-time configuration of additional mappings is provided, 
usual mapping tables of other editors can be used as source.

Support for editing files in different CJK encodings, also in a 
UTF-8 terminal. The apparently major encodings in use are supported:
Big5 (with HKSCS), GBK (> GB2312, EUC-CN), UHC (> EUC-KR), EUC-JP.
These are tried to auto-detect by heuristic counting of character codes.
An option to select the encoding (-EX) or auto-detection are also provided.
Two more encodings supported but not auto-detected are Japanese 
Shift-JIS encoding (including single-byte mappings to Halfwidth Forms) 
and Korean Johab character set and encoding.


Enhancements:
-------------
Added flag menus to all flags (except HOP indication) for more 
intuitive usage.

Enabled repeat function with keyboard mapped characters.

Enabled hex entry of CJK double-byte characters on prompt line in 
CJK mode (-C).

Enabled decimal (in addition to hexadecimal or octal) coded character 
input.

Tweaked script to generate keyboard mapping table from yudit keyboard 
mapping file: strip final blank if contained in all entries, skip 
intermediate dummy blank.

Enhanced UTF-8 auto-detection so that longer UTF-8 sequences are 
not ignored.

Flag indication for combined/separated display mode (of Unicode 
combined characters) was tweaked to make it more intuitive.

Added "+", "-" and various Unicode bullet characters as numbering 
items for clever justification (triggering indentation).

Activated colour usage for line markers and scrollbar in CJK terminals 
(newer versions of hanterm apparently support colour).

In CJK terminals, mapping line markers from Unicode values according 
to effective encoding table, so hopefully matching the right 
CJK character for marker display.

Revised CJK special character input support, fixed illegal character 
handling problems with coded CJK input (also on prompt line).

Revised handling of incomplete CJK half character codes. Don't pad 
them with blank on loading the file anymore.

Revised character counting while loading the file to work with CJK 
and auto detection.

Option +G to enforce using block graphics characters for menu borders 
is now accepted in CJK terminals as newer versions support them.

Makefile for Mac OS X (provided by Tobias Ernst).


Bug fixes:
----------
Fixed a bug that would display control characters (e.g. ^X) entered 
directly on the prompt line in UTF-8 mode as letter X with coloured 
background instead of ^X.

Revised character input thoroughly; fixed deficiencies (since 2000.6 
even crashes, shame on me) if the repeat function was provided with a 
non-ASCII character.

Fixed handling of invalid hex CJK double-byte character insertion.

Fixed undefined insertion of arbitrary character if character insertion 
from character code in text (HOP ESC U/D/O) didn't recognise a number.

Fixed insertion of partial character bytes when an open menu was 
cancelled by typing a Unicode character.

Fixed failed recognition of bullet character (0xB7) in non-Unicode mode 
as a numbering item for clever justification (triggering indentation).

Removed those RFC 1345 input mnemonics mapping to private use code points; 
fixed some of them to map to valid code points.

Removed -D option; this feature (which did not work in UTF-8 mode anyway) 
may now be achieved with a keyboard mapping if desired.

Fixed erroneous special handling of 0xA0 (as no-break space) in CJK mode.

</a>


<a name=2000.6 onMouseOver="release (this);">
=============================================================================
Changes from mined 2000.5 -> mined 2000.6 (Feb 2003)
=========================================

Features:
---------
Arabic ligature joining support:
If the terminal supports right-to-left display (e.g. mlterm)
mined assumes that the terminal also applies automatic joining of 
Arabic ligatures (LAM/ALEF combinations).
Mined supports ligature joining by accounting for the screen position 
accordingly, and by indicating the joining part of the ligature in 
separated display mode similarly to the handling of combining characters.
This terminal handling mode is configured with the option +UU.

New command ESC Return (Alt-Return) to "return to previous position".
On commands that jump away from the current position (HOP Mark, 
File Begin/End, Search, Search Idf definition), the current position 
is remembered in a position stack. The new command ESC Return goes 
backward, HOP ESC Return forward in this "stack".

Added recognition of mouse wheel control sequences and attached 
according behaviour - untested as I don't have a mouse wheel.


Enhancements:
-------------
New key interpretations for shift-Return (shift-Enter) and 
control-Return (control-Enter) to insert Unicode paragraph separators 
and line separators respectively if Unicode line-end handling is enabled.

Improved prompting for hex/octal character input, made more intuitive.

Improved coded character entry on prompt line: added visual feedback, 
added octal option, enabled for non-UTF-8 mode.

Improved mnemonic character entry on prompt line: added visual feedback.

Implicit suppressing of keyboard mapping during mnemonic character input.

Enabled mouse release and movement support in DOS version (DJGCC).

On opening a file, the current position marker is no longer initially 
set to the opening position (as some users got confused with the 
Cut/Paste function); to return to the position e.g. after searching, 
use the new command ESC Return instead of HOP Mark.


Options:
--------
The option -c selects separate display mode on UTF-8 terminals. The 
mode can also be toggled from the eXtra menu or on the C/c flag 
next to the U/L character encoding flag.
The previous option to assume that the UTF-8 terminal that does not 
support combining characters was changed to -cc.

Bidi terminal mode is selected explicitly with +UU instead of 
implicitly (by disabling the scrollbar with -o).

Additional option -8 to set TAB size to 8 (to override TAB size 
being set to 4 by MINED environment variable).

Changed option -J (to set justification level 2 initially) to +jj.

Added option +U to configure UTF-8 terminal operation. This is 
in order to allow defined setting in addition to -U which toggles 
the pre-configured assumption and might turn out to produce the 
wrong assumption.
Changed -U to also set combining mode when assuming UTF-8 mode.
Note, however, that none of these options needs to be used if the 
environment is correctly configured to indicate UTF-8 as it should 
(LC_ALL, LC_CTYPE, or LANG ending on ".UTF-8" or ".utf8").

Added option +UU to configure bidi terminal operation. This mode 
implies UTF-8 and also assumes that Arabic ligature joining 
(of LAM/ALEF combinations) is applied.


Bug fixes:
----------
Display problems in separated display mode (for Unicode combined 
characters) on the status line were fixed, including Arabic joining 
ligatures.

When deleting the last accent in a Unicode combined character (after 
moving the cursor position into the character), the display was not 
updated; this was fixed.

Fixed documentation of some vt100 keypad key assignments (original 
assignments were mangled by Linux console keypad assignments).

Fixed F5/control-F5/shift-F5 and according F6 accent composition 
prefixes and adapted documentation.

Mentioned shift-F2, shift/control/control-shift-F8, shift-F9, shift-F10 
in documentation.

Fixed ^O new line insertion: if the line is terminated with a Unicode 
paragraph separator, a line separator is used for the new line end.

Fixed and adapted behaviour of HOP Return to insert Unicode paragraph 
separator.

Revised character set handling for PC versions; revised accented 
character composition;
accented character display and composition (from 8-bit character range) 
now working in PC versions for either PC or UTF-8 character encoding.

Fixed status line update problem after operations on parts of combined 
characters (e.g. movement onto the combining accent with ^V cursor-right).

Fixed character composition from text [ ESC_ ] to consider characters, 
not bytes.

Search corresponding bracket [ ESC( ] now also works with UTF-8 
multi-byte characters.

Fixed identifier search [ HOP F8 ] to work with UTF-8 characters 
inside identifier.

Included sources for online help in the distribution archive as 
needed for "make install".

Fixed a crash problem with window resize, then display being redrawed, 
then resize again and output being interrupted. Occurred under rare 
and unclear conditions; now ignored.

Fixed makefile.bsd for NetBSD.

Added top level makefile, selecting OS-specific makefile automatically.

</a>


<a name=2000.5 onMouseOver="release (this);">
=============================================================================
Changes from mined 2000.4 -> mined 2000.5 (Dec 2002)
=========================================

Feature: Keyboard mapping
-------------------------
Keyboard mapping for various scripts is available in UTF-8 mode 
(both edited text and terminal must run UTF-8).
This maps keyboard input characters or short character sequences to 
characters (or short sequences) in a different script.
In this release, mappings for Greek, Cyrillic, Arabic, and Hebrew have 
been integrated.
An active and a standby keyboard mapping are maintained. They can be 
toggled quickly for text input with ESC k (or Alt-k), also on the prompt 
line (e.g. for searching).
Command overview:
  ESC k toggles between active and standby keyboard mapping
	also on prompt line
  HOP ESC k resets keyboard mapping to none (unmapped input)
  ESC K opens the keyboard mapping menu
	also on prompt line
  HOP ESC K cycles through available keyboard mappings

Note: As some typical keyboard mappings contain ambigous key sequences 
where one may be a prefix of another, a short delay is applied in 
these cases to allow recognition of any such sequence to be mapped.

The current mapping is indicated by its two-letter script tag in the 
flags area (top screen line), clicking on it cycles through the 
available mappings (like HOP ESC K), clicking with the right button 
opens the Keyboard Mapping menu (like ESC K).

With the environment variable MINEDKEYMAP the active or standby 
mapping can be preselected. The value is a two-letter script tag to 
set the active mapping, or it is prepended with "-" to set the 
standby mapping.
Example: export MINEDKEYMAP=-gr will set Greek keyboard mapping standby.
Known script tags are:
  ar -> Arabic
  gr -> Greek
  el -> Greek
  he -> Hebrew
  cy -> Cyrillic
  ru -> Cyrillic


Options and further features
----------------------------
Bidirectional terminal support:
To run mined on a bidirectional terminal (such as mlterm), disable the 
scrollbar with the option -o.
In this mode, when displaying a menu, underlying text lines that 
contain right-to-left characters are cleared first in order to prevent 
display confusion between the terminal's bidi algorithm and the menu 
position.

Mined's "poor man's bidirectional support" (which automatically places 
right-to-left characters to the left of the previous character) was 
disabled by default in order to support mined's operation with 
bidirectional terminals.

Script colouring:
For better recognition of letters that belong to a certain script 
(where similar looking letters may belong to other scripts), 
text display uses colours to distinguish letters of various scripts.
This is preconfigured for Greek and Cyrillic (which share some letter 
forms with Latin).
Compile-time configuration of further script colouring is available 
with the file colours.cfg; it contains entries with the script name 
(as listed in the Unicode data file Scripts.txt), white space, and 
a colour index into the xterm 256-colour mode.

Two "flag menus" were introduced:
* one for the Keyboard Mapping (as described above),
* the other for Smart Quotes selection; it's popped up with the right 
  mouse button on the smart quotes indication in the flags area;
  additional commands:
  ESC Q or Alt-Q: also pops up the Smart Quotes menu
  HOP ESC Q: cycles through available Smart Quotes

When a pull-down menu is opened with the middle mouse button, the 
HOP version of its items is preselected (can be toggled with middle 
mouse button as before).

-X disables display of the filename in the window title bar.

Changed default of -G option (enabling display of control characters 
as block graphics) to be disabled.

Flag indications were slightly tweaked in order to make them more 
intuitive.


Bug fixes:
----------
Fixed a rare bug with ESC u on illegal UTF-8 characters.

Clever justification now also considers the bullet sign as a 
numbering (list item) character.

Back-TAB was tweaked not to apply directly below non-space text of the 
previous line.

Fixed some bugs and inconsistent results with shortcuts for 
composed character input.
Added composed character sequences for single-accented extended 
Latin characters.
Extended diacritic transformation function (ESC _) to all 
two-letter composed characters as configured for input support.

</a>


<a name=2000.4 onMouseOver="release (this);">
=============================================================================
Changes from mined 2000.3 -> mined 2000.4 (Sep 2002)
=========================================

Interface:
----------
Made use of advanced xterm mouse tracking modes.
* Text select and copy with highlighting by mouse dragging.
* Menu item browsing by mouse dragging.
  If the mouse button is kept down, items are automatically selected 
  as the mouse is dragged over them.
  An item is selected by either clicking the left button or 
  releasing the left or right button.
  It is also still possible to open and change menus with click-release, 
  then select an item with another click (less finger-strain).

A "non-break space" (character value A0 hex) is now displayed by a 
tiny middle dot (as used for TAB indication) in cyan colour.

Syntax highlighting
* Also toggled for .sgml files (as well as for .html/.htm, .xml, .jsp).
* Extended to JSP and HTML comments.

In order to avoid command confusion on slow remote connections where 
escape sequences might come in deferred, the following commands were 
changed:
* Disabled ESC N cmd which repeated the command N times when N 
  has only 1 digit (in that case the command might have been a 
  function key escape sequence).
  Use ESC = N cmd instead, or use 2 or more digit repeat counts, 
  e.g. ESC 77- (to enter 77 '-' characters) or ESC 07x (to enter 'xxxxxxx').
* Changed ESC O which inserted the octal value of the current character.
  Use ESC A instead.

When inserting an HTML marker on the prompt line (commands ESC H, 
HOP ESC H) HTML tag attributes can be included; they are only inserted 
for the starting marker, not for the closing marker.

The TAB width can be toggled between 8 and 4 while mined is running 
(command ESC T).

Function keys of some terminals (esp. HP and Siemens) are ambiguous; 
the preferred key set to be detected can now be configured 
(environment variable MINEDTERM= xterm / hp / siemens).

The ESC u command displays additional Unicode script information.

The parentheses matching commands ESC ), ESC (, etc, now also match 
HTML tags.

The character compose and input support function was revised. 
Accent prefix functions were extended to support Unicode. 
Additional mnemos were enabled, including TeX and HTML mnemos.


Features:
---------
Clever justification (auto-indentation):
With the justification command ESC j, clever auto-indentation is applied.
It uses heuristic detection of numbered items and program source comments.
(The old justification function that only considers configured margins 
is available by ESC J.)

A Back Tab function was added. A Backspace from a position that is 
only preceded by white space on the line will revert the input position 
to the previous matching indentation level.

In both justification modes, automatic suppression of auto-indent 
applies by heuristic detection of the speed at which characters 
are entered. This is to allow unmodified pasting of text (using 
e.g. xterm mouse copy/paste).

Checkout and checkin functions for version management systems added 
(to File menu, command scripts "co" and "ci" must exist in path).

Introduced generic handling of shift state indication for function key 
escape sequences (control/shift/alt and combinations).
No more "Unknown command" errors on unregistered function key variants.
By default they invoke the same function as the unshifted key.

The location of mined buffers can be configured with an additional 
environment variable MINEDTMP ([SYS$]MINEDTMP on VMS). This supports 
copy and paste operations among different machines.


Bug fixes:
----------
Revised case conversion and other Unicode character property handling.
Updated tables for wide and combining characters to new Unicode data.

Fixed some display bugs:
- Current line was cleared after prompt was aborted with mouse button.
- Search/replace including linefeeds could mess up the screen.
- Screen line could mess up on an incomplete UTF-8 sequence at the end 
  of a line in UTF-8 text and screen mode.

Fixed a bug with automatic line-wrap after entering space.

Fixed some terminal size detection problems after rlogin from DOS.

Under weird circumstances, the first empty line in a file not edited as 
the first one could produce display and buffer garbage on SunOS.

Fixed some search pattern match bugs:
- with empty lines
- with replace and ^, starting in middle of a line (started replacement 
  at that position, not at start of next line)
- with ^, searching backwards (did not find in current line)

Removed restriction of regular expressions with Unicode characters:
search patterns ä* etc (UTF-8: Ã¤*, â‚¬* etc) do work now.


Manual hints and clarifications:
--------------------------------
A search pattern [pat]* matches a (zero or more times) repetition of 
this pattern. In a final position within the search expression, 
however, it matches one or more times this pattern.

Hex input code ^V # xxxx [space or RET]:
Works on the prompt line only in Unicode mode, exactly 4 hex digits 
are accepted but are not echoed on the screen.

Improved description of special character input support in the manual.
Added overview chapter on input support.

</a>


<a name=2000.3 onMouseOver="release (this);">
=============================================================================
Changes from mined 2000.2 -> mined 2000.3 (May 2001)
=========================================

Documentation:
--------------
The manual page was updated and thoroughly revised.
Its primary source was transformed into HTML, roff/man format being 
generated.

The mined web pages were updated and revised.

The file "doc/compilation" (with compilation hints) was updated.


Features:
---------
HOP '/' enters an indented Javadoc comment frame.


Interface:
----------
Options can be concatenated on the command line.
(mined -uu instead of mined -u -u enables Unicode line separators.)

Right-to-left script input support is now enabled by default.
The option -b toggles it.

Option -G disables (actually toggles) the display of certain control 
characters as block graphics characters (enabled by default).

Option +G enforces use of block graphics for display of menu borders.
May be used if the "alternative character set" capability is not 
configured in your system but your terminal does have the capability.

Set output delay (-d0..-d9) to none (-d-) by default in all versions.

The help command was unified on Unix and DOS versions. Not completely, 
however, as calling a sub-programm ("less") through the "system" call 
doesn't seem to work on DOS (it crashes or blocks terminal input 
afterwards, even with cygwin). See also next comment.

A second help viewing mode is now avaible (HOP HELP, e.g. HOP F1). It 
displays help information within mined itself, restoring the previous 
editing state afterwards.
This is the default on MSDOS for the reason mentioned before.


Bug fixes:
----------
Fixed a screen-related pointer confusion after replacement with multiple 
lines (embedded newline) which could result in a display bug and page down 
could be blocked.

(Very minor) Just deleting the trailing line-end of a file is also 
considered a modification (a file only modified this way would 
previously not have been saved automatically).

(Minor) With UTF-8 auto-detection involved, the character count after 
reading the file could be wrong (ESC ? would have been correct).

(Minor) The pop-up menu, when modified with HOP and thus becoming smaller, 
used to leave the frame of its previous width on the screen.

(Embarassing) Although I was proud of "perfect responsiveness to 
window size changes" I had just forgotten to implement that for 
the case of a menu being open.

On DOS, editing a file with Unix line-ends, the function "append to buffer" 
used to append the lines with MSDOS line-ends.

</a>


<a name=2000.2 onMouseOver="release (this);">
=============================================================================
Changes from mined 2000.1 -> mined 2000.2
=========================================

Features:
---------
Auto indentation when entering a new line.
Insert a new line without auto indentation with the ^O command.
Auto indent mode may be toggled from the Extra menu.

Entering auto-indented pairs of parentheses:
With the HOP prefix, the characters "(", "[", "{", "<" enter 
an auto-indented pair of "{" ... "}" etc.

Search and replace patterns can use an embedded newline. Enter 
with ^V ^J. In some cases there are still display problems. 
Then update the screen with the ESC "." command.


Interface:
----------
HTML files (ending on .html, .htm, .xml, .jsp) trigger a display mode 
which distinguishes HTML tags by coloured display.
The mode can be toggled from the Extra menu.
	While you edit within a line and change its HTML ending status 
	(by entering or deleting '<' or '>'), the display status of 
	subsequent lines is not changed. (You may refresh the display 
	with ESC ".")

Special markers (on cyan background) for illegal UTF-8 sequences are 
applied in UTF-8 terminal mode as well (instead of the Unicode 
replacement character).

The online help file format and help invocation were changed.

Online help contents was enhanced.


Bug fixes:
----------
For relevant file close operations, the return code of close() is now 
checked. Usually, write errors are already noted by write() calls but 
for a few rare cases, this check is appropriate.

Some display bugs (especially with UTF-8) were fixed.

Graphic display for menu borders on the Linux console was fixed (funny 
it uses the DOS character set as an "alternative character set").


Porting:
--------
Flexible selection of DOS versions available, all with mouse support.
(djgpp, cygwin, EMX, Turbo-C).

</a>


<a name=2000.1 onMouseOver="release (this);">
=============================================================================
Changes from mined 2000 -> mined 2000.1
=======================================

Features:
---------
Configurable automatic smart quotes (" character on input replaced 
by typographic quote marks depending on style setting, in UTF-8 text mode).

Completed combined character support, removed some bugs.

Unicode case toggle handles context-dependent mappings (Greek sigma).


Interface:
----------
Mined looks for its online help file at certain typical locations so 
it may find it even if MINEDHELPFILE is not configured.


License:
--------
For distribution purposes, the GNU license was imposed, but commented in 
README.

</a>


<a name=2000 onMouseOver="release (this);">
=============================================================================
Changes from mined 98 -> mined 2000
===================================

Features:
---------
Scrollbar display
May be used for relative or absolute positioning with the three mouse 
buttons.

Flexible and simultaneous handling of different line ends
Unix and MSDOS line ends can be handled in the same editing session and 
are indicated by different coloured line-end symbols. Files without 
trailing line-end can be edited and created.

Transparent long line handling
Overly long lines are now read in transparently. They are attached a "NONE" 
line-end type so they will be written out exactly as they came in.
Splitting within UTF-8 sequences is avoided; splitting of combined 
characters is not avoided, however, they will join seemlessly as lines 
are joined again. (Combining characters at the beginning of a line are 
not displayed in combined display mode.)

Special line-end handling details and binary transparency
With the above two modifications, a couple of line end handling features 
were introduced and binary transparency was achieved.
* Input of NUL characters from file is accepted and is presented as a 
  special "NUL" line-end type. Explicitly entering a NUL character 
  works, too (either literally or with ^V # 0). Thus mined achieves 
  binary transparency through an editing cycle now.
* The ^O command in a line with "NUL" or "NONE" line-end will 
  reproduce this line-end type in contrast to entering a new-line 
  which will always produce a real line-end.
* In order to split a line in two, separated with "NONE" line-end, use 
  HOP ^O (e.g. ^G^O).

Mac line-end handling
Mac line ends (CR only) can be transparently read and handled with the 
command line option +R (while -R would transform them into Unix line ends).

Tags file support
Moving to the definition of an identifier using the tags file 
(generated by the ctags command) was added. If a new file is opened 
for this purpose, the current file is saved automatically.
* Command: ESC t when cursor is on identifier (with HOP, it prompts for 
  the identifier), or from Search or Popup menu.

Search and replace enhancements
Finally, typical Unix tool limitations of line orientation is being 
removed. Mined can search for expressions with embedded new-lines 
(enter with ^V ^J or \n). - Not yet fully implemented! -

Additional HTML tag input support
The command ESC H (not ESC h!) now inserts an HTML tag which is 
entered in dialog. Another ESC H inserts the corresponding closing tag.
* So, continuous entering of HTML contents was made easier.
* The previous function to embed the text between marked position and 
  current position in an HTML tag is available with an additional HOP, 
  e.g. ^G ESC H.

File handling consistency improved
The command ESC # to edit the nth file from the command line was 
extended with ESC # # which just reloads the current file.

Remembering editing information between sessions
In addition to the current position, also the paragraph justification 
margins (wrap-around margins) are remembered until the next 
invocation, but only if justification mode is switched on.

Tab size can be adjusted to 4 (instead of 8) with the command line 
option -4.

Keypad assignment to the "Home" and "End" keys can be changed with the 
option -k. Normally, these keys perform the "Mark" and "Yank"("Copy") 
functions. Some people strongly expect these keys to go to the 
beginning or end of line although that really is a waste of key 
assignment as these functions are easily performed with HOP left/right -
anyway, the option -k exchanges the assignment. The other functions 
are accessible with shift-Home/shift-End (if the keys emit different 
sequences, see X configuration hints).


Unicode handling features:
--------------------------
Combined character display
Handling of Unicode combined character display is enabled by default 
with UTF-8 terminal operation. (May be disabled by environment 
variable utf8_no_combining_screen, or command line option -c.)
* There are two editing modes for combined characters: combined and 
  separated. Switch modes by clicking on the "c/C" indicator next to 
  the UTF-8 "L/U" indicator in the flags area of the top line, or in 
  the eXtra menu.
* In combined display mode, the following special functions are available:
  The cursor can be moved into a combined character with 
  ctrl-left-arrow or ctrl-right-arrow, provided these cursor keys are 
  configured to emit distinguished escape sequences with control-key 
  held. ^V-left-arrow and ^V-right-arrow also work. You can determine 
  the exact position of the cursor if permanent character info is 
  switched on (by HOP ESC u or with HOP in the eXtra menu).
* Partially editing combined characters:
  * If the cursor is on a combined character, delete next character 
    will delete the whole combined character, with all combining accents.
  * If the cursor is within a combined character, delete next 
    character will delete the current combining accent only.
  * In separated display mode, all cursor and text modification 
    operations work on the combining parts as displayed.

Search expressions
The restriction that search ranges could not be used for non-ASCII 
characters in UTF mode was removed.
* Search ranges can, however, not be very large as all included 
  characters are listed in an internal buffer which is limited to ca. 
  1 KB.

Case toggle
The character or word case switch function (e.g. in the eXtra menu, or 
F11) works also with all Unicode characters.

Unicode line ends
Line separator and paragraph separator are optionally detected and handled.
* Activate this mode by two -u options ("-u -u" on command line or 
  "uu" in MINED environment variable).
* Inserting a new line on a line with Unicode lineend will insert a 
  line separator unless the hop flag is active in which case a 
  paragraph separator will be used.

Basic input support for right-to-left scripts
After entering a right-to-left character, the cursor position is moved 
left of it, so subsequent characters will be appended left and the 
text shifted right. Characters are stored in visual order while input 
support is implicit, based on the characters being typed. Entering 
left-to-right characters will obviously automatically switch 
direction; to continue with right-to-left, the cursor must be moved 
manually (e.g. to the line beginning).
* Newline, Space, TAB, and combining characters attempt to behave well 
  according to what was entered before; however, intermediate cursor 
  movement is not considered.
* Activate right-to-left support with the command line option -b.
* This mode is not meant to work with the latest right-to-left xterm 
  patch - it would rather interfere with it. The mined right-to-left 
  mode is just intended to provide a simple mechanism to quickly enter 
  visually correct right-to-left text in a conventional environment.
* Orientation of text alignment remains on the left side in this mode. 
  Suggestions for improvement in order to make it useful for 
  right-to-left or bidirectional writing are welcome.


Interface:
----------
Menu display
Uses block graphics characters if determined to be available.

Menu layout
The pulldown and popup menus are in variable width now (depending on 
contents).

HOP toggle in menus
While a menu is open, any of the HOP key, ^G, Blank, or the middle 
mouse button toggles the HOP amplifier and the menu redisplays with 
function names changed where applicable.

Mouse usage
Was enabled with curses operation (useful for EMX, see below).

Keyboard availability of menus
Menus are available from the keyboard; Alt-letter (or ESC-letter) 
pulls down a menu starting with that letter, Alt-TAB pulls down the 
file menu, Alt-blank pops up the quick menu.
(In order to make Alt work as a modifier, set the xterm resource 
metaSendsEscape to true as suggested in the example file .Xdefaults.mined.)

Line begin/end keys, hop key assignment
In order to get rid of the waste of keyboard assignments which is imposed 
by terminal emulation emitting the same escape sequences for keys of 
the two keypad areas, some X resource definitions were included 
in the file .Xdefaults.mined as a recommendation (section 
XTerm*VT100.Translations). Also the hop key may have to be made available 
explicitly with some X setups (also included in that file).

Keyboard reassignments
In order to make room for the Alt-keys to address menus, some 
commands had to be reassigned:
substitute:	ESC , (was: ESC s)
set marker n:	ESC m (was: ESC ,)
screen smaller:	ESC % (was: ESC m)
screen bigger:	ESC & (was: ESC M)
case toggle:	ESC C (was: ESC f)
edit other file: use F3, or "Open" from the File menu (was: ESC e)
print buffer:	use "print buffer" from the File menu (was: ESC p)


Operation in system environment:
--------------------------------
Window resize propagated to parent shell
If the window is resized, the SIGWINCH signal is propagated to the parent 
process so that e.g. the shell also knows about the changed size.


Porting:
--------
Windows ports
Adaptations to enable compilation in Cygwin and EMX environments.
Works in EMX with ncurses and mouse enabled.

Windows port with mouse / DOS port?
A lot of changes to the curses adaptation enabled seemless operation 
in the EMX environment under Windows.
Unfortunately, EMX does not keep its promise to generate dual-mode 
Windows and DOS executables. Can anyone help?


Bug fixes:
----------
Searching
Fixed a few pattern matching bugs (some had slipped in while 
introducing UTF-8).

Search/Replace
Fixed start of replacing to current position (instead of line beginning).

Search/Replace
Fixed a display bug when replacing was aborted with "line too long" 
outside the current screen.

Word-wrap
Paragraph justification moved to the wrong position if triggered by a 
space entered at the end of line.

Chinese mode display
In 8/16 bit character set mode, some situations (illegal 16-bit codes) 
of display garbage were fixed.

Various minor bugs

</a>


<a name=98 onMouseOver="release (this);">
=============================================================================
Changes from mined release 6 (1995) -> mined 98
===============================================

UTF-8 Unicode support:
----------------------
Works with UTF-8 text mode terminals or windows like xterm.
Auto-detection of Latin-1, UTF-8 or UTF-16 input encoding.
Commands and input support for display and handling of code values.
Transparent handling of illegal UTF-8 sequences.
Can edit UTF-8 text in non-UTF terminals and vice versa.

User interface:
---------------
Mouse control on xterm.
Pull-down menus and pop-up menu.

...

</a>


<a name=6 onMouseOver="release (this);">
=============================================================================
Changes from release 5 -> mined release 6 (1995)
================================================

-	Additional word-wrap version:
	In order to remain a pure text editor (without placing text 
	processing control codes into the text), mined uses trailing 
	blanks as indicators that a paragraph continues. However, 
	sometimes text should be formatted that does not follow this 
	convention. So there is another adjustment option now which 
	terminates formatting a paragraph at the next empty (or blank-
	only) line.
-	Optionally remembering the position where you last left a 
	modified file. Automatic re-positioning in next edit session.
-	Help can now be viewed with mined itself (HOP ESC h).
-	Increased portability: Mined now compiles on more platforms 
	without changes (HP-UX, AIX, recent SINIX versions).

</a>


<a name=5 onMouseOver="release (this);">
=============================================================================
Changes from release 4 -> mined release 5
=========================================

-	The command ESC H to insert HTML commands.
-	Separate left margins for first and next lines of paragraph.
-	Startup search expression on command line.
-	Wild cards in file names on MSDOS.
-	Can switch between edit and view only modes.
-	MSDOS version: Beep modified to use the BIOS beep which is 
	redirected by some "beep enhancement" drivers (newbeep / 
	nusound) instead of the DOS beep which for some peculiar 
	reason they don't change.
-	Compiles on SunOS5.
-	Sets window headline and icon text to current filename in 
	xterm or sun-cmd window.
-	Parameter -x to make a new file executable (Unix) in order to 
	create a shell script.
-	Leading "~" notation for referring to home directory accepted 
	in all filenames.

</a>


<a name=3 onMouseOver="release (this);">
=============================================================================
Changes from release 2 (August 1992) -> release 3 (August 1993)
===============================================================

Main new features:
-	Paragraph reformatting with left and right margin settings.
-	Optional WordStar-compatible keyboard layout.
-	Optional support of 16-Bit character sets.
	(Works well with the Chinese xterm, cxterm.)

Some more new or enhanced features:
-	Screen display was modified to build from the new cursor position 
	(after a search often in the center of the screen) up and down to 
	the upper and lower borders of the screen. This appears to more 
	naturally suggest to the users where they are.
-	Support for proportional screen fonts was added.
-	The MSDOS function key sequences were activated in the Unix version 
	as well to enable using Unix mined remotely from a PC keyboard.
	PC terminal support includes video mode changing as far as it 
	can be performed by escape sequences to the ANSI driver.
-	Mostly unified option environment into one variable, MINED.
-	Options for conversion between different line end types.
-	Extended the enter-control-code prefix (^V) to compose characters 
	if the first following key resembles an accent mark ("'`^°~).
-	A search for identifier at current position function was introduced.
-	A repeat previous search (one before the last search) function was 
	introduced.

Improvements in the MSDOS version:
-	Improved memory management (problem: the 640 KB memory restriction 
	being effective if compiled with Turbo-C).
-	MSDOS mined now detects screen size changes on each keystroke, so 
	it reacts almost immediately, e.g., on font changes performed by 
	the VGAMAX font substitution TSR.
-	Several MSDOS screen mode switching functions were integrated to 
	enable explicit mode change with a command.

Bugs removed:
-	Display garbage in very small windows (less than 28 columns).
		There may still occur display garbage if the window is 
		narrower than the tab size (8 displayable characters).
-	Display garbage in very long lines.
-	Display and position bug related with tab characters and long lines.
-	Display garbage after substitution that made a line shorter so it 
		gets completely shifted out of the left display border.
-	Incorrect display after aborted substitution.
-	Aborted substitution although there was enough room on the line.
-	If the environment variable NoCtrlSQ or NoControlSQ is set, also 
	the tty channel soft handshake setting will not be disabled in case 
	this would affect remote connection behaviour. I had discovered that 
	characters were actually lost on a remote (internet) login connection.

Keyboard assignment mofications:
-	Line replace function assigned to ESC R.
-	Double assigned some functions in support of optional WordStar mode.
-	Option to adapt Backspace and Delete keys to other convention.

</a>


<a name=2 onMouseOver="release (this);">
=============================================================================
Changes from release 1 (July 1992) -> release 2 (August 1992)
=============================================================

Minor changes of behaviour
-	Control characters can now be searched for.

Source improvements
-	Improved portability according to mail feedback.
-	Compiles without warnings with gcc -ansi -pedantic and 
	various other checks.

MSDOS version
-	Compatibility with different ANSI drivers was improved.
	Runs well with the very capable NNANSI (Tom Almy) or the 
	small and simple well-working ANSI.COM (Michael J. Mefford).
-	Workaround for problem with Turbo-C libraries that inhibited 
	mined from working in arbitrary size screens ("extended text modes" 
	like 132x44 etc).
-	The change working directory command now works with respect to 
	different drives, including change of drive only.
-	Shell escape now available on MSDOS.
-	A display bug on the prompt line of the search/replace commands 
	was removed (The initial prompt vanished after the first input).
-	Options can be given starting with / in addition to - .

</a>


=============================================================================
</html>
