diff options
author | Richard M. Stallman <[email protected]> | 1992-04-18 16:01:05 +0000 |
---|---|---|
committer | Richard M. Stallman <[email protected]> | 1992-04-18 16:01:05 +0000 |
commit | e51eab7c0e66c1a6c683c4a9be966ab0139feca1 (patch) | |
tree | 8c109f37dcea7f9c5ccbf74a31559876b57e61ef /src/indent.c | |
parent | 8323dcf4aee8c443ac003c170e19db42662e734a (diff) |
*** empty log message ***
Diffstat (limited to 'src/indent.c')
-rw-r--r-- | src/indent.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/indent.c b/src/indent.c index 977383d3b4..50536120d8 100644 --- a/src/indent.c +++ b/src/indent.c @@ -461,7 +461,7 @@ compute_motion (from, fromvpos, fromhpos, to, tovpos, tohpos, width, hscroll, ta { while (++pos < to && FETCH_CHAR (pos) != '\n'); } - while (selective > 0 && position_indentation (pos + 1) >= selective); + while (pos < to && position_indentation (pos + 1) >= selective); pos--; /* Allow for the " ..." that is displayed for them. */ if (selective_rlen) @@ -470,16 +470,17 @@ compute_motion (from, fromvpos, fromhpos, to, tovpos, tohpos, width, hscroll, ta if (hpos >= width) hpos = width; } + /* We have skipped the invis text, but not the newline after. */ } else { /* A visible line. */ vpos++; hpos = 0; + hpos -= hscroll; + if (hscroll > 0) hpos++; /* Count the ! on column 0 */ + tab_offset = 0; } - hpos -= hscroll; - if (hscroll > 0) hpos++; /* Count the ! on column 0 */ - tab_offset = 0; } else if (c == CR && selective < 0) { @@ -518,6 +519,7 @@ compute_motion (from, fromvpos, fromhpos, to, tovpos, tohpos, width, hscroll, ta /* Truncating: skip to newline. */ while (pos < to && FETCH_CHAR (pos) != '\n') pos++; pos--; + hpos = width; } else { |