1

Я хочу, чтобы vim запускал makeprg двумя командами, а именно: cd\ cmt;make; но когда я делаю это, он застревает в команде make.

Чтобы уточнить, когда я имею в виду застрять, я имею в виду, что это заканчивает компиляцию, но не возвращает vim , мне нужно нажать Cc, чтобы отменить компиляцию, но это также нарушает интерпретацию журнала компиляции от компилятора, и я не могу получить cwin с ошибками компиляции.

Есть идеи?

1 ответ1

3

Вы должны использовать эту форму:

set makeprg=cd\ cmt\ &&\ make

Если вы не хотите выходить из пробелов:

let &makeprg = "cd cmt && make"

--- редактировать ---

Проблема с вашей первоначальной попыткой состоит в том, что оболочка, в которой makeprg неинтерактивна и, следовательно, должна завершиться после выполнения команды. Отправка двух команд подряд не кажется хорошей идеей.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .