diff --git a/ChangeLog b/ChangeLog index 6d95d138..e1aabee0 100644 --- 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 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 + 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 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 s before a valid command keystroke + input: stop 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 index 3b82e0d2..8d655be1 100644 --- a/IMPROVEMENTS +++ b/IMPROVEMENTS @@ -1,6 +1,10 @@ Improvements in GNU nano ======================== +Since 3.0: + - wipes next word and 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 index 8449cabc..0115a100 100644 --- 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 wipe the next + word and 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 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 index 08f3e4d3..df5bf216 100644 --- 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 index ae164cf1..25e6b71a 100644 --- a/doc/faq.html +++ b/doc/faq.html @@ -91,7 +91,7 @@

1.3. Why the name change from TIP?

On January 10, 2000, TIP was officially renamed to nano because of a namespace conflict with another program called 'tip'. The original 'tip' program "establishes a full duplex terminal connection to a remote host", 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).

1.4. What is the current version of nano?

-

The current version of nano should be 2.9.8. Of course, you should always check the nano homepage to see what the latest and greatest version is.

+

The current version of nano should be 3.0. Of course, you should always check the nano homepage to see what the latest and greatest version is.

1.5. I want to read the man page without having to download the program!

Jeez, demanding, aren't we? Okay, look here.


diff --git a/doc/nano.1 b/doc/nano.1 index bd59816c..0feab78a 100644 --- a/doc/nano.1 +++ b/doc/nano.1 @@ -16,7 +16,7 @@ .\" Documentation License along with this program. If not, see .\" . .\" -.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 index 015795f7..6a47094c 100644 --- 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 index dff016f7..3f0f42cb 100644 --- a/doc/nanorc.5 +++ b/doc/nanorc.5 @@ -16,7 +16,7 @@ .\" Documentation License along with this program. If not, see .\" . .\" -.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 index 60f99616..5aa5428a 100644 --- a/doc/rnano.1 +++ b/doc/rnano.1 @@ -16,7 +16,7 @@ .\" Documentation License along with this program. If not, see .\" . .\" -.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 index 00bb734d..a39a5093 100755 --- 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 &&