Force a terminating \n on macro file load time
[nedit.git] / ReleaseNotes
blob4398af81570acaddd0cffafc48583406e13e4c05
1           Release Notes for NEdit Version 5.5, October 2004
4 $Id: ReleaseNotes,v 1.63 2008/08/20 14:57:35 lebert Exp $
6 This file contains last minute notes to users about the release, which are not
7 included in the documentation or README files included with the distribution
8 kits.  It also contains change information, for users who are interested in
9 what bugs have been fixed, and what features have been added in the current
10 version.
12 If you are upgrading NEdit from a version prior to 5.0, please see the notes in
13 the README file which came with the (source or executable) distribution kit,
14 about updating macros and font settings in your .nedit file.
16 New Features in $NEXT_VERSION
18   - The macro variable $VERSION returns NEdit's version number.
20   - The new macro function filename_dialog() can be used to query a file
21     name from the user by using the usual file selection dialog.
24 Bugs fixed in $NEXT_VERSION
26   - Force a terminating \n on macro file load time, to prevent syntax errors
27     with statements on the last line. (util/fileUtils.c:ReadMacroFile())
28     (SF bug #2038921)
30   - Fix multiple memory leaks in interpret.c:PromoteToGlobal()
31     (SF bug #1894726)
33   - Fix for SF bug #1908890: window title not updated.
35   - Fix for SF bug #1730611: $match_syntax_based is not set.
37   - Crash on window close when a "File modified externally" dialog was up
38     (SF bug #1578869).
40   - Crashes and artifacts when using ARGB visuals (SF bugs #1579544, 
41     #1030467, #1030192, and #1458006).
43   - The text insertion cursor does no longer blink while typing
44     (SF bug #906878).
46   - The status bar reflects a changed keybinding in the shell command banner.
48   - There is now a pattern for highlighting nested command substitution in
49     shell scripts (SF patch #1010742).
51   - Duplicate display bugs SF#464967 and SF#1041077 are fixed.
53   - A typo in Ada's syntax highlighting patterns is fixed (SF bug #858874).
55   - The shell used to run programs from the shell_command() macro function
56     and from the Shell menu is now part of NEdit's normal settings, and no
57     longer in the X server's settings. It also defaults to the user's login
58     shell, not /bin/csh. This fixes SF#403738 and SF#880607.
60   - File history is now consistent across multiple sessions (SF bug #557032).
62   - If a macro file contains function definitions mixed with code segments
63     the code segments were excuted in the wrong order in certain cases. This
64     is fixed (SF bug #622291).
66   - The current file name is (again) displayed in the Save As dialog text
67     field. (SF bug #1451337)
68     
69   - A crash caused by highlighting patterns with complex regular expressions 
70     has been fixed. (SF bug #1536002)
71     
72   - Crashes when the maximum number of patterns in a hightlighting pattern
73     set was exceeded, have been fixed. (SF bug #1536451)
75   - Files are now optionally opened without format changes (SF bug #1003241).
77   - Replace operation where the result exceeded a fixed length silently
78     clipped the result. The limit has been increased and the behaviour on
79     failure is now configurable. (SF bug #1015499)
81   - NEdit can now optionally detect and avoid symlinks (SF bug #1027788).
83   - A minor visual glitch has been fixed (SF bug #1055649).
85   - NEdit asks the user with a dialog if it detects that a document's file
86     is no longer accessible on disk. This dialog is changed to better match
87     expected usage pattern (SF bug #1066144).
89   - Various documentation bugs are fixed (SF bugs #1066765, #1078397, #1110024,
90     #1471868)
92   - Some minor usability bugs have been fixed (SF bugs #1371896, #1508608,
93     #1515134, #1066692).
95   - New highlighting pattern are now used immediately (SF bug #1117848).
97   - Changes in case no longer modifiy the text if no change is actually
98     performed (SF bug #1333103).
100   - Some Linux distros ship with XKEYSYMDB set to a bogus filename which
101     breaks all Motif applications. NEdit ignores that, and let X fall back
102     on the default which is far more likely to work (SF bug #1564907).
104   - Fixed a problem in the macro language on 64-bit systems (SF bug #1625283).
106   - Long macro function names could cause a buffer overflow (SF bug #1640304).
108   - The built-in macro "Make C prototypes" choked on some comments (SF bug
109     #1574071).
111   - Fixed a small bug while inserting special characters (SF bug #682004).
113   - Fixed a translation bug which crashed NEdit on pressing osfInsert in the
114     help window (SF bug #1772468).
116   - Fixed bad exception handling of default macros (SF bug #1731384).
119 New features in 5.5 
121   - The most important new feature is the introduction of window tabs
122     (SF patches #569287 and #893177).
123     
124   - More efficient string search operations for the macro language.
125   
126   - Auto-scrolling is now (partly) configurable through the preference menu.
127         
128   - Find and Clear buttons for i-search bar (SF patch #891884).
129   
130   - Faster user-defined menu creation (SF patch #891126).
131   
132   - Open documents on current desktop (SF patch #963120)
133   
134   - Superuser receives a warning when trying to overwrite a read-only file.
135   
136   - Simplified global font resources.
137   
138   - Macro language: added new $args[] array and removed 9 arguments limit 
139     for macros
140     
141   - Improved Latex & Python syntax highlighting patterns
142   
143 Bugs fixed in 5.5
145   - If underscore (_) is among the word delimiters for a language mode then
146     word boundary regexes will work as expected.  (SF bug #1008656)
148   - Problem with writing history file on VMS (SF bug #933146).
149   
150   - Race condition fix for running NEdit in -sync mode (SF bug #978104).
151   
152   - Removed obsolete special window title treatment on SGI (SF bug #779454).
153   
154   - Forbid the deletion of the "Plain" Text Drawing Style (SF patch #970491).
155   
156   - File descriptor handling fix that allows shell commands to be invoked 
157     asynchronously. 
158     
159   - Crash on Solaris when dragging a calltip (SF bug #925951).
160   
161   - Preference resource name mistakes (SF bug #884862).
162   
163   - Don't delete incremental backup files when incremental backups are off 
164     (SF bug #878183).
166   - Allow zero-length ranges to be added to range sets (SF bug #871209).
168   - Improved shell syntax highlighting patterns (SF bug #770855).
169   
170   - Regular expression crash fix (SF bug #987102).
171   
172 Changes since 5.5RC1
174   - Using exit() in macro no longer causes hang (SF bug #999021).
176   - Updated rangeset documentation (SF bug #1005442).
178   - Minor changes to the regular expression word boundary semantics
179     (SF bug #1008656).
181   - Tabs keep reasonable sizes when things get crowded (SF bug #1005064).
183   - Many unnecessary file status checks are avoided.
185   - Warn On Exit also affects closing of window with multiple tabs
186     (SF bug #1006830)
188   - "File Modified Externally" dialogs are only allowed for top tabs.
190   - Broken virtual key bindings workaround was restored (problems with
191     page-up and page-down).
193   - Preference file number was bumped.
195   - Dialogs' OK button layout fixes.
197   - Fix for SF bug #999820: spaces in dialog button mnemonics.
199   - Fix for SF bug #996786: problems with overtype mode
200   
201 Changes since 5.5RC2
203   - Less confusing menu wording (SF bug #1023089).
205   - Shell command output is now sent to a new window or a new tab,
206     depending on the tabbed editing preference settings.
208   - Detaching/Moving non-top tab should not change top tab (SF bug #1020035).
210   - Opening new window from a tabbed window no longer diminishes size
211     (SF bug #1011233).
213 New Features in 5.4
215   - Calltips (SF patch #495286)
217   - Rangesets (SF patch #529298, #628933)
219   - Backlighting (SF patch #529298)
221   - Highlighting information macros (SF patch #529298)
223   - Full mouse wheel support for XFree86 (SF patch #715941)
225   - Look-behind matching for regular expressions (SF patch #530308)
227   - Regular expression and syntax highlighting speed-ups
229   - Flexible resource file location (SF patch #484674)
230     See the section "Upgrading from 5.3 to 5.4" of the README file for 
231     more information.
233   - Color dialog (SF patch #595330)
235   - Option to auto-hide mouse pointer while typing
237   - Option to keep cursor away from top and bottom of the screen
239   - Check for real changes of externally modified files (SF patch #602426)
241   - Synchronized interaction between nc and nedit (SF patch #403647)
243   - Several smaller improvements on usability and speed
245   - Several smaller improvements to the macro language (SF patch #552760, ...)
247 Bugs Fixed in 5.4
249   - Unconvential word boundary semantics for regular expressions have
250     been corrected (including affected syntax highlighting patterns). 
251     See the section "Upgrading from 5.3 to 5.4" of the README file for 
252     important information.
253     
254   - Config files didn't accept non-Unix file format (SF bug #411092)
256   - Removed regex search bugs (SF bug #429110, #515120)
258   - Smart-indent macros were unaffected by language mode renames (SF bug #439867)
260   - All dialogs have titles now (SF bug #480960)
262   - Giving long filenames at startup caused buffer overflows (SF bug #488412)
264   - Made sure that dialogs don't get wider than screen
265     (SF bug #488593, #489614, #713999)
267   - Workaround for Motif drag icon bug (SF bug #526981: Crash using btn2 on 
268     help window buttons and SF bug #582469: 5.3 crash when selecting stats 
269     line text).
270     
271   - Dragging a rectangular selection could delete characters (SF bug #557225)
273   - Show Matching Range bug (SF bug #559902)
274   
275   - Keyboard-based rectangular selections were forgotten if the selection ever
276     became zero-width.
278   - Workaround for KDE's FONTLIST bug (SF bug #561659)
279   
280   - Paths were still shown in current's window Windows menu after global option
281     was changed (SF bug #564782)
283   - Scrolling to searched or undone/redone section stopped short (SF bug #578551)
285   - Removed flicker in stats line due to bug prevention (SF bug #594838)
287   - Crash while dismissing a resized help window (SF bug #600175)
289   - Macro functions were evaluated in a wrong order (SF bug #602336, #628552)
291   - Syntax highlighting failures in LaTeX (SF bug #607072)
293   - Crash with wrong values for -tabs option (SF bug #608693)
295   - Macro shortcuts were sensitive to Lock and NumLock (SF bug #612558)
297   - Appending the terminating line break was not reflected in the buffer
298     (SF bug #617840)
300   - A new nc(1) hanged after a server was killed or crashed (SF bug #619231)
302   - Adds (short) list of deprecated macro functions (SF bug #619236)
304   - Removed hazardous command shortcut (SF bug #649442)
306   - Workaround for OpenMotif radio button bug (SF bug #678198: bug in 
307     Replace in multiple files).
308     
309   - Typo in SCO makefile (SF bug #689808)
311   - Syntax highlighting routines assumed ASCII encoding (SF bug #700823)
313   - Crash when starting up in a UTF-8 locale (SF bug #703246, 621972)
315   - Crash while manipulating highlighting pattern (SF bug #705495)
317   - Removed flicker in stats line during macro execution (SF bug #713780)
319   - Close pane resize bug (SF bug #715767)
320   
321   - Macro function goto_line_number() only accepted one argument (SF bug #726325)
323   - Newline macro inserting a string caused a crash when triggered
324     through smart indent
326   - Help text foreground was hard-coded to black (SF bug #723096)
328   - System default colors from CDE Style Manager were ignored (SF bug #544053)
329   
330 Changes since 5.4RC1
332   - Panes didn't inherit the right colors (SF bug #780267)
333    
334   - Fixed Rangeset API usability issues and bugs.
336   - Plain KP Enter now inserts a newline, not <CR> (SF bug #779439).
338   - Enabled Motif version checking for xBSD.
340   - SGI: compilation problem (SF bug #780841)
342   - File modification issues (SF bug #782513, SF bug #784442)
344   - Documentation updates.
345    
346   - Color dialog button resize problem.
347    
348   - undoModifiesSelection is no longer saved in .nedit/nedit.rc
350   - Workaround for Lesstif's 'frozen windows' bug.
352   - Fixed calltip parsing problem (SF bug #779681)
354   - Macro language HL pattern updates.
355    
356   - nc -do ... no longer creates unwanted windows (SF bug #785738).
358   - Improved color resource migration.
359   
360   - File accessibility is now determined with access() (SF bug #782518)
362 Changes since 5.4RC2
364   - Nc crash fix on VMS.
365   
366   - Fixes in highlighting information inspection macros.
367   
368   - Nc -lm command line option fix.
370 New Features in 5.3
372   This is mainly a bug fix release. The list of new features is therefore 
373   limited:
375   - The built-in Help system was revamped. Most notably, a hyperlink
376     mechanism was added for following cross-references.
378   - Enhanced Exuberant ctags support (SF #491109).
380   - Line numbers are available in shell commands (SF #434451).
382   - Goto Line also accepts column numbers (SF #403435).
383   
384   - Automatic line-feed termination when saving is now optional (SF #503073).
386   - A customizable window title (SF #477875/#519092).
388   - Optional syntax based parenthesis matching (iso. purely character based)
389     (SF #513976).
392 Bugs Fixed in 5.3
394   - Find Definition incorrectly reads the X selection when not needed 
395     (SF #520941).
397   - Background popup menu could lock up X-server when used with any of 
398     the lock keys on.
400   - Very wide windows when starting NEdit under fvwm (SF #496526).
402   - Workaround for illegal key bindings installed by other Motif applications,
403     causing PageUp/PageDown and arrow keys to stop responding in NEdit
404     (SF #493421/#525903). This is not an NEdit bug, it just looks like one.
405     
406   - Fix for PageUp/PageDown keys not responding (SF #508961).
407   
408   - Crash when running X on 2nd screen (SF #478234, #500353).
410   - Line number display updating in continous wrap mode (SF #516920).
412   - Performance problem with X Resources highlight patterns (SF #481290).
414   - Menu fonts showing up as blocks (SF #434383)
416   - Lockup's in syntax highlighting (especially Perl) (SF #512961).
418   - Crash when using characters with ASCII code >= 128 in syntax
419     highlighting patterns.
421   - Crash when modifying tab distance in continous wrap mode (SF #510631).
423   - Crash when running NEdit in low-depth color modes.
425   - Continous wrap mode + variable width font display bugs.
427   - Potential scroll bar corruption in continuous wrap mode (SF #510765).
429   - Workaround for selection copy/paste problems with recent versions
430     of gnome-terminal.
432   - Jump to tags only referenced by line number.
434   - Composed characters in learned sequence (SF #480966).
436   - Missing titles in some dialogs (SF #480960).
438   - Macro language: continue statement outside loop crash (SF #495293).
440   - Rectangular overstrike past fixes (SF #487945).
442   - Hard-coded statistics line font (SF #487153).
444   - Open filenames starting with a dash (SF #485610).
446   - Crash when closing window of non-existing file while error dialog is up.
448   - Bad CapsLock grab on certain keyboard configurations (SF #482504).
450   - Replacements in rectangular selections could sometimes fail.
451   
452   - Various buffer overflow fixes.
454   - Multiple selection dialog does not pop up on first find (SF #473602).
455   
456   - Tag not found (SF #466742).
457   
458   - Files opened with -read command line option could not be unlocked.
460 New Features in 5.2
462  - Added built-in patterns for CSS, XML, and regular expressions (Regex).
463    Many other pattern updates.
465  - Support for high- and true-color systems.  NEdit now will automatically
466    select the best visual from your X server.  This reduces the chance of
467    running out of colors.
469  - New features in the Find and Replace dialogs:
471    o Replacement across multiple windows in a session.
472    o Case sensitivity may be set independently of regular expressions.
473    o Add "Replace and Find" command, which saves keystrokes when doing
474      a large-scale find & replace.
476  - ClearCase version-extended pathnames.
478  - Many new macro subroutines and variables.
480  - Array support in macros.
482  - Range highlighting of matching delimiters.
484  - Undo and Redo highlights the text that has changed, when visible.
486  - Support for wheel mouse scrolling on servers that support it (XFree86).
488  - Improved accelerator key handling.
490  - Insert Control Code dialog accepts value in any valid C notation
492  - Optional beeping when search operations wrap.
494  - Additional default search styles.
496  - Optional displaying of path names in the window list menu.
499 Bug Fixes in 5.2
501  - Fix a crash when entering an invalid line number in "Goto Line".
503  - Ignore the Caps-Lock key when invoking accelerators.
505  - Fix problems when running NEdit on 64-bit platforms like Alpha
507  - NEdit failed to open files if some directories above were not "readable"
509  - Fix potential crashes if some system calls fail
511  - When no colors are left, attempt to reuse the closest matching color.  This
512    allows NEdit's syntax highlighting to better coexist with Netscape, which
513    unfortuntely takes all available colors.
515  - "Overtype" mode is now bound to the Insert key, to be consistent with
516    Motif text fields.
518  - Accelerators now available in confirmation dialogs, and may be invoked
519    without the Alt key.
521  - Don't even try to open a directory for editing
523  - Fix a couple of memory corruption problems
526 New Features in 5.1
528  - Significant extensions to the regular expression syntax.  See details
529    below.
531  - Incremental search, and optional search bar.
533  - New ctags code with full support for Exuberant Ctags, better
534    handling of tag collisions, multiple tag file support, on-demand
535    loading of tag files, and automatic reload of modified tag files.
537  - Optional display of line numbers along the left side of the text.
539  - NEdit can now read and write MS DOS format files.
541  - New built-in syntax highlighting patterns for Lex, PostScript, SQL,
542    Many syntax highlighting pattern improvements.
544  - Improved international character set input
546  - New macro subroutines: list_dialog, getenv, set_language_mode.
548  - Optional warnings about external modifications to files
550  - Clearcase awareness
552  - Session manager restart capability
554  - Default language mode "*" for user-defined menu items, allows
555    per-language variations on a common base
557  - Allow additional modifiers like Sun diamond key in user defined
558    accelerators
560  - Option to sort open previous menu.
562  - -geometry and -iconic command line arguments act per-window, and
563    can be specified via nc
565  - -geometry now specified in characters, rather than pixels
567  - -lm (language mode) command line option
569  - Save As dialog defaults to same file name
571  - Better default fonts for Linux systems
573  - .nedit file version mechanism to make future upgrades easier
576 Bug Fixes in 5.1
578  - Crash on large amounts of data fed to shell command which does not
579    take input
581  - Delayed secondary windows when executable statements specified in
582    users .neditmacro file
584  - Many corrections to online help
586  - Many highlight patterns corrections
588  - Using window close box in file open/save dialogs leaves nedit server
589    unresponsive
591  - escape in macro dialogs can cause macro hang
593  - Lesstif-specific fixes: attachment warnings in font selector,
594    Work around replace dialog focus bug.
596  - NEdit no longer maintains original protection settings on files.  It
597    allows them to be changed externally.
600 Details of Regular Expression Changes in 5.1
602   Bug Fixes
604     o Fixed bug that caused character classes with a character range not to
605       work properly if one of the range characters was an escaped character.
607   Improvements In Existing Features
609     o Increased maximum number of capturing parentheses from 40 to 50.
611     o Removed optimization that uses `must match' strings (it didn't work and
612       caused more problems than it solved.)
614     o Improved error messages.
616     o Improved Start-Of-Line and End-Of-Line detection by the `^', `$', and the
617       new `\B' (see below) anchors.  The Start-Of-Word and End-Of-Word anchors
618       `<' and `>' where not enhanced due to syntax color highlighting pattern
619       compatibility issues.
621     o Changed code to use "unsigned char" in most cases instead of "signed
622       char". Also, use of ANSI character functions (e.g. isdigit(), isspace())
623       were added wherever possible.  These changes should improve support for
624       locales other than "C", for example character sets with accented
625       characters.
627     o Added character escapes for:
628       -  \e   ASCII escape character (for environments that use the EBCDIC
629               character set, set the EBCDIC_CHARSET compiler symbol to get the
630               EBCDIC equivalent escape character.)
632       -  \-   minus sign
633       -  \{   left brace
634       -  \}   right brace
636     o Removed the `\"' escape since `"' is not a meta character.
638     o In order to support numeric escapes, use of `\0' as a synonym for `&'
639       in replacement strings was removed.  `\0' now signals the start of a
640       numeric (octal) escape sequence (see below.)
642     o Minor tweaks for improved performance.
644   Enhancements
646     o Octal and Hexadecimal Escapes
648       Octal and hexadecimal escapes begin with \0 and \x (or \X) respectively.
649       For example, \052 and \X2A both specify the `*' character.  Escapes for
650       null (\00 or \x0) are not valid and will generate an error message.
652     o Shortcut Escapes for Common Character Classes
654       \d  digits            0-9
655       \l  letters           a-z and A-Z
656       \s  whitespace        \t, \r, \v, \f, and space
657       \w  word characters   a-z, A-Z, 0-9, and underscore, `_'
659       `\D', `\L', `\S', and `\W' are the same as the lowercase versions except
660       that the resulting character class is negated.
662     o Anchors
664       The `\B' non-word boundary anchor has been added as the logical opposite
665       of `<' and `>' collectively.  This anchor ensures that the left and
666       right characters are either both delimiter characters or both
667       non-delimiter characters.
669     o Word Delimiter Escape Sequences
671       \y   Word delimiter character
672       \Y   Not a word delimiter character
674       The `\y' token matches any single character that is one of the characters
675       that NEdit recognizes as a word delimiter character, while the `\Y' token
676       matches any character that is NOT a word delimiter character.  Note:
677       these are not anchors and DO consume one character of input.
680     o Quantifiers
682       +  Minimal (lazy) Matching Quantifiers
684          *?   Match zero or more
685          +?   Match one at least one
686          ??   Match zero or one
688          These quantifiers match only what is absolutely necessary to achieve
689          a match.
691       +  Counting (or Brace) Quantifier
693          {min,max}  Match from `min' to `max' times the previous regular
694                     expression atom.
696          If `min' is omitted, it is assumed to be zero.  If `max' is omitted,
697          it is assumed to be infinity.  Whether specified or assumed, `min'
698          must be less than or equal to `max'.  If both are omitted, then the
699          construct is the same as `*'.   Note that `{,}' and `{}' are both
700          valid brace constructs.  A single number appearing without a comma,
701          e.g. `{3}' is short for the `{min,min}' construct, or to match
702          exactly `min' number of times.
704     o Non-Capturing Parentheses
706       Non-Capturing Parentheses are of the form `(?:<regex>)' and facilitate
707       grouping only and do not incur the overhead of normal capturing
708       parentheses.
710     o Positive Look-Ahead
712       Positive look-ahead constructs are of the form `(?=<regex>)' and
713       implement a zero width assertion of the enclosed regular expression. In
714       other words, a match of the regular expression contained in the positive
715       look-ahead construct is attempted.  If it succeeds, control is passed to
716       the next regular expression atom, but the text that was consumed by the
717       positive look-ahead is first unmatched (backtracked) to the place in the
718       text where the positive look-ahead was first encountered.
720     o Negative Look-Ahead
722       Negative look-ahead takes the form `(?!<regex>)' and is exactly the same
723       as positive look-ahead except that the enclosed regular expression must
724       NOT match.
726     o Case Sensitivity
728       (?i<regex>)   Case insensitive; `AbcD' and `aBCd' are equivalent.
729       (?I<regex>)   Case sensitive;   `AbcD' and `aBCd' are different.
731       Regular expressions are case sensitive by default, i.e `(?I<regex>)' is
732       assumed.  All regular expression meta characters respond appropriately to
733       case insensitivity including character classes and back-references.
735     o Matching Newlines
737       (?n<regex>)   `.', `[^...]', `\s', `\S' will match newlines
738       (?N<regex>)   `.', `[^...]', `\s', `\S' do not match newlines
740       `(?N<regex>)' is the default behavior.
742     o Comments
744       Comments are of the form `(?#<comment text>)' and can be inserted
745       anywhere and have no effect on the execution of the regular expression.
747     o Notes on New Parenthetical Constructs
749       Except for plain parentheses, none of the parenthetical constructs
750       capture text.  If that is desired, the construct must be wrapped with
751       capturing parentheses, e.g. `((?i<regex))'.
753       All parenthetical constructs can be nested as deeply as desired, except
754       for capturing parentheses which have a limit of 50 sets of parentheses,
755       regardless of nesting level.
758 New Features in 5.0.2:
760  - Word-selection (double click) can be used to select ranges of delimiters
762  - New built-in macro variables: $line, $column, and $modified
764  - Smart-indent mode available for Python language
766  - Minor improvements in default pattern sets for NEdit Macros, X Resources,
767    and Sh/Ksh/Bash
770 Bug Fixes in 5.0.2:
772  - -import did not work as advertised in 5.0.1.  When used, it re-set a
773    number of preferences back to default values.  Could also potentially
774    cause a crash.
776  - Macro -> Repeat crashes on some systems.
778  - Mouse state can get "stuck" on Alpha-based systems.
780  - Combination of auto-wrap, auto-indent, and unbreakable lines extending the
781    width of the window, caused nedit to unnecessarily insert blank lines.
783  - Incorrect case-insensitive comparison in character sets > 128 bits.
785  - in by-word drag-selection (double click then drag) when begun in the middle
786    of a whitespace selection, anchor would revert to original cursor position
787    rather than maintaining the entire whitespace block.
789  - Language mode names containing spaces could not be used in language
790    sensitive user-defined menu items.
792  - New windows did not always see existing learn/replay sequence, recorded
793    before the window was created.
795  - Possible crash in search_string and search_window macros, when used with
796    long search strings.
798  - Possible crash in get_selection("any") macro.
800  - Under Solaris, crashes on window opening, file dialog, and language mode
801    selection, when user-defined sub-menus were used.
803  - Filenames containing spaces could cause the .neditdb file to become
804    unreadable.
806  - Escape key could not be used to cancel file-selection dialogs when the
807    file list had keyboard focus (which it almost always does).
810 New Features in 5.0.1:
812  - Repeat-over-range, and repeat-to-end capability for repeating last
813    command and learn/replay sequence.
815  - Import capability for loading macro/shell menu commands, highlight
816    patterns, and style sets created by other users.
818  - New macro language routines: string_to_clipboard, clipboard_to_string,
819    toupper, tolower, variables: $em_tab_dist.
821  - Additional default highlight patterns for sh and X resources.
823  - Sorted Open Previous menu.
825  - Numerous improvements to default highlighting patterns and smart indent
826    macros.
829 Bug Fixes in 5.0.1:
831  - Various crashes on Motif 2.0 (Linux and FreeBSD) systems, usually
832    associated with opening files and changing language modes.  Usually,
833    but not necessarily, following changes to user-defined menu items.
835  - Background menu activation during drag operation could leave drag
836    unfinished, cause undo to malfunction, and eventually lead to a crash (which
837    was easy to trigger accidentally when the middle button is emulated with
838    mouse-chords on a two button mouse).
840  - X11R6 clients talking to X11R5 servers could crash on font dialog.
842  - Rapid repetition of long macros (such as binding to key and using keyboard
843    repeat) could cause crash.
845  - Several commands which put up dialogs were vulnerable to timing windows
846    where repeating the command could cause a crash.
848  - Calling macro close() routine could cause crash if used to close the window
849    in which the macro was executing.
851  - Using load_macro_file() as an "include" statement in macro files could
852    cause hang.
854  - Artifacts when using non-matching highlight fonts, and making certain types
855    of changes which change the fonts used to display other (not the line being
856    modified) lines in the file.
858  - Auto-newline wrap in overtype mode could duplicate part of wrapped text.
860  - Lower panes in split window mode allowed modification to read-only windows.
862  - Several minor dialog and window focus related problems for explicit (click
863    to focus) users.
865  - Paste Column ignored existing selection.
867  - After copying and re-naming language mode information, highlight patterns
868    and smart indent macros remained attached to the re-named pattern instead of
869    the original.
871  - Trailing newlines should not have been prohibited in Open Selected.
873  - Help for creating smart indent macros was missing.
876 New Features in 5.0
878  - Completed macro extension language (Simple C/awk-like syntax, safe,
879    fully interruptable)
881  - Syntax highlighting.  Built-in patterns for C, C++, Java, Fortran, Pascal,
882    Ada, Perl, Python, Tcl, Awk, Csh, HTML, LaTeX, VHDL, Verilog, and more.
884  - Programmable Smart indent.  (Experimentally, at least.  There are only
885    macros for C and C++, and they may not fit everyone's programming style.)
887  - Language-sensitive preferences
889  - Continuous wrap mode (long line wrapping), in addition to existing
890    automatic-newline wrapping
892  - User-defined menus can be hierarchical and language-sensitive.
894  - Configurable right-button pop up menu
896  - Pan-scrolling
898  - Searchable on-line help
900  - Word boundary matching (<>) in regular expressions
902  - Repeat command
904  - More dialogs have up-arrow recall
906  - White-space selection via double-click
909 Bug Fixes and Enhancements to Existing Features in 5.0
911  - No more limits on editing files containing ascii nul characters
913  - Fill Paragraph command handles leading indents
915  - Select to mark
917  - Better directory defaulting in Open Selected and shell commands
919  - Open Selected processes tilde (~) and wildcards
921  - Goto Mark centers scroll position better
923  - Multiple shell commands can be run simultaneously
925  - Shell command execution doesn't block server command processing
927  - Emulated-tab deletion treats auto-indent as emulated tabs
929  - Auto-wrapping of pasted text is optional (off by default)
931  - Notice that default preferences have changed and ask about saving
932    on exit
934  - Selections remain selected after shell command and filter execution
936  - Wrap margin and emulated tab distance preferences are properly
937    transferred to new panes in split window mode