it* sacc + cursorline and uri preview Err codevoid.de 70 i Err codevoid.de 70 hgit clone git://git.codevoid.de/sacc-sdk URL:git://git.codevoid.de/sacc-sdk codevoid.de 70 1Log /git/sacc-sdk/log.gph codevoid.de 70 1Files /git/sacc-sdk/files.gph codevoid.de 70 1Refs /git/sacc-sdk/refs.gph codevoid.de 70 1LICENSE /git/sacc-sdk/file/LICENSE.gph codevoid.de 70 i--- Err codevoid.de 70 1commit 56cb65746fb45ad6228a17a3d0bc7108e5f580bd /git/sacc-sdk/commit/56cb65746fb45ad6228a17a3d0bc7108e5f580bd.gph codevoid.de 70 1parent 2a13823f55fd273d3013e685e8d830f6109daecf /git/sacc-sdk/commit/2a13823f55fd273d3013e685e8d830f6109daecf.gph codevoid.de 70 hAuthor: Stefan Hagen URL:mailto:sh+git[at]codevoid[dot]de codevoid.de 70 iDate: Tue, 21 Aug 2018 22:58:39 +0200 Err codevoid.de 70 i Err codevoid.de 70 iSilence warnings, adding some color Err codevoid.de 70 i Err codevoid.de 70 iDiffstat: Err codevoid.de 70 i M ui_ti.c | 27 ++++++++++++++++----------- Err codevoid.de 70 i Err codevoid.de 70 i1 file changed, 16 insertions(+), 11 deletions(-) Err codevoid.de 70 i--- Err codevoid.de 70 1diff --git a/ui_ti.c b/ui_ti.c /git/sacc-sdk/file/ui_ti.c.gph codevoid.de 70 it@@ -13,6 +13,9 @@ Err codevoid.de 70 i #define C(c) #c Err codevoid.de 70 i #define S(c) C(c) Err codevoid.de 70 i Err codevoid.de 70 i+#define SELECTION "\x1B[31m\x1B[40m\x1B[1m" Err codevoid.de 70 i+#define RESET "\x1B[0m" Err codevoid.de 70 i+ Err codevoid.de 70 i static char bufout[256]; Err codevoid.de 70 i static struct termios tsave; Err codevoid.de 70 i static struct termios tsacc; Err codevoid.de 70 it@@ -65,7 +68,7 @@ uiprompt(char *fmt, ...) Err codevoid.de 70 i Err codevoid.de 70 i putp(tparm(exit_standout_mode, 0, 0, 0, 0, 0, 0, 0, 0, 0)); Err codevoid.de 70 i if (n < columns) Err codevoid.de 70 i- printf("%*s", columns - n, " "); Err codevoid.de 70 i+ printf("%*s", (int)(columns - n), " "); Err codevoid.de 70 i Err codevoid.de 70 i putp(tparm(cursor_address, lines-1, n, 0, 0, 0, 0, 0, 0, 0)); Err codevoid.de 70 i Err codevoid.de 70 it@@ -153,7 +156,7 @@ uistatus(char *fmt, ...) Err codevoid.de 70 i n = mbsprint(bufout, columns); Err codevoid.de 70 i putp(tparm(exit_standout_mode, 0, 0, 0, 0, 0, 0, 0, 0, 0)); Err codevoid.de 70 i if (n < columns) Err codevoid.de 70 i- printf("%*s", columns - n, " "); Err codevoid.de 70 i+ printf("%*s", (int)(columns - n), " "); Err codevoid.de 70 i Err codevoid.de 70 i putp(tparm(restore_cursor, 0, 0, 0, 0, 0, 0, 0, 0, 0)); Err codevoid.de 70 i fflush(stdout); Err codevoid.de 70 it@@ -184,7 +187,7 @@ displaystatus(Item *item) Err codevoid.de 70 i n = mbsprint(bufout, columns); Err codevoid.de 70 i putp(tparm(exit_standout_mode, 0, 0, 0, 0, 0, 0, 0, 0, 0)); Err codevoid.de 70 i if (n < columns) Err codevoid.de 70 i- printf("%*s", columns - n, " "); Err codevoid.de 70 i+ printf("%*s", (int)(columns - n), " "); Err codevoid.de 70 i Err codevoid.de 70 i putp(tparm(restore_cursor, 0, 0, 0, 0, 0, 0, 0, 0, 0)); Err codevoid.de 70 i fflush(stdout); Err codevoid.de 70 it@@ -232,7 +235,7 @@ displayuri(Item *item) Err codevoid.de 70 i n = mbsprint(bufout, columns); Err codevoid.de 70 i putp(tparm(exit_standout_mode, 0, 0, 0, 0, 0, 0, 0, 0, 0)); Err codevoid.de 70 i if (n < columns) Err codevoid.de 70 i- printf("%*s", columns - n, " "); Err codevoid.de 70 i+ printf("%*s", (int)(columns - n), " "); Err codevoid.de 70 i Err codevoid.de 70 i putp(tparm(restore_cursor, 0, 0, 0, 0, 0, 0, 0, 0, 0)); Err codevoid.de 70 i fflush(stdout); Err codevoid.de 70 it@@ -270,14 +273,12 @@ uidisplay(Item *entry) Err codevoid.de 70 i putp(tparm(cursor_down, 0, 0, 0, 0, 0, 0, 0, 0, 0)); Err codevoid.de 70 i if (i == curln) { Err codevoid.de 70 i putp(tparm(save_cursor, 0, 0, 0, 0, 0, 0, 0, 0, 0)); Err codevoid.de 70 i- putp(tparm(enter_standout_mode, Err codevoid.de 70 i- 0, 0, 0, 0, 0, 0, 0, 0, 0)); Err codevoid.de 70 i+ putp(tparm(SELECTION)); Err codevoid.de 70 i } Err codevoid.de 70 i printitem(&items[i]); Err codevoid.de 70 i putp(tparm(column_address, 0, 0, 0, 0, 0, 0, 0, 0, 0)); Err codevoid.de 70 i if (i == curln) Err codevoid.de 70 i- putp(tparm(exit_standout_mode, Err codevoid.de 70 i- 0, 0, 0, 0, 0, 0, 0, 0, 0)); Err codevoid.de 70 i+ putp(tparm(RESET)); Err codevoid.de 70 i } Err codevoid.de 70 i Err codevoid.de 70 i putp(tparm(restore_cursor, 0, 0, 0, 0, 0, 0, 0, 0, 0)); Err codevoid.de 70 it@@ -333,10 +334,14 @@ movecurline(Item *item, int l) Err codevoid.de 70 i Err codevoid.de 70 i putp(tparm(cursor_address, curline - dir->printoff, Err codevoid.de 70 i 0, 0, 0, 0, 0, 0, 0, 0)); Err codevoid.de 70 i- putp(tparm(enter_standout_mode, 0, 0, 0, 0, 0, 0, 0, 0, 0)); Err codevoid.de 70 i+ putp(tparm(SELECTION)); Err codevoid.de 70 i printitem(&dir->items[curline]); Err codevoid.de 70 i- putp(tparm(exit_standout_mode, 0, 0, 0, 0, 0, 0, 0, 0, 0)); Err codevoid.de 70 i- displaystatus(item); Err codevoid.de 70 i+ putp(tparm(RESET)); Err codevoid.de 70 i+ if (dir->items[dir->curline].type == 'i') { Err codevoid.de 70 i+ displaystatus(item); Err codevoid.de 70 i+ } else { Err codevoid.de 70 i+ displayuri(&dir->items[dir->curline]); Err codevoid.de 70 i+ } Err codevoid.de 70 i fflush(stdout); Err codevoid.de 70 i } Err codevoid.de 70 i Err codevoid.de 70 .