From: Stefan Huber Date: Mon, 24 Dec 2012 09:21:19 +0000 (+0100) Subject: zshrc: eliminate file access on precmd() X-Git-Url: https://git.sthu.org/?a=commitdiff_plain;h=884568691143e4e5c50187858f0a6a7262c2d6e3;p=shutils.git zshrc: eliminate file access on precmd() --- diff --git a/dotfiles/shell/zshrc b/dotfiles/shell/zshrc index 9e9b7fa..cc00a53 100644 --- a/dotfiles/shell/zshrc +++ b/dotfiles/shell/zshrc @@ -94,9 +94,9 @@ zstyle ':vcs_info:*' max-exports 1 function setprompt() { # default: " (%s)-[%b|%a]%u%c-" - zstyle ':vcs_info:*' actionformats "${PR_YELLOW}%s:%b|%a${PR_NO_COLOUR} " + zstyle ':vcs_info:*' actionformats "${PR_YELLOW}%s:%b|%a${PR_NO_COLOUR}" # default: " (%s)-[%b]%u%c-" - zstyle ':vcs_info:*' formats "${PR_YELLOW}%s:%b${PR_NO_COLOUR} " + zstyle ':vcs_info:*' formats "${PR_YELLOW}%s:%b${PR_NO_COLOUR}" setopt PROMPT_SUBST PROMPT='%(!.$PR_RED.$PR_GREEN)%n@%m $PR_BLUE%1~ %# $PR_NO_COLOUR' @@ -104,18 +104,21 @@ function setprompt() } setprompt +# Obtain the autofs mountpoints +autofs_mp="" +[ -r /etc/auto.master ] && autofs_mp=$(grep -e "^/" /etc/auto.master) function precmd () { local exitstatus="${?}" - PR_STUFF=" " + PR_STUFF="" if [[ 0 -ne "${exitstatus}" ]] ; then - PR_STUFF="${PR_RED}RET ${exitstatus}${PR_NO_COLOUR}" + PR_STUFF=" ${PR_RED}RET ${exitstatus}${PR_NO_COLOUR}" fi # autofs always complains not being able to mount .hg/ and the like - if [ -r /etc/auto.master ] && grep -qe "^$PWD\s" /etc/auto.master; then - vcs_info_msg_0_="" + if echo "$autofs_mp" | grep -qe "^$PWD\s"; then + vcs_info_msg_0_="${PR_YELLOW}[autofs]${PR_NO_COLOUR}" else vcs_info fi