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

This commit is contained in:
Benno Schulenberg 2021-12-14 11:34:11 +01:00
parent 9c1c6c18ae
commit 33ba6be91f
11 changed files with 242 additions and 11 deletions

202
ChangeLog
View File

@ -1,3 +1,205 @@
Changes between v5.9 and v6.0:
------------------------------
Benno Schulenberg (192):
bindings: allow rebinding ^Z also on a Linux console (a VT)
bindings: allow toggling line numbers (when enabled) also in tiny version
bindings: let ^T in the tiny version invoke spell checker (when included)
browser: with --zero, do not use the bottom row for displaying filenames
build: fix compilation when configured with --disable-color
build: fix compilation when configured with --disable-nanorc
build: fix compilation when configured with --enable-tiny
build: fix compilation with --enable-tiny --enable-nanorc
build: fix compilation with --enable-tiny --enable-wrapping
build: include the YAML syntax file among the distributed files
bump version numbers and add a news item for the 6.0 release
display: clear the status bar early enough, so that --zero can show text
display: do not wipe the status bar when --zero or --minibar is active
display: ensure feedback will be cleared also on a one-row terminal
display: make sure there are at least as many text lines as help lines
display: move some code for overwriting verbatim feedback with --zero
display: redraw the screen in tiny version upon resuming from suspension
display: with --zero, redraw the bottom row instead of wiping a message
docs: add a hint about making ^L do just 'refresh' to the sample nanorc
docs: add a meta description for the HTML rendering of the manual
docs: add a suggested rebind and three suggested unbinds to the sample rc
docs: avoid large Table of Contents at top of HTML version of manual
docs: clarify that --enable options do not fully counteract --enable-tiny
docs: correct the description of the layout -- four areas, not five
docs: document the effect of --quickblank together with --zero/--minibar
docs: explain the effect of --zero / -0 / 'set zero'
docs: explain what it means when --rawsequences is needed
docs: give more examples of things that --enable-tiny excludes
docs: improve the title of the manual, away from the bare "nano"
docs: list the new color names, from 'rosy' to 'crimson'
docs: mark options -z, --suspendable, and 'set suspendable' as obsolete
docs: mention "grey" also at the other place where color names are listed
docs: mention M-Z (for toggling the interface) among the Feature Toggles
docs: mention that --zero and 'set zero' hide also the help lines
docs: move the chapter about editor basics into third position
docs: prevent a black square in the PDF after the long synopsis line
docs: reshuffle a GNU marker, to make the title clearer in search engines
docs: reword several of the descriptions in the chapter on building nano
docs: reword the beginning of the chapter on nanorc files
docs: say thanks to the Indonesian translator
feedback: give a more accurate message when the help lines won't appear
feedback: refuse the --constantshow toggle (M-C) on a one-row terminal
feedback: report an unbindable function key as an "Unknown sequence"
feedback: report the number of inserted lines also with --zero or --mini
feedback: show a relevant message for M-O when the syntax has 'tabgives'
feedback: suppress chatty messages when --zero is active
feedback: to have a status bar, suppress --zero while in the help viewer
feedback: when reporting an unbound function key, mention its number
feedback: when the user types ^Z, say they can suspend nano with ^T^Z
feedback: with --mini or --zero, suppress number of lines for new buffer
feedback: with --mini/--zero, suppress message when toggling whitespace
feedback: with --zero, drop a message in a short while, as with --minibar
files: allow inserting also when started with the --noread option
files: clear original filename when the user toggles Append or Prepend
gnulib: update to its current upstream state
help: do not show ^S when --preserve is in effect
help: ensure there is a blank line between title bar and start of text
help: group the now lone mouse toggle with the "behavioral" ones
help: remove an unneeded restriction for small terminals
help: skip the leading blank line when the terminal is very flat
help: when done, always redraw the "bottom bars", also with --zero
history: process file faster by not filtering out hypothetical duplicates
input: ensure that no more bytes are consumed than are available
justify: correctly determine whether top-of-buffer has been reached
memory: avoid a tiny leak when an option with an argument is given twice
memory: avoid leaking the filename when dottifying it on the minibar
new feature: option --zero for an interface without bars
options: make --zero imply --nohelp, and 'set zero' imply 'set nohelp'
pasting: when less than a line is pasted, allow automatic hard-wrapping
prompt: avoid resetting the history pointer when the search is cancelled
prompt: begin at bottom of history list when at secondary prompt
prompt: keep a clear answer clear also after an excursion into history
rcfile: recognize fourteen new color names, mostly for subdued shades
rcfile: remove the deprecated 'cutwordleft' and 'cutwordright' keywords
replacing: keep centering the occurrence, also after toggling help lines
replacing: keep the spotlighted occurrence in view, also with --zero
replacing: keep the spotlighting, also after toggling the help lines
search: with --zero, do not obscure an occurrence on the bottom row
search: with --zero, drop a message at the same time as the spotlight
statusbar: count words in the way that matches how Ctrl+Right moves
statusbar: overwrite a message also when using --constant with --zero
suspension: enable ^Z by default -- ignore -z option and drop M-Z toggle
suspension: leave ^Z unbound by default -- just ^T^Z will suspend nano
syntax: debian: remove file -- Debian itself will have to handle it
syntax: default: colorize comments as one of the last things
syntax: default: colorize dates, URLs, and nano's release motto
syntax: email: use a character class, as \s does not work inside brackets
syntax: gentoo: remove file -- Gentoo itself will have to handle it
syntax: nanorc: add 'execute' menu for unbind, and drop a bad constraint
syntax: nanorc: avoid colorizing #rgb codes as if they were comments
syntax: nanorc: colorize a trailing comment when it begins with non-hex
syntax: nanorc: colorize each of the fourteen new color names as valid
syntax: nanorc: improve the file-matching regex
syntax: nanorc: paint arguments of 'include' and 'extendsyntax' specially
syntax: nanorc: require whitespace before the start= and end= keywords
syntax: python: colorize backslash escapes, such as \n and \xef
syntax: ruby: colorize embedded documentation as a comment
syntax: rust: do not colorize as string the text between two strings
syntax: sql: add a few more missing keywords, like TRUE and FALSE
syntax: sql: add more missing keywords, like INNER and OUTER JOIN
syntax: sql: add some missing keywords, like ALL and ANY and OR
syntax: sql: add two missing data types -- xml and tsquery
syntax: sql: colorize as flow control only keywords that clearly are such
syntax: sql: colorize keywords regardless of case, and tweak the colors
syntax: sql: colorize only single-quoted things as strings
syntax: sql: colorize strings differently than types
syntax: sql: remove alien stuff -- it was copied mostly from ruby syntax
syntax: texinfo: be more precise in colorizing @commands
syntax: texinfo: colorize the special @-plus-punctuation commands too
syntaxes: avoid coloring "this\" as if it were a valid string
syntaxes: colorize hex more strictly by using character class [:xdigit:]
syntaxes: drop three redundant end-of-line anchors
syntaxes: undouble the backslash within bracket expressions
syntaxes: use one regex for coloring quoted strings, to avoid overlap
tabbing: also with --zero, stay one row away from the prompt bar
tweaks: add an auxiliary variable, to prepare for handling --zero
tweaks: add two spaces and two comments, and drop an internal check
tweaks: adjust two values -- help lines need at least 6 rows to be shown
tweaks: avoid a compiler warning with --enable-tiny --enable-linenumbers
tweaks: avoid redrawing the entire window when just a 'touch' will do
tweaks: condense the definitions of all the empty functions
tweaks: condense the regexes for Types in the SQL syntax
tweaks: don't redraw the help lines (if present), and normalize a brace
tweaks: drop a fragment of code that became functionless
tweaks: elevate two messages, so they get shown with --mini or --zero
tweaks: elide a variable that is confusing and has just one use case
tweaks: elide two functions that each were called just once
tweaks: elide two parameters, as they are now always the same
tweaks: exclude some hidden-interface code from the tiny version
tweaks: exclude some suspension code from the tiny version
tweaks: fix a parentheses mistake -- found by a warning from Clang
tweaks: fix a somewhat humorous typo
tweaks: fix typo, and improve description of 'set zero' in sample nanorc
tweaks: fold a special case into the general one
tweaks: fold some regexes together, and trim or improve some comments
tweaks: frob a couple of comments, and drop two, for conciseness
tweaks: improve a comment, and drop two cluttering compile conditions
tweaks: invert a condition, to get an early return instead of indentation
tweaks: just let do_wrap() set 'refresh_needed' instead of returning TRUE
tweaks: mark keystrokes consistently with @kbd in the manual
tweaks: move a translator hint to where xgettext will see it
tweaks: normalize whitespace, drop unneeded prototype, condense comment
tweaks: on one-row terminals, suppress the message for two toggles
tweaks: place the unsetting of a flag better, and rename a variable
tweaks: put three email addresses between the customary angled brackets
tweaks: reassign a copy of a string to a variable more economically
tweaks: reduce redundancy (--enable-color implies --enable-nanorc)
tweaks: remove redundant pair of parentheses, and swap two alternatives
tweaks: remove redundant parentheses, trim comments, fold some regexes
tweaks: remove two unneeded unsettings
tweaks: rename a function and its parameter, to be clearer
tweaks: rename a function, away from using an abbreviation
tweaks: rename a function, for some contrast and to get rid of a suffix
tweaks: rename a function, to describe better what it does nowadays
tweaks: rename a function, to make it make sense
tweaks: rename a variable, to be distinctive and less confusing
tweaks: rename a variable, to be easier to read and to make more sense
tweaks: rename five empty functions, to get rid of a meaningless suffix
tweaks: rename three functions, to better fit the general scheme
tweaks: rename three parameters, away from single letters
tweaks: rename two empty functions, to be more to the point
tweaks: rename two functions, to get rid of another senseless suffix
tweaks: rename two functions, to get rid of one more senseless suffix
tweaks: rename two functions, to get rid of the senseless suffix of one
tweaks: rename two more functions, to lose a senseless suffix
tweaks: rename two parameters and one variable, away from single letters
tweaks: rename two variables, away from abbreviations
tweaks: rename two variables, to fit with the names of similar ones
tweaks: replace a verbose condition with a simpler early return
tweaks: replace the obscure @* with the slightly clearer @sp
tweaks: replace two direct refreshes with two scheduled ones
tweaks: reshuffle a coloring rule, to have related ones together
tweaks: reshuffle a few lines, and rename a variable
tweaks: reshuffle a few lines, for Christmas and to group things better
tweaks: reshuffle a fragment of code to a better place
tweaks: reshuffle a line and adjust indentation after previous change
tweaks: reshuffle a line into its proper order, and improve two comments
tweaks: reshuffle some conditions, so that the ifs have similar formats
tweaks: reshuffle some conditions, to have more balanced lines
tweaks: reshuffle some lines, one for clarity, others for conciseness
tweaks: reshuffle the flag conversion into their order in the help text
tweaks: reshuffle two conditions, re-indent, and rewrap a line
tweaks: reword a paragraph, and use usual M- to depict Meta keystrokes
tweaks: rewrap an old news item, for distraction
tweaks: rewrap three old NEWS items, for esthetics, and fix a date
tweaks: shorten a comment, and drop some conditionalizing
tweaks: shorten the description of --zero in the manuals a bit
tweaks: shorten two comments, and fold two statements together
tweaks: swap two parts of specific regexes, for consistency with others
tweaks: untangle two case items, and shorten a message
tweaks: use a color closer to the rest of the string, to reduce contrast
tweaks: use a few fewer capitals, and drop an unneeded synonym
Brad Town (2):
docs: add a description of the hexadecimal #rgb color specification
rcfile: support #rgb format for specifying colors in 256-color terminals
Changes between v5.8 and v5.9: Changes between v5.8 and v5.9:
------------------------------ ------------------------------

