(This file, NEWS, lists new features and enhancements. See CHANGES for fixes.)

3.3.4 2025-02-06

  * Bracketed paste now consults the AutoIndent flag to determine whether to
    preserve the cursor's initial horizontal offset. It's like a block
    level AutoIndent rather than a line-by-line (and therefore
    cumulative) AutoIndent. Being created internally by the Shift command,
    the introduced leading space also honors the Tabs and ShiftTabs flags.
    Like leading space introduced by AutoIndent, a single Undo removes the
    bracketed paste's auto indented space; a second Undo removes the pasted
    text itself.
    Bracketed pastes now act like "normal" pastes, setting the '<' and
    '>' bookmarks, and leaving the cursor at the head of the paste.

3.3.3 2023-10-19

  * BracketedPaste support has been added; turns off AutoIndent when
    pasting text from the system clipboard.

3.3.2 2022-09-13

  * Paste and PasteVert now set two bookmarks designated '<' and '>' which
    are set to the start and end of the most recently pasted text. Accessed
    by the "GotoBookmark <" and "GotoBookmark >" commands. Two associated
    menu items have been added to the "Search" menu.

  * Added toml.jsf syntax.

  * Support '_' in numeric constants, binary and hex constants, imaginary
    numbers in go.jsf syntax.

  * Now there is an uninstall target that uninstalls ne.

  * Additionally load key bindings from ~/.ne/.keys-${TERM}

3.3.1 2021-05-16

  * The makefile has been made more distro friendly by making it possible
    to override all compiler and linker options.

  * A workaround has been implemented to make --ansi (mostly) work when
    compiling with ncurses. A change to ncurses in 2012 made tgoto() not
    working unless tgetent()/setupterm() are called first.

3.3.0 2020-02-27

  * You can now Save (^A) named documents from within the
    SelectDoc (F4) requester.

  * The mark, if set, is visible.

  * Warning about opening a document with the same name as an existing
    document now considers the fully qualified canonical path and name
    of each rather than just their basenames.

  * Status bar Modified flag (*) may also be underlined, indicating the
    corresponding file's modification time has changed since the document
    was loaded or saved.

3.2.0 2019-09-30

  * Macros: They now work across multiple documents. You can cancel macro
    recording, and append new recorded commands to your current macro.

  * New documents inherit their predecessor's current macro, search, and
    replace strings.

  * Saving of read-only documents requires confirmation.

  * Word completion now does not consider the word the cursor is currently
    in, which helps in disambiguating.

  * The option -h is now an alias for --help. Thanks to Lonnie Abelbeck for
    implementing this feature.

  * Add asterisk.jsf syntax.

  * FIND in string inputs brings up a requester with your input history.
    Use Enter to replace, TAB to insert into your input line; Escape to exit.

  * Enhanced commands: MoveEOW, NextWord, and PrevWord can now move to either
    end of the indicated word via optional '<' and '>' parameter modifiers.

  * Requesters make better use of white space.

3.1.2 2018-10-06

  * RepeatLast now accepts "Find" or "Replace" after its optional number so
    you can explicitly repeat either operation even if the other was most
    recently performed.

  * We now use the xenl property to detect whether we can write on the last
    column of the last line, thus making the status bar complete.

3.1.1 2017-06-04

  * You can now CloseDoc (^Q) unmodified documents from within the
    SelectDoc (F4) requester.

3.1.0 2017-04-29

  * Large files that do not fit into memory are memory-mapped transparently
    if enough disk space is available.

  * Determine a "virtual extension" based on document contents and patterns
    from ~/.ne/.extensions. Allows overrides of specified extensions only.
    If no match, use .default#ap prefs.

  * Status flag "!" indicates the last line of document is not empty, thus
    the last line of the resulting saved file will not be terminated.

  * Requesters by default no longer remove non-matching entries as you
    enter characters. Use Insert or Delete keys within a requester
    to toggle between these behaviors.

  * Documents loaded through file requesters now have relative instead of
    absolute paths.

  * New NameConvert command (NC for short) changes current document's file
    name from relative to absolute path or absolute to relative path.

  * "SetBookmark ?" and "GotoBookmark ?" now prompt for the bookmark you
    want to set/goto. The prompt also indicates which bookmarks are set.

  * Command line option "--read-only" opens next document in read-only mode.

  * Options "--read-only" and "+N,M" can be applied to piped input:
      ls -l | ne --read-only +3,5 -

  * Warn if SaveAs would overwrite an existing file.

  * Suspend (Crtl-Z) works in prompts, requesters.

  * "KeyCode" now takes optional parameter.

  * Immediately/only after "Not Found", RepeatLast wraps around to the
    other end of the document.

3.0  2015-06-18

  * ne is now fully 64-bit, and needs to be compiled by a C99-compliant
    compiler. Files can be of any size, provided that enough core memory
    is available.

  * ne is able to read from named pipes. You can even pipe content into
    ne: it will be opened as the first document.

  * It is now possible to interrupt searches (it used to be possible just
    to interrupt global replace actions).

  * Word wrap has been reverted to pre-2.5: it preserves just whitespace,
    and it doesn't reparagraph at each line split or join. Paragraph keeps
    the usual smart features preserving comments, etc.

