From cd357e5c67d9101ca14c4706b50878cea8cf1300 Mon Sep 17 00:00:00 2001 From: Luke Smith Date: Tue, 1 May 2018 14:36:36 -0700 Subject: [PATCH] Big cleanup and some redundant bindings added --- README.md | 45 +-- config.def.h => config.h | 58 ++-- patches/st-alpha-0.8.1.diff | 183 ---------- patches/st-clipboard-20180309-c5ba9c0.diff | 13 - patches/st-no_bold_colors-0.8.1.diff | 25 -- patches/st-scrollback-0.8.diff | 348 -------------------- patches/st-scrollback-mouse-0.8.diff | 71 ---- patches/st-vertcenter-20160819-023225e.diff | 44 --- run-patches.sh | 8 - solarized-alpha-toggle.patch | 20 ++ st | Bin 0 -> 98400 bytes st-remove.sh | 5 - st.o | Bin 0 -> 74848 bytes x.o | Bin 0 -> 72976 bytes 14 files changed, 66 insertions(+), 754 deletions(-) rename config.def.h => config.h (94%) delete mode 100644 patches/st-alpha-0.8.1.diff delete mode 100644 patches/st-clipboard-20180309-c5ba9c0.diff delete mode 100644 patches/st-no_bold_colors-0.8.1.diff delete mode 100644 patches/st-scrollback-0.8.diff delete mode 100644 patches/st-scrollback-mouse-0.8.diff delete mode 100644 patches/st-vertcenter-20160819-023225e.diff delete mode 100755 run-patches.sh create mode 100644 solarized-alpha-toggle.patch create mode 100755 st delete mode 100755 st-remove.sh create mode 100644 st.o create mode 100644 x.o diff --git a/README.md b/README.md index 2215bb8..248b4cf 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,9 @@ # Luke's build of st - the simple (suckless) terminal - Forked from [https://github.com/shiva/st](https://github.com/shiva/st) for simplicity's sake, which is the [suckless terminal (st)](https://st.suckless.org/) with some patches added: + transparency -+ copy to clipboard -+ ~~Solarized colors (light and dark toggleable)~~ (Change to your own colors, see no value of toggle) ++ copy to clipboard (alt-shift-c) ++ Solarized colors (light and dark toggleable) + vertcenter + scrollback with keyboard + scrollback with mouse @@ -12,10 +11,11 @@ Forked from [https://github.com/shiva/st](https://github.com/shiva/st) for simpl ## My own additions -+ Default font is system "mono" at 14pt -+ Alt-k and Alt-j scroll back/foward in history one line at a time -+ Alt-u and Alt-d scroll back/foward in history a page at a time -+ Applied colors, insipred by Pop! OS colors. ++ Default font is system "mono" at 14pt, meaning the font will match your system font. ++ Hold alt and press either ↑/↓ or the vim keys k/j to move up/down in the terminal. ++ Alt-u and Alt-d scroll back/foward in history a page at a time. ++ Alt-PageUp and Alt-PageDown scroll back/foward in history a page at a time. ++ Transparency with solarized colors by default. ## Terminal-specific mappings @@ -28,36 +28,27 @@ Forked from [https://github.com/shiva/st](https://github.com/shiva/st) for simpl ## Installation for newbs -### Requirements for build - -Install `base-devel` - compiler and stuff (most distros have). - -Install code depndencies (voidlinux - most distro should have something similar) - -+ `fontconfig-devel` -+ `libX11-devel` -+ `libXft-devel` - - -### Make & install - ``` make sudo make install ``` +Obviously, `make` is required to build. `fontconfig` is required for the default build, since it asks `fontconfig` for your system monospace font. It might be obvious, but `libX11` and `libXft` are required as well. Chances are, you have all of this installed already. + ## Custom changes (`config.def.h` or `config.h`) -### Alpha +By default, the terminal is transparent with a blackish background. There's a patch file `solarized-alpha-toggle.patch` which you can use to remove the transparency and give it a typical deep, dark blue solarized background. Just run: -+ Change `alpha` value (86 LOC), be default set `0xcd`. -+ Less transparent set to `0xdd` or `0xee`. -+ For non transparent terminal set to `0xff`. +``` +patch < solarized-alpha-toggle.patch +``` -### Colorname +Then, run `make` & `sudo make install` again to install the new build. You make reverse the solarized background by running the same command as above, but giving `patch` the `-R` option as well. -+ Change `colorname[]` array values (88 LOC), default colours inspired by colors used in Pop! OS. -+ Numbers of 0 - 15 are usual terminal colors. Changed them to your liking. +## Explore `config.h` + ++ Change `colorname[]` array values (88 LOC), default colours are solarized. ++ Numbers of 0 - 15 are usual terminal colors. Change them to your liking. + Change `bg` to your desired terminal background color. + Change `fg` to your desired terminal foreground color. + Change `cursor` to your desired terminal cursor color. diff --git a/config.def.h b/config.h similarity index 94% rename from config.def.h rename to config.h index 5a3cd53..a38b79a 100644 --- a/config.def.h +++ b/config.h @@ -5,7 +5,7 @@ * * font: see http://freedesktop.org/software/fontconfig/fontconfig-user.html */ -static char *font = "Liberation Mono:pixelsize=14:antialias=true:autohint=true"; +static char *font = "mono:pixelsize=14:antialias=true:autohint=true"; static int borderpx = 2; /* @@ -86,28 +86,22 @@ unsigned int tabspaces = 8; unsigned int alpha = 0xcd; static const char *colorname[] = { - /* 8 normal colors */ - "#666666", /* 0 */ - "#cc0000", /* 1 */ - "#4e9a06", /* 2 */ - "#c4a000", /* 3 */ - "#3465a4", /* 4 */ - "#75507b", /* 5 */ - "#06989a", /* 6 */ - "#d3d7cf", /* 7 */ - - /* 8 bright colors */ - "#88807c", /* 8 */ - "#f15d22", /* 9 */ - "#73c48f", /* 10 */ - "#ffce51", /* 11 */ - "#48b9c7", /* 12 */ - "#ad7fa8", /* 13 */ - "#34e2e2", /* 14 */ - "#eeeeec", /* 15 */ - - [255] = 0, - + "#073642", /* 0: black */ + "#dc322f", /* 1: red */ + "#859900", /* 2: green */ + "#b58900", /* 3: yellow */ + "#268bd2", /* 4: blue */ + "#d33682", /* 5: magenta */ + "#2aa198", /* 6: cyan */ + "#eee8d5", /* 7: white */ + "#002b36", /* 8: brblack */ + "#cb4b16", /* 9: brred */ + "#586e75", /* 10: brgreen */ + "#657b83", /* 11: bryellow */ + "#839496", /* 12: brblue */ + "#6c71c4", /* 13: brmagenta*/ + "#93a1a1", /* 14: brcyan */ + "#fdf6e3", /* 15: brwhite */ /* more colors can be added after 255 to use with DefaultXX */ "black", /* 256 -> bg */ "#00cc00", /* 257 -> fg */ @@ -119,10 +113,10 @@ static const char *colorname[] = { * Default colors (colorname index) * foreground, background, cursor, reverse cursor */ -unsigned int defaultfg = 257; +unsigned int defaultfg = 12; unsigned int defaultbg = 256; -static unsigned int defaultcs = 258; -static unsigned int defaultrcs = 257; +static unsigned int defaultcs = 14; +static unsigned int defaultrcs = 15; /* * Default shape of cursor @@ -190,10 +184,14 @@ static Shortcut shortcuts[] = { { MODKEY, XK_Control_L, iso14755, {.i = 0} }, { ShiftMask, XK_Page_Up, kscrollup, {.i = -1} }, { ShiftMask, XK_Page_Down, kscrolldown, {.i = -1} }, - { MODKEY, XK_k, kscrollup, {.i = 1} }, - { MODKEY, XK_j, kscrolldown, {.i = 1} }, - { MODKEY, XK_u, kscrollup, {.i = -1} }, - { MODKEY, XK_d, kscrolldown, {.i = -1} }, + { MODKEY, XK_Page_Up, kscrollup, {.i = -1} }, + { MODKEY, XK_Page_Down, kscrolldown, {.i = -1} }, + { MODKEY, XK_k, kscrollup, {.i = 1} }, + { MODKEY, XK_j, kscrolldown, {.i = 1} }, + { MODKEY, XK_Up, kscrollup, {.i = 1} }, + { MODKEY, XK_Down, kscrolldown, {.i = 1} }, + { MODKEY, XK_u, kscrollup, {.i = -1} }, + { MODKEY, XK_d, kscrolldown, {.i = -1} }, }; /* diff --git a/patches/st-alpha-0.8.1.diff b/patches/st-alpha-0.8.1.diff deleted file mode 100644 index 9dd26c3..0000000 --- a/patches/st-alpha-0.8.1.diff +++ /dev/null @@ -1,183 +0,0 @@ -diff --git a/config.def.h b/config.def.h -index feec7e2..e373018 100644 ---- a/config.def.h -+++ b/config.def.h -@@ -82,6 +82,9 @@ char *termname = "st-256color"; - */ - unsigned int tabspaces = 8; - -+/* bg opacity */ -+unsigned int alpha = 0xcd; -+ - /* Terminal colors (16 first used in escape sequence) */ - static const char *colorname[] = { - /* 8 normal colors */ -diff --git a/config.mk b/config.mk -index 039c42c..3b00d7e 100644 ---- a/config.mk -+++ b/config.mk -@@ -14,7 +14,7 @@ X11LIB = /usr/X11R6/lib - INCS = -I$(X11INC) \ - `pkg-config --cflags fontconfig` \ - `pkg-config --cflags freetype2` --LIBS = -L$(X11LIB) -lm -lrt -lX11 -lutil -lXft \ -+LIBS = -L${X11LIB} -lm -lrt -lX11 -lutil -lXft -lXrender \ - `pkg-config --libs fontconfig` \ - `pkg-config --libs freetype2` - -diff --git a/st.h b/st.h -index cdd25ae..850c5f0 100644 ---- a/st.h -+++ b/st.h -@@ -134,6 +134,7 @@ extern char *worddelimiters; - extern int allowaltscreen; - extern char *termname; - extern unsigned int tabspaces; -+extern unsigned int alpha; - extern unsigned int defaultfg; - extern unsigned int defaultbg; - extern MouseKey mkeys[]; -diff --git a/win.h b/win.h -index 31f327d..d277477 100644 ---- a/win.h -+++ b/win.h -@@ -23,6 +23,10 @@ enum win_mode { - |MODE_MOUSEMANY, - }; - -+/* alpha */ -+#define OPAQUE 0Xff -+#define USE_ARGB (alpha != OPAQUE && opt_embed == NULL) -+ - void xbell(void); - void xclipcopy(void); - void xdrawcursor(int, int, Glyph, int, int, Glyph); -diff --git a/x.c b/x.c -index f4a6be7..840d2fa 100644 ---- a/x.c -+++ b/x.c -@@ -99,6 +99,7 @@ typedef struct { - XSetWindowAttributes attrs; - int scr; - int isfixed; /* is fixed geometry? */ -+ int depth; /* bit depth */ - int l, t; /* left and top offset */ - int gm; /* geometry mask */ - } XWindow; -@@ -698,7 +699,7 @@ xresize(int col, int row) - - XFreePixmap(xw.dpy, xw.buf); - xw.buf = XCreatePixmap(xw.dpy, xw.win, win.w, win.h, -- DefaultDepth(xw.dpy, xw.scr)); -+ xw.depth); - XftDrawChange(xw.draw, xw.buf); - xclear(0, 0, win.w, win.h); - -@@ -758,6 +759,13 @@ xloadcols(void) - else - die("Could not allocate color %d\n", i); - } -+ -+ /* set alpha value of bg color */ -+ if (USE_ARGB) { -+ dc.col[defaultbg].color.alpha = (0xffff * alpha) / OPAQUE; -+ dc.col[defaultbg].pixel &= 0x00111111; -+ dc.col[defaultbg].pixel |= alpha << 24; -+ } - loaded = 1; - } - -@@ -779,6 +787,17 @@ xsetcolorname(int x, const char *name) - return 0; - } - -+void -+xtermclear(int col1, int row1, int col2, int row2) -+{ -+ XftDrawRect(xw.draw, -+ &dc.col[IS_SET(MODE_REVERSE) ? defaultfg : defaultbg], -+ borderpx + col1 * win.cw, -+ borderpx + row1 * win.ch, -+ (col2-col1+1) * win.cw, -+ (row2-row1+1) * win.ch); -+} -+ - /* - * Absolute coordinates. - */ -@@ -1018,7 +1037,40 @@ xinit(int cols, int rows) - if (!(xw.dpy = XOpenDisplay(NULL))) - die("Can't open display\n"); - xw.scr = XDefaultScreen(xw.dpy); -- xw.vis = XDefaultVisual(xw.dpy, xw.scr); -+ xw.depth = (USE_ARGB) ? 32: XDefaultDepth(xw.dpy, xw.scr); -+ if (!USE_ARGB) -+ xw.vis = XDefaultVisual(xw.dpy, xw.scr); -+ else { -+ XVisualInfo *vis; -+ XRenderPictFormat *fmt; -+ int nvi; -+ int i; -+ -+ XVisualInfo tpl = { -+ .screen = xw.scr, -+ .depth = 32, -+ .class = TrueColor -+ }; -+ -+ vis = XGetVisualInfo(xw.dpy, -+ VisualScreenMask | VisualDepthMask | VisualClassMask, -+ &tpl, &nvi); -+ xw.vis = NULL; -+ for (i = 0; i < nvi; i++) { -+ fmt = XRenderFindVisualFormat(xw.dpy, vis[i].visual); -+ if (fmt->type == PictTypeDirect && fmt->direct.alphaMask) { -+ xw.vis = vis[i].visual; -+ break; -+ } -+ } -+ -+ XFree(vis); -+ -+ if (!xw.vis) { -+ fprintf(stderr, "Couldn't find ARGB visual.\n"); -+ exit(1); -+ } -+ } - - /* font */ - if (!FcInit()) -@@ -1028,7 +1080,11 @@ xinit(int cols, int rows) - xloadfonts(usedfont, 0); - - /* colors */ -- xw.cmap = XDefaultColormap(xw.dpy, xw.scr); -+ if (!USE_ARGB) -+ xw.cmap = XDefaultColormap(xw.dpy, xw.scr); -+ else -+ xw.cmap = XCreateColormap(xw.dpy, XRootWindow(xw.dpy, xw.scr), -+ xw.vis, None); - xloadcols(); - - /* adjust fixed window geometry */ -@@ -1051,16 +1107,15 @@ xinit(int cols, int rows) - if (!(opt_embed && (parent = strtol(opt_embed, NULL, 0)))) - parent = XRootWindow(xw.dpy, xw.scr); - xw.win = XCreateWindow(xw.dpy, parent, xw.l, xw.t, -- win.w, win.h, 0, XDefaultDepth(xw.dpy, xw.scr), InputOutput, -+ win.w, win.h, 0, xw.depth, InputOutput, - xw.vis, CWBackPixel | CWBorderPixel | CWBitGravity - | CWEventMask | CWColormap, &xw.attrs); - - memset(&gcvalues, 0, sizeof(gcvalues)); - gcvalues.graphics_exposures = False; -- dc.gc = XCreateGC(xw.dpy, parent, GCGraphicsExposures, -- &gcvalues); -- xw.buf = XCreatePixmap(xw.dpy, xw.win, win.w, win.h, -- DefaultDepth(xw.dpy, xw.scr)); -+ xw.buf = XCreatePixmap(xw.dpy, xw.win, win.w, win.h, xw.depth); -+ dc.gc = XCreateGC(xw.dpy, (USE_ARGB) ? xw.buf: parent, -+ GCGraphicsExposures, &gcvalues); - XSetForeground(xw.dpy, dc.gc, dc.col[defaultbg].pixel); - XFillRectangle(xw.dpy, xw.buf, dc.gc, 0, 0, win.w, win.h); - diff --git a/patches/st-clipboard-20180309-c5ba9c0.diff b/patches/st-clipboard-20180309-c5ba9c0.diff deleted file mode 100644 index 4a14e2b..0000000 --- a/patches/st-clipboard-20180309-c5ba9c0.diff +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/x.c b/x.c -index 13fa9f4..88fd341 100644 ---- a/x.c -+++ b/x.c -@@ -624,6 +624,8 @@ setsel(char *str, Time t) - XSetSelectionOwner(xw.dpy, XA_PRIMARY, xw.win, t); - if (XGetSelectionOwner(xw.dpy, XA_PRIMARY) != xw.win) - selclear(); -+ -+ xclipcopy(); - } - - void diff --git a/patches/st-no_bold_colors-0.8.1.diff b/patches/st-no_bold_colors-0.8.1.diff deleted file mode 100644 index 1bd4657..0000000 --- a/patches/st-no_bold_colors-0.8.1.diff +++ /dev/null @@ -1,25 +0,0 @@ -From e0a92b498278e42e33f8007fd7b622a05e5310eb Mon Sep 17 00:00:00 2001 -From: Linh Nguyen -Date: Wed, 28 Mar 2018 12:23:45 -0400 -Subject: [PATCH] port st-no_bold_colors patch to 0.8.1 - ---- - x.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/x.c b/x.c -index c343ba2..42e7e9f 100644 ---- a/x.c -+++ b/x.c -@@ -1295,7 +1295,7 @@ xdrawglyphfontspecs(const XftGlyphFontSpec *specs, Glyph base, int len, int x, i - - /* Change basic system colors [0-7] to bright system colors [8-15] */ - if ((base.mode & ATTR_BOLD_FAINT) == ATTR_BOLD && BETWEEN(base.fg, 0, 7)) -- fg = &dc.col[base.fg + 8]; -+ fg = &dc.col[base.fg]; - - if (IS_SET(MODE_REVERSE)) { - if (fg == &dc.col[defaultfg]) { --- -2.16.3 - diff --git a/patches/st-scrollback-0.8.diff b/patches/st-scrollback-0.8.diff deleted file mode 100644 index a61601a..0000000 --- a/patches/st-scrollback-0.8.diff +++ /dev/null @@ -1,348 +0,0 @@ -diff --git a/config.def.h b/config.def.h -index 82b1b09..27d42ca 100644 ---- a/config.def.h -+++ b/config.def.h -@@ -181,6 +181,8 @@ static Shortcut shortcuts[] = { - { TERMMOD, XK_Y, selpaste, {.i = 0} }, - { TERMMOD, XK_Num_Lock, numlock, {.i = 0} }, - { TERMMOD, XK_I, iso14755, {.i = 0} }, -+ { ShiftMask, XK_Page_Up, kscrollup, {.i = -1} }, -+ { ShiftMask, XK_Page_Down, kscrolldown, {.i = -1} }, - }; - - /* -diff --git a/st.c b/st.c -index 65a0cb6..1d8c12a 100644 ---- a/st.c -+++ b/st.c -@@ -121,6 +121,9 @@ typedef struct { - int col; /* nb col */ - Line *line; /* screen */ - Line *alt; /* alternate screen */ -+ Line hist[HISTSIZE]; /* history buffer */ -+ int histi; /* history index */ -+ int scr; /* scroll back */ - int *dirty; /* dirtyness of lines */ - TCursor c; /* cursor */ - int ocx; /* old cursor col */ -@@ -188,8 +191,8 @@ static void tnewline(int); - static void tputtab(int); - static void tputc(Rune); - static void treset(void); --static void tscrollup(int, int); --static void tscrolldown(int, int); -+static void tscrollup(int, int, int); -+static void tscrolldown(int, int, int); - static void tsetattr(int *, int); - static void tsetchar(Rune, Glyph *, int, int); - static void tsetdirt(int, int); -@@ -431,10 +434,10 @@ tlinelen(int y) - { - int i = term.col; - -- if (term.line[y][i - 1].mode & ATTR_WRAP) -+ if (TLINE(y)[i - 1].mode & ATTR_WRAP) - return i; - -- while (i > 0 && term.line[y][i - 1].u == ' ') -+ while (i > 0 && TLINE(y)[i - 1].u == ' ') - --i; - - return i; -@@ -543,7 +546,7 @@ selsnap(int *x, int *y, int direction) - * Snap around if the word wraps around at the end or - * beginning of a line. - */ -- prevgp = &term.line[*y][*x]; -+ prevgp = &TLINE(*y)[*x]; - prevdelim = ISDELIM(prevgp->u); - for (;;) { - newx = *x + direction; -@@ -558,14 +561,14 @@ selsnap(int *x, int *y, int direction) - yt = *y, xt = *x; - else - yt = newy, xt = newx; -- if (!(term.line[yt][xt].mode & ATTR_WRAP)) -+ if (!(TLINE(yt)[xt].mode & ATTR_WRAP)) - break; - } - - if (newx >= tlinelen(newy)) - break; - -- gp = &term.line[newy][newx]; -+ gp = &TLINE(newy)[newx]; - delim = ISDELIM(gp->u); - if (!(gp->mode & ATTR_WDUMMY) && (delim != prevdelim - || (delim && gp->u != prevgp->u))) -@@ -586,14 +589,14 @@ selsnap(int *x, int *y, int direction) - *x = (direction < 0) ? 0 : term.col - 1; - if (direction < 0) { - for (; *y > 0; *y += direction) { -- if (!(term.line[*y-1][term.col-1].mode -+ if (!(TLINE(*y-1)[term.col-1].mode - & ATTR_WRAP)) { - break; - } - } - } else if (direction > 0) { - for (; *y < term.row-1; *y += direction) { -- if (!(term.line[*y][term.col-1].mode -+ if (!(TLINE(*y)[term.col-1].mode - & ATTR_WRAP)) { - break; - } -@@ -624,13 +627,13 @@ getsel(void) - } - - if (sel.type == SEL_RECTANGULAR) { -- gp = &term.line[y][sel.nb.x]; -+ gp = &TLINE(y)[sel.nb.x]; - lastx = sel.ne.x; - } else { -- gp = &term.line[y][sel.nb.y == y ? sel.nb.x : 0]; -+ gp = &TLINE(y)[sel.nb.y == y ? sel.nb.x : 0]; - lastx = (sel.ne.y == y) ? sel.ne.x : term.col-1; - } -- last = &term.line[y][MIN(lastx, linelen-1)]; -+ last = &TLINE(y)[MIN(lastx, linelen-1)]; - while (last >= gp && last->u == ' ') - --last; - -@@ -836,6 +839,9 @@ ttyread(void) - if (buflen > 0) - memmove(buf, buf + written, buflen); - -+ if (term.scr > 0 && term.scr < HISTSIZE-1) -+ term.scr++; -+ - return ret; - } - -@@ -843,6 +849,9 @@ void - ttywrite(const char *s, size_t n, int may_echo) - { - const char *next; -+ Arg arg = (Arg) { .i = term.scr }; -+ -+ kscrolldown(&arg); - - if (may_echo && IS_SET(MODE_ECHO)) - twrite(s, n, 1); -@@ -1054,13 +1063,54 @@ tswapscreen(void) - } - - void --tscrolldown(int orig, int n) -+kscrolldown(const Arg* a) -+{ -+ int n = a->i; -+ -+ if (n < 0) -+ n = term.row + n; -+ -+ if (n > term.scr) -+ n = term.scr; -+ -+ if (term.scr > 0) { -+ term.scr -= n; -+ selscroll(0, -n); -+ tfulldirt(); -+ } -+} -+ -+void -+kscrollup(const Arg* a) -+{ -+ int n = a->i; -+ -+ if (n < 0) -+ n = term.row + n; -+ -+ if (term.scr <= HISTSIZE-n) { -+ term.scr += n; -+ selscroll(0, n); -+ tfulldirt(); -+ } -+} -+ -+ -+void -+tscrolldown(int orig, int n, int copyhist) - { - int i; - Line temp; - - LIMIT(n, 0, term.bot-orig+1); - -+ if (copyhist) { -+ term.histi = (term.histi - 1 + HISTSIZE) % HISTSIZE; -+ temp = term.hist[term.histi]; -+ term.hist[term.histi] = term.line[term.bot]; -+ term.line[term.bot] = temp; -+ } -+ - tsetdirt(orig, term.bot-n); - tclearregion(0, term.bot-n+1, term.col-1, term.bot); - -@@ -1074,13 +1124,20 @@ tscrolldown(int orig, int n) - } - - void --tscrollup(int orig, int n) -+tscrollup(int orig, int n, int copyhist) - { - int i; - Line temp; - - LIMIT(n, 0, term.bot-orig+1); - -+ if (copyhist) { -+ term.histi = (term.histi + 1) % HISTSIZE; -+ temp = term.hist[term.histi]; -+ term.hist[term.histi] = term.line[orig]; -+ term.line[orig] = temp; -+ } -+ - tclearregion(0, orig, term.col-1, orig+n-1); - tsetdirt(orig+n, term.bot); - -@@ -1129,7 +1186,7 @@ tnewline(int first_col) - int y = term.c.y; - - if (y == term.bot) { -- tscrollup(term.top, 1); -+ tscrollup(term.top, 1, 1); - } else { - y++; - } -@@ -1294,14 +1351,14 @@ void - tinsertblankline(int n) - { - if (BETWEEN(term.c.y, term.top, term.bot)) -- tscrolldown(term.c.y, n); -+ tscrolldown(term.c.y, n, 0); - } - - void - tdeleteline(int n) - { - if (BETWEEN(term.c.y, term.top, term.bot)) -- tscrollup(term.c.y, n); -+ tscrollup(term.c.y, n, 0); - } - - int32_t -@@ -1730,11 +1787,11 @@ csihandle(void) - break; - case 'S': /* SU -- Scroll line up */ - DEFAULT(csiescseq.arg[0], 1); -- tscrollup(term.top, csiescseq.arg[0]); -+ tscrollup(term.top, csiescseq.arg[0], 0); - break; - case 'T': /* SD -- Scroll line down */ - DEFAULT(csiescseq.arg[0], 1); -- tscrolldown(term.top, csiescseq.arg[0]); -+ tscrolldown(term.top, csiescseq.arg[0], 0); - break; - case 'L': /* IL -- Insert blank lines */ - DEFAULT(csiescseq.arg[0], 1); -@@ -2258,7 +2315,7 @@ eschandle(uchar ascii) - return 0; - case 'D': /* IND -- Linefeed */ - if (term.c.y == term.bot) { -- tscrollup(term.top, 1); -+ tscrollup(term.top, 1, 1); - } else { - tmoveto(term.c.x, term.c.y+1); - } -@@ -2271,7 +2328,7 @@ eschandle(uchar ascii) - break; - case 'M': /* RI -- Reverse index */ - if (term.c.y == term.top) { -- tscrolldown(term.top, 1); -+ tscrolldown(term.top, 1, 1); - } else { - tmoveto(term.c.x, term.c.y-1); - } -@@ -2490,7 +2547,7 @@ twrite(const char *buf, int buflen, int show_ctrl) - void - tresize(int col, int row) - { -- int i; -+ int i, j; - int minrow = MIN(row, term.row); - int mincol = MIN(col, term.col); - int *bp; -@@ -2527,7 +2584,15 @@ tresize(int col, int row) - term.dirty = xrealloc(term.dirty, row * sizeof(*term.dirty)); - term.tabs = xrealloc(term.tabs, col * sizeof(*term.tabs)); - -- /* resize each row to new width, zero-pad if needed */ -+ for (i = 0; i < HISTSIZE; i++) { -+ term.hist[i] = xrealloc(term.hist[i], col * sizeof(Glyph)); -+ for (j = mincol; j < col; j++) { -+ term.hist[i][j] = term.c.attr; -+ term.hist[i][j].u = ' '; -+ } -+ } -+ -+ /* resize each r w to new width, zero-pad if needed */ - for (i = 0; i < minrow; i++) { - term.line[i] = xrealloc(term.line[i], col * sizeof(Glyph)); - term.alt[i] = xrealloc(term.alt[i], col * sizeof(Glyph)); -@@ -2584,7 +2649,7 @@ drawregion(int x1, int y1, int x2, int y2) - continue; - - term.dirty[y] = 0; -- xdrawline(term.line[y], x1, y, x2); -+ xdrawline(TLINE(y), x1, y, x2); - } - } - -@@ -2605,8 +2670,10 @@ draw(void) - cx--; - - drawregion(0, 0, term.col, term.row); -- xdrawcursor(cx, term.c.y, term.line[term.c.y][cx], -- term.ocx, term.ocy, term.line[term.ocy][term.ocx]); -+ if (term.scr == 0) { -+ xdrawcursor(cx, term.c.y, term.line[term.c.y][cx], -+ term.ocx, term.ocy, term.line[term.ocy][term.ocx]); -+ } - term.ocx = cx, term.ocy = term.c.y; - xfinishdraw(); - } -diff --git a/st.h b/st.h -index dac64d8..628e876 100644 ---- a/st.h -+++ b/st.h -@@ -3,6 +3,9 @@ - #include - #include - -+/* Arbitrary size */ -+#define HISTSIZE 2000 -+ - /* macros */ - #define MIN(a, b) ((a) < (b) ? (a) : (b)) - #define MAX(a, b) ((a) < (b) ? (b) : (a)) -@@ -19,6 +22,8 @@ - - #define TRUECOLOR(r,g,b) (1 << 24 | (r) << 16 | (g) << 8 | (b)) - #define IS_TRUECOL(x) (1 << 24 & (x)) -+#define TLINE(y) ((y) < term.scr ? term.hist[((y) + term.histi - term.scr \ -+ + HISTSIZE + 1) % HISTSIZE] : term.line[(y) - term.scr]) - - enum glyph_attribute { - ATTR_NULL = 0, -@@ -111,6 +116,9 @@ void *xmalloc(size_t); - void *xrealloc(void *, size_t); - char *xstrdup(char *); - -+void kscrolldown(const Arg *); -+void kscrollup(const Arg *); -+ - /* config.h globals */ - extern char *utmp; - extern char *stty_args; diff --git a/patches/st-scrollback-mouse-0.8.diff b/patches/st-scrollback-mouse-0.8.diff deleted file mode 100644 index 3b2729e..0000000 --- a/patches/st-scrollback-mouse-0.8.diff +++ /dev/null @@ -1,71 +0,0 @@ -diff --git a/config.def.h b/config.def.h -index 27d42ca..feec7e2 100644 ---- a/config.def.h -+++ b/config.def.h -@@ -156,8 +156,14 @@ static unsigned int defaultattr = 11; - */ - static MouseShortcut mshortcuts[] = { - /* button mask string */ -- { Button4, XK_ANY_MOD, "\031" }, -- { Button5, XK_ANY_MOD, "\005" }, -+ { Button4, XK_NO_MOD, "\031" }, -+ { Button5, XK_NO_MOD, "\005" }, -+}; -+ -+MouseKey mkeys[] = { -+ /* button mask function argument */ -+ { Button4, ShiftMask, kscrollup, {.i = 1} }, -+ { Button5, ShiftMask, kscrolldown, {.i = 1} }, - }; - - /* Internal keyboard shortcuts. */ -diff --git a/st.h b/st.h -index 628e876..cdd25ae 100644 ---- a/st.h -+++ b/st.h -@@ -81,6 +81,13 @@ typedef union { - const void *v; - } Arg; - -+typedef struct { -+ uint b; -+ uint mask; -+ void (*func)(const Arg *); -+ const Arg arg; -+} MouseKey; -+ - void die(const char *, ...); - void redraw(void); - void draw(void); -@@ -129,3 +136,4 @@ extern char *termname; - extern unsigned int tabspaces; - extern unsigned int defaultfg; - extern unsigned int defaultbg; -+extern MouseKey mkeys[]; -diff --git a/x.c b/x.c -index d43a529..754d859 100644 ---- a/x.c -+++ b/x.c -@@ -409,6 +409,7 @@ bpress(XEvent *e) - { - struct timespec now; - MouseShortcut *ms; -+ MouseKey *mk; - int snap; - - if (IS_SET(MODE_MOUSE) && !(e->xbutton.state & forceselmod)) { -@@ -424,6 +425,14 @@ bpress(XEvent *e) - } - } - -+ for (mk = mkeys; mk < mkeys + LEN(mkeys); mk++) { -+ if (e->xbutton.button == mk->b -+ && match(mk->mask, e->xbutton.state)) { -+ mk->func(&mk->arg); -+ return; -+ } -+ } -+ - if (e->xbutton.button == Button1) { - /* - * If the user clicks below predefined timeouts specific diff --git a/patches/st-vertcenter-20160819-023225e.diff b/patches/st-vertcenter-20160819-023225e.diff deleted file mode 100644 index e3fca96..0000000 --- a/patches/st-vertcenter-20160819-023225e.diff +++ /dev/null @@ -1,44 +0,0 @@ -diff --git a/st.c b/st.c -index 2594c65..7285237 100644 ---- a/st.c -+++ b/st.c -@@ -268,6 +268,7 @@ typedef struct { - int w, h; /* window width and height */ - int ch; /* char height */ - int cw; /* char width */ -+ int cyo; /* char y offset */ - char state; /* focus, redraw, visible */ - int cursor; /* cursor style */ - } XWindow; -@@ -3359,6 +3360,7 @@ xloadfonts(char *fontstr, double fontsize) - /* Setting character width and height. */ - xw.cw = ceilf(dc.font.width * cwscale); - xw.ch = ceilf(dc.font.height * chscale); -+ xw.cyo = ceilf(dc.font.height * (chscale - 1) / 2); - - FcPatternDel(pattern, FC_SLANT); - FcPatternAddInteger(pattern, FC_SLANT, FC_SLANT_ITALIC); -@@ -3584,7 +3586,7 @@ xmakeglyphfontspecs(XftGlyphFontSpec *specs, const Glyph *glyphs, int len, int x - font = &dc.bfont; - frcflags = FRC_BOLD; - } -- yp = winy + font->ascent; -+ yp = winy + font->ascent + xw.cyo; - } - - /* Lookup character index with default font. */ -@@ -3796,12 +3798,12 @@ xdrawglyphfontspecs(const XftGlyphFontSpec *specs, Glyph base, int len, int x, i - - /* Render underline and strikethrough. */ - if (base.mode & ATTR_UNDERLINE) { -- XftDrawRect(xw.draw, fg, winx, winy + dc.font.ascent + 1, -+ XftDrawRect(xw.draw, fg, winx, winy + xw.cyo + dc.font.ascent + 1, - width, 1); - } - - if (base.mode & ATTR_STRUCK) { -- XftDrawRect(xw.draw, fg, winx, winy + 2 * dc.font.ascent / 3, -+ XftDrawRect(xw.draw, fg, winx, winy + xw.cyo + 2 * dc.font.ascent / 3, - width, 1); - } - diff --git a/run-patches.sh b/run-patches.sh deleted file mode 100755 index 48047e1..0000000 --- a/run-patches.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/sh - -patch < patches/st-clipboard-20180309-c5ba9c0.diff -patch < patches/st-no_bold_colors-0.8.1.diff -patch < patches/st-scrollback-0.8.diff -patch < patches/st-scrollback-mouse-0.8.diff -patch < patches/st-vertcenter-20180320-6ac8c8a.diff -patch < patches/st-alpha-0.8.1.diff diff --git a/solarized-alpha-toggle.patch b/solarized-alpha-toggle.patch new file mode 100644 index 0000000..901c392 --- /dev/null +++ b/solarized-alpha-toggle.patch @@ -0,0 +1,20 @@ +--- config.h 2018-05-01 14:09:36.752813283 -0700 ++++ config.sol.h 2018-05-01 14:10:20.132810913 -0700 +@@ -83,7 +83,7 @@ + unsigned int tabspaces = 8; + + /* bg opacity */ +-unsigned int alpha = 0xcd; ++unsigned int alpha = 0xff; + + static const char *colorname[] = { + "#073642", /* 0: black */ +@@ -114,7 +114,7 @@ + * foreground, background, cursor, reverse cursor + */ + unsigned int defaultfg = 12; +-unsigned int defaultbg = 256; ++unsigned int defaultbg = 0; + static unsigned int defaultcs = 14; + static unsigned int defaultrcs = 15; + diff --git a/st b/st new file mode 100755 index 0000000000000000000000000000000000000000..3372f0e81c04ab200d88094fd4e41e9266b07802 GIT binary patch literal 98400 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

tAE=+j~NPgn=BKZ=&C8f?sKZzug4?SK#$yqt!N= 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 literal 0 HcmV?d00001