当前位置: 首页 > Linux

vim技巧:在程序代码中快速跳转,跳转到文件中变量定义

时间:2023-04-07 01:06:44 Linux

本文介绍一些vim使用技巧:在程序代码中快速跳转,跳转到文件中变量定义查看时在程序代码中快速跳转vim中的代码文件,可以使用如下命令快速跳转程序代码,提高效率。%跳转到光标所在括号的另一对括号,适用于圆括号()、大括号{}、方括号[]。例如,当前光标在左大括号{上,输入%命令,光标会跳转到成对的右大括号}。该命令也适用于C语言中的条件编译宏,可以使光标在成对的#if、#ifdef、#else、#elif、#endif之间快速跳转。[m跳转到当前光标上方最近函数的开头,在左花括号处停止。如果光标在函数内部,它会跳转到当前函数的左大括号。如果光标在函数外,则跳转到上面最近的函数的左大括号。[M跳转到当前光标上方最近函数的末尾,停在右花括号处。无论当前光标在函数内还是函数外,都会跳转到上一个函数末尾的右大括号处。]m跳转到当前光标下方最近函数的开头,在左大括号处停止。无论当前光标在函数内还是函数外,都会跳转到下面最近的函数的左左大括号处。]M跳转到当前光标下方最近函数的末尾,停在右花括号处。如果光标在函数内部,它会跳转到当前函数末尾的右大括号。如果光标在函数之外,则跳转到下面最近函数的右大括号。[{跳转到当前光标上方最近的不匹配左大括号,并停在左大括号上。例如,如果光标在if语句内,则跳转到if语句开头的左大括号。]}跳转到当前光标下方最近的不匹配的右大括号,并在右大括号处停止。例如,如果光标在if语句内,则跳转到if语句末尾的右大括号。[(跳转到当前光标前最近的不匹配左括号,并在左括号处停止。例如,如果光标在括号内(),则跳转到最近的左括号。])跳转到最近的不匹配右括号当前光标停在右括号后。例如,如果光标在括号()内,则跳转到右边最近的右括号。这些命令可以在前面加上一个数字来表示跳转的次数。例如:3[m将跳转到当前光标上方第三个函数的开头并停在左花括号处。如果光标在函数内部,则当前函数为第一个函数,向上跳转两个函数。3[{会跳转到当前光标上方第三级花括号的开头,并在左花括号处停止。可以使用:help[(命令查看[(。%的说明在[(上面。可以使用:help[m命令查看[m的说明。其他命令的说明可以类似查看跳转到文件中的变量定义在当前文件中,可以使用以下命令快速跳转到变量定义gd在当前函数中搜索当前光标下的词,找到则跳转tothefirstoccurrenceofthewordinthefunction对于局部变量,表示跳转到变量定义。函数中第一次用到变量的地方。这个命令本身不进行语法分析,只是简单的进行字符串查找和跳转。实际使用中可以用来查找任意单词,不局限于查找变量。gDfinds当前文件中当前光标下的单词,如果找到则跳转到文件中该单词第一次出现的地方。对于全局变量,就是跳转到全局变量定义处。对于局部变量,也可以跳转到局部变量定义处如果变量定义在文件外,则只能跳转到当前文件中第一次使用该变量的地方。在实际测试中,gd命令只能在函数中搜索,不会跳转到全局变量定义处。gD命令是在整个文件中搜索。可以跳转到全局变量的定义或者函数中局部变量的定义。如果不确定要查找的词是全局变量还是局部变量,统一使用gD命令。如果变量定义在当前文件中,gD命令肯定可以跳转到文件中的变量定义处,比gd命令方便。您可以使用:helpgd和:helpgD命令查看帮助说明。每个命令的帮助说明是相邻的。