2013-04-19 4 views
4

Я использую Windows gVim, и я пытаюсь вызвать команды для запуска в bash cygwin. Он работает, но рабочий каталог устанавливается в $ HOME каждый раз. Можно ли установить каталог текущего файла?Установить рабочий каталог оболочки в текущий файл, открытый в vim

У меня есть следующие строки в моем .vimrc:

set shell=C:/cygwin/bin/bash 
set shellcmdflag=--login\ -c 
set shellxquote=\" 

У меня есть следующие строки в моем .profile:

if [ -n "$BASH_VERSION" ]; then 
    # include .bashrc if it exists 
    if [ -f "$HOME/.bashrc" ]; then 
    . "$HOME/.bashrc" 
    fi 
fi 

ответ

2

Я думаю, что --login делает это; удалите этот аргумент, и оболочка будет открыта в текущем каталоге GVIM.

0

Вы можете передать каталог текущего файла для внешних команд, как это:

:!ls %:p:h 

См. :h filename-modifiers и possi bly :h shellescape().

Смежные вопросы