Blame IMPROVEMENTS

Packit 1ac44c
Improvements in GNU nano
Packit 1ac44c
========================
Packit 1ac44c
Packit 1ac44c
Since 2.9.0:
Packit 1ac44c
  - The ability to filter text through an external command.
Packit 1ac44c
  - Better detection of paragraphs, allowing a less indented beginning.
Packit 1ac44c
  - Option 'set afterends' for making Ctrl+Right stop at word ends.
Packit 1ac44c
  - A crash handler that saves changed buffers in case of a crash.
Packit 1ac44c
  - Addition of the color name "normal", meaning the default color.
Packit 1ac44c
  - A key can be bound to a string -- any mix of text and commands.
Packit 1ac44c
  - Error messages are shown by default in bright white on red.
Packit 1ac44c
  - <Tab> and <Shift+Tab> can be used to indent/unindent a marked region.
Packit 1ac44c
  - Can snip trailing whitespace while typing, with 'set trimblanks'.
Packit 1ac44c
  - The ability to record and replay a series of keystrokes (a macro).
Packit 1ac44c
  - Assigned functions to ^S (save file) and ^Q (start backward search).
Packit 1ac44c
  - Indenting and unindenting have been integrated into the undo system.
Packit 1ac44c
  - Support for $XDG_CONFIG_HOME for the nanorc file, and $XDG_DATA_HOME
Packit 1ac44c
    for the history files (of search strings and cursor positions).
Packit 1ac44c
Packit 1ac44c
Since 2.8.0:
Packit 1ac44c
  - Meta-Up/Meta-Down will search the previous/next occurrence.
Packit 1ac44c
  - ^U pastes the first line of the cutbuffer at a prompt.
Packit 1ac44c
  - Softwrapping can be done at whitespace (with --soft --atblanks).
Packit 1ac44c
  - The ^G help texts have become searchable (with ^W and M-W).
Packit 1ac44c
  - Ctrl+Home and Ctrl+End jump to start and end of file.
Packit 1ac44c
  - In softwrap mode the cursor now moves per visual row instead of
Packit 1ac44c
    per logical line, and the screen will scroll per row.
Packit 1ac44c
Packit 1ac44c
Since 2.7.0:
Packit 1ac44c
  - The keystroke ^] to complete a fragment to an existing full word.
