我想从bash脚本重新启动vim,以便vim获取带外更改。我几乎有它的工作,但我坚持试图确定用什么来启动vim。如何从bash脚本重新启动vim?
这是我有:
#!/usr/bin/env bash
local servername=$(vim --serverlist)
[ -n "$servername" ] && {
vim --servername "$servername" --remote-send '<C-\><C-N>:mks! _session.vim<CR>:wqa<CR>'
vim -S _session.vim
sleep 1
rm _session.vim
}
的问题是由脚本调用vim
在/usr/bin/vim
,而不是“我”的vim这是一个别名mvim -v
(其中mvim
是非常过时的系统VIM启动脚本随MacVim一起提供)。
这有两个不幸的后果:(1)系统vim不识别--serverlist
; (2)即使我的脚本会随后启动错误的vim。
在我的路径上调用vim的最佳方式是什么?
难道你不能仅仅用'mvim -v'来替换'vim'吗? – 2014-10-20 12:25:14
那么,这对我来说,在这台特定的机器上,但我更喜欢便携式解决方案。 – 2014-10-20 12:59:27
这些带外更改是什么?对正在编辑的文件进行更改?如果是这样,请参阅':h'autoread''。你的vim文件或插件的变化?使用':source'或使用[Scriptease](https://github.com/tpope/vim-scriptease)来重新加载插件。您在使用vim时更新vim? – 2014-10-20 13:51:17