[ANNOUNCE] nano-5.7 is released
Benno Schulenberg <[email protected]> Thu, 29 Apr 2021 13:09:31 +0200
| Newsgroups | gmane.editors.nano.announce,gmane.editors.nano.devel |
|---|---|
| Message-ID | <[email protected]> |
This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--===============6306075197176679292==
Content-Type: multipart/signed; micalg=pgp-sha512;
protocol="application/pgp-signature";
boundary="QGWDNJP2Hw29QvsX2PhuJBBnL32CXMBEZ"
This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--QGWDNJP2Hw29QvsX2PhuJBBnL32CXMBEZ
Content-Type: multipart/mixed; boundary="ECSx4OP0tfLpxULq8XVt8MzXA0TyLrpWd"
--ECSx4OP0tfLpxULq8XVt8MzXA0TyLrpWd
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: quoted-printable
2021.04.29 - GNU nano 5.7 "To=C8=9Bi ceilal=C8=9Bi arau c=C3=A2mpurile"
=E2=80=A2 The output of --constantshow (without --minibar) is more stable=
=2E
=E2=80=A2 When opening multiple buffers and there is an error message, th=
is
message is shown again upon first switch to the relevant buffer.
=E2=80=A2 The position and size of the indicator now follow actual lines,=
instead of visual lines when in softwrap mode, meaning that the
size of the indicator can change when scrolling in softwrap mode.
GNU nano is a simple and easy-to-use editor for on the terminal.
https://nano-editor.org/
https://nano-editor.org/manual.html
A concise overview of nano's shortcut keystrokes:
https://nano-editor.org/cheatsheet.html
The tarball and its signature are here:
https://nano-editor.org/dist/v5/nano-5.7.tar.xz
https://nano-editor.org/dist/v5/nano-5.7.tar.xz.asc
Specific issues that were addressed in this release:
https://savannah.gnu.org/bugs/?60104 (memory leak when undoing uninden=
ting)
https://savannah.gnu.org/bugs/?60172 (memory leak when pasting with sy=
ntax)
https://savannah.gnu.org/bugs/?60262 (invalid Unicodes were mispresent=
ed)
https://savannah.gnu.org/bugs/?60263 (some codes were misjudged as inv=
alid)
https://savannah.gnu.org/bugs/?60278 (unwritable DOS file got Unix for=
mat)
https://savannah.gnu.org/bugs/?60315 (wrong message when ^G was reboun=
d)
https://savannah.gnu.org/bugs/?60393 (rare cursor misplacement on Open=
BSD)
https://savannah.gnu.org/bugs/?60429 (toggling line numbers could be s=
low)
https://savannah.gnu.org/bugs/?60436 (use-after-free for an offscreen =
undo)
https://savannah.gnu.org/bugs/?60456 (CR was miscolored as valid)
Changes between v5.6.1 and v5.7:
--------------------------------
Mike Frysinger (1):
syntax: tcl: support Expect scripts too
Hussam al-Homsi (1):
syntax: c: make the highlighting of '#include <...>' more compliant=
Benno Schulenberg (63):
build: drop the check for two functions that we don't use any more
build: fix compilation for --enable-tiny plus --enable-multibuffer
build: fix compilation when configured with --disable-multibuffer
build: fix compilation when configured with --enable-tiny
bump version numbers and add a news item for the 5.7 release
chars: implement mblen() ourselves, for efficiency
chars: implement mbtowc() ourselves, for more efficiency
chars: work around a UTF-8 bug in glibc, to display invalid codes r=
ight
chars: work around the wrong private-use-character widths on OpenBS=
D
display: avoid determining twice from and until where to draw each =
row
display: make the output of --constantshow less jittery
editing: prevent the pointer for the top row from becoming dangling=
feedback: upon first switch to a buffer, show its error message (if=
any)
files: always register the format, also when the file is unwritable=
files: create a new buffer earlier, so that error messages can be s=
tored
files: when Mac format has been detected, stay with it
gnulib: pull in the fix for a build problem on older Debian
gnulib: update to its current upstream state
indicator: adjust the size to the number of visible lines, not chun=
ks
input: accept Unicode codes for non-characters as valid, since they=
are
memory: do not allocate space for multidata when it's already alloc=
ated
memory: fix an off-by-one error to free also the last line in a gro=
up
memory: prevent a use-after-free when the user respects a lock file=
oops: that doesn't work -- you can't break out of two for loops at =
once
options: retire the obsolete 'smooth', 'morespace', and 'nopauses'
po: update translations and regenerate POT file and PO files
softwrap: avoid time-consuming computations, to burden large files =
less
startup: do not crash when trying to open a device or directory
startup: do not store an error message in the record of another buf=
fer
startup: save the compiled file-matching regexes, to avoid recompil=
ing
startup: show the helpful message only when ^G has not been rebound=
syntax: c: colorize also labels that contain digits, and uncolorize=
colon
syntax: po: improve the coloring of format specifiers
syntaxes: replace [[:space:]] with [[:blank:]] to exclude carriage =
return
tweaks: adjust and improve one comment, and frob another
tweaks: adjust two comments, and reshuffle two fragments
tweaks: avoid a warning on newer compilers, by writing an extra byt=
e
tweaks: avoid calling extra_chunks_in() when not softwrapping
tweaks: avoid converting a file name for more than will fit on scre=
en
tweaks: avoid parsing a multibyte character twice
tweaks: condense three comments, drop another, and rewrap a line
tweaks: drop unneeded braces and adjust indentation after previous =
change
tweaks: elide a call of strlen() for every row
tweaks: elide a function that is now basically just two lines
tweaks: elide an unneeded resetting NULL call to wctomb()
tweaks: elide a small function that is used just once
tweaks: elide the pointless is_valid_unicode() function
tweaks: elide two more instances of useless character copying
tweaks: improve a couple of comments
tweaks: morph a function into what it is actually used for
tweaks: normalize the indentation after an earlier change
tweaks: put the most likely condition first, for a quicker return
tweaks: reduce the maximum character length from six bytes to four
tweaks: remove a misplaced (and nested) #ifdef
tweaks: rename a variable, away from an abbreviation
tweaks: rename a variable, for contrast with another
tweaks: reshuffle a comment, and put the main extension first
tweaks: reshuffle a fragment of code, to prepare for the next chang=
e
tweaks: reshuffle two conditions, to have the most unlikely one fir=
st
tweaks: set the file format only when unset, so it doesn't need sav=
ing
tweaks: shorten a comment and trim an #ifdef
tweaks: simplify two fragments of code
tweaks: simplify two fragments of code, eliding useless character c=
opying
--=20
Benno
--ECSx4OP0tfLpxULq8XVt8MzXA0TyLrpWd--
--QGWDNJP2Hw29QvsX2PhuJBBnL32CXMBEZ
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCgAdFiEEv9AJBh5TUFKtDfIVDSjU0qCs6IQFAmCKk/QACgkQDSjU0qCs
6IS/yBAAilkUCMXV7YDmnzPMT8gQuvQb4yGf/2fIvrg/kHQZbp4rHi0pk2n5wpYA
bhtJ/YXH5P4QAYUkXC5d2bkMKpWAJfShZ3sf7gLffRZBcifqBTn7CVEr31IleDy1
ubvYscECG/e//EPd/XKQRVxLR1z5CpNcZXTD5vaVQlv2lybXS41DjIEiNHQPxDLv
zZSXqCRCiIE0hu/4QVGRWfPpFCOp5mZS8drkM+u2j8rNHgB1DSQsMveYItrL9hbG
jOIKKQbOWEvROSMxTFx0bHCAAk1JuVbsvixul2ktZo6DeQjpt4eF3yYF7vz0cP+L
xjv2mHU4jde4NIIvj6jcCuArQZytgX1UNuSde38+OWHxkwmqo2dkGxGBObWwCKn/
gEPY8sD4U/Y+IZyQ8/vxXtYmdO/xlGP4xZv57laWJZkU2T8HALh3xZPejc5l8505
lCszEXH9n+0dtpe+EUqZ6jPs/lY94tKNKAhEdPgcgYWFcpeNSNHnkkCrVZV8Gd1J
JnegbN2DUIVm1k+2pDygj3zhvpJ7n7th0WiYijvQqOpCQ2Am98N/sUdtdfKAN3d6
yziF5nqUsrkL16GCBcv2OzdkjiNGtjmy6sX5gRFky4IGcaW8HLosWu5Eza/4/i5p
jsrYMhEGiPV9D1y8siGgBZ3iKZHrtFdvnSshlEJO2gTS9BGSuEg=
=rJWZ
-----END PGP SIGNATURE-----
--QGWDNJP2Hw29QvsX2PhuJBBnL32CXMBEZ--
--===============6306075197176679292==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW5mby1uYW5v
IG1haWxpbmcgbGlzdApJbmZvLW5hbm9AZ251Lm9yZwpodHRwczovL2xpc3RzLmdudS5vcmcvbWFp
bG1hbi9saXN0aW5mby9pbmZvLW5hbm8K
--===============6306075197176679292==--