无法使用 vim 编译和 运行 一个 c 程序
Cannot compile and run a c program using vim
map <F5> : !gcc % && ./%< <CR>
这应该映射 F5 键来编译我的 c 代码并使用与文件相同的名称而不扩展名来执行它。没问题,编译部分没有报错,但是要运行./%
部分
我收到 '.' is not recognized as internal or external command
的命令行消息。
当我使用 map <F10> :w<CR> :!clear; make<CR> :!./%<<CR>
时也会发生同样的情况。我真的不知道这个 make
是如何工作的或者它是什么。我试用了一个插件 Asyncrun
.
但我遇到了同样的问题。可能的原因是什么以及如何解决。
这是 MINGw 下 windows 的典型解决方案。 GCC
是编译器应用程序的名称。所以我的想法是调用 gcc
并为其提供要编译的文件的名称。名称表示文件的完整路径,包括文件名和扩展名。
然后我们可以执行a.out
文件或使用实际文件名不带扩展名重命名可执行文件。所以 gcc 有 -o
用于重命名文件。最后的工作是调用可执行文件。
:!gcc % :! gcc % -o %< :! %<
这是总命令。可以将所有这些命令映射到一个键上,也可以根据需要将它们分开。 :!
在 VIM 中打开命令行。 %
是具有确切文件路径的文件名。在 %<
中,<
只是减少了文件扩展名。
这是我放在我的 vimrc 文件中的内容。
map <F2> :! gcc % <CR>
map <F3> :! gcc % -o %< <CR>
map <F4> :! %< <CR>
map <F5> : !gcc % && ./%< <CR>
这应该映射 F5 键来编译我的 c 代码并使用与文件相同的名称而不扩展名来执行它。没问题,编译部分没有报错,但是要运行./%
部分
我收到 '.' is not recognized as internal or external command
的命令行消息。
当我使用 map <F10> :w<CR> :!clear; make<CR> :!./%<<CR>
时也会发生同样的情况。我真的不知道这个 make
是如何工作的或者它是什么。我试用了一个插件 Asyncrun
.
但我遇到了同样的问题。可能的原因是什么以及如何解决。
这是 MINGw 下 windows 的典型解决方案。 GCC
是编译器应用程序的名称。所以我的想法是调用 gcc
并为其提供要编译的文件的名称。名称表示文件的完整路径,包括文件名和扩展名。
然后我们可以执行a.out
文件或使用实际文件名不带扩展名重命名可执行文件。所以 gcc 有 -o
用于重命名文件。最后的工作是调用可执行文件。
:!gcc % :! gcc % -o %< :! %<
这是总命令。可以将所有这些命令映射到一个键上,也可以根据需要将它们分开。 :!
在 VIM 中打开命令行。 %
是具有确切文件路径的文件名。在 %<
中,<
只是减少了文件扩展名。
这是我放在我的 vimrc 文件中的内容。
map <F2> :! gcc % <CR>
map <F3> :! gcc % -o %< <CR>
map <F4> :! %< <CR>