如果我使用类似以下命令在 vim 中映射命令
map <f4> :! pdflatex %<cr>
Vim 将忽略我的 pdflatex 别名(类似 alias pdflatex='pdflatex --temp-dir=something')。能否让 vim 不忽略它?
答案1
Vim '忽略'了你的别名,因为你的 shell 没有'心情'来解析你的别名.bash_profile/.bashrc
(你没有指定你的别名定义在哪里),因为它不是作为登录/交互式 shell 启动的(读这里以进一步了解阅读的内容(何时阅读以及阅读原因)。
因此,您有几种选择:
- 将别名中使用的代码
pdflatex
放入脚本并调用该脚本 - vimrc:,
'set shell=/bin/bash\ -l'
将你的别名放入 .bash_profile - 将您的 shell 作为交互式/登录 shell 来调用:
:! bash -l -i -e 'pdflatex .'