diff --git a/st.c b/st.c index 4b7e4eb..b7dfd55 100644 --- a/st.c +++ b/st.c @@ -1203,6 +1203,18 @@ csihandle(void) { DEFAULT(escseq.arg[0], 1); tmoveto(0, term.c.y-escseq.arg[0]); break; + case 'g': /* TBC -- Tabulation clear */ + switch (escseq.arg[0]) { + case 0: /* clear current tab stop */ + term.tabs[term.c.x] = 0; + break; + case 3: /* clear all the tabs */ + memset(term.tabs, 0, term.col * sizeof(*term.tabs)); + break; + default: + goto unknown; + } + break; case 'G': /* CHA -- Move to */ case '`': /* XXX: HPA -- same? */ DEFAULT(escseq.arg[0], 1); diff --git a/st.info b/st.info index ea67039..d8e3d0d 100644 --- a/st.info +++ b/st.info @@ -97,7 +97,7 @@ st| simpleterm, smcup=\E[?1049h, smso=\E[7m, smul=\E[4m, - tbc=\E[2g, + tbc=\E[3g, tsl=\E]0;, ul, xenl,