mirror of
https://codeberg.org/dnkl/foot.git
synced 2026-03-27 07:58:07 -04:00
selection: recognize empty padding cells in a forced linewrap
When printing a multi-column character at the end of the line, and it doesn't fit, we currently insert a forced line-wrap. This means the last character(s) on the previous line will be empty, followed by a multi-column character in the first cell on the next line. Without special code to handle this, the selection text extraction code will insert a hard newline, since this is normally the correct thing to do. Add a TODO, to consider writing a special place holder value to these padding cells.
This commit is contained in:
parent
3bc404b5a3
commit
4cf7195695
2 changed files with 45 additions and 9 deletions
10
terminal.c
10
terminal.c
|
|
@ -2399,6 +2399,16 @@ term_print(struct terminal *term, wchar_t wc, int width)
|
|||
/* Multi-column character that doesn't fit on current line -
|
||||
* force a line wrap */
|
||||
term->grid->cursor.lcf = 1;
|
||||
|
||||
/*
|
||||
* TODO: should we insert place holder values in the remaining
|
||||
* cells? This would allow e.g. text extraction to simply
|
||||
* skip these, instead of trying to recognize a sequence of
|
||||
* empty cells at the end of the line followed by a
|
||||
* multi-column character...
|
||||
*
|
||||
* Might also make text reflow easier, or even more correct.
|
||||
*/
|
||||
}
|
||||
|
||||
print_linewrap(term);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue