MacVim:使用`alias mvim =“open -a macvim”`从命令行创建新文件

时间:2011-09-18 00:31:56

标签: command-line macvim createfile

当我使用vim newfilename打开文件并且此文件未退出时,vim将创建一个名为newfilename的新文件。

但是,MacVim不能以这种方式运作 - 即mvim newfilenamealias mvim="open -a macvim")会导致错误:newfilename does not exist

有没有办法配置MacVimmvim newfilenamealias mvim="open -a macvim")会创建一个新文件并打开它?

2 个答案:

答案 0 :(得分:6)

我猜这个错误消息来自open,而不是来自vim。您可以使用函数替换别名;

mvim () {
    local f
    for f; do
        test -e "$f" || touch "$f"
    done
    open -a macvim "$@"
}

如果需要,这将在打开之前创建空文件。

编辑没有看到@Peter Lyons对此的评论;信用应该是他首先建议这个解决方案。如果彼得想要提交他的话,我会很乐意删除这个答案。

答案 1 :(得分:2)

您不需要打开命令的mvim别名,而是可以使用大多数MacVim Snaphot捆绑的mvim launcher script。将mvim添加到路径后,然后运行mvim newfile,现在将在新的MacVim窗口中打开一个新文件缓冲区,就像gvim一样。要保存并实际写入文件,您需要键入:w将文件写入磁盘,否则不会写入文件。