From 4169a34df1783b6b0727a527b867cefecaa069b5 Mon Sep 17 00:00:00 2001 From: Mathias Bynens Date: Sun, 22 Jul 2012 10:30:14 +0200 Subject: .aliases: Detect which `ls` flavor is in use and use the appropriate flag for colorized output Thanks to @divya for making me do this ;) --- .aliases | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/.aliases b/.aliases index 3af2d70..01d6181 100644 --- a/.aliases +++ b/.aliases @@ -18,17 +18,25 @@ alias s="subl ." alias o="open" alias oo="open ." +# Detect which `ls` flavor is in use +tmp="$(ls --color 2>&1 > /dev/null | grep "illegal option")" +if [ '' == "$tmp" ]; then # GNU `ls` + colorflag="--color" +else # OS X `ls` + colorflag="-G" +fi + # List all files colorized in long format -alias l="ls -l --color" +alias l="ls -l ${colorflag}" # List all files colorized in long format, including dot files -alias la="ls -la --color" +alias la="ls -la ${colorflag}" # List only directories -alias lsd='ls -l --color | grep "^d"' +alias lsd='ls -l ${colorflag} | grep "^d"' # Always use color output for `ls` -alias ls="command ls --color" +alias ls="command ls ${colorflag}" export LS_COLORS='no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.avi=01;35:*.fli=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.ogg=01;35:*.mp3=01;35:*.wav=01;35:' # Enable aliases to be sudo’ed -- cgit v1.2.3