Windows gVim, o shell é iniciado em HOME em vez do diretório de trabalho

2

Recentemente, fiquei farto de alternar constantemente entre o Windows e o Linux e instalei o gVim e o MSYS2 no Windows 7. Depois de algumas horas de pesquisa, eu tenho um .vimrc que faz !command , make , etc. use o shell e utilitários que vêm com MSYS2 em vez de cmd.exe (localizado abaixo). No entanto, sempre que executo um comando shell, o shell é iniciado no meu diretório home, em vez do diretório de trabalho atual do vim. Eu sei que isso é culpa do sinalizador do shell --login , mas se eu removê-lo o shell reclama que ele não pode encontrar nenhum comando: /usr/bin/bash: ls: command not found . Eu presumo que isso seja porque o PATH não está definido.

É possível evitar que o bash comece em casa? Ou, mais possivelmente, como modifico o PATH do gVim para herdar do PATH do MSYS?

if has('win32') || has('win64')
    set runtimepath=$HOME/.vim,$VIM/vimfiles,$VIMRUNTIME,$VIM/vimfiles/after,$HOME/.vim/after
    set shell=C:\msys64\usr\bin\bash
    set shellcmdflags=--login\ -c
    set shellslash
endif
    
por Break 09.11.2015 / 22:12

0 respostas