View File

@ -1,6 +1,12 @@
Improvements in GNU nano Improvements in GNU nano
======================== ========================
Since 6.0:
- Option --zero hides the interface and uses the whole terminal for editing.
- Colors can be given also in #rgb hexadecimal, to select the nearest color
from the 6x6x6 color-cube palette available on 256-color terminals.
- Fourteen new color names are available, from rosy to crimson.
Since 5.0: Since 5.0:
- A search briefly spotlights the found text, in black on yellow by default. - A search briefly spotlights the found text, in black on yellow by default.
- Option --minibar reduces the interface to a bottom bar with basic info. - Option --minibar reduces the interface to a bottom bar with basic info.

23
NEWS
View File

@ -1,3 +1,26 @@
2021.12.15 - GNU nano 6.0 "Humor heeft ook zijn leuke kanten"
• Option --zero hides the title bar, status bar and help lines, and
uses all rows of the terminal as editing area. The title bar and
status bar can be toggled with M-Z.
• Colors can now be specified also as three-digit hexadecimal numbers,
in the format #rgb. This picks from the 216 index colors (that most
terminals know) the color that is nearest to the given values.
• For users who dislike numbers, there are fourteen new color names:
rosy, beet, plum, sea, sky, slate, teal, sage, brown, ocher, sand,
tawny, brick, and crimson.
• Suspension is enabled by default, invokable with ^T^Z. The options
-z, --suspendable, and 'set suspendable' are obsolete and ignored.
(In case you want to be able to suspend nano with a single keystroke,
you can put 'bind ^Z suspend main' in your nanorc.)
• When automatic hard-wrapping is in effect, pasting just a few words
(without a line break) will now hard-wrap the line when needed.
• Toggling Append or Prepend clears the current filename.
• The word count as shown by M-D is now affected by option --wordbounds;
with it, nano counts words as 'wc' does; without it (the new default),
words are counted in a more human way: seeing punctuation as space.
• The YAML syntax file is now actually included in the tarball.
2021.10.06 - GNU nano 5.9 "El manicomio ha decidido: mañana sol!" 2021.10.06 - GNU nano 5.9 "El manicomio ha decidido: mañana sol!"
• The extension of a filename is added to the name of a corresponding • The extension of a filename is added to the name of a corresponding
temporary file, so that spell checking a C file, for example, will temporary file, so that spell checking a C file, for example, will

