diff --git a/ChangeLog b/ChangeLog index 69907de5..79f62e05 100644 --- a/ChangeLog +++ b/ChangeLog @@ -136,6 +136,9 @@ CVS code - (DLR) - Don't set current_len until after it's been asserted that both current and current->data aren't NULL. (DLR) + disable_extended_input() + - Disable extended output processing as well as extended input + processing, and rename to disable_extended_io(). (DLR) - rcfile.c: parse_colors() - Properly parse a background color without a foreground color. diff --git a/src/nano.c b/src/nano.c index 6acd79a6..322cae00 100644 --- a/src/nano.c +++ b/src/nano.c @@ -3598,12 +3598,13 @@ void do_toggle(const toggle *which) } #endif /* !NANO_SMALL */ -void disable_extended_input(void) +void disable_extended_io(void) { struct termios term; tcgetattr(0, &term); term.c_lflag &= ~IEXTEN; + term.c_oflag &= ~OPOST; tcsetattr(0, TCSANOW, &term); } @@ -3650,15 +3651,15 @@ void enable_flow_control(void) * translation of carriage return (^M) into newline (^J) so that we can * tell the difference between the Enter key and Ctrl-J, and disable * echoing of characters as they're typed. Finally, disable extended - * input processing, disable interpretation of the special control keys, - * and if we're not in preserve mode, disable interpretation of the flow - * control characters too. */ + * input and output processing, disable interpretation of the special + * control keys, and if we're not in preserve mode, disable + * interpretation of the flow control characters too. */ void terminal_init(void) { cbreak(); nonl(); noecho(); - disable_extended_input(); + disable_extended_io(); disable_signals(); if (!ISSET(PRESERVE)) disable_flow_control(); diff --git a/src/proto.h b/src/proto.h index 14eeadf1..a3473a1d 100644 --- a/src/proto.h +++ b/src/proto.h @@ -455,7 +455,7 @@ void allow_pending_sigwinch(bool allow); #ifndef NANO_SMALL void do_toggle(const toggle *which); #endif -void disable_extended_input(void); +void disable_extended_io(void); void disable_signals(void); #ifndef NANO_SMALL void enable_signals(void);