nano

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

commit 619666460ef108b42d6600f3157fa858b9226531
parent 5ac6a87522655d876c5cd62948f1176c9fed19fd
Author: Benno Schulenberg <bensberg@justemail.net>
Date:   Mon,  6 Jul 2015 18:03:14 +0000

Making it more transparent what WAS_FINAL_BACKSPACE does.


git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@5283 35c25a1d-7b9e-4130-9fde-d3aeb78583b8

Diffstat:
MChangeLog | 1+
MREADME | 3+++
Msrc/text.c | 9+++++++--
3 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/ChangeLog b/ChangeLog @@ -3,6 +3,7 @@ src/rcfile.c (parse_binding): When defining the toggles, give each of them a sequence number, so that, when they are rebound, they can still be listed in the original order in the help text. + * src/text.c (do_undo): Make it clearer what WAS_FINAL_BACKSPACE does. GNU nano 2.4.2 - 2015.07.05 2015-06-28 Benno Schulenberg <bensberg@justemail.net> diff --git a/README b/README @@ -71,3 +71,6 @@ Current Status GNU nano has reached its fifth stable milestone, 2.4.x. Development of new features will continue in the 2.5.x branch, while 2.4.x versions are dedicated to bug-fixing and polishing. + + + diff --git a/src/text.c b/src/text.c @@ -493,8 +493,13 @@ void do_undo(void) case JOIN: undidmsg = _("line join"); /* When the join was done by a Backspace at the tail of the file, - * don't actually add another line; just position the cursor. */ - if (ISSET(NO_NEWLINES) || u->xflags != WAS_FINAL_BACKSPACE) { + * and the nonewlines flag isn't set, do not re-add a newline that + * wasn't actually deleted; just position the cursor. */ + if (u->xflags == WAS_FINAL_BACKSPACE && !ISSET(NO_NEWLINES)) { + goto_line_posx(openfile->filebot->lineno, 0); + break; + } + {/*FIXME: unindent*/ t = make_new_node(f); t->data = mallocstrcpy(NULL, u->strdata); data = mallocstrncpy(NULL, f->data, u->mark_begin_x + 1);