diff -burN tcsh-6.20.00.orig/tw.color.c tcsh-6.20.00/tw.color.c --- tcsh-6.20.00.orig/tw.color.c 2015-05-28 14:53:49.000000000 +0300 +++ tcsh-6.20.00/tw.color.c 2017-07-20 15:16:01.721731541 +0300 @@ -61,33 +61,33 @@ } Variable; static Variable variables[] = { - VAR('/', "di", "01;34"), /* Directory */ - VAR('@', "ln", "01;36"), /* Symbolic link */ + VAR('/', "di", "01;36"), /* Directory */ + VAR('@', "ln", "target"), /* Symbolic link */ VAR('&', "or", ""), /* Orphanned symbolic link (defaults to ln) */ VAR('|', "pi", "33"), /* Named pipe (FIFO) */ - VAR('=', "so", "01;35"), /* Socket */ + VAR('=', "so", "01;30"), /* Socket */ VAR('>', "do", "01;35"), /* Door (solaris fast ipc mechanism) */ - VAR('#', "bd", "01;33"), /* Block device */ - VAR('%', "cd", "01;33"), /* Character device */ - VAR('*', "ex", "01;32"), /* Executable file */ + VAR('#', "bd", "31"), /* Block device */ + VAR('%', "cd", "35"), /* Character device */ + VAR('*', "ex", "32"), /* Executable file */ VAR(NOS, "fi", "0"), /* Regular file */ VAR(NOS, "no", "0"), /* Normal (non-filename) text */ VAR(NOS, "mi", ""), /* Missing file (defaults to fi) */ #ifdef IS_ASCII - VAR(NOS, "lc", "\033["), /* Left code (ASCII) */ + VAR(NOS, "lc", "\x1B["), /* Left code (ASCII) */ #else VAR(NOS, "lc", "\x27["), /* Left code (EBCDIC)*/ #endif VAR(NOS, "rc", "m"), /* Right code */ VAR(NOS, "ec", ""), /* End code (replaces lc+no+rc) */ - VAR(NOS, "su", ""), /* Setuid file (u+s) */ - VAR(NOS, "sg", ""), /* Setgid file (g+s) */ - VAR(NOS, "tw", ""), /* Sticky and other writable dir (+t,o+w) */ - VAR(NOS, "ow", ""), /* Other writable dir (o+w) but not sticky */ - VAR(NOS, "st", ""), /* Sticky dir (+t) but not other writable */ + VAR(NOS, "su", "01;33;41"), /* Setuid file (u+s) */ + VAR(NOS, "sg", "01;31;43"), /* Setgid file (g+s) */ + VAR(NOS, "tw", "01;30;46"), /* Sticky and other writable dir (+t,o+w) */ + VAR(NOS, "ow", "01;36;41"), /* Other writable dir (o+w) but not sticky */ + VAR(NOS, "st", "36;44"), /* Sticky dir (+t) but not other writable */ VAR(NOS, "rs", "0"), /* Reset to normal color */ - VAR(NOS, "hl", "44;37"), /* Reg file extra hard links, obsolete? */ - VAR(NOS, "mh", "44;37"), /* Reg file extra hard links */ + VAR(NOS, "hl", ""), /* Reg file extra hard links, obsolete? */ + VAR(NOS, "mh", ""), /* Reg file extra hard links */ VAR(NOS, "ca", "30;41"), /* File with capability */ }; @@ -382,13 +382,11 @@ if ((Char)variables[i].variable[0] == (v[0] & CHAR) && (Char)variables[i].variable[1] == (v[1] & CHAR)) break; - if (i < nvariables) { v += 3; + if (i < nvariables) { getstring(&c, &v, &variables[i].color, ':'); - continue; } - else - stderror(ERR_BADCOLORVAR, v[0], v[1]); + continue; } break; }