From 3ef4e68b5fdae654f323af644cbca40f27a8ab97 Mon Sep 17 00:00:00 2001 From: romkatv Date: Sun, 5 Apr 2020 07:04:58 +0200 Subject: [PATCH] suppress errors from zf_mv (fixes #610) --- internal/p10k.zsh | 20 ++++++++++++-------- powerlevel10k.zsh-theme | 13 ++++++++++--- 2 files changed, 22 insertions(+), 11 deletions(-) diff --git a/internal/p10k.zsh b/internal/p10k.zsh index 50654ba2..b1ccbe12 100644 --- a/internal/p10k.zsh +++ b/internal/p10k.zsh @@ -1,4 +1,4 @@ -if [[ $__p9k_sourced != 8 ]]; then +if [[ $__p9k_sourced != 9 ]]; then >&2 print -P "" >&2 print -P "[%F{1}ERROR%f]: Corrupted powerlevel10k installation." >&2 print -P "" @@ -5852,10 +5852,12 @@ _p9k_dump_instant_prompt() { exec {fd}>&- } { - (( ! $? )) || return - zf_mv -f $tmp $root_file || return - zcompile -R -- $tmp.zwc $root_file || return - zf_mv -f -- $tmp.zwc $root_file.zwc || return + (( ! $? )) || return + zf_mv -f $tmp $root_file || return + zcompile -R -- $tmp.zwc $root_file || return + # Error suppression is due to https://github.com/romkatv/powerlevel10k/issues/610. + # I've no idea what actually happens there. + zf_mv -f -- $tmp.zwc $root_file.zwc 2>/dev/null || return } always { (( $? )) && zf_rm -f -- $tmp $tmp.zwc 2>/dev/null } @@ -5950,9 +5952,11 @@ function _p9k_dump_state() { } always { exec {fd}>&- } - zf_mv -f -- $tmp $__p9k_dump_file || return - zcompile -R -- $tmp.zwc $__p9k_dump_file || return - zf_mv -f -- $tmp.zwc $__p9k_dump_file.zwc || return + zf_mv -f -- $tmp $__p9k_dump_file || return + zcompile -R -- $tmp.zwc $__p9k_dump_file || return + # Error suppression is due to https://github.com/romkatv/powerlevel10k/issues/610. + # I've no idea what actually happens there. + zf_mv -f -- $tmp.zwc $__p9k_dump_file.zwc 2>/dev/null || return } always { (( $? )) && zf_rm -f -- $tmp $tmp.zwc 2>/dev/null } diff --git a/powerlevel10k.zsh-theme b/powerlevel10k.zsh-theme index 90b19657..d1fbd95e 100644 --- a/powerlevel10k.zsh-theme +++ b/powerlevel10k.zsh-theme @@ -54,7 +54,7 @@ function _p9k_init_locale() { if [[ $__p9k_dump_file != $__p9k_instant_prompt_dump_file ]] && (( ! $+functions[_p9k_preinit] )) && source $__p9k_dump_file 2>/dev/null && (( $+functions[_p9k_preinit] )); then _p9k_preinit fi - typeset -gr __p9k_sourced=8 + typeset -gr __p9k_sourced=9 if [[ $ZSH_VERSION == (5.<1->*|<6->.*) ]]; then if [[ -w $__p9k_root_dir && -w $__p9k_root_dir/internal && -w $__p9k_root_dir/gitstatus ]]; then local f @@ -63,9 +63,16 @@ function _p9k_init_locale() { zmodload -F zsh/files b:zf_mv b:zf_rm local tmp=$f.tmp.$$.zwc { - zcompile -R -- $tmp $f && zf_mv -f -- $tmp $f.zwc + # The first error suppression is a workaround for the bug in + # https://aur.archlinux.org/packages/zsh-theme-powerlevel10k-git/. + # This package misses some source files. + # + # The second error suppression is due to + # https://github.com/romkatv/powerlevel10k/issues/610. + # I've no idea what actually happens there. + zcompile -R -- $tmp $f 2>/dev/null && zf_mv -f -- $tmp $f.zwc 2>/dev/null } always { - (( $? )) && zf_rm -f -- $tmp + (( $? )) && zf_rm -f -- $tmp 2>/dev/null } done fi