vim编辑器代码补全方法

vim编辑器代码补全方法

转载处:
作者:程序大飞
链接:https://www.jianshu.com/p/fbb00627163c
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

按ctrl+n补全

这里补全的前提是被补全的单词已经出现过,比如在代码里出现过printf,这时我输入pri,再输入ctrl+n就会出现printf的补全候选列表

再按ctrl+n向下移动候选列表光标
ctrl+p向上移动光标

vim里搜索当前文件中的关键字

把光标移到关键字的单词上,按shift+8
** 按n切到下一个
**** shift+n切到上一个**

或者按ESC退出编辑模式,按/,再输入关键字
**** 同样是按n和shift+n上下切换**

~
[Quickfix List] 2,1 All
/main #这样表示搜索main,回车确认
打开cope窗口
进入命令模式,输入cope,会出现一个窗口,cope5表示窗口高5行,默认是10行
该窗口可以用于显示命令结果,比如搜过结果,make编译结果,如果编译有错,可以在这里直接跳到有错的代码处。

11 char a;
12 int b;
13 short c;
14 void func1(){
main.cpp 下面是cope窗口 1,1 Top
1
~
~
~
~
[Quickfix List] 0,0-1 All
:cope5
关闭cope窗口
按ctrl+w+w 把焦点切到cope窗口上,再在命令模式下输入:q就可以退出当前窗口了

vim里搜索其他文件中的关键字

*命令模式下,输入:grep main .cpp

表示当前目录的所有cpp文件里搜过main关键字

20 int main(int, char**){
main.cpp 下面是cope窗口 20,1 24%
1 main.cpp|20| int main(int, char**){ #cope里显示出了搜过结果
2 test_sort.cpp|15| int main(int, char**) #共搜索出来两行结果
~
~
~
[Quickfix List] 1,1 All

*:grep main .cpp
自动跳到搜过结果的代码

多窗口间切换用ctrl+w+w

假如当前vim里打开了cope窗口,并且焦点在vim编辑区,这时候想把光标移到cope窗口,可以ctrl+连点两下w,光标就会移到cope窗口,在cope窗口同样按j,k上下移动光标,选中一行搜索结果,按回车,编辑区就会跳到该结果的代码处。

打开Tlist窖口

Tlist窗口可以用来查看代码,该窗口会把函数签名和打开过的文件名都列出来,可以快速的跳到该文件或函数处
命令模式下输入: Tlist

1 #include <stdio.h> | # 这里就是Tlist窗口
2 #include <string.h> |- main.cpp (/home/dafei/cpp/ga
3 #include “test_class.h” |
4 |- test_class.cpp (/home/dafei/
5 void test_fun(){ |
6 } |- test_class.h (/home/dafei/cp
7 |
8 int main(int argc, char** argv){ | ~
9 (void)argc; | ~
10 (void)argv; | ~
11 | ~
12 printf(“hello dafei\n”); | ~
13 | ~
14 TestClass o; | ~
15 int a = 1; | ~
16 int b = 2; | ~
17 int c = o.sum( a, b ); | ~
18 | ~
19 char buff[256]; memset(buff, 0x00| ~
, sizeof(buff)); | ~
main.cpp 1,1 Top Tag_List 3,1 Bot
:Tlist

切到另一个文件 可以用命令:e 文件名 切到另一个文件

打开当前目录
命令模式: e .
当我们不记得文件名的时候,可以打开当前目录,选择要打开的文件

" ===========================================================================
" Netrw Directory Listing (netrw v162)
" /home/dafei/test_gdb
" Sorted by name
" Sort sequence: [/]KaTeX parse error: Undefined control sequence: \< at position 2: ,\̲<̲core\%(\.\d\+\)…,.cKaTeX parse error: Can't use function '\.' in math mode at position 2: ,\̲.̲cpp,~=*$,*,.o
" Quick Help: :help -:go up dir D:delete R:rename s:sort-by x:spec
" ===========================================================================
…/
./
test_class.h
main.cpp
test_class.cpp
main*
Makefile
main.o
1,1 Top

在头文件与cpp间来回切换

假如我们正在编辑cpp,想切到头文件,可以用命令:e切过去,这时候如果想再切到cpp文件,可以用ctrl+shift+6快速切到上一次编辑的文件,这样按ctrl+shift+6可以快速的在头文件和cpp间来回切换

退出所有窗口
当我们打开了Tlist, cope窗口,这时候想退出vim,命令模式:q 只会退出当前窗口, 需要用:qa 关闭所有窗口

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值