%\/ 的作用是什麼(zsh 提示擴充)?

%\/ 的作用是什麼(zsh 提示擴充)?

該序列%\/在 zsh 提示字元擴充中起什麼作用?man zshmisc不包含字串%\,這是其餘特定於提示的擴展所在的位置。

該序列可以在霍爾曼斯點文件:

directory_name(){
  echo "%{$fg_bold[cyan]%}%1/%\/%{$reset_color%}"
}

export PROMPT=$'in $(directory_name)› '

答案1

%\什麼都不做,所以沒有用。對於$in也是如此$'...'。不需要它,因為那裡沒有轉義序列可以擴展。

整件事情可以寫成:

PS1='in %{$fg_bold[cyan]%}%1//%{$reset_color%}› '

或者:

PS1="in %{$fg_bold[cyan]%}%1//%{$reset_color%}› "

$fg_bold...在分配時而不是在每次提示時進行擴展。

無需在每個提示符處執行命令替換,因為 的輸出directory_name從一次運行到下一次運行都不會改變。

您可能也不想使用exportPS1 或 PROMPT。

相關內容