vcs_info
次のようにアクティブにします。
autoload -Uz vcs_info
zstyle ':vcs_info:*' enable git
zstyle ':vcs_info:*' formats '(%b)'
set_prompt() {
vcs_info
print -n "[%~]${vcs_info_msg_0_}%# " # Directory and VCS info (if any).
}
PROMPT=$'$(set_prompt)'
これはうまく機能しますが、最近はドットファイルをよりよく管理するためにgitリポジトリを$HOME
作成/home/martin
し/home/martin
ました。
/home/martin
リポジトリを無視したいのですがいいえたとえば、他のものは以下を試してみ/home/martin/code/project
ましたdisable-patterns
。
zstyle ':vcs_info:*' disable-patterns "${(b)HOME}/(|/*)"
しかし、これを行うと、あまりにも多くのサブディレクトリでgit reposが無効になりますが、$HOME
これは私が望むものではありません。
私は以下を使用して無効にしようとしました。
zstyle ':vcs_info:git:*:martin' enable NONE
しかし、これはあまり効果がないようです。また、メッセージを消してみました。
zstyle ':vcs_info:git:*:martin' formats ''
今私のプロンプトは[~]a:%
なので、幅スペースを0に設定しました。
zstyle ':vcs_info:git:*:martin' formats "\u200b"
これはうまくいくようですが、少しハッキングされているようです。
vcs_info
特定のストレージを無効にする方法は?
答え1
次の作品
zstyle ':vcs_info:*:*:martin' formats "%0.0r"
この場合、%0.0r
指定子はリポジトリ名を使用しますが、幅がゼロの文字列として表示されることを意味します。
zsh リファレンスzフォーマットユーティリティはフォーマットが使用される理由です。