|
@@ -558,6 +558,17 @@ escreset(void) {
|
|
|
memset(&escseq, 0, sizeof(escseq));
|
|
|
}
|
|
|
|
|
|
+void
|
|
|
+tputtab(void) {
|
|
|
+ int space = TAB - term.c.x % TAB;
|
|
|
+
|
|
|
+ if(term.c.x + space >= term.col)
|
|
|
+ space--;
|
|
|
+
|
|
|
+ for(; space > 0; space--)
|
|
|
+ tputc(' ');
|
|
|
+}
|
|
|
+
|
|
|
void
|
|
|
tputc(char c) {
|
|
|
static int inesc = 0;
|
|
@@ -574,6 +585,9 @@ tputc(char c) {
|
|
|
tsetchar(c);
|
|
|
tcursor(CSright);
|
|
|
break;
|
|
|
+ case '\t':
|
|
|
+ tputtab();
|
|
|
+ break;
|
|
|
case '\b':
|
|
|
tcursor(CSleft);
|
|
|
break;
|