Я использую msysgit и хотел бы, чтобы gvim был моим редактором git.
Я использую Cygwin Bash вместо Git Bash.
Бег
$ /cygdrive/c/Program\ Files\ \(x86\)/Vim/vim73/gvim.exe
начинает гвим. Но если я установлю это как редактор git:
$ git config core.editor /cygdrive/c/Program\ Files\ \(x86\)/Vim/vim73/gvim.exe
и запустить коммит я получаю:
/cygdrive/c/Program Files (x86)/Vim/vim73/gvim.exe: -c: line 0: syntax error near unexpected token `('
Затем я добавляю экранированные обратные слеши, где это необходимо:
$ git config core.editor /cygdrive/c/Program\\\ Files\\\ \\\(x86\\\)/Vim/vim73/gvim.exe
Это все еще дает мне:
/cygdrive/c/Program\ Files\ \(x86\)/Vim/vim73/gvim.exe: /cygdrive/c/Program Files (x86)/Vim/vim73/gvim.exe: No such file or directory
error: cannot run /cygdrive/c/Program\ Files\ \(x86\)/Vim/vim73/gvim.exe: No such file or directory
error: There was a problem with the editor '/cygdrive/c/Program\ Files\ \(x86\)/Vim/vim73/gvim.exe'.
Дело в том, что я могу скопировать строку после «не могу запустить» и вставить ее, и она запускается. Я думаю, это может быть вызвано пробелами или круглыми скобками в Program Files (x86) (о чем они вообще думали?).
Так как cygwin, кажется, справляется с этим, я решил создать символическую ссылку, скажем, в / usr / local / bin, как в моем $ PATH, и установить
$ git config core.editor /usr/local/bin/gvim
Я подтверждаю, что / usr / local / bin / gvim запускает gvim. Тем не менее, выполнение коммита дает мне:
error: cannot spawn /usr/local/bin/gvim.exe: No such file or directory
error: There was a problem with the editor '/usr/local/bin/gvim.exe'.
Отключение core.editor и попытки
$ export GIT_EDITOR=/usr/local/bin/gvim.exe
дает мне ту же ошибку.
Этот SO ответ предполагает, что я использую скрипт для открытия редактора.
Я удаляю программную ссылку gvim.exe из / usr / local / bin и
$ cat > gvim
#!/bin/sh
/cygdrive/c/Program\ Files\ \(x86\)/Vim/vim73/gvim.exe
$ chmod u+x gvim
Я тестирую, запускаю скрипт, он работает, gvim запускается.
$ gvim
К сожалению, когда я запускаю коммит, я получаю ошибку
$ git commit
error: cannot spawn /usr/local/bin/gvim: No such file or directory
error: There was a problem with the editor '/usr/local/bin/gvim'.
Что я могу сделать, чтобы использовать gVim в качестве редактора git? Кто-нибудь пробовал это? Я сделал ошибки? Я должен признать, что был новичком, когда дело доходит до Linux.
which gvim
?