Merge branch 'master' into quote-filenames
This commit is contained in:
@@ -156,13 +156,24 @@ if [ "$shell_ls_aliases_enabled" = "true" ] && builtin command -v ruby > /dev/nu
|
||||
# After : -rw-rw-r-- 1 𝐍 𝐍 1.1K Sep 19 21:39 scm_breeze.sh
|
||||
if [ -e "$HOME"/.user_sym ]; then
|
||||
# Little bit of ruby golf to rejustify the user/group/size columns after replacement
|
||||
# TODO(ghthor): Convert this to a cat <<EOF to improve readibility
|
||||
function rejustify_ls_columns(){
|
||||
ruby -e "o=STDIN.read;re=/^(([^ ]* +){2})(([^ ]* +){3})/;\
|
||||
u,g,s=o.lines.map{|l|l[re,3]}.compact.map(&:split).transpose.map{|a|a.map(&:size).max+1};\
|
||||
puts o.lines.map{|l|l.sub(re){|m|\"%s%-#{u}s %-#{g}s%#{s}s \"%[\$1,*\$3.split]}}"
|
||||
}
|
||||
|
||||
ll_output=$(echo "$ll_output" | \sed -$SED_REGEX_ARG "s/ $USER/ $(/bin/cat "$HOME/.user_sym")/g" | rejustify_ls_columns)
|
||||
local USER_SYM=$(/bin/cat $HOME/.user_sym)
|
||||
if [ -f "$HOME/.staff_sym" ]; then
|
||||
local STAFF_SYM=$(/bin/cat $HOME/.staff_sym)
|
||||
ll_output=$(echo "$ll_output" | \
|
||||
\sed -$SED_REGEX_ARG "s/ $USER staff/ $USER_SYM $STAFF_SYM /g" | \
|
||||
rejustify_ls_columns)
|
||||
else
|
||||
ll_output=$(echo "$ll_output" | \
|
||||
\sed -$SED_REGEX_ARG "s/ $USER/ $USER_SYM /g" | \
|
||||
rejustify_ls_columns)
|
||||
fi
|
||||
fi
|
||||
|
||||
# Bail if there are two many lines to process
|
||||
|
||||
Reference in New Issue
Block a user