vim与gvim技巧8.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
vim与gvim技巧8

[vim与gvim技巧]vimgvim技巧大全(8) 这几个命令中有一些需要说明的地方:[CTRL_I/]CTRL_I命令用来查找光标下面的文字,查找的范围不仅是在本文件中进行查找,而且还要查找由#include所包含进来的文件中进条查找。变显查找的命令gd和gD有时并不能完美的完我们想要做工作。这是因为vi在理解C和C++的语法方面有一些小的限制。但是大多数的情况下这几个命令还是可以很好的来完成我们工作的。[d/命令可以显示以当前光标下的内容为为名字的第一个宏定义,]d也有着同样的作用,所不同的只是后者是从当前光标处查找下一个宏定义。当然这两个命令也可以在由#inlcude所包含进来的文件中进行查找。[D/]D命令可以用来列出文件中的宏定义。这两个命令有着同样的作用,所不同的只是前者是列出当前光标以后的宏定义,而后者是从当前光标处的下一个宏开始列出文件中的宏义。(注:此处由此书看来似乎是这样的,但是自己亲自来做时并没有出现这样效果) 我们在编写程序时常常要做的一件事便是括号的匹配,我们在vi中可以用%命令来确定匹配的括号。例如我们将光标定位在其中一个括号处,然后执行命令%,光标就会定位在与其相匹配的括号处。有时我们在编写了一段程序后却想着要将这一段程序进行缩进,这时我们可以用这样的命令来做到:将光标定位在第一个或是最后一个包含着所要缩进的程序块的括号处,然后执行下面的命令:%,这样就可以将这个程序右缩进一段距离。但是我们发现执行这个命令后花括号也一样的进行了缩进,有时我们这并不是我们想要的,我们想要的是仅括号内的文本进行缩进。这时我们又应如何来做呢?这时我们可以用这样的命令:i{.这个命令是说仅括号内的文本进行缩进。我们还可以用可视化的模式来缩进文本块,具体的做法是这样的: 1 将光标定位在左括号或是右括号处。 2 进入可视化模式:v 3 选中括号内的文本:i} 4 缩进: 当我们用vi来编辑我们的程序文件时,他提供给了我们定位程序函数的功能。这对于我们想要理解一个程序是非常有帮助的。vi所定位的函数被包含在一个由ctags的程序建立的文件当中。要建立一个名为tags的这样的文件,我们可以输入这样的命令来完成:$ctags *.c 这样以后当我们在vi中来编辑我们的程序文件时我们就可以任意的跳转到我们想要去的函数处,当然这得要求我们想要到函数存在。我们可以用这样的命令来到达我们要到的地方: :tag function 这个命令甚至可以查找得到在其他文件中的函数。 在完成函数跳转的功能命令中还有几个强大而有趣的命令。CTRL_]命令跳转到以光标下的字符串为函数名的函数处。这样就大大的方便了我们在C程序查找函数的需要。例如你正在看一段名为write_block的函数程序,而在这个程序中调用了函数write_line。这个被调用的函数具体是来做什么的呢?我们可以将光标定位在这个函数上,然用执行命令CTRL_]。这样vi就会马上跳转到这个函数的定义处。我们就可以清楚的看到这个函数的实现的方法。而在这个函数中又调用了函数write_char,这时我们可以用同样的方法来查看这个函数的定义过程。命令:tags可以列出我们已经访问过的函数名称。但是我们在走了一段路以后想回去又该怎么来做呢?命令CTRL_T可以使我们回到上一个访问的函数处。我们为了在函数跳转的命令,我们要用命令ctags建立这文件来存放在C程序中所出现在的函数名,这时vi要建立一个栈来存入函数名。我们用命令CTRL_T回到上一个访问的函数处,这时我们还可以用命令:tag来向前走一步,即回到前一个访问的函数处。我们也还可以像其他大多数的vi命令一样在此命令之前用数字来做前缀,指明要执行的次数。我们还可以用这样的命令::tag function。这样我们就可以来到指定的函数处。 当我们用命令:tag时是将当前窗口中的内容由函数的内容所代替了。我们也可以打开一个新窗口来显示函数的内容。这时我们就要用到下面的命令::stag tag。这个命令是要打开一个新窗口来显示tag指定的函数内容。我们也可以用命令CTRL_W_]来打开一个新窗口显示以光标下的字符串为函数名的函数内容。我们也可以在这个命令前加下数字count做为前缀,这打开的窗口就是count这样的高度。 我想我们常会有这样的情况,那就是我们想要跳到一个函数处却记清他的名字究竟是什么?这是我们要怎么办呢?在vi中有一个很好的解决办法,那就是我们可以用:tag /name来找到你想要的内容。例如在我们上面所举过的例子中曾提到了函数write_line。但是现在我们记不得他的全名了,只是记得好像有一个line。这时我们如何来找到呢?我们可以用这样的命令来做::tag /line。这样vi就会将我们带到write_line定义的地

文档评论(0)

qwd513620855 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档