Browse Source

Fix ls coloring in MacOS if gls is not installed

Fixes #5520.
Marc Cornellà 7 years ago
parent
commit
c24dfa1ab4
1 changed files with 3 additions and 1 deletions
  1. 3 1
      lib/theme-and-appearance.zsh

+ 3 - 1
lib/theme-and-appearance.zsh

@@ -6,7 +6,7 @@ export LSCOLORS="Gxfxcxdxbxegedabagacad"
 
 if [[ "$DISABLE_LS_COLORS" != "true" ]]; then
   # Find the option for using colors in ls, depending on the version
-  if [[ "$OSTYPE" == netbsd* ]] || [[ "$OSTYPE" == darwin* ]]; then
+  if [[ "$OSTYPE" == netbsd* ]]; then
     # 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 && alias ls='gls --color=tty'
@@ -17,6 +17,8 @@ if [[ "$DISABLE_LS_COLORS" != "true" ]]; then
     # coreutils, so prefer it to "gls".
     gls --color -d . &>/dev/null && alias ls='gls --color=tty'
     colorls -G -d . &>/dev/null && alias ls='colorls -G'
+  elif [[ "$OSTYPE" == darwin* ]]; then
+    gls --color -d . &>/dev/null && alias ls='gls --color=tty' || alias ls='ls -G'
   else
     # For GNU ls, we use the default ls color theme. They can later be overwritten by themes.
     if [[ -z "$LS_COLORS" ]]; then