From 902954d1cc4438e98149d72c878a4fbac3b3d7c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc=20Cornell=C3=A0?= Date: Sun, 18 Oct 2020 21:14:05 +0200 Subject: [PATCH] lib: use `column` to format plugin and theme list CLI commands --- lib/cli.zsh | 42 ++++++++++++++++++------------------------ 1 file changed, 18 insertions(+), 24 deletions(-) diff --git a/lib/cli.zsh b/lib/cli.zsh index ff865093d..9421fd19a 100644 --- a/lib/cli.zsh +++ b/lib/cli.zsh @@ -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 {