Packit 1ac44c
  - The ability to display line numbers in front of the text (M-#).
Packit 1ac44c
Packit 1ac44c
Since 2.6.0:
Packit 1ac44c
  - Shift plus the cursor keys can be used for selecting text.
Packit 1ac44c
  - Ctrl+Arrow should now work also on a Linux virtual console.
Packit 1ac44c
  - Ctrl+Up and Ctrl+Down jump to previous or next block of text.
Packit 1ac44c
  - Feedback during Unicode Input (M-V followed by six digits).
Packit 1ac44c
  - The option 'wordchars' for specifying extra word characters.
Packit 1ac44c
  - Hi-bit control characters are shown in a more readable manner.
Packit 1ac44c
  - The ability to use negative numbers at the Go To Line prompt.
Packit 1ac44c
  - The ability to comment/uncomment lines with a single keystroke (M-3).
Packit 1ac44c
  - The ability to refresh the file list in the browser (^L).
Packit 1ac44c
  - The ability to abort re-searches (^C after an M-W).
Packit 1ac44c
  - Better feedback at startup when opening large or multiple files.
Packit 1ac44c
Packit 1ac44c
Since 2.5.0:
Packit 1ac44c
  - The option 'justifytrim' for snipping whitespace from justified lines.
Packit 1ac44c
  - The ability to discard a buffer (^O ^Q) when --tempfile is used.
Packit 1ac44c
  - On most terminals Ctrl+Left / Ctrl+Right now work for PrevWord/NextWord.
Packit 1ac44c
  - When in the middle of a word, PrevWord now jumps to the start of this
Packit 1ac44c
    word (like Pico does) instead of to the start of the preceding word.
Packit 1ac44c
Packit 1ac44c
Since 2.4.0:
Packit 1ac44c
  - Replacing things in a marked region now takes place in situ, in context,
Packit 1ac44c
    instead of changing the view to only the marked text.
Packit 1ac44c
  - Invalid byte sequences are properly displayed and not mistakenly found.
Packit 1ac44c
  - Resizing the window does not exit from help viewer nor file browser.
Packit 1ac44c
Packit 1ac44c
Since 2.3.0:
Packit 1ac44c
  - System syntaxes can be improved upon with the 'extendsyntax' command.
Packit 1ac44c
  - The ability to delete whole words with 'cutwordleft' and 'cutwordright'.
Packit 1ac44c
  - The ability to save a file without prompting for its name ('savefile').
Packit 1ac44c
  - The ability to search backward without having to toggle the direction.
Packit 1ac44c
  - Whitespace display (M-P) does not require configuration to be useful.
Packit 1ac44c
  - Undo/redo is enabled by default (M-U/M-E) and works nearly everywhere
Packit 1ac44c
    -- just not yet for justifying and indenting/unindenting.
Packit 1ac44c
  - The ability to color the title bar, the status bar and the help lines.
Packit 1ac44c
  - The ability to run a linter or formatter (^T) on the current buffer.
Packit 1ac44c
  - The ability to only write to named pipes with --noread.
Packit 1ac44c
  - Determination of the applicable syntax through libmagic -- when the
Packit 1ac44c
    file extension nor the first line give an answer.
Packit 1ac44c
  - The option 'positionlog' for saving/restoring the cursor position.
Packit 1ac44c
  - The ability to read and write vim-style lock files.
Packit 1ac44c
Packit 1ac44c
Visible changes since 2.0
Packit 1ac44c
-------------------------
Packit 1ac44c
* Editor Features
Packit 1ac44c
  - The ability to rebind (reassign) keys using the nanorc.
Packit 1ac44c
  - The ability to read standard input like a pager ("nano -").
Packit 1ac44c
  - Color syntax highlighting can be set by the first line of a file.
Packit 1ac44c
  - The ability to silence nanorc error messages (-q).
Packit 1ac44c
  - Undo/redo operations (-u).
Packit 1ac44c
  - Soft wrapping of text (-$).
Packit 1ac44c
Packit 1ac44c
* File Handling
Packit 1ac44c
  - Better handling of backup files: if nano can't write a backup file,
Packit 1ac44c
    it won't try to write the original file afterward.
Packit 1ac44c
  - Emergency savefiles retain ownerships and permissions when possible.
Packit 1ac44c
  - Performance improvements in color syntax highlighting.
Packit 1ac44c
Packit 1ac44c
Visible changes since 1.2
Packit 1ac44c
-------------------------
Packit 1ac44c
* Editor Features
Packit 1ac44c
  - Support for UTF-8.
Packit 1ac44c
  - Moving to a specified line and column of a file, instead of just a
Packit 1ac44c
    line (+LINE,COLUMN).
Packit 1ac44c
  - Smart home key (-A).
Packit 1ac44c
  - Creation of unique backup files in a specified directory (-C <dir>).
Packit 1ac44c
  - Insertion of spaces instead of a tab when Tab is pressed (-E).
Packit 1ac44c
  - The long option for -K is now --rebindkeypad.
Packit 1ac44c
  - Regular expression searching can now be toggled when nano is built
Packit 1ac44c
    with --enable-tiny, so -R now means something else (see below).
Packit 1ac44c
  - Restricted mode that provides more security than -o (-R).
Packit 1ac44c
  - Blanking of the statusbar after 1 keystroke instead of 25 (-U).
Packit 1ac44c
  - Word searches can optionally skip over punctuation (-W).
Packit 1ac44c
  - Workaround for Delete's acting like Backspace (-d).
Packit 1ac44c
  - Many more options are supported in the nanorc.
Packit 1ac44c
  - Improvements to color syntax highlighting support: case insensitive
Packit 1ac44c
    matching, the ability to include color syntaxes in separate files,
Packit 1ac44c
    the ability to specify background colors without foreground colors,
Packit 1ac44c
    etc.
Packit 1ac44c
  - Insertion of single-byte characters via Esc Esc <000-255>.
Packit 1ac44c
  - Insertion of all characters via "Verbatim Input" mode.
Packit 1ac44c
  - Workaround for the "NumLock glitch".
Packit 1ac44c
  - Meta-W now repeats the last search.  Wrapping is now toggled via
Packit 1ac44c
    Meta-L.
Packit 1ac44c
  - Replacing and spell checking only selected text.
Packit 1ac44c
  - Indenting lines with one keystroke.
Packit 1ac44c
  - Copying text into the cutbuffer without cutting it.
Packit 1ac44c
  - Scrolling the text up and down single lines without moving the
Packit 1ac44c
    cursor.
Packit 1ac44c
  - PageUp and PageDown work more smoothly when using -S.
Packit 1ac44c
  - Scrolling the help text up and down single lines.
Packit 1ac44c
  - Cutting all text from the current position to the end of the file
Packit 1ac44c
    with one keystroke.
Packit 1ac44c
  - Justifying the entire file with one keystroke.
Packit 1ac44c
  - Justifying without removing spaces from the ends of lines.
Packit 1ac44c
  - Unjustifying after justifying and immediately resizing.
Packit 1ac44c
  - Going to the first or last line of the current paragraph.
Packit 1ac44c
  - Going to the first or last line of the file without having to go to
Packit 1ac44c
    the "Search" prompt.
Packit 1ac44c
  - Searching for filenames in the file browser.
Packit 1ac44c
  - Displaying spaces and tabs differently to make it easier to tell
Packit 1ac44c
    them apart.
Packit 1ac44c
  - Many more functions available at the statusbar prompt: moving to the
Packit 1ac44c
    next or previous word, searching for matching brackets, "Verbatim
Packit 1ac44c
    Input" mode, etc.
Packit 1ac44c
  - The glibc 2.2.3 crashes involving extended regular expressions are
Packit 1ac44c
    no longer worked around, as they can break anything using extended
Packit 1ac44c
    regular expressions, and glibc 2.2.3 is old.  You should upgrade to
Packit 1ac44c
    at least glibc 2.2.4.
Packit 1ac44c
Packit 1ac44c
* File Handling
Packit 1ac44c
  - Automatic adding of newlines to the ends of files without them can
Packit 1ac44c
    now be disabled (-L).
Packit 1ac44c
  - Converting from and to DOS/Mac file format is now toggled only at
Packit 1ac44c
    the "Write File" prompt, via Meta-D and Meta-M, and the default file
Packit 1ac44c
    format to save in is now set depending on what format the file was
Packit 1ac44c
    originally in.  -D now makes nano use bold text instead of reverse
Packit 1ac44c
    video text, and Meta-D at the edit window now does a
Packit 1ac44c
    word/line/character count.  -O now makes the unused second line of
Packit 1ac44c
    the screen part of the edit window, and Meta-O at the edit window
Packit 1ac44c
    now toggles this behavior.
Packit 1ac44c
  - Converting files that contain a mix of DOS and Mac format lines.
Packit 1ac44c
  - Automatic switching on of -N with binary files has been removed, as
Packit 1ac44c
    it causes problems with UTF-8 support.
Packit 1ac44c
Packit 1ac44c
Visible changes since 1.0
Packit 1ac44c
-------------------------
Packit 1ac44c
* Editor Features
Packit 1ac44c
  - Complete Pico compatibility (--pico has been removed, and -p means
Packit 1ac44c
    something else, see below).
Packit 1ac44c
  - nanorc support (see nanorc.sample included in sources).
Packit 1ac44c
  - Smooth scrolling (-S).
Packit 1ac44c
  - Support for searching for matching braces, brackets, etc.
Packit 1ac44c
  - Help for all editor features.
Packit 1ac44c
  - Color syntax highlighting support.
Packit 1ac44c
  - Quote string support, useful for mail agents, etc. (-Q).
Packit 1ac44c
  - Insertion of output of external commands.
Packit 1ac44c
  - Optional enabling of XON and XOFF control characters (-p).
Packit 1ac44c
  - Tons of bugfixes/enhancements for already existing features.
Packit 1ac44c
Packit 1ac44c
* File Handling
Packit 1ac44c
  - Overwriting and appending or prepending to files.
Packit 1ac44c
  - Writing marked text to separate files.
Packit 1ac44c
  - Multiple file buffers (-F).
Packit 1ac44c
  - Converting from and to DOS/Mac file format (-D/-M, -N to disable).
Packit 1ac44c
  - Better control character handling.
Packit 1ac44c
  - Creation of backup files (-B).
Packit 1ac44c
  - Search/replace history (-H).
Packit 1ac44c
Packit 1ac44c
See the nano manual for detailed information on each feature.