Когда я пытаюсь запустить vim
или gvim
с терминала (или программы пытается сделать это, например, git rebase --interactive
). Он не открывается, пока терминал не закроется, он просто сидит, думая, что программа запущена.
Программа даже не открывается, если я добавляю &
, за исключением того, что я могу использовать терминал как обычно.
Как я могу это исправить или хотя бы разобраться в том, что происходит?
В соответствии с запросом, вывод введите vim
:
vim is /usr/bin/vim
Это было связано со следующей строкой в моем .vimrc
: set shell=zsh\ -i
Я должен установить оболочку в интерактивном режиме, чтобы убедиться, что загружен .zprofile
, в противном случае дополнения к $PATH
не установлен, и поэтому я не могу использовать определенные команды из gVim.
Так что, к сожалению, мне тоже нужно:
Я думаю, что есть дополнительные ключи, которые вы можете использовать в .vimrc
для установки аргументов командной строки оболочки.
set shell=zsh
set shellcmdflag=-i
В vim
вы можете прочитать больше об этих опциях, :help shell
и :help
shellcmdflag`.
-c
В качестве альтернативы вы можете получить доступ к оболочке следующим образом:
:!bash -c ". ~/.alias; gitlog"
Где псевдоним gitlog
находится в файл ~/.alias
. Измените это на zsh
, чтобы удовлетворить ваши потребности, я просто покажу вам подход.
В этих SO и SU Q & amp; A обсуждались еще 2 метода, которые также могут быть полезны.