C 如何在vim中编写编译并使用一个命令运行
所以我有一个配置文件.vimrc,它有一段代码,当我按F3时,它应该保存文件编译并运行它。这不管用C 如何在vim中编写编译并使用一个命令运行,c,vim,C,Vim,所以我有一个配置文件.vimrc,它有一段代码,当我按F3时,它应该保存文件编译并运行它。这不管用 map <F3> ^M:w^M:!gcc *.c -g; ./a.out^M map^M:w^M:!gcc*.c-g/a、 外^M 您的键映射对我有效(假设您键入的^M为Ctrl-V Ctrl-M) 如果您有一个makefile设置(您可能应该这样做),您可以使用:make 如果您使用的不是make,例如cmakesconsant或其他东西,则可以设置makeprg选项。您如何编写^
map <F3> ^M:w^M:!gcc *.c -g; ./a.out^M
map^M:w^M:!gcc*.c-g/a、 外^M
您的键映射对我有效(假设您键入的^M
为Ctrl-V Ctrl-M)
如果您有一个makefile设置(您可能应该这样做),您可以使用:make
如果您使用的不是
make
,例如cmake
scons
ant
或其他东西,则可以设置makeprg
选项。您如何编写^M
?您可以通过按Ctrl+V Enter来编写它,或者更好的是,将其更改为不需要任何特殊技巧的
。第一个^M
是错误的。将其他更改为
:
map:w:!gcc*.c-g/a、 出去
也不需要编译*.c
和运行a.out
,
可以使用%
和%:r
map <F3> :w<enter>:!gcc % -o %:r;./%:r<enter>
map:w:!gcc%-o%:r;/%:R
或
map:w:!使;/%:R
您使用^M
而不是
的任何原因?@user594546:根据我的经验,在项目中,将当前目录中的所有*.c
文件编译为可执行文件只是一个很短时间内可持续的构建过程。不久之后,你需要一些更具可扩展性的东西。但是,对于单个文件,最好使用“:!gcc%:p”
map <F3> :w<enter>:!gcc % -o %:r;./%:r<enter>
map <F3> :w<enter>:!make;./%:r<enter>