From 3220c72f6f32291f5796e99e2b8481bda20ca75e Mon Sep 17 00:00:00 2001 From: Konstantin Demin Date: Mon, 5 Sep 2022 10:42:43 +0300 Subject: [PATCH] zsh: cache tasks --- .config/zsh/lib/selfservice.zsh | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/.config/zsh/lib/selfservice.zsh b/.config/zsh/lib/selfservice.zsh index e59ca53..0a84345 100644 --- a/.config/zsh/lib/selfservice.zsh +++ b/.config/zsh/lib/selfservice.zsh @@ -11,11 +11,21 @@ dotfiles-git() { ( zsh -i ) } -z-update() { - dotfiles-update +z-zwc-gen() { + local i for i ( $(find "${ZSHU[d_conf]}/" -xdev -type f -name '*.zsh') ) ; do zcompile -U "$i" - done ; unset i + done +} + +z-zwc-flush() { + find "${ZSHU[d_conf]}/" -xdev -type f -name '*.zwc' -delete +} + +z-update() { + dotfiles-update + z-zwc-flush + z-zwc-gen } z-reload() { @@ -26,5 +36,6 @@ z-reload() { ## reload or new session are required to regenerate compcache z-cache-flush() { find "${ZSHU[d_cache]}/" "${ZSHU[d_compcache]}/" -xdev -type f '!' -name '.keep' -delete - find "${ZSHU[d_conf]}/" -xdev -type f -name '*.zwc' -delete + z-zwc-flush + z-zwc-gen }