1
0
Fork 0
mirror of https://github.com/notwa/rc synced 2025-02-05 15:43:22 -08:00

more lsz crap

This commit is contained in:
Connor Olding 2014-11-03 10:39:24 -08:00
parent 202aeb8588
commit 1a563cbd5f

46
sh/lsz
View file

@ -62,7 +62,7 @@ for min unit color in $=s_fs; do
fs+=($(($min)) $unit $color) fs+=($(($min)) $unit $color)
done done
prettify() { _lsz_pretty() {
local min unit color local min unit color
for min unit color in ${(P)2}; do for min unit color in ${(P)2}; do
[ $1 -lt $min ] && continue [ $1 -lt $min ] && continue
@ -72,43 +72,42 @@ prettify() {
done done
} }
min() { _lsz_min() {
local min=99999999999 x local min=99999999999 x
for x; do [ $x -lt $min ] && min=$x; done for x; do [ $x -lt $min ] && min=$x; done
echo $min echo $min
} }
max() { _lsz_max() {
local max=-99999999999 x local _lsz_max=-99999999999 x
for x; do [ $x -gt $max ] && max=$x; done for x; do [ $x -gt $_lsz_max ] && _lsz_max=$x; done
echo $max echo $_lsz_max
} }
permprint() { _lsz_perm() {
echo -n ${permcolors[$(($1+1))]}$1 echo -n ${permcolors[$(($1+1))]}$1
} }
typeprint() { _lsz_type() {
echo -n ${typecolors[$(($1+1))]} echo -n ${typecolors[$(($1+1))]}
} }
local now=$(date +%s) local now=$(date +%s)
dateprint() { _lsz_date() {
[ $1 -lt 32 ] \ [ $1 -lt 32 ] \
&& echo -n "$BLA N/A$clr" \ && echo -n "$BLA N/A$clr" \
|| prettify $((now-$1)) ft || _lsz_pretty $((now-$1)) ft
echo -n ' ' echo -n ' '
} }
_lsz() { _lsz() {
local din=${1:-$(pwd)} local din=${1%/}
din=${din%/}
local dinf=$(readlink -f ${din:-/}) local dinf=$(readlink -f ${din:-/})
local glob=$dinf local glob=$dinf
[ -d "$dinf" ] && glob=$dinf/*(DN) [ -d "$dinf" ] && glob=$dinf/*(DN)
local count=$2 local count=${2:-0}
[ $count -gt 1 ] && echo "$WHI$dinf" [ $count -gt 1 ] && echo "$WHI$dinf"
local -a matches local -a matches
@ -142,37 +141,38 @@ __lsz() {
6) echo -n ' b' ;; 6) echo -n ' b' ;;
4) echo -n ' /' ;; 4) echo -n ' /' ;;
10) echo -n ' >' ;; 10) echo -n ' >' ;;
*) prettify ${A[-15]} fs ;; *) _lsz_pretty ${A[-15]} fs ;;
esac esac
true && { true && {
echo -n ' ' echo -n ' '
permprint $our_perm _lsz_perm $our_perm
} }
true && { true && {
echo -n ' ' echo -n ' '
permprint $uperm _lsz_perm $uperm
permprint $gperm _lsz_perm $gperm
permprint $operm _lsz_perm $operm
} }
echo -n "$clr" echo -n "$clr"
local da=${A[-5]} dc=${A[-4]} dm=${A[-3]} local da=${A[-5]} dc=${A[-4]} dm=${A[-3]}
true && { true && {
dateprint $da _lsz_date $da
dateprint $dm _lsz_date $dm
dateprint $dc _lsz_date $dc
} || { } || {
dateprint $(max $da $dc $dm) _lsz_date $(_lsz_max $da $dc $dm)
} }
local n=${A[1,-16]} local n=${A[1,-16]}
n=${n##$dinf/} n=${n##$dinf/}
typeprint $type _lsz_type $type
echo $n$clr echo $n$clr
} }
local f local f
[ ${#@} -eq 0 ] && set -- $PWD
for f; _lsz $f ${#@} for f; _lsz $f ${#@}