当设置了 PROMPT_COMMAND 时,如何在新的 Terminal.app 选项卡中正确设置工作目录?

当设置了 PROMPT_COMMAND 时,如何在新的 Terminal.app 选项卡中正确设置工作目录?

在 OS X 上的 Terminal.app 中,您可以选择(对我来说)有用的行为,即在同一工作目录中打开新选项卡。在 Mavericks(可能还有其他版本)上,设置 PROMPT_COMMAND 会禁止在同一工作目录中打开新选项卡。如何恢复该功能?

这看起来更像是一个超级用户的问题,但请随意建议我迁移到 AskDifferent。

答案1

事实证明,开发 liquid prompt 项目的人们注意到了这一点并找到了解决方案,即设置 PROMPT_COMMAND 似乎会禁用以下操作的执行update_terminal_cwd

https://github.com/nojhan/liquidprompt/issues/196

基本上,您只需添加类似以下内容的内容:

fish_style_dir_cmd='CurDir=`pwd|sed -e "s!$HOME!~!"|sed -Ee "s!([^/])[^/]+/!\1/!g"`'
PROMPT_COMMAND="update_terminal_cwd;$fish_style_dir_cmd"

相关内容