2
README
View File

@ -15,7 +15,7 @@ Appearance
In rough ASCII graphics, this is what nano's screen looks like: In rough ASCII graphics, this is what nano's screen looks like:
____________________________________________________________________ ____________________________________________________________________
| GNU nano 5.9 filename Modified | | GNU nano 6.0 filename Modified |
-------------------------------------------------------------------- --------------------------------------------------------------------
| This is the text window, displaying the contents of a 'buffer', | | This is the text window, displaying the contents of a 'buffer', |
| the contents of the file you are editing. | | the contents of the file you are editing. |

View File

@ -16,7 +16,7 @@
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this program. If not, see https://www.gnu.org/licenses/. # along with this program. If not, see https://www.gnu.org/licenses/.
AC_INIT([GNU nano], [5.9], [nano-devel@gnu.org], [nano]) AC_INIT([GNU nano], [6.0], [nano-devel@gnu.org], [nano])
AC_CONFIG_SRCDIR([src/nano.c]) AC_CONFIG_SRCDIR([src/nano.c])
AC_CANONICAL_HOST AC_CANONICAL_HOST
AM_INIT_AUTOMAKE([1.14]) AM_INIT_AUTOMAKE([1.14])

View File

@ -92,7 +92,7 @@
<h3><a name="1.3"></a>1.3. Why the name change from TIP?</h3> <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> <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> <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.9</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>6.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> <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> <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%"> <hr width="100%">

