mirror of
https://github.com/fish-shell/fish-shell.git
synced 2024-11-27 11:43:37 +08:00
Fix clearing abandoned line with VTE (#4243)
* Fix clearing abandoned line with VTE With VTE-based terminals, resizing currently causes multi-line prompts to go weird. This changes the sequence we use to clear the line to one suggested by a VTE developer (https://bugzilla.gnome.org/show_bug.cgi?id=763390#c4). It changes nothing in konsole 17.04.3 and urxvt 9.22, but they already work. Note that this does not fix the case where output did not end in a newline, but that doesn't seem to be up to us. Also, it only affects those lines. Fixes #2320. * Use terminfo definition instead of hardcoding Thanks to @ixjlyons.
This commit is contained in:
parent
11f5bbf83d
commit
09cb31a172
|
@ -1287,7 +1287,7 @@ void s_reset(screen_t *s, screen_reset_mode_t mode) {
|
|||
// line above your prompt. This doesn't make a difference in normal usage, but copying and
|
||||
// pasting your terminal log becomes a pain. This commit clears that line, making it an
|
||||
// actual empty line.
|
||||
abandon_line_string.append(L"\e[2K");
|
||||
abandon_line_string.append(str2wcstring(clr_eol));
|
||||
|
||||
const std::string narrow_abandon_line_string = wcs2string(abandon_line_string);
|
||||
write_loop(STDOUT_FILENO, narrow_abandon_line_string.c_str(),
|
||||
|
|
Loading…
Reference in New Issue
Block a user