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

Liw*_*Liw 5 command-line createfile macvim

当我vim newfilename用来打开文件而该文件没有退出时,vim将创建一个带有该名称的新文件newfilename.

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

有没有办法配置MacVim这样mvim newfilename(alias mvim="open -a macvim")会创建一个新文件并打开它?

tri*_*eee 6

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

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

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

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