Changes between v4.7 and v4.8:
------------------------------

Benno Schulenberg (166):
      bindings: allow to bind shifted Meta+letter combinations with Sh-M-X
      bindings: allow to rebind also ^`, although it is synonymous with ^Space
      bindings: do not show the Full-Justify keystroke when in View mode
      bindings: force the first letter in a key name to uppercase
      build: exclude bracketed pasting from the tiny version
      build: exclude option '-g' when configured without browser and help
      build: exclude the escape sequences for F13...F16 from the tiny version
      build: fix compilation for --enable-{tiny,help,multibuffer}
      build: restrict the use of --with-slang to together with --enable-tiny
      bump version numbers and add a news item for the 4.8 release
      copyright: update the years for significantly changed files
      copyright: update the years for the FSF
      display: adjust line and column count upon a resize also when using Slang
      display: clear the help lines before a briefly shown warning
      display: don't let a message write over the second help line
      display: ensure the guiding stripe can be shown when not softwrapping
      display: exclude a bit of feedback from the tiny version
      display: show the cursor during suspension also when built with Slang
      display: skip zero-width characters on a Linux console, to avoid a mess
      docs: add a FAQ item about a self-compiled nano not reading /etc/nanorc
      docs: document the new -f/--rcfile option
      docs: document the new Sh-M-X format for binding <Shift+Meta+letter>
      docs: for the alternative bindings, rebind ^C only in the main menu
      docs: improve the description of which rc-files are read during startup
      docs: mention in the FAQ that auto-indentation is suppressed when pasting
      docs: mention that -D/--boldtext gets overridden by some nanorc options
      docs: put the three new behaviors in a bulletted list, to catch the eye
      docs: stop saying that 'set fill' enables hard-wrapping -- it does not
      docs: use more generally available arrows in the cheatsheet
      feedback: ask a clearer question when a valid lock file is encountered
      feedback: report Ctrl+Alt keystrokes as unbindable
      feedback: restore a message that can occur in help viewer or file browser
      files: alert the user afterward when an overwritten file is being edited
      files: revert the previous commit, as the extra warning is annoying
      files: warn doubly when the user is about to overwrite an existing file
      files: write a lock file also for a new file and when the name changed
      gnulib: update to its current upstream state
      help: don't waste the last column in the help viewer on narrow terminals
      help: increase the minimum help-text width from 24 to 32 columns
      help: prevent double spaces from protruding across the right edge
      help: when a key description wraps, indent its wrapped part
      input: consume and ignore the raw escape sequences for F17 to F24
      input: correct the escape sequence for PageUp/PageDown on Eterm/Urxvt
      input: Ctrl+arrow is "Esc O x" on Eterm, as on rxvt -- not "Esc o x"
      input: discard partial sequences that Slang produces for F17 to F24
      input: do not auto-indent when something is pasted into nano from outside
      input: don't discard the first keystroke after a resize when using Slang
      input: filter out Ctrl+Meta keystrokes, as they can never be shortcuts
      input: ignore bracketed pastes in help viewer and file browser
      input: ignore modifiers on a VT while executing a macro or a string bind
      input: prevent unintentional marking of text for shifted Meta keystrokes
      input: read in an external paste in one go, to allow undoing with one M-U
      input: recognize the raw escape sequences for F13 to F16 on xterm too
      locking: accept a minimal amount of data, enough for PID plus username
      locking: avoid crashing when there is a problem writing the lock file
      locking: check two magic bytes, to verify that it is a lock file
      locking: do not write a lock file when in view mode
      locking: when a lock file is unreadable, open the file itself anyway
      locking: when finding a lock file at startup, quit when user cancels
      new feature: allow specifying a custom nanorc file on the command line
      pasting: retain the mark's position when it was set at the cursor
      prompt: for a Yes-No-All, accept the first character of an external paste
      rcfile: do set the meta flag for plain <Meta+ASCII> combinations
      rcfile: require "bright", "start=", and "end=" to be in lowercase too
      rcfile: unbind keys by their key code instead of by their key string
      softwrap: suppress the guiding stripe on unaffected chunks
      speller: avoid messing up the screen when an unknown locale is used
      suspension: put in an extra terminal-initialization call for Slang
      syntax: nanohelp, nanorc: colorize the Sh-M-X format as a valid key name
      syntax: nanorc: colorize all-lowercase Meta key binds as valid too
      tweaks: add a little change that was overlooked in the previous commit
      tweaks: add an error message for something that should never occur
      tweaks: adjust or reword a few items in the FAQ
      tweaks: adjust the indentation after the previous change
      tweaks: allocate the lock data only when ready to write them
      tweaks: avoid analyzing the key string when the target key code is known
      tweaks: avoid determining the key code from the key string twice
      tweaks: avoid fiddling with the keybuffer when it's not needed
      tweaks: comment fully, so that all handled escape sequences are findable
      tweaks: condense a fragment of code
      tweaks: condense five more fragments of repetitious code
      tweaks: condense three comments to one, and do the masking more directly
      tweaks: condense three fragments of repetitious code
      tweaks: condense two comments, and reshuffle an #endif
      tweaks: correct a comment
      tweaks: correct a couple of comments about escape sequences
      tweaks: correct the description of what nano writes into the lock file
      tweaks: delete some fragments of code that have become irrelevant
      tweaks: do not leak a file descriptor when fdopen() fails
      tweaks: don't bother including Haiku escape sequences in the tiny version
      tweaks: don't enable bracketed pasting when not handling such pastes
      tweaks: drop a message that will never be seen
      tweaks: drop an unneeded call of keypad() -- we never read from topwin
      tweaks: drop a pointless suffix from two function names
      tweaks: elide a function that has become too small for its two calls
      tweaks: elide a helper function, in preparation for an improvement
      tweaks: elide an 'if', by moving the relevant code to a better place
      tweaks: elide a small function, as it's in fact needed just once
      tweaks: elide a somewhat costly call by remembering some state
      tweaks: elide a variable, and rename its sister
      tweaks: elide three checks of a shortcut's meta flag
      tweaks: ensure that editor name and user name are NUL terminated
      tweaks: exclude an unneeded fragment of code from the tiny version
      tweaks: exclude two unneeded fragments of code from the tiny version
      tweaks: free two strings as soon as they are no longer needed
      tweaks: frob a couple of indentations and white lines
      tweaks: fuse two nearly identical functions into a single one
      tweaks: gather four calls that are always done together into a function
      tweaks: harmonize the amount of lock data that we read and write
      tweaks: improve a comment by indirectly referring to the ncurses docs
      tweaks: in comments, reword "titlebar" and "statusbar" to two words each
      tweaks: initialize three booleans straightaway, when they are declared
      tweaks: initialize three more booleans straightaway, at declaration
      tweaks: judge from the key code itself whether it is a Meta keystroke
      tweaks: make a couple of comments more precise
      tweaks: move a function to after the one that it calls
      tweaks: move a function to be before the ones that call it
      tweaks: move a function to before the one that calls it
      tweaks: move a function to related ones, and after one that it calls
      tweaks: move a function to right before the one that calls it
      tweaks: move another function to after the one that it calls
      tweaks: move another function to before the one that calls it
      tweaks: move another function, to group the deleting ones together
      tweaks: move three functions to the file where they are mainly used
      tweaks: rearrange a few global variables, to group things better
      tweaks: recompute the wrapping point just once
      tweaks: reduce the scope of a variable, and reshuffle a declaration
      tweaks: reduce the scope of two constants and of four variables
      tweaks: reformat a comment, and resuffle a line to match byte order
      tweaks: remove a feedback message that is never shown
      tweaks: remove a redundant call, as there is nothing to free there
      tweaks: remove a superfluous check
      tweaks: remove some superfluous conditions for rewriting a lock file
      tweaks: remove the now-unneeded code related to bracketed pasting
      tweaks: remove the now-unused meta flag from 'keystruct'
      tweaks: remove two superfluous assignments, and rename a variable
      tweaks: rename a function and its parameter, to be more fitting
      tweaks: rename a function, to be a bit more expressive
      tweaks: rename a function, to make it not contain the name of another
      tweaks: rename a parameter and invert its logic, and correct a comment
      tweaks: rename five variables, away from a single letter
      tweaks: rename two functions, to make more sense
      tweaks: rename two parameters, to be more general and to sound shorter
      tweaks: rename two variables, to make more sense
      tweaks: renumber some FAQ items in preparation for adding another
      tweaks: reorder two symbols
      tweaks: reshuffle some assignments for a return value
      tweaks: reshuffle some declarations
      tweaks: reshuffle some declarations, and expand a few variable names
      tweaks: reshuffle some lines, to avoid tallying the menus when not needed
      tweaks: reshuffle some lines, to group all ignored keystrokes together
      tweaks: reshuffle three lines, to make the grouping tighther
      tweaks: reshuffle two lines, to do the linking first, then the content
      tweaks: reword two comments, and rewrap another
      tweaks: rewrap a comment and a line, and reshuffle a fragment of code
      tweaks: rewrap two lines, for consistency with similar lines
      tweaks: rewrite the same file name into the lock file as the first time
      tweaks: slightly condense a function by conflating case
      tweaks: stop recognizing escape sequences for a key without meaning
      tweaks: suggest a few more alternative key bindings and unbindings
      tweaks: take just one shot at reading the lock file, and correct a type
      tweaks: trim some excessive error checking and key-name frobbing
      tweaks: tumble three conditions, for consistency in comparisons
      tweaks: unabbreviate "argument" in the documentation
      tweaks: use a simple subtraction instead of a function call
      usage: improve the description of --restricted and --quickblank

Brand Huntsman (2):
      input: beep when invalid key is pressed at yesno prompt or in linter menu
      input: recognize the start and stop sequences of a bracketed paste


Changes between v4.6 and v4.7:
------------------------------

Benno Schulenberg (39):
      build: add the uploading of PDF and cheatsheet to the release script
      build: avoid three compiler warnings when using gcc-9.2 or newer
      build: fix compilation for --enable-tiny --enable-wrapping
      build: fix compilation on macOS, where 'st_mtim' is unknown
      build: fix compilation when configured with --disable-justify
      bump version numbers and add a news item for the 4.7 release
      display: don't color the space that separates line numbers from text
      docs: add or improve the 'description' meta tag in the two HTML pages
      docs: add the 'lang' attribute in the right place to the two HTML pages
      docs: mention that all keywords in a nanorc file should be in lowercase
      docs: mention that a negative number after "+" counts from the end
      gnulib: update to its current upstream state
      input: make <Tab> indent only when mark and cursor are on different lines
      justify: distinguish between tabs and spaces when comparing indentation
      justify: treat consecutive indentations that look the same as the same
      linter: beep when trying to go beyond first or last message
      rcfile: accept also function names and menu names only in lowercase
      rcfile: accept only keywords in all lowercase, for speed of comparison
      rcfile: demand that function 'exit' is bound in the file browser
      syntax: nanohelp: colorize also ^/ as a possible keystroke
      syntax: sh: recognize shell rc files also in dedicated directories
      tweaks: avoid using strlen() where it is not needed
      tweaks: drop M-Space and ^Space from the browser's key list
      tweaks: improve two comments and the ordering of some operands
      tweaks: move three functions to the file where they are used
      tweaks: optimize the trimming of trailing whitespace
      tweaks: remove a stray space
      tweaks: rename a function, to get out of the way for another rename
      tweaks: rename a function, to get rid of a useless suffix
      tweaks: reshuffle a few lines, for brevity or speed or consistency
      tweaks: reshuffle a few lines, for symmetry with the preceding function
      tweaks: reshuffle a fragment of code, for efficiency
      tweaks: reshuffle and rename a few things, to elide duplication
      tweaks: reshuffle an item, to avoid a lone 'else'
      tweaks: reshuffle two declarations, for compactness
      tweaks: slightly streamline the search for a possible wrapping point
      tweaks: trim or adjust some whitespace in HTML, and add two keywords
      tweaks: unwrap a few lines, and move some strings to among their peers
      wrapping: never break in the quoting part nor in the indentation part


Changes between v4.5 and v4.6:
------------------------------

Benno Schulenberg (128):
      bindings: allow to rebind ^/, even though it is synonymous with ^_
      bindings: don't hard-bind ^H in the help viewer or the file browser
      bindings: the 'all' keyword should encompass the browser menu too
      bindings: the 'all' keyword should include the browser menu always
      build: fix compilation for --enable-tiny --enable-histories
      build: fix compilation when configured with --disable-color
      build: slightly speed up the compilation of the tiny version
      bump version numbers and add a news item for the 4.6 release
      chars: add a faster version of the character-parsing function
      commands: rename 'fixer' to 'formatter', to be less misleading
      cutting: do nothing when trying to chop a word leftward at start of file
      display: do refresh the edit window when exiting from the help viewer
      docs: add a note saying that rebinding ^M or ^I is not advisable
      docs: add the M-F and M-N keystrokes to the cheatsheet
      docs: adjust the compilation instructions to two-digit version numbers
      docs: correct the description of the 'spell' menu
      docs: document the 'fixer' command, a per-syntax content arranger
      docs: mention that color rules are applied in the order they are listed
      docs: mention that 'hunspell' is now the first default spelling program
      docs: mention that the 'nopauses' option is obsolete
      docs: remove some excessive detail from the sample nanorc file
      docs: remove the note about the formatter having been removed
      feedback: say it when spell check or manipulation did not change anything
      files: distinguish between read error and write error when prepending
      files: don't mention the name of the temp file when reading goes wrong
      files: when opening a file for copying, it should NOT be created
      formatter: accept the formatted result also upon a nonzero exit status
      formatter: don't let output from the program pollute the screen
      gnulib: update to its current upstream state
      history: don't wait when there is something wrong with the history files
      linter: report it as an error when running the linting program fails
      rcfile: allow binding also F17...F24
      rcfile: process extensions to file-matching commands straightaway
      restored feature: a per-syntax 'fixer' command that processes the buffer
      softwrap: when switching to another buffer, re-align the starting column
      speller: prefer 'hunspell' over 'spell', because it can handle UTF-8
      speller: when 'spell' is not found, try running 'hunspell -l' instead
      statusbar: show only the first error message, with dots to indicate more
      syntax: c: recognize some C++ header files by their Emacs modeline
      syntax: default: don't colorize stuff between two pairs of brackets
      syntax: html: add a formatter command, making use of 'tidy'
      syntax: html: colorize only full attributes, and colorize strings later
      syntax: javascript: colorize also special values 'null' and 'undefined'
      syntax: javascript: colorize the boolean values 'true' and 'false' too
      syntax: nanorc: colorize all arguments of 'fixer' and 'linter' as valid
      syntax: nanorc: colorize in bright red everything that is invalid
      syntax: nanorc: colorize only lowercase keywords as valid
      syntax: nanorc: colorize the 'fixer' command as valid
      syntax: ruby: colorize also lowercase global/instance variables
      syntaxes: put the 'linter' and 'formatter' commands on a separate line
      tweaks: add a helper function without the ubiquitous NULL argument
      tweaks: add a local variable, for clarity, to not preuse another one
      tweaks: add some "fall-through" comments, and reshuffle some breaks
      tweaks: add two translator hints
      tweaks: adjust the indentation after the previous change
      tweaks: adjust the indentation after the previous change
      tweaks: adjust the indentation after the previous change, and another
      tweaks: adjust two comments, to better fit the actual functions
      tweaks: avoid setting and resetting a variable when there is no need
      tweaks: avoid three unneeded calls of umask() in the normal case
      tweaks: be explicit about which program complained
      tweaks: check the return value of copy_file() also after its other uses
      tweaks: close the unused reading ends of two more output pipes
      tweaks: condense a fragment of code by making use of a helper function
      tweaks: condense or improve some comments
      tweaks: condense two comments, and rename two parameters
      tweaks: condense two comments, and rewrap a line
      tweaks: correct a comment, and retype a variable
      tweaks: die on an impossible condition -- to be removed later
      tweaks: don't do in the parent something that only the child needs
      tweaks: don't wrap calls of statusline() that slightly overshoot 80 cols
      tweaks: drop the unneeded closing of descriptors when exiting anyway
      tweaks: elide a duplicate opening of the existing file when prepending
      tweaks: elide a function call for the plain ASCII case
      tweaks: elide another two calls of umask(), and rename two variables
      tweaks: elide an unneeded and leaky function
      tweaks: elide an unneeded check when making a backup
      tweaks: elide a variable, and add a condition to elide an assignment
      tweaks: elide a variable that is the same as another
      tweaks: exclude two fragments of code from the tiny version
      tweaks: fuse two regexes into one
      tweaks: group the closing of descriptors together, for compactness
      tweaks: group the closing of two descriptors, and reword two comments
      tweaks: harmonize a message with another
      tweaks: improve some comments, and trim some repetitive ones
      tweaks: make a function do a check so its calls don't need to
      tweaks: mark two strings for translation
      tweaks: move a call of umask() closer to where it is relevant
      tweaks: move two functions to after the one that they make use of
      tweaks: normalize the indentation after the previous change
      tweaks: order two functions more sensibly
      tweaks: pass an empty string as an answer instead of a NULL pointer
      tweaks: pass an empty string for copying instead of a non-existent one
      tweaks: pass any special undo/redo messages to the add_undo() function
      tweaks: remove a pointless updating of the title bar
      tweaks: remove a redundant check for an existing emergency file
      tweaks: remove the superfluous closing of a file descriptor
      tweaks: remove two pointless re-inclusion guards
      tweaks: remove two superfluous conditions when prepending
      tweaks: rename a function and add a parameter, so it becomes more general
      tweaks: rename a function, and elide a parameter that is always NULL
      tweaks: rename a function and elide its first parameter
      tweaks: rename a local variable, to not shadow another
      tweaks: rename a variable, to be a bit more fitting
      tweaks: rename a variable, to be distinct and visible
      tweaks: rename three variables, and reshuffle some lines
      tweaks: rename three variables, to be consistent with other linestructs
      tweaks: rename three variables, to be more descriptive
      tweaks: rename three variables, to match others elsewhere
      tweaks: rename two parameters, for contrast and to match others
      tweaks: rename two parameters plus a variable, to match others
      tweaks: rename two variables, and add a third, for more contrast
      tweaks: reshuffle a few declarations, and reduce the scope of one
      tweaks: reshuffle a fragment of code into two alternatives
      tweaks: reshuffle an 'if' to avoid a negation, and improve a comment
      tweaks: reshuffle some declarations, and rename a variable
      tweaks: reword an undo/redo string that was overlooked during the rename
      tweaks: silence a warning when configured with --enable-tiny
      tweaks: simplify the opening of files when prepending
      tweaks: slightly reword some fragments in the manual's rebinding section
      tweaks: use a better variable name for the argument of an option
      tweaks: use a literal NULL instead of a variable that is NULL
      tweaks: use a simpler positive/negative check for after copy_file()
      tweaks: use a string-copy function that checks for out-of-memory
      tweaks: use the given string instead of the found match, for clarity
      undo: don't try to copy a string that doesn't exist
      undo: put the cursor back on the original row for a full-buffer operation
      utils: don't accept NULL for the string to be copied

Jeroen Roovers (1):
      syntax: gentoo: highlight the BDEPEND variable as well


Changes between v4.4 and v4.5:
------------------------------

Benno Schulenberg (60):
      bindings: add a dedicated keycode for <Tab> for when a region is marked
      bump version numbers and add a news item for the 4.5 release
      color: don't concatenate an absolute path with the working directory
      docs: add two examples of the 'tabgives' command to the sample nanorc
      docs: describe the new syntax-specific 'tabgives' command
      docs: mark the undoing of justifications as done in the TODO list
      docs: mention that gcc must be at least version 5.0
      gnulib: update to its current upstream state
      mouse: make the clickable width of menu items more consistent
      new feature: a 'tabgives' command to define what the Tab key produces
      search: after search-at-startup, store the column (for vertical movement)
      tweaks: add a translator hint, and correct two others
      tweaks: add some translator hints, be more precise on permissible length
      tweaks: add two hints for translators, to try and help avoid mistakes
      tweaks: adjust indentation after previous change, reshuffle declarations
      tweaks: avoid a comparison between signed and unsigned  [coverity]
      tweaks: avoid leaking memory when finding an invalid string  [coverity]
      tweaks: avoid recomputing a maximum value every time round the loop
      tweaks: don't burden all menus with something meant for the WriteOut menu
      tweaks: elide a function from a non-UTF8 build
      tweaks: elide two multiplications with something that is always 1
      tweaks: frob a few comments
      tweaks: improve a bunch of comments, and reshuffle some declarations
      tweaks: improve a handful of comments, and reduce the needed padding
      tweaks: mark as 'const' a parameter that takes fixed strings  [coverity]
      tweaks: meld two calls of free() into a single one, to elide an 'else'
      tweaks: move a fragment of common code into the appropriate function
      tweaks: move a function to a better file, to be amongst its kind
      tweaks: move a function to before its callers and next to its kind
      tweaks: move two functions to after the ones that they call
      tweaks: remove some timing code that has served its purpose
      tweaks: remove two superfluous macros, as sizeof(char) is always 1
      tweaks: rename a function, to be a bit more fitting
      tweaks: rename another type, again to better fit the general pattern
      tweaks: rename another type, to also better fit the general pattern
      tweaks: rename another variable, for a better fit
      tweaks: rename a type, to better fit the general pattern
      tweaks: rename a variable, normalize a comment, and reshuffle a free()
      tweaks: rename a variable, to be more compact
      tweaks: rename three variables, for contrast and more sense
      tweaks: rename three variables, for more contrast
      tweaks: rename three variables, to better indicate what they hold
      tweaks: rename two variables, away from single letters
      tweaks: rename two variables, to better describe what they contain
      tweaks: reshuffle a fragment, to group some toggles together
      tweaks: reshuffle a line, to group things better
      tweaks: reshuffle some lines, to elide an unneeded assignment
      tweaks: reshuffle some lines, to have the same order as elsewhere
      tweaks: reshuffle two fragments, to group things better
      tweaks: rewrap a line, reshuffle a declaration, and improve some comments
      tweaks: simplify a calculation, as done elsewhere
      tweaks: simplify the determination of a canonical path
      tweaks: sort two keywords strictly alphabetically
      tweaks: speed up determining the width of plain ASCII characters
      tweaks: speed up the counting of the menu entries to be shown
      tweaks: use a more effecient way to skip storing an empty file name
      tweaks: use an early return when there is no tilde
      tweaks: use 'void' in prototypes of parameterless functions  [coverity]
      usage: mark the -J/--guidestripe option plus argument as translatable
      usage: properly align --help output also when it has accented characters

Brand Huntsman (1):
      search: accept a match at start of file when searching from command line

Dirkjan Ochtman (1):
      syntax: rust: add the words reserved in 2018, and remove unreserved ones


Changes between v4.3 and v4.4:
------------------------------

Benno Schulenberg (53):
      browser: draw a bar of spaces only where needed -- for the selected item
      build: exclude the search-at-startup feature from the tiny version
      bump version numbers and add a news item for the 4.4 release
      copying: do not prevent M-6 from copying emptiness into the cutbuffer
      display: blank the status bar on a successful cut or paste
      display: clear the remainder of a row only when there actually is some
      display: don't clear a row beforehand -- just clear the remainder
      display: use a somewhat faster method to clear a row
      display: when linenumbering, correctly spotlight text that spans two rows
      display: where needed, use slow blanking, but elsewhere do it much faster
      docs: change a few URLs over to https, and rewrap a couple of NEWS items
      docs: document the search-at-startup feature (+/string or +?string)
      docs: make the synopsis of --speller and 'set speller' more accurate
      docs: mention the M-N toggle instead of the obsolete M-# one
      docs: slightly reword some of the descriptions around syntax highlighting
      docs: slightly reword the descriptions of most configure options
      docs: stop mentioning the 'unjustify' function, as it no longer exists
      gnulib: update to its current upstream state
      new document: a condensed overview of nano's shortcut keystrokes
      new feature: allow specifying a search string to "jump to" at startup
      rcfile: properly handle an empty syntax before an 'include' statement
      scrolling: don't overscroll when the edit window has just one row
      search: don't wipe the status bar at startup when there was an error
      search: wipe the status bar before searching again (M-W / M-Q)
      syntax: c: allow an underscore in lowercase type names
      syntax: default: colorize bracketed section headers in some config files
      syntaxes: change some unneeded 'icolor' commands to 'color' commands
      syntaxes: recognize .ctp extension as a PHP file, and .cu as a C/C++ file
      syntax: perl: avoid recognizing embedded hash signs as a comment starter
      syntax: perl: avoid upsetting older glibcs with crafty range expression
      syntax: perl: don't color the character after a variable name
      syntax: po: colorize numbers only when they form a self-contained word
      text: copy leading quote characters when automatic hard-wrapping occurs
      tweaks: add a translator hint, to clarify four short words
      tweaks: call the correct lighting function directly when softwrapping
      tweaks: condense some comments, and drop two unneeded initializations
      tweaks: drop two parameters that are no longer needed
      tweaks: improve a comment, and drop a superfluous one
      tweaks: improve a handful of comments
      tweaks: make a function name unique, to not overlap with others
      tweaks: move a call from two different places to a single place
      tweaks: move a function to before the first one that calls it
      tweaks: move a general function to a better place
      tweaks: remove a saving and restoring that has become superfluous
      tweaks: rename a function, to suit better, and reshuffle its parameters
      tweaks: rename a parameter in three functions, to say what it points to
      tweaks: reshuffle an assignment, and trim some excessive blank lines
      tweaks: reshuffle an 'if' out of a function, and rename the function
      tweaks: reword and condense two comments, and correct another
      tweaks: rewrap two lines, and reshuffle some logic to make more sense
      tweaks: shorten two messages that translators tend to make too long
      tweaks: try the allocation of a multidata cache just once per line
      tweaks: when precalculating, allocate all the cache space upfront

Brand Huntsman (3):
      rcfile: for an empty syntax, show the line number of the 'syntax' command
      rcfile: report the correct command location for an invalid 'include'
      search: accept toggles for case and regex when searching at startup


Changes between v4.2 and v4.3:
------------------------------

Benno Schulenberg (235):
      bindings: at a Yes-No prompt, accept also ^N and ^Q for "No"
      bindings: at a Yes-No prompt, accept also ^Y for "Yes"
      bindings: bind the Alt+arrow keystrokes also in non-UTF-8 locales
      browser: don't show a mistaken message when exiting from help viewer
      build: avoid a warning on FreeBSD, OpenBSD, and Alpine
      build: avoid a warning when using --disable-utf8
      build: exclude the ability to open a FIFO from the tiny version
      build: fix compilation on another system
      build: fix compilation when configured with --disable-color
      build: fix compilation when configured with --enable-tiny
      build: move an #include to where it is needed
      build: remove two #includes that don't seem to be needed
      bump version numbers and add a news item for the 4.3 release
      chars: create a dedicated function for getting the length of a character
      chars: redo the speedup for plain ASCII from three commits ago
      chars: speed up case-insensitive searching by roughly one percent
      chars: speed up the determination of length and width for plain ASCII
      copying: let a copy command break a chain of cut or zap commands
      copying: make M-6 do nothing when at end of buffer
      copying: scroll just one line when M-6 is pressed on the bottom row
      cutting: clear the cutbuffer when the previous operation was copying
      cutting: ignore the mark when a word is deleted
      display: properly show all characters in a non-UTF-8 build
      docs: add a light warning to the explanation of --nonewlines
      docs: adjust the wording of the README to be factually correct
      docs: clarify that in nano regexes are extended regular expressions
      docs: mention the default value for 'errorcolor'
      docs: note Brand as the author of the delayed syntax parsing
      docs: note David as author of undoable indenting and undoable justifying
      docs: remove "--" from the default value of 'quotestr'
      docs: say thanks to the Korean translator, and trim a double space
      docs: show double quotes where they are needed
      docs: slightly reword the notice about the changed defaults since 4.0
      feedback: don't clear off possible error messages after a spell check
      feedback: don't try to represent keys outside of the seven-bit range
      feedback: make an error check work also when curses hasn't started yet
      feedback: print helpful message only when data comes from keyboard
      feedback: show a more fitting message when opening a FIFO is interrupted
      feedback: show an appropriate message when reading a file was cut short
      feedback: treat statusline() being called outside of curses mode as a bug
      feedback: when the last line is empty, don't include it in the count
      files: allow a given file to be a special file but not a directory
      files: allow to abort the reading of slow files with Ctrl+C
      files: allow to interrupt the opening of a FIFO for writing with Ctrl+C
      files: allow to interrupt the opening of a FIFO with Ctrl+C
      files: check for writability by the access bits, not by trying to append
      files: don't close a newly-created buffer when it is the only one
      files: don't save the state of the terminal a second time
      files: don't say "Error...: Success" when aborting after resizing
      files: give feedback while waiting for a FIFO to open up
      files: suppress feedback when writing an emergency or temporary file
      files: try matching a syntax after scooping data from standard input
      files: when needed, reconnect the keyboard and reenter curses mode
      gnulib: update to its current upstream state
      help: don't check for confinement when opening a temporary help-text file
      help: don't cycle through the buffers for every resizing step
      help: don't show Alt+Left and Alt+Right when running on a Linux console
      help: make the column for the first keystroke a little wider
      help: write the text directly into a new buffer, without using a tempfile
      justify: remove "--" from the quoting regex, to avoid false paragraphs
      oops: apparently the line numbers in the cutbuffer do matter
      rcfile: at terminating points, verify that a defined syntax is not empty
      rcfile: check for missing color commands only when a syntax is still open
      rcfile: close off a syntax when a non-syntax command is encountered
      rcfile: disallow extending a syntax that is defined in a main nanorc
      rcfile: fully read each included file, so all its syntaxes are seen
      search: stay in the Search menu when trying to Replace in view mode
      softwrap: use smooth scrolling when softwrapping is toggled on
      speller: be more concise and to the point when something goes wrong
      speller: don't crash when the spell-checked tempfile cannot be opened
      speller: ensure that a Shift-selected region is retained
      speller: when something goes wrong with 'sort', do not blame 'spell'
      startup: remove the now-unneeded workaround for a SIGWINCH during input
      startup: resave the terminal's state only when there were no signals
      syntax: po: colorize also escaped hex and octal codes
      syntax: python: avoid miscoloring stuff between two empty strings
      tweaks: add a missing forward declaration of make_new_buffer()
      tweaks: add a pair of braces, to silence a compiler warning
      tweaks: add a warning for something that shouldn't occur
      tweaks: adjust a comment and drop two others, and reshuffle two lines
      tweaks: adjust some indentation after the previous change
      tweaks: adjust some whitespace and rewrap a few lines
      tweaks: adjust the indentation after the previous change
      tweaks: adjust the indentation after the previous change
      tweaks: avoid an unneeded, extra stat() for temporary files
      tweaks: avoid parsing a character twice
      tweaks: be more sparing in redrawing things when exiting from help viewer
      tweaks: change a function to void, to make things more direct
      tweaks: check in a single place for files that should not be opened
      tweaks: close a buffer differently and elide a parameter
      tweaks: condense a comment and reshuffle a couple of lines
      tweaks: condense a couple of comments, and reshuffle a line
      tweaks: condense the setup of the two signal handlers for Ctrl+C
      tweaks: condense two comments, and normalize the whitespace of a label
      tweaks: consistently report failures to fork (and the like) as errors
      tweaks: delete a leftover
      tweaks: delete a now-unused function
      tweaks: delete a now-unused function
      tweaks: don't bother calling mblen() in a non-UTF-8 build
      tweaks: don't bother checking the return value of wait()
      tweaks: don't bother keeping track of whether a squeezed line has shrunk
      tweaks: don't bother renumbering the lines in the cutbuffer
      tweaks: don't bother saving and restoring 'cutbottom' all the time
      tweaks: don't bother to free the content of 'extendsyntax' commands
      tweaks: don't check the user's nanorc file for accessibility twice
      tweaks: drop an unneeded parameter from open_file()
      tweaks: drop a useless tidying-up call, as spelling does not use regexes
      tweaks: drop most of the remaining debugging code, and some timing code
      tweaks: drop some checks that were made redundant by the previous commit
      tweaks: drop two checks that were made redundant by the previous commit
      tweaks: elide a function that is an amalgam of three others
      tweaks: elide a function that is called in just one place
      tweaks: elide a function that is used just once
      tweaks: elide another parameter, and rename the function to match
      tweaks: elide an unneeded, duplicate stat() for the FIFO check
      tweaks: elide an unneeded 'if' and 'break'
      tweaks: elide an unneeded variable
      tweaks: elide a parameter and a return value
      tweaks: elide a pre-processor #else clause, by using braces instead
      tweaks: elide a variable, drop a comment, and remove unneeded braces
      tweaks: elide two unneeded variables
      tweaks: enforce the miminum amount of scrolling in a simpler way
      tweaks: exclude a bug check from the tiny version
      tweaks: exclude another bug check from the tiny version
      tweaks: factor out a fragment of code that is repeated three times
      tweaks: factor out the installing and restoring of the ^C signal handler
      tweaks: improve a couple of comments
      tweaks: improve a handful of comments
      tweaks: improve some comments, reshuffle a line, and rename a variable
      tweaks: include the enabling of SIGINT into the tiny version
      tweaks: invert a condition, in order to return earlier
      tweaks: invert two conditions, in order to elide an extra variable
      tweaks: just mark four rcfile errors for translation, like the others
      tweaks: make better use of two variables, and reshuffle two comments
      tweaks: merge two functions, as the first is called just once
      tweaks: merge two functions, as the one is used only by the other
      tweaks: merge two very similar functions into a single one
      tweaks: move a bit of timing code to where it will be needed
      tweaks: move a function to the file where it is used
      tweaks: move an assignment that is useful only when searching forward
      tweaks: move a syntax check to a better place, to reduce duplication
      tweaks: move the tyding-up-after-a-search to a single exit point
      tweaks: normalize the indentation after the previous two changes
      tweaks: place a function better, and reduce some comments to a single one
      tweaks: put some timing code back into the search function
      tweaks: really don't bother renumbering the lines in the cutbuffer
      tweaks: reduce a bit of mark-adjusting code to its essence
      tweaks: reduce the scope of a variable, and let the compiler zero it
      tweaks: remove a bit of redundant code
      tweaks: remove a check that is no longer relevant
      tweaks: remove a condition that has become superfluous
      tweaks: remove an unneeded "closing" of a syntax after extending it
      tweaks: remove an unneeded setting and unsetting of a flag
      tweaks: remove a superfluous and ineffective assignment
      tweaks: remove a superfluous condition, in three places
      tweaks: remove four unneeded pre-processor directives
      tweaks: remove some unneeded braces, and reshuffle for more symmetry
      tweaks: remove the two remaining handfuls of asserts
      tweaks: remove two more unneeded assignments
      tweaks: remove two unneeded assignments, and improve a comment
      tweaks: remove two unneeded checks for NULL
      tweaks: rename a bunch of variables, to become identical to others
      tweaks: rename a function and a variable, for contrast and variety
      tweaks: rename a function and its parameters, to be more fitting
      tweaks: rename a function, to be clearer and to stop using an old abbrev
      tweaks: rename a function, to be more fitting
      tweaks: rename a function, to better indicate what it does
      tweaks: rename a function, to better suit what it does
      tweaks: rename a parameter and a variable, to be more distinct
      tweaks: rename a struct element, to be distinct
      tweaks: rename a type, for more contrast
      tweaks: rename a type, to make more sense
      tweaks: rename a variable, reduce its scope, and use it consistently
      tweaks: rename a variable, reshuffle declarations, and drop an assert
      tweaks: rename a variable, to be shorter
      tweaks: rename a variable, to better indicate it contains two characters
      tweaks: rename a variable, to better suit its counterpart
      tweaks: rename a variable, to fit a bit better
      tweaks: rename a variable, to fit a little better
      tweaks: rename a variable, to get out of the way of the next commit
      tweaks: rename a variable, to match another with the same meaning
      tweaks: rename a variable, to match the style of its brothers
      tweaks: rename four elements of the holder struct, for more contrast
      tweaks: rename some single-letter variables to the same significant word
      tweaks: rename three variables, to get rid of a suffix or an underscore
      tweaks: rename three variables, to use full words instead of abbrevs
      tweaks: rename two functions, to be simpler
      tweaks: rename two functions, to better describe what they do
      tweaks: rename two functions, to get rid of the "mb" abbreviation
      tweaks: rename two more functions, to be simpler too
      tweaks: rename two parameters, away from single letters
      tweaks: rename two parameters, for more contrast, and elide another
      tweaks: rename two parameters, to differentiate them from function names
      tweaks: rename two variables, and frob some comments
      tweaks: rename two variables, and reshuffle their declarations
      tweaks: rename two variables, away from a single letter
      tweaks: rename two variables, for more contrast
      tweaks: rename two variables, for more contrast with the partition stuff
      tweaks: rename two variables, to be less cryptic
      tweaks: rename two variables, to be unique
      tweaks: rename two variables, to not be abbreviations
      tweaks: reorder some code, to further optimize display_string() for ASCII
      tweaks: reshuffle a bit of code, to be less intertwined
      tweaks: reshuffle a couple of lines and adjust a few comments
      tweaks: reshuffle a few lines, to be more straightforward
      tweaks: reshuffle a few things, partly to make two chunks more alike
      tweaks: reshuffle an assignment, to be able to return earlier
      tweaks: reshuffle some closing and switching to a better place
      tweaks: reshuffle some code to the one place that needs it
      tweaks: reshuffle some lines and frob some comments
      tweaks: reshuffle some lines, to group things more sensibly
      tweaks: reshuffle some lines, to put the most likely candidate first
      tweaks: reshuffle some lines, to reduce duplication
      tweaks: reshuffle two #ifdefs, to avoid an unpaired brace
      tweaks: reuse the install and restore functions for a signal handler
      tweaks: set a boolean directly, instead of using a function call
      tweaks: set a boolean directly, instead of using a function call
      tweaks: sort three translator names better
      tweaks: specifically refer to the manual of GNU grep for more regex info
      tweaks: speed up the counting of characters in mbstrlen()
      tweaks: squeeze excess spaces out of a line in situ
      tweaks: step away one character from the current bracket, not one byte
      tweaks: stop allocating and freeing a holder struct for every cut/paste
      tweaks: stop checking for a NULL result from line_from_number()
      tweaks: stop passing 'cutbuffer' and 'cutbottom' back and forth
      tweaks: switch to the preceding buffer in a cheaper way (when in help)
      tweaks: use a cheaper way to switch between buffers where possible
      tweaks: use a more direct call when a single linestruct is deleted
      tweaks: use a slightly faster function where appropriate
      tweaks: use a symbol instead of zero to refer to standard input
      tweaks: use FALSE for booleans instead of zero
      tweaks: when OR'ing, put the most likely condition first
      usage: make the --help output independent from the terminal's tab size
      zapping: disjoin a zap command from earlier ones when the mark is set
      zapping: use the 'keep_cutbuffer' logic to keep undo items apart

Brand Huntsman (6):
      files: block SIGWINCH while opening a FIFO for reading or writing
      rcfile: compile the color regexes just once
      rcfile: fully parse a syntax file only when needed
      rcfile: store errors and display them when nano terminates
      startup: prevent a crash when no applicable syntax is found
      tweaks: remove an unneeded pre-processor '#else' clause


Changes between v4.1 and v4.2:
------------------------------

Benno Schulenberg (23):
      build: be more specific and avoid committing accidentally changed files
      bump version numbers and add a news item for the 4.2 release
      docs: put the 'set guidestripe' option into its alphabetical position
      options: make --breaklonglines work also when --ignorercfiles is used
      speller: do not crash by trying to free something that cannot be freed
      tweaks: adjust a few comments and some indentation
      tweaks: condense and improve a handful of comments
      tweaks: declare a function as const and let its allocated string leak
      tweaks: drop an unneeded saving and restoring of a variable
      tweaks: elide an unneeded intermediate variable
      tweaks: elide an unneeded parameter, as the function already assumes it
      tweaks: elide an unneeded variable
      tweaks: exclude a bit more code from a single-buffer build
      tweaks: remove an unneeded condition
      tweaks: remove a redundant, enclosed #ifdef
      tweaks: rename a function, to be distinct and fitting
      tweaks: rename another function, to be distinct and fitting
      tweaks: rename a variable, for a little more meaning
      tweaks: rename a variable, to distinguish it from a browser function
      wrapping: add a missing space only when the remainder will be prepended
      wrapping: compute the width of a succeeding line in the correct manner
      wrapping: improve the persistence of the prepending behavior
      wrapping: trim any trailing blanks when cursor goes to next line


Changes between v4.0 and v4.1:
------------------------------

Benno Schulenberg (85):
      bindings: add easier keystrokes for the linenumber and softwrap toggles
      bindings: disallow executing an external command when in view mode
      bindings: recognize the ^W^Y and ^W^V legacy keystrokes again
      bindings: remove the jumpy-scrolling toggle entirely
      build: add gnulib modules to the list of files with translatable strings
      build: add src/cut.c to the list of files with translatable strings
      build: don't do fuzzy matching when merging PO files against the POT file
      build: remove obsolete translations from the PO files after merging
      bump version numbers and add a news item for the 4.1 release
      display: report and catch a bad state, to prevent a possible hang
      docs: for two of the toggles, mention the new instead of the old option
      docs: give the FILES section in the man page its canonical title
      docs: mention that -b is the opposite of -w also in the latter's item
      docs: mention that M-S now toggles softwrap and M-N line numbers
      docs: put paths and filenames in italics, per 'man man-pages'
      docs: remove all mention of --finalnewline, and undefault --nonewlines
      docs: remove the AUTHOR section, per advice from 'man man-pages'
      docs: re-title the temporary section about the changed defaults
      feedback: replace an assert with a check plus error message at startup
      feedback: show a message while executing an external command
      feedback: spare the user a superfluous scaring when trying to exit
      gnulib: update to its current upstream state
      help: don't doubly list toggles that have two keys assigned to them
      indenting, commenting: ensure a partial line stays displayed properly
      justify: correctly compute the number of lines to take, to avoid a crash
      options: make --nowrap override again a contrary nanorc setting
      options: remove -f (--finalnewline); go back to auto-adding this newline
      rcfile: don't break a chain of 'else if'  [scan-build]
      rcfile: read the syntax files in alphabetical order when globbing
      speller: block the resizing signal again during an external spell check
      speller: block the resizing signal also during an integrated spell check
      speller: resizing can happen also when configured with --enable-tiny
      syntax: c: color as a type any lowercase word that ends with "_t"
      syntax: default: color in red also versions 4.x of nano
      syntax: man: add comments, and color all the safe lowercase macros
      syntax: man: anchor macros at start of line, as only then they are valid
      syntax: man: require the dot to be at start of line, not the comment
      syntax: nanorc: colorize also strings preceded by 'start=' or 'end='
      syntax: nanorc: require whitespace both before and after a quoted string
      tweaks: adjust the indentation after the previous change
      tweaks: condense a bit of copying code
      tweaks: consistently use .sp instead of .PP to insert a blank line
      tweaks: do a check up front instead of every time round the loop
      tweaks: don't bother copying the NUL byte -- it is set nine lines down
      tweaks: don't bother reallocating the data when a line gets hard-wrapped
      tweaks: don't bother reallocating the squeezed string, just terminate it
      tweaks: don't bother special-casing non-UTF8 when seeking a character
      tweaks: drop an assignment whose value is never used  [scan-build]
      tweaks: drop two 'const' qualifiers, to silence the compiler
      tweaks: free some memory before a possible error exit  [coverity]
      tweaks: free the copy of a linter message in all cases  [valgrind]
      tweaks: free the result string from an invocation error  [coverity]
      tweaks: initialize a boolean before it is referenced  [valgrind]
      tweaks: put the unblocking of SIGWINCHes in a better place
      tweaks: remove a function that is now unused
      tweaks: remove an unneeded check for NULL and its associated message
      tweaks: remove an unneeded check for NULL  [coverity]
      tweaks: remove an unpaired closing parenthesis from the NEWS file
      tweaks: remove a superfluous check for NULL plus the associated message
      tweaks: remove several unneeded bad-state checks and their messages
      tweaks: rename a cryptic type to something that makes a little sense
      tweaks: rename a function plus parameter, to stay closer to what it does
      tweaks: rename another variable, to be more descriptive
      tweaks: rename another variable, to be more fitting
      tweaks: rename an overshort type to something that makes some sense
      tweaks: rename a variable, to be more distinct and more apt
      tweaks: rename a variable, to be more distinct and more descriptive
      tweaks: rename a variable, to get out of the way for another rename
      tweaks: rename some variables, for more contrast and to match others
      tweaks: rename some variables, to be less repititious
      tweaks: rename two variables, for more contrast
      tweaks: rename two variables, to be more distinct and more fitting
      tweaks: rename two variables, to make more sense
      tweaks: rename two variables, to match others
      tweaks: reshuffle some lines, condense a comment and drop another
      tweaks: reshuffle some lines, to elide an 'if'
      tweaks: reshuffle two lines, and reword a comment
      tweaks: reword a comment, and drop an unneeded assert
      tweaks: shorten a comment to its essence
      tweaks: shorten and improve some comments, and reshuffle a few lines
      tweaks: simplify a message, and normalize the spelling of another one
      tweaks: stop doing tandem assignments (one passing through the other)
      tweaks: switch back from checking FINAL_NEWLINE to checking NO_NEWLINES
      tweaks: use a signed type for a result that could be negative  [coverity]
      unindent: ensure that a partial line gets displayed properly afterwards

Brand Huntsman (1):
      files: block the resizing signal while reading from an external command

Devin Hussey (1):
      files: initialize a variable before referencing it

Liu Hao (1):
      syntax: c: change the highlighting of preprocessor directives


Changes between v3.2 and v4.0:
------------------------------

Benno Schulenberg (190):
      bindings: change the action of <Alt+Up>/<Alt+Down> to 'scroll linewise'
      bindings: hard-bind ASCII code 0x08 (BS) to the backspace function
      bindings: make the normal scrolling keystrokes work also in help viewer
      bindings: provide usable shortcuts for prevword/nextword in tiny version
      bindings: rename 'cutwordleft' to 'chopwordleft', and similar for right
      browser, help: make <Bsp> page up also when terminfo mismatches terminal
      browser: say "Close" instead of "Exit" for the ^X shortcut
      browser: show the ^G item again in the help lines
      build: eradicate the --disable-wrapping-as-root configure option
      build: fix compilation when configured with --disable-utf8
      build: use wget over https (instead of plain rsync) to fetch PO files
      build: verify that 'pkg.m4' is available when building from git
      bump version numbers and add a news item for the 4.0 release
      copyright: update the years for significantly changed files
      copyright: update the years for the FSF
      copyright: update the years for the FSF in the documentation too
      cutting: cover the corner cases where cut commands do not cut anything
      cutting: give feedback when otherwise nothing happens
      cutting: when ^K does not actually cut anything, do not add an undo item
      display: account for horizontal scrolling when drawing the guide stripe
      display: account for zero-width characters when reserving space for '>'
      display: change the "$" continuation character to ">" and "<"
      display: dot the stripe when it's in the last column, to defeat a VTE bug
      display: ensure that spotlighted text is not treated as a prompt answer
      display: highlight the ">"/"<" continuation characters in reverse video
      display: represent half of a double-width character with "[" and "]"
      display: scroll horizontally one column earlier
      display: show "[" for half of two-column character also when softwrapping
      display: show it in title bar when starting up in restricted mode
      display: use non-breaking space instead of dot for VTE-bug workaround
      docs: add notes to draw attention to the changed defaults
      docs: adjust and extend the Pico-compatibility section in the manual
      docs: adjust for the enhancement of the default quoting regex
      docs: correct the descriptions of 'speller' and 'linter' functions
      docs: deprecate the use of morespace, smooth, nonewlines, and nowrap
      docs: describe breaklonglines, emptyline, finalnewline, jumpyscrolling
      docs: describe the four new options (-b, -f, -j, -e)
      docs: describe the new options -J, --guidestripe, and 'set stripecolor'
      docs: harmonize the style of bindable-function descriptions
      docs: mention nano's major features directly instead of referring
      docs: mention that 'cutwordleft' is bound to <Shift+Ctrl+Delete>
      docs: mention that --morespace and --smooth are obsolete and ignored
      docs: mention that 'quotestr' enables the rewrapping of comment blocks
      docs: mention three features in their proper place
      docs: remove from the FAQ some items that are no longer relevant
      docs: remove the mentioning of --disable-wrapping-as-root from the FAQ
      docs: reword and reshuffle the description of --rawsequences
      docs: say that --rebinddelete can correct both <Backspace> and <Delete>
      docs: stop implying that nano wants to be fully compatible with Pico
      docs: stop saying that --fill switches on automatic hard-wrapping
      docs: suggest a setting for 'stripecolor' in the sample nanorc
      docs: update the links in the FAQ to the mailing-list info pages
      feedback: complete the removal of some superfluous words
      feedback: make two error messages better match the option
      feedback: remove some superfluous words from Undid/Redid messages
      files: retain a Shift-selected region when switching between buffers
      gnulib: update to its current upstream state
      help, docs: say "Delete" when things don't go into the cutbuffer
      help: don't advertise ^S and ^Q when --preserve is used
      help: don't list the obsoleted -O and -S options in the --help output
      help: don't list the unbound <Alt+Up> and <Alt+Down> in the tiny version
      help: in the tiny version, don't list an option that is the default
      help: reword the description of ^U to avoid the impression of "Undo"
      help: reword the tags for deleting a word left and right
      justify: correctly detect when we've reached end of buffer
      justify: extend the quoting regex, to cover more types of comments
      justify: move the check for a bad quoting regex to a better place
      menus: don't show ^S and ^Q in the help lines in the tiny version
      menus: move the paragraph-jumping functions from Search to Goto-Line
      menus: put the ^T toggle in Search in the same position as in Goto-Line
      menus: remove the ^Y and ^V shortcuts from the Search menus
      new feature: option --guidestripe that shows a vertical guiding bar
      options: actually rename --rebindkeypad to --rawsequences (-K)
      options: add -b, --breaklonglines, the counterpart of --nowrap
      options: add -e, --emptyline, the counterpart of --morespace
      options: add -f, --finalnewline, the counterpart of --nonewlines
      options: add -j, --jumpyscrolling, the counterpart of --smooth
      options: disable hard-wrapping and automatic newlines by default
      options: let --fill no longer imply automatic hard-wrapping
      options: make -d (--rebinddelete) work without -K (--rebindkeypad)
      options: make --rawsequences disable --mouse, to prevent entering junk
      options: rename long version of -K from --rebindkeypad to --rawsequences
      options: stop recognizing and ignoring -b, -e, -f, -j, and -q
      options: stop recognizing and mentioning --quiet and 'set quiet'
      options: warn when option -O or -S is given, and ignore them
      prompt: trim a double-width character at the screen's edge
      rcfile: add 'stripecolor' for changing the color of the guiding stripe
      rcfile: add the options that correspond to -b, -f, -j, and -e
      rcfile, docs: remove deprecated forms of two options and five bindables
      rcfile: don't report an error when the globbing pattern matches nothing
      rcfile: reject an attempt to bind ^[
      rcfile: when a keystroke is rebound, don't bother unbinding it
      rcfile: when an old flag is unset, set the corresponding new flag
      rcfile: when rebound, DO unbind a keystroke from its earlier function
      startup: check again for a Linux console after reading all files
      startup: check that a backup directory is valid also when backups are off
      startup: improve two error messages by mentioning the invalid operand
      syntax: nanorc: stop coloring 'unset fill ...' as if it were valid
      syntax: tcl: colorize comments normally, not with a background hue
      text: turn the mark off when justifying, to not confuse an undo
      tweaks: add a consistency check plus a corresponding warning
      tweaks: add an alias for a string variable, so the code makes more sense
      tweaks: add deprecation comments to the four superseded options
      tweaks: add two comments, and reduce the scope of another variable
      tweaks: adjust indentation after previous change, and rename a parameter
      tweaks: adjust the indentation after the previous change
      tweaks: avoid parsing the same character twice
      tweaks: calculate the length of a completion word in a more direct way
      tweaks: change do_para_end() to not step beyond end of paragraph
      tweaks: condense a comment, and drop two others
      tweaks: condense a couple of comments and rewrap a few lines
      tweaks: condense a handful of comments
      tweaks: condense and correct a comment
      tweaks: condense and improve a couple of comments
      tweaks: condense and improve a handful of comments, and rewrap two lines
      tweaks: condense the logic of find_paragraph()
      tweaks: condense two regexes in the Tcl syntax, and add a comment
      tweaks: correct a comment typo, and trim a few other comments
      tweaks: don't bother executing two functions that are empty
      tweaks: don't bother special-casing non-UTF8 when checking for a blank
      tweaks: don't bother trying to draw characters beyond the screen's edge
      tweaks: don't bother zeroing the x position when doing a full justify
      tweaks: don't pass a pointer when a boolean is expected
      tweaks: elide a function that is called just once
