From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 25151 invoked by alias); 7 Jan 2016 04:19:13 -0000 Mailing-List: contact zsh-users-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Users List List-Post: List-Help: X-Seq: 21123 Received: (qmail 10486 invoked from network); 7 Jan 2016 04:19:11 -0000 X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.0 From: Jason L Tibbitts III To: zsh-users@zsh.org Subject: Somehow my prompt broke in 5.2 Date: Wed, 06 Jan 2016 21:36:34 -0600 Message-ID: User-Agent: Gnus/5.130014 (Ma Gnus v0.14) Emacs/24.5 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain I'm trying to understand why the current directory is missing from my (left) prompt string in 5.2 but appears just fine in 5.1.1 and earlier. Here is a minimal .zshrc which shows the problem: ----- setopt Prompt_Subst autoload -Uz vcs_info function precmd { vcs_info 'prompt' } zstyle ':vcs_info:*:prompt:*' nvcsformats "" "%~" function lprompt { local vcs='${vcs_info_msg_1_/$HOME/~}' PROMPT="%m:${vcs}> " } lprompt ----- On 5.1.1 I see something like: foo:~> but on 5.2 I just get: foo:> However, if I change lprompt to: function lprompt { PROMPT="%m:${vcs_info_msg_1_/$HOME/~}> " } (or just dispense with the function and set PROMPT directly) then 5.1.1 behaves the same way as 5.2. I don't understand what's different about these two cases. Now, I can't really recall why I set things up this way; I've had it for years and obviously copied it from somewhere without really understanding it and then did my own tweaking over time. I will work on another way of doing it, but I'd still like to know what's changed in 5.2 to cause this to stop working. (I didn't see anything relevant in the release notes.) - J<