答案1
为什么你的尝试没有成功
Oh My Posh 使用PROMPT_COMMAND
env 挂载到 shell 中并设置自己的PS1
。它的工作原理如下:
PROMPT_COMMAND="_omp_hook; $PROMPT_COMMAND"
- 该功能套
PS1
在打印每一行之前自动执行,覆盖您手动设置的任何内容:
PS1="..."
您可以阅读更多PROMPT_COMMAND
内容这里。
更改提示
现在如果你想:
- 永久自定义提示,只需编辑 Oh My Posh 的配置. 根据您的需要,按照文档进行任何类型的配置。
- 暂时将其更改为完全不同的东西,你可以:
- 将当前值保存
PROMPT_COMMAND
在变量中,比如说:
OLD_PROMPT_COMMAND=PROMPT_COMMAND
- 设置
PROMPT_COMMAND
为空白字符串。或者其他任何你想要的,只需_omp_hook
跳过即可。PS1
手动设置将再次开始工作。例如“
PROMPT_COMMAND="" && PS1="Temporary PS1 "
OLD_PROMPT_COMMAND
如果需要,稍后恢复:
PROMPT_COMMAND=OLD_PROMPT_COMMAND
- 暂时向提示中添加一些内容,使用文本段使用配置为显示环境变量的模板,例如
template: "{{ if .Env.YourVarName }}{{ .Env.YourVarName }}{{ end }}"
然后在 shell 中设置变量:
export YourVarName=test