This repository was archived by the owner on Nov 11, 2018. It is now read-only.
File tree Expand file tree Collapse file tree 2 files changed +16
-0
lines changed
Expand file tree Collapse file tree 2 files changed +16
-0
lines changed Original file line number Diff line number Diff line change @@ -124,6 +124,8 @@ public class TerminalOutput : Gee.ArrayList<OutputLine> {
124124 // This code causes a line feed or a new line operation
125125 // TODO: Does LF always imply CR?
126126 move_cursor(cursor_position. line + 1 , 0 );
127+ terminal. terminal_view. terminal_output_view. add_line_views();
128+ terminal. terminal_view. terminal_output_view. scroll_to_position();
127129 break ;
128130
129131 case TerminalStream . StreamElement . ControlSequenceType . HORIZONTAL_TAB:
@@ -229,6 +231,18 @@ public class TerminalOutput : Gee.ArrayList<OutputLine> {
229231 terminal. terminal_view. terminal_output_view. add_line_views();
230232 break ;
231233
234+ case TerminalStream . StreamElement . ControlSequenceType . NEXT_LINE:
235+ screen_offset + = 1 ;
236+ move_cursor(cursor_position. line + stream_element. get_numeric_parameter(0 ,1 ), 0 );
237+ terminal. terminal_view. terminal_output_view. add_line_views();
238+ break ;
239+
240+ case TerminalStream . StreamElement . ControlSequenceType . INDEX:
241+ screen_offset + = 1 ;
242+ move_cursor(cursor_position. line + stream_element. get_numeric_parameter(0 ,1 ), cursor_position. column);
243+ terminal. terminal_view. terminal_output_view. add_line_views();
244+ break ;
245+
232246 case TerminalStream . StreamElement . ControlSequenceType . CHARACTER_POSITION_RELATIVE:
233247 // The CUF sequence moves the active position to the right.
234248 // The distance moved is determined by the parameter (default: 1)
Original file line number Diff line number Diff line change @@ -432,6 +432,8 @@ public class TerminalStream : Object {
432432 add_esc_sequence_pattern(ControlSequenceType . FORWARD_INDEX , " 9" );
433433 add_esc_sequence_pattern(ControlSequenceType . APPLICATION_KEYPAD , " =" );
434434 add_esc_sequence_pattern(ControlSequenceType . NORMAL_KEYPAD , " >" );
435+ add_esc_sequence_pattern(ControlSequenceType . INDEX , " D" );
436+ add_esc_sequence_pattern(ControlSequenceType . NEXT_LINE , " E" );
435437 add_esc_sequence_pattern(ControlSequenceType . CURSOR_TO_LOWER_LEFT_CORNER_OF_SCREEN , " F" );
436438 add_esc_sequence_pattern(ControlSequenceType . FULL_RESET , " c" );
437439 add_esc_sequence_pattern(ControlSequenceType . MEMORY_LOCK , " l" );
You can’t perform that action at this time.
0 commit comments