BSD fix for unsupported ls -G alias and added fallback supprt for colorls as per Issue #836

This commit is contained in:
Rob Dudley 2013-08-13 09:01:57 +01:00
commit da68dde71b

View file

@ -6,11 +6,14 @@ export LSCOLORS="Gxfxcxdxbxegedabagacad"
# Enable ls colors
if [ "$DISABLE_LS_COLORS" != "true" ]
then
UNAME=$(uname -s)
# Find the option for using colors in ls, depending on the version: Linux or BSD
if [[ "$(uname -s)" == "NetBSD" ]]; then
if [[ $UNAME =~ ".*BSD$" ]]; then
print "BSD"
# On NetBSD, test if "gls" (GNU ls) is installed (this one supports colors);
# otherwise, leave ls as is, because NetBSD's ls doesn't support -G
gls --color -d . &>/dev/null 2>&1 && alias ls='gls --color=tty'
gls --color -d . &>/dev/null 2>&1 && alias ls='gls --color=tty' || colorls -G . &>/dev/null 2>&1 && alias ls='colorls -G'
else
ls --color -d . &>/dev/null 2>&1 && alias ls='ls --color=tty' || alias ls='ls -G'
fi