add DB's similar simplification of do_prev_word() too

git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@1693 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
master
David Lawrence Ramsey 2004-03-14 01:42:17 +00:00
parent bf3c93e268
commit b6aa42864e
2 changed files with 6 additions and 27 deletions

View File

@ -69,6 +69,8 @@ CVS code -
do_next_word() do_next_word()
- Simplify and remove references to editbot so as to avoid a - Simplify and remove references to editbot so as to avoid a
segfault. (David Benbennick) segfault. (David Benbennick)
do_prev_word()
- Simplify and remove references to edittop. (David Benbennick)
do_int_speller(), do_alt_speller(), do_spell() do_int_speller(), do_alt_speller(), do_spell()
- Modify to write only the current selection from a file to the - Modify to write only the current selection from a file to the
temporary file used for spell checking when the mark is on, temporary file used for spell checking when the mark is on,

View File

@ -1205,8 +1205,6 @@ int do_next_word(void)
/* The same thing for backwards. */ /* The same thing for backwards. */
int do_prev_word(void) int do_prev_word(void)
{ {
filestruct *old = current;
assert(current != NULL && current->data != NULL); assert(current != NULL && current->data != NULL);
/* Skip letters in this word first. */ /* Skip letters in this word first. */
@ -1234,31 +1232,10 @@ int do_prev_word(void)
placewewant = xplustabs(); placewewant = xplustabs();
if (current->lineno <= edittop->lineno) { /* Refresh the screen. If current has run off the top, this call
/* If we're on the first line, don't center the screen. */ * puts it at the center line. */
if (current->lineno == fileage->lineno)
edit_refresh(); edit_refresh();
else
edit_update(current, CENTER);
}
else {
/* If we've jumped lines, refresh the old line. We can't just
use current->prev here, because we may have skipped over some
blank lines, in which case the previous line is the wrong
one. */
if (current != old) {
update_line(old, 0);
/* If the mark was set, then the lines between old and
current have to be updated too. */
if (ISSET(MARK_ISSET)) {
while (old->prev != current) {
old = old->prev;
update_line(old, 0);
}
}
}
update_line(current, current_x);
}
return 0; return 0;
} }
#endif /* !NANO_SMALL */ #endif /* !NANO_SMALL */