--- st.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff -r dd025f4c7264 -r 8e8a1084318d st.c --- a/st.c Wed Aug 29 19:59:37 2012 +0200 +++ b/st.c Wed Aug 29 19:59:43 2012 +0200 _AT_@ -1214,7 +1214,6 @@ DEFAULT(escseq.arg[1], 1); tmoveto(escseq.arg[1]-1, escseq.arg[0]-1); break; - /* XXX: (CSI n I) CHT -- Cursor Forward Tabulation <n> tab stops */ case 'J': /* ED -- Clear screen */ sel.bx = -1; switch(escseq.arg[0]) { _AT_@ -1429,8 +1428,11 @@ void tputtab(void) { - int space = TAB - term.c.x % TAB; - tmoveto(term.c.x + space, term.c.y); + unsigned x; + + for (x = term.c.x + 1; x < term.col && !term.tabs[x]; ++x) + /* nothing */ ; + tmoveto(x, term.c.y); } void _AT_@ -1491,6 +1493,10 @@ tnewline(1); /* always go to first col */ term.esc = 0; break; + case 'H': /* HTS -- Horizontal tab stop */ + term.tabs[term.c.x] = 1; + term.esc = 0; + break; case 'M': /* RI -- Reverse index */ if(term.c.y == term.top) tscrolldown(term.top, 1);Received on Wed Aug 29 2012 - 20:13:25 CEST
This archive was generated by hypermail 2.3.0 : Wed Aug 29 2012 - 20:24:06 CEST