JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
tab moves the cursor instead of inserting spaces.
[st.git] / st.c
diff --git a/st.c b/st.c
index 1f58569..c24bb1d 100644 (file)
--- a/st.c
+++ b/st.c
@@ -364,21 +364,6 @@ void
 tsetattr(int *attr, int l) {
        int i;
 
-#ifdef TRUECOLOR /* ESC [ ? <fg/bg> ; <r> ; <g> ; <b> m */
-       Color col;
-       if(escseq.priv && escseq.len == 4) { /* True color extension :) */
-               col = (escseq.arg[1]<<16) + (escseq.arg[2]<<8) + escseq.arg[3];
-               switch(escseq.arg[0]) {
-               case 3: /* foreground */
-                       term.c.attr.fg = col;
-                       break;
-               case 4: /* background */
-                       term.c.attr.bg = col;
-                       break;
-               }
-       }
-       else
-#endif
                for(i = 0; i < l; i++) {
                        switch(attr[i]) {
                        case 0:
@@ -574,6 +559,17 @@ escreset(void) {
 }
 
 void
+tputtab(void) {
+    int space = TAB - term.c.x % TAB;
+    
+    if(term.c.x + space >= term.col)
+        space--;
+    
+    for(; space > 0; space--)
+        tcursor(CSright);
+}
+
+void
 tputc(char c) {
        static int inesc = 0;
 
@@ -589,6 +585,9 @@ tputc(char c) {
                        tsetchar(c);
                        tcursor(CSright);
                        break;
+        case '\t':
+            tputtab();
+            break;
                case '\b':
                        tcursor(CSleft);
                        break;
@@ -703,7 +702,7 @@ xinit(void) {
 
        xw.dis = XOpenDisplay(NULL);
        xw.scr = XDefaultScreen(xw.dis);
-    if(!(xw.dis && xw.scr))
+    if(!xw.dis)
         die("can not open display");
     
        /* font */
@@ -916,7 +915,7 @@ run(void) {
 int
 main(int argc, char *argv[]) {
        if(argc == 2 && !strncmp("-v", argv[1], 3))
-               die("st-"", © 2009 st engineers\n");
+               die("st-" VERSION ", © 2009 st engineers\n");
        else if(argc != 1)
                die("usage: st [-v]\n");
        setlocale(LC_CTYPE, "");