根据我的测试,很明显 nvim 在打开新的终端缓冲区时不会获取您的 .bash_profile 。每次创建新的终端缓冲区时,我都想强制这种情况发生。
要确认此行为:
- 在 nvim 中打开你的 .bash_profile
- 导出一个新变量,例如
ISSOURCED
- 写出文件
- 打开终端缓冲区
- 跑
echo $ISSOURCED
我还if tty -s; then echo interactive; fi
根据这个答案通过执行检查了 bash 是否在交互模式下运行(它是)
但是,它不是基于执行的登录外壳,基于shopt -q login_shell && echo 'Login shell' || echo 'Not login shell'
此答案。这意味着它通常会来源$HOME/.bashrc
. 不幸的是,我将我的 bashrc 保存在不同的位置并从我的 .bash_profile 中获取它,所以它没有被拾取。
请参阅下面的答案,了解我当前的解决方法以及为什么它不太理想的信息。