The style inquisition was here. Yes, making it a unified style. The last
authorChristoph Lohmann <20h@r-36.net>
Sat, 6 Oct 2012 07:58:45 +0000 (09:58 +0200)
committerChristoph Lohmann <20h@r-36.net>
Sat, 6 Oct 2012 07:58:45 +0000 (09:58 +0200)
infidels will be squashed too!

st.c

diff --git a/st.c b/st.c
index 1ac7fde..f6c9f18 100644 (file)
--- a/st.c
+++ b/st.c
@@ -180,9 +180,9 @@ typedef struct {
 typedef struct {
        int row;        /* nb row */
        int col;        /* nb col */
-       Lineline;     /* screen */
-       Linealt;      /* alternate screen */
-       booldirty;    /* dirtyness of lines */
+       Line *line;     /* screen */
+       Line *alt;      /* alternate screen */
+       bool *dirty;    /* dirtyness of lines */
        TCursor c;      /* cursor */
        int top;        /* top    scroll limit */
        int bot;        /* bottom scroll limit */
@@ -242,7 +242,7 @@ typedef struct {
        int descent;
        short lbearing;
        short rbearing;
-       XftFontxft_set;
+       XftFont *xft_set;
 } Font;
 
 /* Drawing Context */
@@ -252,7 +252,7 @@ typedef struct {
        Font font, bfont, ifont, ibfont;
 } DC;
 
-static void die(const char*, ...);
+static void die(const char *, ...);
 static void draw(void);
 static void redraw(void);
 static void drawregion(int, int, int, int);
@@ -279,7 +279,7 @@ static void tmoveto(int, int);
 static void tnew(int, int);
 static void tnewline(int);
 static void tputtab(bool);
-static void tputc(char*, int);
+static void tputc(char *, int);
 static void treset(void);
 static int tresize(int, int);
 static void tscrollup(int, int);
@@ -313,7 +313,7 @@ static void xresize(int, int);
 static void expose(XEvent *);
 static void visibility(XEvent *);
 static void unmap(XEvent *);
-static charkmap(KeySym, uint);
+static char *kmap(KeySym, uint);
 static void kpress(XEvent *);
 static void cmessage(XEvent *);
 static void resize(XEvent *);
@@ -378,8 +378,10 @@ static char *opt_font = NULL;
 void *
 xmalloc(size_t len) {
        void *p = malloc(len);
+
        if(!p)
                die("Out of memory\n");
+
        return p;
 }
 
@@ -387,14 +389,17 @@ void *
 xrealloc(void *p, size_t len) {
        if((p = realloc(p, len)) == NULL)
                die("Out of memory\n");
+
        return p;
 }
 
 void *
 xcalloc(size_t nmemb, size_t size) {
        void *p = calloc(nmemb, size);
+
        if(!p)
                die("Out of memory\n");
+
        return p;
 }
 
@@ -455,8 +460,10 @@ utf8decode(char *s, long *u) {
        } else if((c & (B7|B6|B5|B4|B3)) == (B7|B6|B5|B4)) { /* 11110xxx */
                *u = c & (B2|B1|B0);
                n = 3;
-       } else
+       } else {
                goto invalid;
+       }
+
        for(i = n, ++s; i > 0; --i, ++rtn, ++s) {
                c = *s;
                if((c & (B7|B6)) != B7) /* 10xxxxxx */
@@ -464,14 +471,18 @@ utf8decode(char *s, long *u) {
                *u <<= 6;
                *u |= c & (B5|B4|B3|B2|B1|B0);
        }
+
        if((n == 1 && *u < 0x80) ||
           (n == 2 && *u < 0x800) ||
           (n == 3 && *u < 0x10000) ||
-          (*u >= 0xD800 && *u <= 0xDFFF))
+          (*u >= 0xD800 && *u <= 0xDFFF)) {
                goto invalid;
+       }
+
        return rtn;
 invalid:
        *u = 0xFFFD;
+
        return rtn;
 }
 
