commit 211041b67c14326eabd70c13aa0eb5fb4c6dcef8 from: Marcel Rodrigues date: Sun Aug 09 22:38:46 2015 UTC Support color customization of other kinds of files. commit - e2b415032b08f7e6dd36a8c7108472a9489e2455 commit + 211041b67c14326eabd70c13aa0eb5fb4c6dcef8 blob - 0cf4f551f151f95632f25f9fc0520a93ad052d21 blob + c9986cf9b08d1daa0d9dfe213ccc9f9118d288b0 --- config.h +++ config.h @@ -38,9 +38,13 @@ #define RVC_BORDER BLUE #define RVC_SCROLLBAR CYAN #define RVC_LINK CYAN -#define RVC_FILE DEFAULT -#define RVC_DIR DEFAULT #define RVC_HIDDEN YELLOW +#define RVC_REG DEFAULT +#define RVC_DIR DEFAULT +#define RVC_CHR MAGENTA +#define RVC_BLK MAGENTA +#define RVC_FIFO BLUE +#define RVC_SOCK MAGENTA #define RVC_PROMPT DEFAULT #define RVC_TABNUM DEFAULT #define RVC_MARKS YELLOW blob - 66d9140c4629f0d3f267ade5162860411429821b blob + e8371c245f1f182b37fbd43ec523e34fc966843a --- rover.c +++ rover.c @@ -355,7 +355,7 @@ update_view() { int i, j; int numsize; - int ishidden, isdir; + int ishidden; int marking; mvhline(0, 0, ' ', COLS); @@ -385,18 +385,25 @@ update_view() marking = !strcmp(CWD, rover.marks.dirpath); for (i = 0, j = SCROLL; i < HEIGHT && j < rover.nfiles; i++, j++) { ishidden = ENAME(j)[0] == '.'; - isdir = S_ISDIR(EMODE(j)); if (j == ESEL) wattr_on(rover.window, A_REVERSE, NULL); if (ISLINK(j)) wcolor_set(rover.window, RVC_LINK, NULL); else if (ishidden) wcolor_set(rover.window, RVC_HIDDEN, NULL); - else if (isdir) + else if (S_ISREG(EMODE(j))) + wcolor_set(rover.window, RVC_REG, NULL); + else if (S_ISDIR(EMODE(j))) wcolor_set(rover.window, RVC_DIR, NULL); - else - wcolor_set(rover.window, RVC_FILE, NULL); - if (!isdir) { + else if (S_ISCHR(EMODE(j))) + wcolor_set(rover.window, RVC_CHR, NULL); + else if (S_ISBLK(EMODE(j))) + wcolor_set(rover.window, RVC_BLK, NULL); + else if (S_ISFIFO(EMODE(j))) + wcolor_set(rover.window, RVC_FIFO, NULL); + else if (S_ISSOCK(EMODE(j))) + wcolor_set(rover.window, RVC_SOCK, NULL); + if (!S_ISDIR(EMODE(j))) { char *suffix, *suffixes = "BKMGTPEZY"; off_t human_size = ESIZE(j) * 10; int length = mbstowcs(NULL, ENAME(j), 0);