nano

nano with my custom patches
git clone git://bsandro.tech/nano
Log | Files | Refs | README | LICENSE

commit 8efdd08a86948dab86b89c559d203189d47bc258
parent 27d2db2d1fa151a6f72b60aeac2cf990144c00e4
Author: Benno Schulenberg <bensberg@telfort.nl>
Date:   Thu,  6 Sep 2018 19:34:42 +0200

bump version numbers and add a news item for the 3.0 release

Diffstat:
MChangeLog | 151++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
MIMPROVEMENTS | 4++++
MNEWS | 23+++++++++++++++++++++++
Mconfigure.ac | 2+-
Mdoc/faq.html | 2+-
Mdoc/nano.1 | 2+-
Mdoc/nano.texi | 8++++----
Mdoc/nanorc.5 | 2+-
Mdoc/rnano.1 | 2+-
Mroll-a-release.sh | 2+-
10 files changed, 188 insertions(+), 10 deletions(-)

diff --git a/ChangeLog b/ChangeLog @@ -1,3 +1,154 @@ +Changes between v2.9.8 and v3.0: +-------------------------------- + +Benno Schulenberg (113): + bindings: bind M-Q to 'findprevious' by default, and M-W to 'findnext' + bindings: hard-bind <Ctrl+Shift+Delete> to 'cutwordleft' + bindings: make ^Q and M-Q available also in the help viewer + bindings: move the noconvert toggle from the main to the insert menu + bindings: reassign the M-| keystroke to 'cutwordleft' by default + bindings: remove backup and new-buffer toggles (M-B, M-F) from main menu + bindings: remove the More-Space toggle entirely + bindings: remove the 'searchagain' function entirely + bindings: rename two bindable functions: copytext to copy, uncut to paste + bindings: unassign the M-? keystroke, to free it up for future use + build: add the release script to the repository + build: fix compilation again when configured with --enable-tiny + build: fix compilation when configured with --enable-tiny + build: verify that 'msgfmt' is available when building from git + bump version numbers and add a news item for the 3.0 release + chars: make the UTF-8 case ever so slightly faster by eliding an 'if' + chars: speed up the counting of string length for the plain ASCII case + chars: speed up the parsing of a character for the plain ASCII case + completion: when the cursor is not after a word fragment, say so + cut: concentrate the logic for clearing the cutbuffer mostly in one place + cutting: when deleting whole words, don't join lines unexpectedly + debug: add some code to time the performance of get_totsize() + docs: improve a comment about rebinding <Backspace> + docs: mention that also Ctrl increases the stride when selecting text + docs: mention that "normal" can be used to give things the default color + docs: mention that the 'formatter' command has been superseded + docs: reshuffle a bindable function to a slightly better position + docs: say that 'cutwordright' is now bound to <Ctrl+Delete> by default + docs: slightly reword the description of four bindable functions + docs: the 'noconvert' bindable function was renamed to 'flipconvert' + dropping a feature: remove the ability to use the 'formatter' command + easter: show the crawl only when there is room enough for the lines + files: add the file format on the status bar when switching buffers + filtering: wait for the data-sending process to terminate too + gnulib: update to its current upstream state + help: for ^R^X, mention that the buffer can be piped to the command + help: move "Search Again" away from "Find Next" and "Find Previous" + input: consume the whole escape sequence for modified PgUp and PgDn keys + input: fully consume modified PgUp and PgDn keys also in the tiny version + input: ignore any <Escape>s before a valid command keystroke + input: stop <Alt+Insert> from entering "3~" into the buffer + input: stop a modified Delete key from entering stuff into the buffer + mouse: put the row/column arguments in the proper order [coverity scan] + prompt: concentrate manipulations of 'statusbar_x' into a single file + prompt: remove redundant redrawings of the prompt bar + rcfile: allow to rebind the Cancel function in the yesno menu + rcfile, docs: no longer recognize nor mention 'set backwards' + rcfile: do not accept rebinding F0 nor function keys above F16 + rcfile: ensure that in the yesno menu Cancel is bound to some keystroke + rcfile: explicitly check for disallowed keywords in included files + rcfile: reject things like "M-Del" and "^{" as invalid key names + rcfile: when a vital function is not mapped, mention in which menu + search: include 'findprevious' and 'findnext' in the tiny version + signals: don't call a print routine in a signal handler + speller: do not replace the text when the temporary file did not change + startup: don't overwrite rcfile error messages on a Linux console + startup: show the correct number of lines when opening multiple files + syntax: awk: recognize any {g,m,n,}awk script also by its shebang line + syntax: default: colorize also two-digit and capitalized nano versions + syntaxes: remove all traces of the 'formatter' command + syntax: nanorc: recognize 'yesno' as a valid menu to bind/unbind keys in + syntax: nanorc: show ^@ as validly rebindable, but not any ^digit + syntax: python: avoid coloring the three special values inside strings + text: add auto-whitespace to the file size after creating the undo item + tweaks: adjust indentation after the previous change + tweaks: adjust one more translator hint, for removed toggles + tweaks: adjust some translator hints for past changes, and add two more + tweaks: adjust two comments, to be more accurate and general + tweaks: avoid dereferencing a pointer when it is NULL [coverity scan] + tweaks: close a temp file only when descriptor is valid [coverity scan] + tweaks: correct a comment, rewrap a line, and drop some debugging stuff + tweaks: delete some old debugging code that no longer seems useful + tweaks: don't bother having debug code that deallocates all memory + tweaks: don't call va_start() without calling va_end() [coverity scan] + tweaks: drop a condition that has been made redundant two commits ago + tweaks: drop some old debugging code + tweaks: elide a bunch of unneeded constant strings + tweaks: elide a function that is used just once + tweaks: elide another function that is used just once + tweaks: elide an unneeded/duplicate variable + tweaks: elide a one-line function -- no, a half-line function + tweaks: elide a subfunction that is used just once + tweaks: exclude a global flagging variable when it is not needed + tweaks: exclude the file-prepending code from the tiny version + tweaks: fix a pasting error from a month ago + tweaks: implement the name-to-menu function in another manner + tweaks: improve a couple of comments in the sample nanorc + tweaks: improve a translator hint and some other comments + tweaks: move a call to where it will be executed [coverity scan] + tweaks: normalize the indentation after the previous change + tweaks: properly escape "\" in a man page and "@" in a texi document + tweaks: recognize escape sequences of modified Ins/Del more precisely + tweaks: reduce the counting of characters to just the needed function + tweaks: remove a redundant "struct" word, and replace it in comments + tweaks: remove a superfluous condition and a redundant refresh + tweaks: remove redundant braces and conditions after the previous change + tweaks: remove some braces that are now superfluous + tweaks: remove some ineffectual parts from header-line regexes + tweaks: remove the superfluous calls that reset the mbtowc() state + tweaks: remove two needless words, and split up a changed text further + tweaks: remove two superfluous assignments + tweaks: rename a constant, to match what it actually means + tweaks: rename a function and place its call better + tweaks: rename a function to better match its counterpart + tweaks: rename a function, to better state what it does + tweaks: rename a variable and a function, for more clarity + tweaks: rename a variable, to better match its task + tweaks: reshuffle some lines, in order to elide one + tweaks: reshuffle the order of the bindings, for help-line esthetics + tweaks: show "Space" and "Bsp" in the help text of the browser + tweaks: slightly improve error message when vital function is unmapped + tweaks: use a shorter message, because when the screen is small... + undo: differentiate between general filtering and spell checking + +Brand Huntsman (4): + input: give feedback for all unbound keys also in the help viewer + statusbar: elevate three messages to an ALERT, to make them more visible + tweaks: correct four spaces of indentation to a tab, in two places + tweaks: remove the 'bright' field from the colortype struct + +David Lawrence Ramsey (13): + bindings: make "n" work again in file browser and help viewer + bindings: make ^Q start a backward search also in the file browser + docs: mention that "Ins" and "Del" are valid rebindable keys + justify: verify being in a paragraph before trying to find its beginning + speller: hook up a full alternative spellcheck to the undo system + speller: hook up a marked-text alternative spellcheck to the undo system + speller: make replace_buffer() use the cutting functions directly + speller: make replace_marked_buffer() use the cutting functions directly + undo: actually enable undoing/redoing an alternative spellcheck + undo: always initialize the 'newsize' element in the undo struct + undo: position the cursor properly when undoing/redoing magicline cuts + undo: restore the cursor position when a cut and paste are paired + undo: store the correct cursor position after a paired cut+insert + +Devin Hussey (2): + files: speed up reading by using getc_unlocked() instead of getc() + syntax: sh: recognize more file extensions and header lines + +Marco Diego Aurélio Mesquita (1): + input: erase the next word when Ctrl is held while pressing Delete + +Mark-Weston (2): + build: fix compilation when CC=tcc + syntax: lua: do not color strings inside comments, and add a linter + + Changes between v2.9.7 and v2.9.8: ---------------------------------- diff --git a/IMPROVEMENTS b/IMPROVEMENTS @@ -1,6 +1,10 @@ Improvements in GNU nano ======================== +Since 3.0: + - <Ctrl+Delete> wipes next word and <Shift+Ctrl+Delete> preceding word. + - An external spell check can be undone. + Since 2.9.0: - The ability to filter text through an external command. - Better detection of paragraphs, allowing a less indented beginning. diff --git a/NEWS b/NEWS @@ -1,3 +1,26 @@ +2018.09.09 - GNU nano 3.0 "Water Flowing Underground" speeds up the + reading of a file by seventy percent, roughly doubles the + speed of handling ASCII text, changes the way words at line + boundaries are deleted, makes <Ctrl+Delete> wipe the next + word and <Ctrl+Shift+Delete> the preceding word, binds M-Q + to 'findprevious' by default (the Tabs-to-Spaces toggle is + placed on M-O, and the More-Space toggle is fully removed), + makes an external spell check undoable, shows the correct + number of lines on the status bar when opening multiple + files, removes the 'formatter' command, removes the + 'searchagain' bindable function (M-W is now bound to + 'findnext' by default), moves the No-Convert toggle to the + Insert menu, removes the Backup and New-Buffer toggles from + the main menu (they remain in the Write-Out and Insert + menus, respectively), is more precise in what it accepts as + a rebindable key name, ignores any presses of <Esc> before + a valid command keystroke, recognizes some more escape + sequences for modified editing-pad keys, does not hide + rcfile error messages on a Linux console, renames the + bindable functions 'copytext' to 'copy' and 'uncut' to + 'paste', and avoids a possible hang during a Full-Justify. + + 2018.06.02 - GNU nano 2.9.8 "Espresso" brings the ability to filter the buffer (or the marked region) through an external command (^R^X and prefix the command with the pipe symbol, "|"), is diff --git a/configure.ac b/configure.ac @@ -16,7 +16,7 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see http://www.gnu.org/licenses/. -AC_INIT([GNU nano], [2.9.8], [nano-devel@gnu.org], [nano]) +AC_INIT([GNU nano], [3.0], [nano-devel@gnu.org], [nano]) AC_CONFIG_SRCDIR([src/nano.c]) AC_CANONICAL_HOST AM_INIT_AUTOMAKE([1.14]) diff --git a/doc/faq.html b/doc/faq.html @@ -91,7 +91,7 @@ <h3><a name="1.3"></a>1.3. Why the name change from TIP?</h3> <blockquote><p>On January 10, 2000, TIP was officially renamed to nano because of a namespace conflict with another program called 'tip'. The original 'tip' program &quot;establishes a full duplex terminal connection to a remote host&quot;, and was included with many older Unix systems (and newer ones like Solaris). The conflict was not noticed at first because there is no 'tip' utility included with most GNU/Linux distributions (where nano was developed).</p></blockquote> <h3><a name="1.4"></a>1.4. What is the current version of nano?</h3> -<blockquote><p>The current version of nano <i>should</i> be <b>2.9.8</b>. Of course, you should always check the <a href="https://nano-editor.org/">nano homepage</a> to see what the latest and greatest version is.</p></blockquote> +<blockquote><p>The current version of nano <i>should</i> be <b>3.0</b>. Of course, you should always check the <a href="https://nano-editor.org/">nano homepage</a> to see what the latest and greatest version is.</p></blockquote> <h3><a name="1.5"></a>1.5. I want to read the man page without having to download the program!</h3> <blockquote><p>Jeez, demanding, aren't we? Okay, look <a href="https://nano-editor.org/dist/latest/nano.1.html">here</a>.</p></blockquote> <hr width="100%"> diff --git a/doc/nano.1 b/doc/nano.1 @@ -16,7 +16,7 @@ .\" Documentation License along with this program. If not, see .\" <http://www.gnu.org/licenses/>. .\" -.TH NANO 1 "version 2.9.8" "June 2018" +.TH NANO 1 "version 3.0" "September 2018" .SH NAME nano \- Nano's ANOther editor, an enhanced free Pico clone diff --git a/doc/nano.texi b/doc/nano.texi @@ -8,8 +8,8 @@ @smallbook @set EDITION 0.5 -@set VERSION 2.9.8 -@set UPDATED June 2018 +@set VERSION 3.0 +@set UPDATED September 2018 @dircategory Editors @direntry @@ -23,7 +23,7 @@ @titlepage @title GNU @command{nano} @subtitle a small and friendly text editor -@subtitle version 2.9.8 +@subtitle version 3.0 @author Chris Allegretta @page @@ -63,7 +63,7 @@ e-mail: @email{chrisa@@asty.org}@* @node Top @top -This manual documents the GNU @command{nano} editor, version 2.9.8. +This manual documents the GNU @command{nano} editor, version 3.0. @menu * Introduction:: diff --git a/doc/nanorc.5 b/doc/nanorc.5 @@ -16,7 +16,7 @@ .\" Documentation License along with this program. If not, see .\" <http://www.gnu.org/licenses/>. .\" -.TH NANORC 5 "version 2.9.8" "June 2018" +.TH NANORC 5 "version 3.0" "September 2018" .SH NAME nanorc \- GNU nano's configuration file diff --git a/doc/rnano.1 b/doc/rnano.1 @@ -16,7 +16,7 @@ .\" Documentation License along with this program. If not, see .\" <http://www.gnu.org/licenses/>. .\" -.TH RNANO 1 "version 2.9.8" "June 2018" +.TH RNANO 1 "version 3.0" "September 2018" .SH NAME rnano \- a restricted nano diff --git a/roll-a-release.sh b/roll-a-release.sh @@ -1,6 +1,6 @@ #!/bin/bash -VERSION="2.9.8" +VERSION="3.0" echo "Pulling..." && git pull && echo "Running autogen..." && ./autogen.sh &&