View File

@ -16,7 +16,7 @@
.\" Documentation License along with this program. If not, see .\" Documentation License along with this program. If not, see
.\" <https://www.gnu.org/licenses/>. .\" <https://www.gnu.org/licenses/>.
.\" .\"
.TH NANO 1 "version 5.9" "October 2021" .TH NANO 1 "version 6.0" "December 2021"
.SH NAME .SH NAME
nano \- Nano's ANOther editor, inspired by Pico nano \- Nano's ANOther editor, inspired by Pico

View File

@ -13,8 +13,8 @@ The complete manual for the GNU nano text editor.
@smallbook @smallbook
@set EDITION 0.6 @set EDITION 0.6
@set VERSION 5.9 @set VERSION 6.0
@set UPDATED October 2021 @set UPDATED December 2021
@dircategory Editors @dircategory Editors
@direntry @direntry
@ -29,7 +29,7 @@ The complete manual for the GNU nano text editor.
@title GNU @command{nano} @title GNU @command{nano}
@subtitle a small and friendly text editor @subtitle a small and friendly text editor
@subtitle version 5.9 @subtitle version 6.0
@author Chris Allegretta @author Chris Allegretta
@ -76,7 +76,7 @@ For suggesting improvements: @email{nano-devel@@gnu.org}
@node Top @node Top
@top @top
This manual documents GNU @command{nano}, version 5.9. This manual documents GNU @command{nano}, version 6.0.
@menu @menu
* Introduction:: * Introduction::

View File

@ -16,7 +16,7 @@
.\" Documentation License along with this program. If not, see .\" Documentation License along with this program. If not, see
.\" <https://www.gnu.org/licenses/>. .\" <https://www.gnu.org/licenses/>.
.\" .\"
.TH NANORC 5 "version 5.9" "October 2021" .TH NANORC 5 "version 6.0" "December 2021"
.SH NAME .SH NAME
nanorc \- GNU nano's configuration file nanorc \- GNU nano's configuration file

View File

@ -16,7 +16,7 @@
.\" Documentation License along with this program. If not, see .\" Documentation License along with this program. If not, see
.\" <https://www.gnu.org/licenses/>. .\" <https://www.gnu.org/licenses/>.
.\" .\"
.TH RNANO 1 "version 5.9" "October 2021" .TH RNANO 1 "version 6.0" "December 2021"
.SH NAME .SH NAME
rnano \- a restricted nano rnano \- a restricted nano

View File

@ -1,6 +1,6 @@
#!/bin/bash #!/bin/bash
VERSION="5.9" VERSION="6.0"
./configure -C --enable-tiny && make && ./configure -C && ./configure -C --enable-tiny && make && ./configure -C &&