nano

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

commit b1a0f5e65abb8c02ec684f905d574b268936d2f4
parent 7e8b1ed4202513486d199204f2eaac9fb4f5d7b2
Author: Benno Schulenberg <bensberg@telfort.nl>
Date:   Tue, 11 Aug 2020 08:23:41 +0200

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

Diffstat:
MChangeLog | 65+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
MIMPROVEMENTS | 1+
MNEWS | 10++++++++++
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, 86 insertions(+), 10 deletions(-)

diff --git a/ChangeLog b/ChangeLog @@ -1,3 +1,68 @@ +Changes between v5.0 and v5.1: +------------------------------ + +Benno Schulenberg (55): + anchor: in a UTF-8 locale, show an anchor as a diamond, for visibility + anchor: show an anchor also when the line is horizontally scrolled + bindings: make <Alt+Backspace> delete a word backwards, like in Bash + build: fix compilation for --enable-tiny --enable-nanorc --enable-color + build: fix compilation when configured with --enable-tiny + build: stop distributing the two old Changelogs + bump version numbers and add a news item for the 5.1 release + display: show the cursor position also right after the screen is resized + docs: fix a closing tag in the FAQ [tidy] + docs: mention that anchors are visible when line numbers are shown + feedback: add the reason to the error message when forking fails + feedback: use three dots to indicate processing, like everywhere else + feedback: when creating a pipe fails, report also the reason + files: do not try writing to the status bar while not in curses mode + formatter: force the mark off, to not crash by accessing empty cutbuffer + gnulib: update to its current upstream state + help: list again the keystroke for toggling the help lines (M-X) + input: understand M-Bsp also when terminfo does not match the terminal + moving: make <Ctrl+Up> go to the top when above the cursor all is blank + rcfile: allow to bind M-[ (even though it is an escape-sequence starter) + softwrap: initialize the 'extrarows' value for the magic line correctly + speller: give proper feedback when the user tries to check emptiness + speller: give startup feedback (relevant when running on a Linux console) + speller: re-enter curses mode before trying to report an error + syntax: css: differentiate pseudo-classes (now cyan) from comments (blue) + syntax: default: colorize also "GNU nano 5.x" + tweaks: adjust the indentation after the previous change + tweaks: adjust the indentation after the previous change + tweaks: avoid a maybe-uninitialized-variable warning from gcc + tweaks: elide an unneeded variable, by transforming the key code directly + tweaks: elide two variables that are no longer needed, and update comment + tweaks: exclude old and mistaken "Esc O" sequences from the tiny version + tweaks: make a few more direct returns, and reshuffle another bit of code + tweaks: make a misplaced call of statusline() more obvious by crashing + tweaks: normalize the indentation after the previous change + tweaks: normalize the indentation, and regroup two lines + tweaks: optimize for byte-range characters, and shorten some comments + tweaks: parse the escape-sequence bytes without copying them first + tweaks: pass first byte of sequence directly to the decoding function + tweaks: print error message directly instead of passing it to the caller + tweaks: read keycodes from the keystroke buffer without copying them + tweaks: remove an unneeded beep, and reshuffle the lines for compactness + tweaks: reshuffle a few lines, to condense the code, and improve comment + tweaks: reshuffle four lines, for esthetics + tweaks: reshuffle some fragments, to make the next change easier + tweaks: reshuffle the zeroing of a counter, to allow some direct returns + tweaks: simplify two functions, as they now return always NULL + tweaks: split a function into two, one for "Esc O" and one for "Esc [" + tweaks: stop using a 'switch' when there are just three possibilities + verbatim: discard entire keystroke when it's not valid for Unicode Input + verbatim: do not report "Invalid code" when a Unicode character is typed + verbatim: do not report "Invalid code" when the terminal is resized + verbatim: insert the full code sequence when <Alt+Backspace> is pressed + verbatim: pause a little after an ESC, to not miss a succeeding code + verbatim: report and ignore an invalid keystroke for Unicode input + +Michalis Kokologiannakis (2): + build: avoid compilation warnings by using memcpy() instead of strncpy() + files: ignore only EPERM when fchmod() or fchown() fails + + Changes between v4.9 and v5.0: ------------------------------ diff --git a/IMPROVEMENTS b/IMPROVEMENTS @@ -2,6 +2,7 @@ Improvements in GNU nano ======================== Since 5.0: + - M-Bsp deletes a word leftward. - With --indicator a "scrollbar" is shown, indicating position+portion. - M-Ins places an anchor, M-PgUp/M-PgDn jump to the nearest anchor. - Toggling help lines (M-X) and Refresh (^L) work nearly everywhere. diff --git a/NEWS b/NEWS @@ -1,3 +1,13 @@ +2020.08.12 - GNU nano 5.1 +• M-Bsp (Alt+Backspace) deletes a word backwards, like in Bash. +• M-[ has become bindable. (Be careful, though: as it is the + starting combination of many escape sequences, avoid gluing + it together with other keystrokes, like in a macro.) +• With --indicator and --softwrap, the first keystroke in an + empty buffer does not crash. +• Invoking the formatter while text is marked does not crash. +• In UTF-8 locales, an anchor is shown as a diamond. + 2020.07.29 - GNU nano 5.0 "Among the fields of barley" • With --indicator (or -q or 'set indicator') nano will show a kind of scrollbar on the righthand side of the screen to indicate where 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 https://www.gnu.org/licenses/. -AC_INIT([GNU nano], [5.0], [nano-devel@gnu.org], [nano]) +AC_INIT([GNU nano], [5.1], [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 @@ -89,7 +89,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>5.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> +<blockquote><p>The current version of nano <i>should</i> be <b>5.1</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 .\" <https://www.gnu.org/licenses/>. .\" -.TH NANO 1 "version 5.0" "July 2020" +.TH NANO 1 "version 5.1" "August 2020" .SH NAME nano \- Nano's ANOther editor, inspired by Pico diff --git a/doc/nano.texi b/doc/nano.texi @@ -8,8 +8,8 @@ @smallbook @set EDITION 0.5 -@set VERSION 5.0 -@set UPDATED July 2020 +@set VERSION 5.1 +@set UPDATED August 2020 @dircategory Editors @direntry @@ -23,7 +23,7 @@ @titlepage @title GNU @command{nano} @subtitle a small and friendly text editor -@subtitle version 5.0 +@subtitle version 5.1 @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 5.0. +This manual documents the GNU @command{nano} editor, version 5.1. @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 .\" <https://www.gnu.org/licenses/>. .\" -.TH NANORC 5 "version 5.0" "July 2020" +.TH NANORC 5 "version 5.1" "August 2020" .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 .\" <https://www.gnu.org/licenses/>. .\" -.TH RNANO 1 "version 5.0" "July 2020" +.TH RNANO 1 "version 5.1" "August 2020" .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="5.0" +VERSION="5.1" ./configure -C --enable-tiny && make && ./configure -C &&