2.6  2015-04-17

  * Requesters (filenames, help, autocompletions, etc.) do progressive
    "fuzzy match" by typed characters, backspace.

  * Document requester (F4) opens with cursor on the current document.
    Docs with unsaved changes are bold, flagged with "*". F2/F3 reorder
    documents.

  * Tab in Syntax command displays requester of extant syntax recognizers.

  * You can now use AutoComplete in command line prompts.

  * New SaveAll command saves all modified documents.

  * Warns before saving over a file that was modified since the buffer was
    last loaded or saved.

  * `' joins (), {}, [], and <> as character pairs known to MatchBracket.

  * New example macros: aspell, DeleteSOL.

  * Add % to special leading characters for re-wrapping Paragraphs.

  * WordWrap no longer waits for the cursor to hit the right margin; it wraps
    on insertions and deletions now.

  * Updates to ruby, erb, python, conf, many other syntax recognizers.
    Added these recognizers from the Joe project: ant batch
    classic_pascal comment_todo csharp debian differences elixir erlang
    git-commit go haml htmlerb ini iptables js json md powershell pp
    prolog properties sieve typescript whitespace yaml

2.5  2012-12-24

  * New DelTabs flag, function separated from Tabs flag.

  * Reformatting with the Paragraph command is now aware of common
    leading characters used in comments: > # / * and spaces.

  * WordWrap preserves leading characters identically to Paragraph.

2.4  2012-04-10

  * New Shift command indents/outdents selected lines.

  * Recorded macros preserve comments; indicate other included macros.

  * New AtomicUndo command groups changes to be undone/redone as a group
    instead of individually.

  * For commands that have key bindings, Help displays them.

  * New syntax highlighting for texinfo files.
  
2.3  2011-10-28

  * Takes 'SEQ "sequence" KEYCODE' in ~/.ne/.keys to bind character
    sequences to key codes.

2.2  2011-01-23

  * Now ne is distributed under the GPLv3.

  * Added AutoMatchBracket mode to indicate visible matching of
    {}, (), [], <> pairs. Mode is 1 (brightness) by default.

  * Bookmarks now remember/restore their vertical offsets in the window.

  * Bookmark commands take -1/+1 to cycle through your bookmarks;
    Use "UnsetBookmark *" to unset all bookmarks.

  * New --binary command line option loads next listed file in binary mode.
    May appear multiple times on the command line.

  * +[N[,M]] command line option moves to N-th line, M-th column of next file loaded.
    May appear multiple times on the command line.

  * Mention http://groups.google.com/group/niceeditor in splash screen.

  * About now displays splash screen in addition to its status bar message.

  * In FastGUI mode, when highlighting menu items the cursor is now
    positioned on the border of the menu rather than on the first letter
    of menu items.

  * New "tabs" syntax definition makes tabs visibly distinct from spaces.

  * Recognize C99 integer types from <stdint.h> and highlight accordingly.

2.1  2010-03-17

  * New commands: KeyCode, DeleteNextWord, DeletePrevWord, AutoComplete,
    InsertTab, Tabs, RequestOrder.

  * Now we set the syntax when a file is saved with a (different) name.

  * Now we correctly highlight control characters in the command line.

  * Display request lists by columns ("RequestOrder 1") or rows ("RequestOrder 0").

  * Allow window resizing during requests (file selection, help, AutoComplete).

  * Sort filenames in dictionary order ("aa", "Ab", "ac", ...).

  * Enter in Help places you on the right command in the command list.

  * Only prompt once about identical filenames on startup.

  * Consider "_" as a word character for word-oriented commands.

  * Built-in filename extension to syntax mapping updates:
    dtx -> tex, latex -> tex,  sage -> python.

  * Include new txt2tags syntax file from http://txt2tags.sourceforge.net/

  * Replace reports the number of replacements (again).

  * Display the global directory on startup even if it is not found.
  
  * Default global directory changed from /usr/local/lib/ne to /usr/local/share/ne.
	
  * Aborting an OpenNew doesn't leave you in a new blank document.

  * AdjustView now takes optional number of lines or columns to
    adjust by; swapped meaning of AdjustView 'C' and 'M' parameters.

  * Read .keys and possibly .menus files from NE_GLOBAL_DIR on startup.

  * More defensive reading of lines/columns from terminfo to avoid crashes
    with XTerm on Mac OS X.

  * More portable and robust window-size change detection.

  * More parsimonious status-bar updates.

  * StatusBar, FastGUI, VerboseMacros, and RequestOrder are not buffer specific, are
    only saved in ~/.ne/.default#ap.

  * Current syntax name is buffer specific; only saved in autoprefs, not ~/.ne/.default#ap.

  * The Amiga is officially no longer supported (well, not exactly an
    improvement...).
