Changes between v8.0 and v8.1: ------------------------------ Benno Schulenberg (56): bindings: let ^L put the cursor line at center, then top, then bottom build: check for the correct function in an #ifdef build: require version 0.20 of gettext for building nano from git build: use the standard `autoreconf` invocation bump version numbers and add a news item for the 8.1 release docs: add 'set colonparsing' to the sample nanorc docs: add the Alt+Home/Alt+End shortcuts to the cheatsheet docs: avert hyphenation of the technical words "ncurses" and "terminfo" docs: correct the description of --bold, as function tags are unaffected docs: document the new --listsyntaxes (-z) option docs: don't say any more that -z was removed, as it has been repurposed docs: explain the behavior of the new function `cycle` docs: explain the details of --colonparsing / -@ / 'set colonparsing' docs: extend the FAQ item about urxvt modified keys, with M-Home/M-End docs: properly escape a literal '@' in the texi document docs: remove the 'filename:linenumber' format from the synopsis files: avoid mistakenly setting the column number to a given line number files: look for digits and colons starting from the end of the filename files: when a filename with a colon and digits exists, open that file files: with --rectrict, prevent invoking the browser and toggling backups general: disable the type-ahead checking that ncurses normally does gnulib: update to its current upstream state help: regroup the `center` item, placing it with the new `cycle` help: show option -Y/--syntax in --help output also in restricted mode input: drop recognition of the urxvt escape sequences for M-Home/M-End input: make sure that a string-bind return value is non-negative input: provide for urxvt setting a high bit or sending an extra escape input: recognize the raw Xterm escape sequences for Alt+Home and Alt+End minibar: do not falsely report that a new, empty file is in Mac format moving: use edit_scroll() only when scrolling one row is enough new feature: add bindable function `cycle` that pushes cursor line around new feature: option -z lists the names of available syntaxes options: remove the deprecated synonym -$ of -S/--softwrap options: require --colonparsing/-@ to parse colon+number after a filename rcfile: remove old bindable function 'nowrap', alias of 'breaklonglines' startup: do not activate --modernbindings when name starts with "e" syntaxes: mention the original author of most of the syntax files syntax: man: colorize some of the things that manipulate hyphenation syntax: patch: recognize also the .rej extension text: do not check for + mark while getting input but in do_tab() tweaks: add a space after a '+', for consistent formatting tweaks: discard a bracketed paste in the help viewer with fewer beeps tweaks: drop two redundant conditions tweaks: elide unhelpful occurrences of the word "will" tweaks: exclude the colon-parsing code from the tiny version tweaks: extend the deprecation period of 'set nowrap' and prefix 'bright' tweaks: implement do_center() with a single call instead of three tweaks: in FAQ, use 'id' attribute instead of empty anchor with 'name' tweaks: make a comment more accurate, and unabbreviate a variable name tweaks: make the inclusion condition for do_center() more strict tweaks: remove the now unneeded special keycode INDENT_KEY tweaks: reshuffle a declaration, adjust a comment, normalize indentation tweaks: reshuffle some lines, to put vaguely related things together tweaks: rewrap some lines, for more even lengths tweaks: simplify a condition, to match the same condition five lines back tweaks: slightly reword a phrase in the explanation of --colonparsing Jaroslav Fowkes (1): syntax: fortran: fix a typo (a missing backslash) Changes between v7.2 and v8.0: ------------------------------ Andy Koppe (2): input: scroll on mousewheel events instead of moving the cursor rcfile: map the gray #rgb codes (#111 to #EEE) to the xterm grayscale Benjamin Valentin (1): new feature: interpret also : when opening a file Benno Schulenberg (155): bindings: allow speller and friends to be rebound also in restricted mode bindings: in the tiny version, bind M-6 only in main, not at the prompts bindings: let move the cursor to top/bottom of viewport bindings: let M-" place/remove an anchor, and let M-' jump to one bindings: let M-& show the ncurses version+patch, as a small Easter egg bindings: make ^F start a forward search by default bindings: make ^F start a forward search by default bindings: set up modern bindings also when binary's name starts with "e" bindings: show ^- instead of ^/ for 'flipgoto' when on a Linux console bindings: with --modern, do not let ^Q^Q quit nano without saving bindings: with --modern, use ^H for Help when the terminal allows it browser: report an error instead of crashing when the folder disappears browser: restore typing position at prompt after "^R name ^T ^F ^V ^C" bump version numbers and add a news item for the 8.0 release chars: add a helper function for stripping leading blanks from a string copyright: update the years for the FSF display: add a wnoutrefresh() call for NetBSD, to force a cursor update display: do not attempt to draw a line that is outside the viewport display: draw a new magic line rightaway when there are multiline regexes display: show the help lines down to the tiniest possible terminal size docs: add a caveat in the FAQ about bracketed pastes docs: add a clarifying note to the description of --tabstospaces docs: add an example binding for normalizing Unicode to the sample nanorc docs: add a reference to the 'help-nano' mailing list docs: add M-C and M-Z to the cheatsheet, and reshuffle for balance docs: add ^T^S (spell check) and M-S (softwrap) to the cheatsheet docs: add two examples of custom key bindings to the nanorc manpage docs: adjust an example help line in the README to the current state docs: adjust the cheatsheet for the changed meanings of ^F, ^B, M-F, M-B docs: clarify that a fileregex is matched against the absolute filename docs: delete a remark about libvte that is no longer relevant docs: describe nano more specifically as a text editor docs: document the : thing for cursor positioning docs: document the new bindable functions 'toprow' and 'bottomrow' docs: document the new --modernbindings option docs: fix a ten-year-old typo, reported by `correctmost` docs: improve the description of the 'flipexecute' bindable function docs: in a synopsis, use braces around a choice of required parts docs: in the sample nanorc, set the guidestripe to a soft grey docs: mention backreferences (for replacements with regular expressions) docs: mention how to get the old behavior of ^F, ^B, M-F, and M-B back docs: mention that a restricted nano does not access the history files docs: mention that 'light' background colors do not work on Linux console docs: mention that --modernbindings overrides --preserve docs: mention the changed meanings of ^F/^B and also in the texi manual docs: mention the missing two options that override --bold docs: say "mini bar", not "minibar", when referring to the actual bar docs: trim stuff that is more than five years old from the changelog docs: use a space after #, like everywhere else in the sample nanorc editing: adjust the mark before trimming redundant blanks execute: show "Older" and "Newer" in the help lines, to allow rebinding feedback: drop an unnecessary warning, to not bother the user feedback: lowercase a letter, as the phrase is not a full sentence feedback: raise the level of "Macro is empty", to match similar messages feedback: suppress filename and linecount when --zero is active feedback: suppress format-conversion messages for --zero and --mini files: do not allow M-U to remove text read from standard input files: run `chmod` and `chown` on the descriptor, not on the filename formatter: do not crash when the formatter command is empty general: include the Copy function (M-6 or ^C) into the tiny version general: let the constant-show toggle override the zero-interface mode gnulib: update to current upstream state, to make a fresh checkout work gnulib: update to its current upstream state help: give the "Replace with" prompt its own help text help: mention M-Home and M-End in the help text and help lines help: rebalance the help items when --preserve is used help: restore ^H and ^D as the primary shortcuts for Backspace and Delete help: show ^F/^B as primary shortcuts for search, not as secondary indicator: do not oversize the scroller when softwrapping input: avoid hanging after a 39-character paste on a VSCode terminal input: flush the keystroke buffer upon any kind of error condition input: for one bump of the mousewheel scroll two lines, not three input: intercept a spurious keycode and say what the actual problem is input: let the handler of string binds return a byte whenever possible input: neutralize two spurious keycodes from VTE terminals input: prevent 'macro_length' from underflowing when hammering M-: input: recognize certain escape sequences for F13 to F16 again input: snip the `recordmacro` and `runmacro` keystrokes in a better way input: store key codes in the macro buffer as they come in from ncurses input: store keystroke in macro buffer only when about to interpret it [reverted] justify: keep as much of the marked region onscreen as possible justify: keep the cursor at the original end of a marked region justify: recompute the multidata for paragraphs larger than the viewport justify: set the correct starting point also with --cutfromcursor justify: set `x = 0` for the undo item, for when using --cutfromcursor linter: do not mess up the input stream when the linter command is empty linter: use a format string, to deflect format-string attacks memory: prevent a leak by freeing a possibly already existing color combo minibar: mention the file format when it's DOS or Mac moving: preserve horizontal position when jumping to top or bottom row new feature: functions that jump to the top or bottom of the viewport new feature: option --modernbindings sets up more widespread key bindings options: make --modernbindings actually override --preserve rcfile: add bindable functions for moving the cursor to top or bottom row rcfile: avoid crashing on an include path that is way too long replacing: stash the string to be replaced while asking for replacement revert the previous commit -- forget about -? as a synonym for --help screen: recalculate the multidata when detecting the need for it search: avoid a crash after a nested search, reported by `correctmost` search: avoid crashing after searching a help text during a regex replace shutdown: ignore a modified buffer when in view mode softwrap: adjust start-of-screen when the 'edittop' line is hard-wrapped softwrap: realign start-of-screen when redoing an automatic hard-wrap softwrap: remember the actual breaking point when wrapping at blanks startup: use a format string, to deflect format-string attacks syntax: c: require a preceding blank when a line comment contains a quote syntax: javascript: recognize also the .mjs extension syntax: makefile: ensure that the key always produces a tab syntax: makefile, sh: recognize also a fresh Makefile and fresh .profile syntax: nanorc: colorize {toprow} and {bottomrow} for string binds syntax: sh: recognize more shells than `sh` on a shebang line for busybox tweaks: add a comment that refers to the VTE spurious-code issue tweaks: add a missing 'type' attribute to a