#!/hint/zsh typeset -ga _ftb_headers=() local i tmp group_colors local -i mlen=0 len=0 if (( $#_ftb_groups == 1 )) && { ! -ftb-zstyle -m single-group "header" }; then return fi # calculate the max column width for i in $_ftb_groups; do (( $#i > mlen )) && mlen=$#i done mlen+=1 -ftb-zstyle -a group-colors group_colors || group_colors=($_ftb_group_colors) for (( i=1; i<=$#_ftb_groups; i++ )); do [[ $_ftb_groups[i] == "__hide__"* ]] && continue if (( len + $#_ftb_groups[i] > COLUMNS - 5 )); then _ftb_headers+=$tmp tmp='' && len=0 fi if (( len + mlen > COLUMNS - 5 )); then # the last column doesn't need padding _ftb_headers+=$tmp$group_colors[i]$_ftb_groups[i]$'\033[00m' tmp='' && len=0 else tmp+=$group_colors[i]${(r:$mlen:)_ftb_groups[i]}$'\033[00m' len+=$mlen fi done (( $#tmp )) && _ftb_headers+=$tmp