lib: use column to format plugin and theme list CLI commands

This commit is contained in:
Marc Cornellà 2020-10-18 21:14:05 +02:00
parent 176376cbc0
commit 902954d1cc

View file

@ -135,20 +135,17 @@ function _omz::plugin::list {
custom_plugins=("$ZSH_CUSTOM"/plugins/*(/N:t))
builtin_plugins=("$ZSH"/plugins/*(/N:t))
{
(( ${#custom_plugins} )) && {
print -Pn "%U%BCustom plugins%b%u: "
print -l ${(q-)custom_plugins}
}
if (( ${#custom_plugins} )); then
print -P "%U%BCustom plugins%b%u:"
print -l ${(q-)custom_plugins} | column
fi
(( ${#builtin_plugins} )) && {
# add a line of separation
(( ${#custom_plugins} )) && echo
if (( ${#builtin_plugins} )); then
(( ${#custom_plugins} )) && echo # add a line of separation
print -Pn "%U%BBuilt-in plugins%b%u: "
print -l ${(q-)builtin_plugins}
}
} | fmt -w $COLUMNS | sed -E $'s/\e?(\\[[0-9]*m)/\e\\1/g' # deal with fmt removing ESC
print -P "%U%BBuilt-in plugins%b%u:"
print -l ${(q-)builtin_plugins} | column
fi
}
function _omz::pr {
@ -308,20 +305,17 @@ function _omz::theme::list {
custom_themes=("$ZSH_CUSTOM"/**/*.zsh-theme(.N:r:gs:"$ZSH_CUSTOM"/themes/:::gs:"$ZSH_CUSTOM"/:::))
builtin_themes=("$ZSH"/themes/*.zsh-theme(.N:t:r))
{
(( ${#custom_themes} )) && {
print -Pn "%U%BCustom themes%b%u: "
print -l ${(q-)custom_themes}
}
if (( ${#custom_themes} )); then
print -P "%U%BCustom themes%b%u:"
print -l ${(q-)custom_themes} | column
fi
(( ${#builtin_themes} )) && {
# add a line of separation
(( ${#custom_themes} )) && echo
if (( ${#builtin_themes} )); then
(( ${#custom_themes} )) && echo # add a line of separation
print -Pn "%U%BBuilt-in themes%b%u: "
print -l ${(q-)builtin_themes}
}
} | fmt -w $COLUMNS | sed -E $'s/\e?(\\[[0-9]*m)/\e\\1/g' # deal with fmt removing ESC
print -P "%U%BBuilt-in themes%b%u:"
print -l ${(q-)builtin_themes} | column
fi
}
function _omz::theme::use {