コンテンツにスキップ

プロンプトで変数展開する方法

最終更新日: 2021-07-30

確認環境

Env Ver
zsh zsh 5.8 (x86_64-pc-msys)

サンプルコード

例として .zshrc に書くものとする(別に分割しても構わない)

  1. setopt PROMPT_SUBST する
    1. この設定によりパラメータ展開、コマンド置換、および 算術展開がプロンプトで実行される
  2. 展開したい関数をシングルクォートで囲み文字列結合する
    1. 注意点
      1. 変数に代入している場合評価されない
      2. 関数はシングルクォートで囲まないと評価されない
1
2
3
4
5
# baz は echo が入った関数
PROMPT "foobar"'$(baz)'
# 以下の 2 つは期待通り動作しない
PROMPT "foobar"$(baz)
PROMPT $(baz)