From d3f446c9508be8fc0fde70981918b1d000e37ae0 Mon Sep 17 00:00:00 2001 From: Tom Ryder Date: Wed, 11 Jan 2017 16:29:04 +1300 Subject: Use POSIX-compatible versions of ls(1) opts --- sh/shrc.d/ls.sh | 25 ++++++++++--------------- 1 file changed, 10 insertions(+), 15 deletions(-) (limited to 'sh/shrc.d/ls.sh') diff --git a/sh/shrc.d/ls.sh b/sh/shrc.d/ls.sh index 7e916239..40da567a 100644 --- a/sh/shrc.d/ls.sh +++ b/sh/shrc.d/ls.sh @@ -5,31 +5,26 @@ # Define function proper ls() { + # Add -F to show trailing indicators of the filetype + set -- -F "$@" + + # Add -q to replace control chars with '?' + set -- -q "$@" + + # Format with entries sorted across, not down, in columns + set -- -x "$@" + # Add --block-size=K to always show the filesize in kibibytes [ -e "$HOME"/.cache/ls/block-size ] && set -- --block-size=1024 "$@" - # Add --classify to show trailing indicators of the filetype - [ -e "$HOME"/.cache/ls/classify ] && - set -- --classify "$@" - # Add --color if the terminal has at least 8 colors [ -e "$HOME"/.cache/ls/color ] && [ "$({ tput colors || tput Co ; } 2>/dev/null)" -ge 8 ] && set -- --color=auto "$@" - # Add --format=horizontal to print entries in a saner way - [ -e "$HOME"/.cache/ls/format ] && - set -- --format=horizontal "$@" - - # Add --hide-control-chars if present; we always want this interactively, - # even if the output is to a pager; we shouldn't be trying to script ls(1) - # output anyway - [ -e "$HOME"/.cache/ls/hide-control-chars ] && - set -- --hide-control-chars "$@" - # Add --time-style='+%Y-%m-%d %H:%M:%S' to show the date in my preferred - # format + # (fixed) format [ -e "$HOME"/.cache/ls/time-style ] && set -- --time-style='+%Y-%m-%d %H:%M:%S' "$@" -- cgit v1.2.3