Я пытаюсь запустить vimscript (он есть в моем vimrc), который копирует определенные файлы в новый каталог, где я мог бы затем скомпилировать свой tex-файл и вернуть pdf.Мой код работает, за исключением того, что он всегда выскакивает командные приглашения в каждой команде.Я использую много команд bash, чтобы сделать это (пока не слишком опытный в vimscript).
Чтобы попытаться избежать всплывающих окон, я обнаружил, что если вы в командной строке, введите
start /MIN copy foo.tex bar.tex
, чтобы запустить командную строку в «свернутом режиме», то есть без всплывающих оконвверх.Однако, когда в vim вводится в режиме командной строки:
!start /MIN copy foo.tex bar.tex
возвращает сообщение об ошибке «Команда не найдена».Фактически, любая команда, которую я ставлю после! Start, не работает
!start echo hi -> Command not found
Однако, она работает отлично, если я набираю ее в командной строке.
Я посмотрел: помогите из командной строки, но ничего не смог найти.Также я попытался:
exe 'sav! bar.tex
, но это перемещает текущий файл и буфер vim.Я пытался: копировать и: двигаться, но они только манипулируют текстом в буфере.
Я использую GUI vim 8.0 в Windows 10. Я запустил код (не всю программу):
" move appropriate files
silent! exe '!start /MIN copy ' fnameescape(fileName) . ' ' . fnameescape(compileDir) . '\cur' . fnameescape(fileName)
silent! exe '!start /MIN echo ' . curDir . ' >'. compileDir .'\curDir.txt'
silent! exe '!start /MIN echo ' . fileName . ' >' . compileDir.'\fileName.txt'
silent! exe 'cd' fnameescape(compileDir)
"compile and move the pdf
silent! exe '!compile.bat'
silent! exe '!mv ' . l:Name . '.pdf ' . l:curDir
Что я знаю, если неэффективно, но мне просто нужно было что-то быстрое, чтобыРабота.Я пытался использовать встроенные функции VIM, когда я нахожу их.Обратите внимание, что этот код отлично работает без «start / MIN»