活用VIM:全局搜索并跳转
很多人使用了vim之后,热衷于安装各种各样的插件,折腾的不亦乐乎。但是殊不知vim 本身自带的很多功能也非常的好用,熟练使用他们会使得我们在编程以及解决问题过程中提高不少效率。下面我就介绍第一个好用的技巧。全局搜索vim 命令。 先举个栗子:比如我想在当前目录搜索字符串 “test1”。你可以使用grep -R test1 * 这样虽然可以搜索出结果,但是你只能看到这个字符串都在哪个文件哪里包含,不能快速跳转到这个字符串包含的文件中,但是vim 就有这样的功能。 在vim的命令模式输入如下命令:vim /test1/ ** | copen 如下就递归找出了在当前目录下所有包含test1 字符串的文件,并且点击想查看的那行就直接能跳转到这个文件包含test1的位置中去。如下我想在u-boot 源码中查找所有包含main 字符串的文件 :vim /main/ ** | copen
如上,所有包含main 字符串的文件全部列出,并且点击想要想看的一行就直接跳转到这个文件相应行中,非常方便。上个例子是当前目录递归搜索所有。这个命令还有很多变种用法:以下都是搜索main,如果搜索其他字符串请替换. 1. 只搜索当前文件 vim /main/ % | copen 2. 只搜索当前目录 vim /main/ * | copen 3. 搜索上级目录下,并递归 vim /main/ ../** | copen 4. 可以在多个路径中搜索 vim /main path1/** path2/** | copen 如上的用法可以搭配ctags来查看source code,非常实用。其实上述的命令就是vimgrep,简写vim。使用 | 连接copen 命令把quickfix打开,vimgrep的结果就记录在quickfix中。可以查看更过vimgrep的用法:h vimgrep
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 使用AngularJS和Express的错误CSRF令牌
- scala – value reduceByKey不是org.apache.spark.rdd.RDD的
- bootstrap:动态添加tab标签
- angularjs – 量角器不会自动启动PhantomJS
- Scala&Spark:一次投射多个列
- typescript – angular2 router.navigate里面的auth0回调
- Shell函数~10
- angular – 如何在ngFor(嵌套formArray)中访问ngFor中的for
- Angular 根据 service 的状态更新 directive
- Angular开发者指南(一)入门介绍