@@ -481,7 +492,7 @@ utf8encode(long *u, char *s) {
        ulong uc;
        int i, n;
 
-       sp = (uchar*) s;
+       sp = (uchar *)s;
        uc = *u;
        if(uc < 0x80) {
                *sp = uc; /* 0xxxxxxx */
@@ -498,14 +509,17 @@ utf8encode(long *u, char *s) {
        } else {
                goto invalid;
        }
+
        for(i=n,++sp; i>0; --i,++sp)
                *sp = ((uc >> 6*(i-1)) & (B5|B4|B3|B2|B1|B0)) | B7; /* 10xxxxxx */
+
        return n+1;
 invalid:
        /* U+FFFD */
        *s++ = '\xEF';
        *s++ = '\xBF';
        *s = '\xBD';
+
        return 3;
 }
 
@@ -515,38 +529,40 @@ int
 isfullutf8(char *s, int b) {
        uchar *c1, *c2, *c3;
 
-       c1 = (uchar *) s;
-       c2 = (uchar *) ++s;
-       c3 = (uchar *) ++s;
-       if(b < 1)
+       c1 = (uchar *)s;
+       c2 = (uchar *)++s;
+       c3 = (uchar *)++s;
+       if(b < 1) {
                return 0;
-       else if((*c1&(B7|B6|B5)) == (B7|B6) && b == 1)
+       } else if((*c1&(B7|B6|B5)) == (B7|B6) && b == 1) {
                return 0;
-       else if((*c1&(B7|B6|B5|B4)) == (B7|B6|B5) &&
+       else if((*c1&(B7|B6|B5|B4)) == (B7|B6|B5) &&
            ((b == 1) ||
-           ((b == 2) && (*c2&(B7|B6)) == B7)))
+           ((b == 2) && (*c2&(B7|B6)) == B7))) {
                return 0;
-       else if((*c1&(B7|B6|B5|B4|B3)) == (B7|B6|B5|B4) &&
+       else if((*c1&(B7|B6|B5|B4|B3)) == (B7|B6|B5|B4) &&
            ((b == 1) ||
            ((b == 2) && (*c2&(B7|B6)) == B7) ||
-           ((b == 3) && (*c2&(B7|B6)) == B7 && (*c3&(B7|B6)) == B7)))
+           ((b == 3) && (*c2&(B7|B6)) == B7 && (*c3&(B7|B6)) == B7))) {
                return 0;
-       else
+       } else {
                return 1;
+       }
 }
 
 int
 utf8size(char *s) {
        uchar c = *s;
 
-       if(~c&B7)
+       if(~c&B7) {
                return 1;
-       else if((c&(B7|B6|B5)) == (B7|B6))
+       } else if((c&(B7|B6|B5)) == (B7|B6)) {
                return 2;
-       else if((c&(B7|B6|B5|B4)) == (B7|B6|B5))
+       } else if((c&(B7|B6|B5|B4)) == (B7|B6|B5)) {
                return 3;
-       else
+       } else {
                return 4;
+       }
 }
 
 void
@@ -563,13 +579,18 @@ selinit(void) {
 
 static inline bool
 selected(int x, int y) {
+       int bx, ex;
+
        if(sel.ey == y && sel.by == y) {
-               int bx = MIN(sel.bx, sel.ex);
-               int ex = MAX(sel.bx, sel.ex);
+               bx = MIN(sel.bx, sel.ex);
+               ex = MAX(sel.bx, sel.ex);
                return BETWEEN(x, bx, ex);
        }
-       return ((sel.b.y < y&&y < sel.e.y) || (y==sel.e.y && x<=sel.e.x))
-               || (y==sel.b.y && x>=sel.b.x && (x<=sel.e.x || sel.b.y!=sel.e.y));
+
+       return ((sel.b.y < y&&y < sel.e.y)
+                       || (y==sel.e.y && x<=sel.e.x))
+                       || (y==sel.b.y && x>=sel.b.x
+                                       && (x<=sel.e.x || sel.b.y!=sel.e.y));
 }
 
 void
@@ -621,9 +642,9 @@ mousereport(XEvent *e) {
 
 void
 bpress(XEvent *e) {
-       if(IS_SET(MODE_MOUSE))
+       if(IS_SET(MODE_MOUSE)) {
                mousereport(e);
-       else if(e->xbutton.button == Button1) {
+       else if(e->xbutton.button == Button1) {
                if(sel.bx != -1) {
                        sel.bx = -1;
                        tsetdirt(sel.b.y, sel.e.y);
@@ -637,22 +658,20 @@ bpress(XEvent *e) {
 
 void
 selcopy(void) {
-       char *str, *ptr;
-       int x, y, bufsize, is_selected = 0;
+       char *str, *ptr, *p;
+       int x, y, bufsize, is_selected = 0, size;
+       Glyph *gp;
 
-       if(sel.bx == -1)
+       if(sel.bx == -1) {
                str = NULL;
-
-       else {
+       } else {
                bufsize = (term.col+1) * (sel.e.y-sel.b.y+1) * UTF_SIZ;
                ptr = str = xmalloc(bufsize);
 
                /* append every set & selected glyph to the selection */
                for(y = 0; y < term.row; y++) {
                        for(x = 0; x < term.col; x++) {
-                               int size;
-                               char *p;
-                               Glyph *gp = &term.line[y][x];
+                               gp = &term.line[y][x];
 
                                if(!(is_selected = selected(x, y)))
                                        continue;
@@ -694,8 +713,9 @@ selnotify(XEvent *e) {
 }
 
 void
-selpaste() {
-       XConvertSelection(xw.dpy, XA_PRIMARY, sel.xtarget, XA_PRIMARY, xw.win, CurrentTime);
+selpaste(void) {
+       XConvertSelection(xw.dpy, XA_PRIMARY, sel.xtarget, XA_PRIMARY,
+                       xw.win, CurrentTime);
 }
 
 void selclear(XEvent *e) {
@@ -709,7 +729,7 @@ void
 selrequest(XEvent *e) {
        XSelectionRequestEvent *xsre;
        XSelectionEvent xev;
-       Atom xa_targets;
+       Atom xa_targets, string;
 
        xsre = (XSelectionRequestEvent *) e;
        xev.type = SelectionNotify;
@@ -723,7 +743,7 @@ selrequest(XEvent *e) {
        xa_targets = XInternAtom(xw.dpy, "TARGETS", 0);
        if(xsre->target == xa_targets) {
                /* respond with the supported type */
-               Atom string = sel.xtarget;
+               string = sel.xtarget;
                XChangeProperty(xsre->display, xsre->requestor, xsre->property,
                                XA_ATOM, 32, PropModeReplace,
                                (uchar *) &string, 1);
@@ -756,18 +776,20 @@ xsetsel(char *str) {
 
 void
 brelease(XEvent *e) {
+       struct timeval now;
+
        if(IS_SET(MODE_MOUSE)) {
                mousereport(e);
                return;
        }
-       if(e->xbutton.button == Button2)
+
+       if(e->xbutton.button == Button2) {
                selpaste();
-       else if(e->xbutton.button == Button1) {
+       else if(e->xbutton.button == Button1) {
                sel.mode = 0;
                getbuttoninfo(e, NULL, &sel.ex, &sel.ey);
                term.dirty[sel.ey] = 1;
                if(sel.bx == sel.ex && sel.by == sel.ey) {
-                       struct timeval now;
                        sel.bx = -1;
                        gettimeofday(&now, NULL);
 
@@ -781,34 +803,44 @@ brelease(XEvent *e) {
                                /* double click to select word */
                                sel.bx = sel.ex;
                                while(sel.bx > 0 && term.line[sel.ey][sel.bx-1].state & GLYPH_SET &&
-                                         term.line[sel.ey][sel.bx-1].c[0] != ' ') sel.bx--;
+                                         term.line[sel.ey][sel.bx-1].c[0] != ' ') {
+                                       sel.bx--;
+                               }
                                sel.b.x = sel.bx;
                                while(sel.ex < term.col-1 && term.line[sel.ey][sel.ex+1].state & GLYPH_SET &&
-                                         term.line[sel.ey][sel.ex+1].c[0] != ' ') sel.ex++;
+                                         term.line[sel.ey][sel.ex+1].c[0] != ' ') {
+                                       sel.ex++;
+                               }
                                sel.e.x = sel.ex;
                                sel.b.y = sel.e.y = sel.ey;
                                selcopy();
                        }
-               } else
+               } else {
                        selcopy();
+               }
        }
+
        memcpy(&sel.tclick2, &sel.tclick1, sizeof(struct timeval));
        gettimeofday(&sel.tclick1, NULL);
 }
 
 void
 bmotion(XEvent *e) {
+       int starty, endy, oldey, oldex;
+
        if(IS_SET(MODE_MOUSE)) {
                mousereport(e);
                return;
        }
+
        if(sel.mode) {
-               int oldey = sel.ey, oldex = sel.ex;
+               oldey = sel.ey;
+               oldex = sel.ex;
                getbuttoninfo(e, NULL, &sel.ex, &sel.ey);
 
                if(oldey != sel.ey || oldex != sel.ex) {
-                       int starty = MIN(oldey, sel.ey);
-                       int endy = MAX(oldey, sel.ey);
+                       starty = MIN(oldey, sel.ey);
+                       endy = MAX(oldey, sel.ey);
                        tsetdirt(starty, endy);
                }
        }
@@ -864,9 +896,9 @@ sigchld(int a) {
 void
 ttynew(void) {
        int m, s;
+       struct winsize w = {term.row, term.col, 0, 0};
 
        /* seems to work fine on linux, openbsd and freebsd */
-       struct winsize w = {term.row, term.col, 0, 0};
        if(openpty(&m, &s, NULL, NULL, &w) < 0)
                die("openpty failed: %s\n", SERRNO);
 
@@ -905,6 +937,7 @@ ttynew(void) {
 void
 dump(char c) {
        static int col;
+
        fprintf(stderr, " %02x '%c' ", c, isprint(c)?c:'.');
        if(++col % 10 == 0)
                fprintf(stderr, "\n");
@@ -931,7 +964,7 @@ ttyread(void) {
                charsize = utf8decode(ptr, &utf8c);
                utf8encode(&utf8c, s);
                tputc(s, charsize);
-               ptr    += charsize;
+               ptr += charsize;
                buflen -= charsize;
        }
 
@@ -958,8 +991,7 @@ ttyresize(void) {
 }
 
 void
-tsetdirt(int top, int bot)
-{
+tsetdirt(int top, int bot) {
        int i;
 
        LIMIT(top, 0, term.row-1);
@@ -970,8 +1002,7 @@ tsetdirt(int top, int bot)
 }
 
 void
-tfulldirt(void)
-{
+tfulldirt(void) {
        tsetdirt(0, term.row-1);
 }
 
@@ -979,15 +1010,18 @@ void
 tcursor(int mode) {
        static TCursor c;
 
-       if(mode == CURSOR_SAVE)
+       if(mode == CURSOR_SAVE) {
                c = term.c;
-       else if(mode == CURSOR_LOAD)
-               term.c = c, tmoveto(c.x, c.y);
+       } else if(mode == CURSOR_LOAD) {
+               term.c = c;
+               tmoveto(c.x, c.y);
+       }
 }
 
 void
 treset(void) {
        uint i;
+
        term.c = (TCursor){{
                .mode = ATTR_NULL,
                .fg = DefaultFG,
@@ -1024,7 +1058,8 @@ tnew(int col, int row) {
 
 void
 tswapscreen(void) {
-       Line* tmp = term.line;
+       Line *tmp = term.line;
+
        term.line = term.alt;
        term.alt = tmp;
        term.mode ^= MODE_ALTSCREEN;
@@ -1098,10 +1133,12 @@ selscroll(int orig, int n) {
 void
 tnewline(int first_col) {
        int y = term.c.y;
-       if(y == term.bot)
+
+       if(y == term.bot) {
                tscrollup(term.top, 1);
-       else
+       } else {
                y++;
+       }
        tmoveto(first_col ? 0 : term.c.x, y);
 }
 
@@ -1119,11 +1156,12 @@ csiparse(void) {
                        csiescseq.arg[csiescseq.narg] *= 10;
                        csiescseq.arg[csiescseq.narg] += *p++ - '0'/*, noarg = 0 */;
                }
-               if(*p == ';' && csiescseq.narg+1 < ESC_ARG_SIZ)
+               if(*p == ';' && csiescseq.narg+1 < ESC_ARG_SIZ) {
                        csiescseq.narg++, p++;
-               else {
+               else {
                        csiescseq.mode = *p;
                        csiescseq.narg++;
+
                        return;
                }
        }
@@ -1140,21 +1178,21 @@ tmoveto(int x, int y) {
 
 void
 tsetchar(char *c) {
+       char *vt100_0[62] = { /* 0x41 - 0x7e */
+               "↑", "↓", "→", "←", "█", "▚", "☃", /* A - G */
+               0, 0, 0, 0, 0, 0, 0, 0, /* H - O */
+               0, 0, 0, 0, 0, 0, 0, 0, /* P - W */
+               0, 0, 0, 0, 0, 0, 0, " ", /* X - _ */
+               "◆", "▒", "␉", "␌", "␍", "␊", "°", "±", /* ` - g */
+               "␤", "␋", "┘", "┐", "┌", "└", "┼", "⎺", /* h - o */
+               "⎻", "─", "⎼", "⎽", "├", "┤", "┴", "┬", /* p - w */
+               "│", "≤", "≥", "π", "≠", "£", "·", /* x - ~ */
+       };
+
        /*
         * The table is proudly stolen from rxvt.
         */
        if(term.c.attr.mode & ATTR_GFX) {
-               char *vt100_0[62] = { /* 0x41 - 0x7e */
-                       "↑", "↓", "→", "←", "█", "▚", "☃", /* A - G */
-                       0, 0, 0, 0, 0, 0, 0, 0, /* H - O */
-                       0, 0, 0, 0, 0, 0, 0, 0, /* P - W */
-                       0, 0, 0, 0, 0, 0, 0, " ", /* X - _ */
-                       "◆", "▒", "␉", "␌", "␍", "␊", "°", "±", /* ` - g */
-                       "␤", "␋", "┘", "┐", "┌", "└", "┼", "⎺", /* h - o */
-                       "⎻", "─", "⎼", "⎽", "├", "┤", "┴", "┬", /* p - w */
-                       "│", "≤", "≥", "π", "≠", "£", "·", /* x - ~ */
-               };
-
                if(c[0] >= 0x41 && c[0] <= 0x7e
                                && vt100_0[c[0] - 0x41]) {
                        c = vt100_0[c[0] - 0x41];
@@ -1200,7 +1238,9 @@ tdeletechar(int n) {
                tclearregion(term.c.x, term.c.y, term.col-1, term.c.y);
                return;
        }
-       memmove(&term.line[term.c.y][dst], &term.line[term.c.y][src], size * sizeof(Glyph));
+
+       memmove(&term.line[term.c.y][dst], &term.line[term.c.y][src],
+                       size * sizeof(Glyph));
        tclearregion(term.col-n, term.c.y, term.col-1, term.c.y);
 }
 
@@ -1216,7 +1256,9 @@ tinsertblank(int n) {
                tclearregion(term.c.x, term.c.y, term.col-1, term.c.y);
                return;
        }
-       memmove(&term.line[term.c.y][dst], &term.line[term.c.y][src], size * sizeof(Glyph));
+
+       memmove(&term.line[term.c.y][dst], &term.line[term.c.y][src],
+                       size * sizeof(Glyph));
        tclearregion(src, term.c.y, dst - 1, term.c.y);
 }
 
@@ -1282,13 +1324,18 @@ tsetattr(int *attr, int l) {
                case 38:
                        if(i + 2 < l && attr[i + 1] == 5) {
                                i += 2;
-                               if(BETWEEN(attr[i], 0, 255))
+                               if(BETWEEN(attr[i], 0, 255)) {
                                        term.c.attr.fg = attr[i];
-                               else
-                                       fprintf(stderr, "erresc: bad fgcolor %d\n", attr[i]);
+                               } else {
+                                       fprintf(stderr,
+                                               "erresc: bad fgcolor %d\n",
+                                               attr[i]);
+                               }
+                       } else {
+                               fprintf(stderr,
+                                       "erresc(38): gfx attr %d unknown\n",
+                                       attr[i]);
                        }
-                       else
-                               fprintf(stderr, "erresc(38): gfx attr %d unknown\n", attr[i]);
                        break;
                case 39:
                        term.c.attr.fg = DefaultFG;
@@ -1296,28 +1343,36 @@ tsetattr(int *attr, int l) {
                case 48:
                        if(i + 2 < l && attr[i + 1] == 5) {
                                i += 2;
-                               if(BETWEEN(attr[i], 0, 255))
+                               if(BETWEEN(attr[i], 0, 255)) {
                                        term.c.attr.bg = attr[i];
-                               else
-                                       fprintf(stderr, "erresc: bad bgcolor %d\n", attr[i]);
+                               } else {
+                                       fprintf(stderr,
+                                               "erresc: bad bgcolor %d\n",
+                                               attr[i]);
+                               }
+                       } else {
+                               fprintf(stderr,
+                                       "erresc(48): gfx attr %d unknown\n",
+                                       attr[i]);
                        }
-                       else
-                               fprintf(stderr, "erresc(48): gfx attr %d unknown\n", attr[i]);
                        break;
                case 49:
                        term.c.attr.bg = DefaultBG;
                        break;
                default:
-                       if(BETWEEN(attr[i], 30, 37))
+                       if(BETWEEN(attr[i], 30, 37)) {
                                term.c.attr.fg = attr[i] - 30;
-                       else if(BETWEEN(attr[i], 40, 47))
+                       } else if(BETWEEN(attr[i], 40, 47)) {
                                term.c.attr.bg = attr[i] - 40;
-                       else if(BETWEEN(attr[i], 90, 97))
+                       } else if(BETWEEN(attr[i], 90, 97)) {
                                term.c.attr.fg = attr[i] - 90 + 8;
-                       else if(BETWEEN(attr[i], 100, 107))
+                       } else if(BETWEEN(attr[i], 100, 107)) {
                                term.c.attr.bg = attr[i] - 100 + 8;
-                       else
-                               fprintf(stderr, "erresc(default): gfx attr %d unknown\n", attr[i]), csidump();
+                       } else {
+                               fprintf(stderr,
+                                       "erresc(default): gfx attr %d unknown\n",
+                                       attr[i]), csidump();
+                       }
                        break;
                }
        }
@@ -1573,9 +1628,9 @@ csihandle(void) {
                tsetattr(csiescseq.arg, csiescseq.narg);
                break;
        case 'r': /* DECSTBM -- Set Scrolling Region */
-               if(csiescseq.priv)
+               if(csiescseq.priv) {
                        goto unknown;
-               else {
+               else {
                        DEFAULT(csiescseq.arg[0], 1);
                        DEFAULT(csiescseq.arg[1], term.row);
                        tsetscroll(csiescseq.arg[0]-1, csiescseq.arg[1]-1);
@@ -1594,14 +1649,22 @@ csihandle(void) {
 void
 csidump(void) {
        int i;
+       uint c;
+
        printf("ESC[");
        for(i = 0; i < csiescseq.len; i++) {
-               uint c = csiescseq.buf[i] & 0xff;
-               if(isprint(c)) putchar(c);
-               else if(c == '\n') printf("(\\n)");
-               else if(c == '\r') printf("(\\r)");
-               else if(c == 0x1b) printf("(\\e)");
-               else printf("(%02x)", c);
+               c = csiescseq.buf[i] & 0xff;
+               if(isprint(c)) {
+                       putchar(c);
+               } else if(c == '\n') {
+                       printf("(\\n)");
+               } else if(c == '\r') {
+                       printf("(\\r)");
+               } else if(c == 0x1b) {
+                       printf("(\\e)");
+               } else {
+                       printf("(%02x)", c);
+               }
        }
        putchar('\n');
 }
@@ -1672,14 +1735,22 @@ strparse(void) {
 void
 strdump(void) {
        int i;
+       uint c;
+
        printf("ESC%c", strescseq.type);
        for(i = 0; i < strescseq.len; i++) {
-               uint c = strescseq.buf[i] & 0xff;
-               if(isprint(c)) putchar(c);
-               else if(c == '\n') printf("(\\n)");
-               else if(c == '\r') printf("(\\r)");
-               else if(c == 0x1b) printf("(\\e)");
-               else printf("(%02x)", c);
+               c = strescseq.buf[i] & 0xff;
+               if(isprint(c)) {
+                       putchar(c);
+               } else if(c == '\n') {
+                       printf("(\\n)");
+               } else if(c == '\r') {
+                       printf("(\\r)");
+               } else if(c == 0x1b) {
+                       printf("(\\e)");
+               } else {
+                       printf("(%02x)", c);
+               }
        }
        printf("ESC\\\n");
 }
@@ -1746,7 +1817,8 @@ tputc(char *c, int len) {
        if(term.esc & ESC_START) {
                if(term.esc & ESC_CSI) {
                        csiescseq.buf[csiescseq.len++] = ascii;
-                       if(BETWEEN(ascii, 0x40, 0x7E) || csiescseq.len >= ESC_BUF_SIZ) {
+                       if(BETWEEN(ascii, 0x40, 0x7E)
+                                       || csiescseq.len >= ESC_BUF_SIZ) {
                                term.esc = 0;
                                csiparse(), csihandle();
                        }
@@ -1811,10 +1883,11 @@ tputc(char *c, int len) {
                                term.esc = 0;
                                break;
                        case 'D': /* IND -- Linefeed */
-                               if(term.c.y == term.bot)
+                               if(term.c.y == term.bot) {
                                        tscrollup(term.top, 1);
-                               else
+                               } else {
                                        tmoveto(term.c.x, term.c.y+1);
+                               }
                                term.esc = 0;
                                break;
                        case 'E': /* NEL -- Next line */
@@ -1826,10 +1899,11 @@ tputc(char *c, int len) {
                                term.esc = 0;
                                break;
                        case 'M': /* RI -- Reverse index */
-                               if(term.c.y == term.top)
+                               if(term.c.y == term.top) {
                                        tscrolldown(term.top, 1);
-                               else
+                               } else {
                                        tmoveto(term.c.x, term.c.y-1);
+                               }
                                term.esc = 0;
                                break;
                        case 'c': /* RIS -- Reset to inital state */
@@ -1859,7 +1933,7 @@ tputc(char *c, int len) {
                                break;
                        default:
                                fprintf(stderr, "erresc: unknown sequence ESC 0x%02X '%c'\n",
-                                   (uchar) ascii, isprint(ascii)?ascii:'.');
+                                       (uchar) ascii, isprint(ascii)? ascii:'.');
                                term.esc = 0;
                        }
                }
@@ -1870,10 +1944,11 @@ tputc(char *c, int len) {
                        if(IS_SET(MODE_WRAP) && term.c.state & CURSOR_WRAPNEXT)
                                tnewline(1); /* always go to first col */
                        tsetchar(c);
-                       if(term.c.x+1 < term.col)
+                       if(term.c.x+1 < term.col) {
                                tmoveto(term.c.x+1, term.c.y);
-                       else
+                       } else {
                                term.c.state |= CURSOR_WRAPNEXT;
+                       }
                }
        }
 }
@@ -1884,6 +1959,7 @@ tresize(int col, int row) {
        int minrow = MIN(row, term.row);
        int mincol = MIN(col, term.col);
        int slide = term.c.y - row + 1;
+       bool *bp;
 
        if(col < 1 || row < 1)
                return 0;
@@ -1930,7 +2006,7 @@ tresize(int col, int row) {
                term.alt [i] = xcalloc(col, sizeof(Glyph));
        }
        if(col > term.col) {
-               bool *bp = term.tabs + term.col;
+               bp = term.tabs + term.col;
 
                memset(bp, 0, sizeof(*term.tabs) * (col - term.col));
                while(--bp > term.tabs && !*bp)
@@ -1987,7 +2063,8 @@ xloadcols(void) {
 
        for(r = 0; r < 24; r++, i++) {
                xft_color.red = xft_color.green = xft_color.blue = 0x0808 + 0x0a0a * r;
-               if(!XftColorAllocValue(xw.dpy, xw.vis, xw.cmap, &xft_color, &dc.xft_col[i])) {
+               if(!XftColorAllocValue(xw.dpy, xw.vis, xw.cmap, &xft_color,
+                                       &dc.xft_col[i])) {
                        die("Could not allocate color %d\n", i);
                }
        }
@@ -2263,8 +2340,7 @@ xdraws(char *s, Glyph base, int x, int y, int charlen, int bytelen) {
 
 void
 xdrawcursor(void) {
-       static int oldx = 0;
-       static int oldy = 0;
+       static int oldx = 0, oldy = 0;
        int sl;
        Glyph g = {{' '}, ATTR_NULL, DefaultBG, DefaultCS, 0};
 
@@ -2277,9 +2353,11 @@ xdrawcursor(void) {
        /* remove the old cursor */
        if(term.line[oldy][oldx].state & GLYPH_SET) {
                sl = utf8size(term.line[oldy][oldx].c);
-               xdraws(term.line[oldy][oldx].c, term.line[oldy][oldx], oldx, oldy, 1, sl);
-       } else
+               xdraws(term.line[oldy][oldx].c, term.line[oldy][oldx], oldx,
+                               oldy, 1, sl);
+       } else {
                xtermclear(oldx, oldy, oldx, oldy);
+       }
 
        /* draw the new one */
        if(!(term.c.state & CURSOR_HIDE)) {
@@ -2334,6 +2412,7 @@ drawregion(int x1, int y1, int x2, int y2) {
        for(y = y1; y < y2; y++) {
                if(!term.dirty[y])
                        continue;
+
                xtermclear(0, y, term.col, y);
                term.dirty[y] = 0;
                base = term.line[y][0];
@@ -2342,8 +2421,9 @@ drawregion(int x1, int y1, int x2, int y2) {
                        new = term.line[y][x];
                        if(ena_sel && *(new.c) && selected(x, y))
                                new.mode ^= ATTR_REVERSE;
-                       if(ib > 0 && (!(new.state & GLYPH_SET) || ATTRCMP(base, new) ||
-                                                 ib >= DRAW_BUF_SIZ-UTF_SIZ)) {
+                       if(ib > 0 && (!(new.state & GLYPH_SET)
+                                       || ATTRCMP(base, new)
+                                       || ib >= DRAW_BUF_SIZ-UTF_SIZ)) {
                                xdraws(buf, base, ox, y, ic, ib);
                                ic = ib = 0;
                        }
@@ -2367,6 +2447,7 @@ drawregion(int x1, int y1, int x2, int y2) {
 void
 expose(XEvent *ev) {
        XExposeEvent *e = &ev->xexpose;
+
        if(xw.state & WIN_REDRAW) {
                if(!e->count)
                        xw.state &= ~WIN_REDRAW;
@@ -2376,11 +2457,13 @@ expose(XEvent *ev) {
 void
 visibility(XEvent *ev) {
        XVisibilityEvent *e = &ev->xvisibility;
-       if(e->state == VisibilityFullyObscured)
+
+       if(e->state == VisibilityFullyObscured) {
                xw.state &= ~WIN_VISIBLE;
-       else if(!(xw.state & WIN_VISIBLE))
+       } else if(!(xw.state & WIN_VISIBLE)) {
                /* need a full redraw for next Expose, not just a buf copy */
                xw.state |= WIN_VISIBLE | WIN_REDRAW;
+       }
 }
 
 void
@@ -2391,6 +2474,7 @@ unmap(XEvent *ev) {
 void
 xseturgency(int add) {
        XWMHints *h = XGetWMHints(xw.dpy, xw.win);
+
        h->flags = add ? (h->flags | XUrgencyHint) : (h->flags & ~XUrgencyHint);
        XSetWMHints(xw.dpy, xw.win, h);
        XFree(h);
@@ -2401,18 +2485,24 @@ focus(XEvent *ev) {
        if(ev->type == FocusIn) {
                xw.state |= WIN_FOCUSED;
                xseturgency(0);
-       } else
+       } else {
                xw.state &= ~WIN_FOCUSED;
+       }
 }
 
 char*
 kmap(KeySym k, uint state) {
        int i;
+       uint mask;
+
        state &= ~Mod2Mask;
        for(i = 0; i < LEN(key); i++) {
-               uint mask = key[i].mask;
-               if(key[i].k == k && ((state & mask) == mask || (mask == XK_NO_MOD && !state)))
+               mask = key[i].mask;
+
+               if(key[i].k == k && ((state & mask) == mask
+                               || (mask == XK_NO_MOD && !state))) {
                        return (char*)key[i].s;
+               }
        }
        return NULL;
 }
@@ -2430,22 +2520,25 @@ kpress(XEvent *ev) {
 
        if (IS_SET(MODE_KBDLOCK))
                return;
+
        meta = e->state & Mod1Mask;
        shift = e->state & ShiftMask;
        len = XmbLookupString(xw.xic, e, buf, sizeof(buf), &ksym, &status);
 
        /* 1. custom keys from config.h */
-       if((customkey = kmap(ksym, e->state)))
+       if((customkey = kmap(ksym, e->state))) {
                ttywrite(customkey, strlen(customkey));
        /* 2. hardcoded (overrides X lookup) */
-       else
+       } else {
                switch(ksym) {
                case XK_Up:
                case XK_Down:
                case XK_Left:
                case XK_Right:
                        /* XXX: shift up/down doesn't work */
-                       sprintf(buf, "\033%c%c", IS_SET(MODE_APPKEYPAD) ? 'O' : '[', (shift ? "dacb":"DACB")[ksym - XK_Left]);
+                       sprintf(buf, "\033%c%c",
+                               IS_SET(MODE_APPKEYPAD) ? 'O' : '[',
+                               (shift ? "dacb":"DACB")[ksym - XK_Left]);
                        ttywrite(buf, 3);
                        break;
                case XK_Insert:
@@ -2453,10 +2546,11 @@ kpress(XEvent *ev) {
                                selpaste();
                        break;
                case XK_Return:
-                       if(IS_SET(MODE_CRLF))
+                       if(IS_SET(MODE_CRLF)) {
                                ttywrite("\r\n", 2);
-                       else
+                       } else {
                                ttywrite("\r", 1);
+                       }
                        break;
                        /* 3. X lookup  */
                default:
@@ -2467,6 +2561,7 @@ kpress(XEvent *ev) {
                        }
                        break;
                }
+       }
 }
 
 void
@@ -2618,7 +2713,7 @@ main(int argc, char *argv[]) {
                }
        }
 
- run:
+run:
        setlocale(LC_CTYPE, "");
        tnew(80, 24);
        ttynew();