加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

vim ag ack

发布时间:2020-12-15 16:50:59 所属栏目:安全 来源:网络整理
导读:Ag(The Silver Searcher)和Ack都是CLI的全局搜索工具,其中Ag更快一些,而Ack也比Vim自带的grep快很多。这些工具的Vim插件可以通过Vim Quickfix窗口来提供代码搜索的结果。 本文便来详细介绍如何在Vim中使用Ag全局搜索。 那么什么是Quickfix窗口呢?Quickfix

Ag(The Silver Searcher)和Ack都是CLI的全局搜索工具,其中Ag更快一些,而Ack也比Vim自带的grep快很多。这些工具的Vim插件可以通过Vim Quickfix窗口来提供代码搜索的结果。 本文便来详细介绍如何在Vim中使用Ag全局搜索。

那么什么是Quickfix窗口呢?Quickfix是Vim的一个特殊编辑模式,该模式的提出最初是受启发于Aztec C编译器: 把编译错误写入一个文件中,然后从这个文件一一跳转到对应出错的源文件。

安装Ag

Ag是一个命令行工具,用来全局搜索代码文件。 除了速度快之外,还会自动排除.gitignore,.hgignore里排除的文件。 当然你可以在agignore中设置其它要排除的文件。现在来安装它:

# OSX
brew install the_silver_searcher
# Archlinux
pacman -S the_silver_searcher
# Ubuntu
apt-get install silversearcher-ag

装好之后可以在Bash中试试:

ack test_blah ~/code/

安装Ack.vim

Ack.vim是Ack的Vim插件,通过Quickfix来提供搜索结果。 但它允许用户定义外部程序,所以我们可以用它来显示Ag的搜索结果。

~/.vimrc中加入:

Plugin 'mileszs/ack.vim'
let g:ackprg = 'ag --nogroup --nocolor --column'

然后运行:

vim +PluginInstall

在运行PluginInstall前,需要确保安装了Vundle。 Vundle是Vim插件的包管理工具,可以参见如何用Vim搭建IDE?。

基本使用

然后在Vim中输入:Ack test_blah便可以在当前项目代码中搜索"test_blah"了。 常用快捷键如下:

?           帮助,显示所有快捷键
Enter/o     打开文件
O           打开文件并关闭Quickfix
go          预览文件,焦点仍然在Quickfix
t           新标签页打开文件
q           关闭Quickfix

可以在~/.vimrc中为:Ack设置一个快捷键:

map <c-u> :Ack<space> map <c-u> :Ack<space>

以后在普通模式下输入Ctrl+U便可以自动输入:Ack了。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读