我有以下问题 - 每当我在 Vim 中写完一些 C++ 代码并想要编译和运行它时,我必须:
- 退出插入模式
- 使用命令
:w
保存文件> - 写
:! g++ *.cpp -o 程序名; ./programName
以便立即编译运行
在最后两条命令输入一次后,我显然是利用键盘上的上箭头键来获取最后几条命令,而不是在以后的编译和运行中一次又一次地写下来。
但对我来说还是有点慢。所以我想知道是否有某种方法可以创建一个键盘快捷键来输入最后两个命令,甚至可以同时执行所有这三个命令!
最佳答案
您可以使用 map
将键映射到命令。 nmap
对于正常模式,imap
用于插入模式等
map <key> command
cpp
编译你提到的应该是这样的:
autocmd FileType cpp nmap <buffer> <F5> :w<bar>!g++ -o %:r % && ./%:r<CR>
将此命令添加到您的 vimrc
并会编译并运行当前的cpp文件。
FileType cpp
- 检测 cpp
直接文件,(不需要手动正则表达式)。
nmap
- 用于在普通模式下映射键。
buffer
- 对于当前缓冲区(在多次拆分的情况下)。
<F5>
- 用于映射“F5”键。
执行的命令是::w | !g++ -o %:r % && ./%:r<CR>
在上面的命令中,%
是文件名(带扩展名),而 %:r
是文件名(没有扩展名),
<CR>
代表“输入”按钮(回车)
关于c++ - 有没有办法向 Vim 添加自定义键盘快捷键以运行大量命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39975880/