commit 1cde322359f6936ebc389e4a0295603f95213496
parent cf785632edcaf94385a1464da4115959907f9cad
Author: Chris Allegretta <chrisa@asty.org>
Date: Mon, 11 Jun 2001 06:56:10 +0000
Don't keep cutbufer on reset, fix -k cut on first line if blank
git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@682 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
Diffstat:
3 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/ChangeLog b/ChangeLog
@@ -73,6 +73,8 @@ Cvs code -
page_up()
- Rewritten with a loop to make screen updates work when
mark is set (fixes bug #59).
+ do_home(), do_end()
+ - Don't keep cutbuffer.
- nano.1:
- Added the missing -r flag (Jordi).
- nano.c:
diff --git a/cut.c b/cut.c
@@ -187,10 +187,15 @@ int do_cut_text(void)
/* If the next line is empty, create a dummy line and add it
to the cutbuffer */
- if (current->next != NULL && strlen(current->next->data) == 0) {
+ if ((current->next != NULL && strlen(current->next->data) == 0) ||
+ (current == fileage && strlen(current->data) == 0)) {
filestruct *junk;
- junk = copy_node(current->next);
+ if (current == fileage)
+ junk = copy_node(current);
+ else
+ junk = copy_node(current->next);
+
add_to_cutbuffer(junk);
}
do_delete();
diff --git a/move.c b/move.c
@@ -86,6 +86,7 @@ int page_down(void)
int do_home(void)
{
+ UNSET(KEEP_CUTBUFFER);
current_x = 0;
placewewant = 0;
update_line(current, current_x);
@@ -94,6 +95,7 @@ int do_home(void)
int do_end(void)
{
+ UNSET(KEEP_CUTBUFFER);
current_x = strlen(current->data);
placewewant = xplustabs();
update_line(current, current_x);