diff --git a/terminal.c b/terminal.c index dd4c627c..3beffcf3 100644 --- a/terminal.c +++ b/terminal.c @@ -2557,6 +2557,15 @@ term_cursor_home(struct terminal *term) term_cursor_to(term, term_row_rel_to_abs(term, 0), 0); } +void +term_cursor_col(struct terminal *term, int col) +{ + xassert(col < term->cols); + + term->grid->cursor.lcf = false; + term->grid->cursor.point.col = col; +} + void term_cursor_left(struct terminal *term, int count) { diff --git a/terminal.h b/terminal.h index abedf44d..ec0db44b 100644 --- a/terminal.h +++ b/terminal.h @@ -743,6 +743,7 @@ void term_erase_scrollback(struct terminal *term); int term_row_rel_to_abs(const struct terminal *term, int row); void term_cursor_home(struct terminal *term); void term_cursor_to(struct terminal *term, int row, int col); +void term_cursor_col(struct terminal *term, int col); void term_cursor_left(struct terminal *term, int count); void term_cursor_right(struct terminal *term, int count); void term_cursor_up(struct terminal *term, int count);