Существует ли способ скомпилировать и запустить программу C от VIM, не вводя ее имя файла?
:!gcc -o somename % && ./somename
При использовании :!
, % будет заменен именем текущего открытого файла.
Когда ваш проект станет больше, вы также можете написать makefile и скомпилировать текущий проект с помощью :make
, если есть ошибки, vim перейдет к ним автоматически.
Используйте следующий код сопоставления в файле .vimrc для компиляции и запуска файла программирования c.
map <F8> : !gcc % && ./a.out <CR>
Клавиша F8 предназначена для запуска сопоставления. «%» - это текущее имя файла.
Или, если вы хотите сохранить текущий файл перед его компиляцией, используйте
map <F8> :w <CR> :!gcc % && ./a.out <CR>
Или, что еще лучше, если вы хотите использовать базовое имя файла, а не значение по умолчанию «a.out» в качестве имени исполняемого файла, используйте следующее :
map <F8> :w <CR> :!gcc % -o %< && ./%< <CR>
В приведенной выше команде "<" после "%" удаляет расширение и точку (foo.c => foo), поэтому "% <" - это базовое имя файла.
Вы можете найти эту и подобную информацию в cmdline.txt. Команда в vim: help: cmdline.txt
. Вы также можете найти конкретные подробности об использовании "%", используя : help filename-modifiers
в vim.