MacVim: создайте новый файл из командной строки, используя `alias mvim =" open -a macvim "` - PullRequest
5 голосов
/ 18 сентября 2011

Когда я использую vim newfilename для открытия файла, и этот файл не завершается, vim создаст новый файл с именем newfilename.

Однако MacVim не работает втаким образом --- т.е. mvim newfilename (alias mvim="open -a macvim") приведет к ошибке: newfilename does not exist

Есть ли способ настроить MacVim таким образом, чтобы mvim newfilename (alias mvim="open -a macvim") создавалновый файл и открыть его?

Ответы [ 2 ]

6 голосов
/ 18 сентября 2011

Я предполагаю, что сообщение об ошибке приходит от open, а не от vim. Вы можете заменить свой псевдоним функцией;

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

При необходимости перед открытием будут созданы пустые файлы.

edit Не видел комментарий @Peter Lyons по этому поводу; кредит должен идти к нему за первое предложение этого решения. Я буду рад удалить этот ответ, если Питер захочет отправить его.

2 голосов
/ 26 апреля 2012

Вам не нужен псевдоним mvim для команды open, вместо этого вы можете использовать скрипт запуска mvim , который поставляется в комплекте с большинством снимков MacVim. После добавления этого mvim к вашему пути и запуска mvim newfile теперь откроется буфер нового файла в новом окне MacVim, как это сделал бы gvim. Чтобы сохранить и записать файл, вам нужно набрать: w, чтобы записать файл на диск, иначе он не будет записывать файл.

...