Mercurial > emacs
comparison src/xdisp.c @ 39520:199991f52caf
(display_line): Set row's ends_in_newline_from_string_p.
(try_window_id): Skip back over lines ending in a newline from a
string.
author | Gerd Moellmann <gerd@gnu.org> |
---|---|
date | Mon, 01 Oct 2001 10:52:55 +0000 |
parents | c3d9922b855a |
children | 5f60884970a8 |
comparison
equal
deleted
inserted
replaced
39519:865d22a5dca3 | 39520:199991f52caf |
---|---|
11493 { | 11493 { |
11494 /* Avoid starting to display in the moddle of a character, a TAB | 11494 /* Avoid starting to display in the moddle of a character, a TAB |
11495 for instance. This is easier than to set up the iterator | 11495 for instance. This is easier than to set up the iterator |
11496 exactly, and it's not a frequent case, so the additional | 11496 exactly, and it's not a frequent case, so the additional |
11497 effort wouldn't really pay off. */ | 11497 effort wouldn't really pay off. */ |
11498 while (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P (last_unchanged_at_beg_row) | 11498 while ((MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P (last_unchanged_at_beg_row) |
11499 || last_unchanged_at_beg_row->ends_in_newline_from_string_p) | |
11499 && last_unchanged_at_beg_row > w->current_matrix->rows) | 11500 && last_unchanged_at_beg_row > w->current_matrix->rows) |
11500 --last_unchanged_at_beg_row; | 11501 --last_unchanged_at_beg_row; |
11501 | 11502 |
11502 if (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P (last_unchanged_at_beg_row)) | 11503 if (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P (last_unchanged_at_beg_row)) |
11503 GIVE_UP (17); | 11504 GIVE_UP (17); |
13002 margin of the window. */ | 13003 margin of the window. */ |
13003 if (ITERATOR_AT_END_OF_LINE_P (it)) | 13004 if (ITERATOR_AT_END_OF_LINE_P (it)) |
13004 { | 13005 { |
13005 int used_before = row->used[TEXT_AREA]; | 13006 int used_before = row->used[TEXT_AREA]; |
13006 | 13007 |
13008 row->ends_in_newline_from_string_p = STRINGP (it->object); | |
13009 | |
13007 /* Add a space at the end of the line that is used to | 13010 /* Add a space at the end of the line that is used to |
13008 display the cursor there. */ | 13011 display the cursor there. */ |
13009 append_space (it, 0); | 13012 append_space (it, 0); |
13010 | 13013 |
13011 /* Extend the face to the end of the line. */ | 13014 /* Extend the face to the end of the line. */ |