diff options
| author | Gerd Moellmann <gerd@gnu.org> | 2002-04-25 10:39:57 +0000 |
|---|---|---|
| committer | Gerd Moellmann <gerd@gnu.org> | 2002-04-25 10:39:57 +0000 |
| commit | 3a46a5dec0ae7dc2145edfced2095ca5861cc05f (patch) | |
| tree | ba8270769b477a2ba81a7710d2f786c04bb6f969 | |
| parent | 90077f6669e9f0de988ca21ad335e429b185a208 (diff) | |
| download | emacs-3a46a5dec0ae7dc2145edfced2095ca5861cc05f.tar.gz | |
(Fvertical_motion): Move to the start of the line
containing PT before moving up or down.
| -rw-r--r-- | src/ChangeLog | 5 | ||||
| -rw-r--r-- | src/indent.c | 14 |
2 files changed, 17 insertions, 2 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 7e28431348c..f0549637b6f 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2002-04-25 Gerd Moellmann <gerd@gnu.org> + + * indent.c (Fvertical_motion): Move to the start of the line + containing PT before moving up or down. + 2002-04-24 Gerd Moellmann <gerd@gnu.org> * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the diff --git a/src/indent.c b/src/indent.c index 437875f34da..e2f68076075 100644 --- a/src/indent.c +++ b/src/indent.c @@ -1,5 +1,5 @@ /* Indentation functions. - Copyright (C) 1985,86,87,88,93,94,95,98, 2000, 2001 + Copyright (C) 1985,86,87,88,93,94,95,98, 2000, 2001, 2002 Free Software Foundation, Inc. This file is part of GNU Emacs. @@ -2018,7 +2018,17 @@ whether or not it is currently displayed in some window. */) SET_TEXT_POS (pt, PT, PT_BYTE); start_display (&it, w, pt); - move_it_by_lines (&it, XINT (lines), 0); + + /* Move to the start of the line containing PT. If we don't do + this, we start moving with IT->current_x == 0, while PT is really + at some x > 0. The effect is, in continuation lines, that we end + up with the iterator placed at where it thinks X is 0, while the + end position is really at some X > 0, the same X that PT had. */ + move_it_by_lines (&it, 0, 0); + + if (XINT (lines) !+ 0) + move_it_by_lines (&it, XINT (lines), 0); + SET_PT_BOTH (IT_CHARPOS (it), IT_BYTEPOS (it)); if (BUFFERP (old_buffer)) |
