Skip to content
Switch branches/tags
Go to file

Latest commit

The list argument is ignored if the 'what' argument is present, and
recently vim has started throwing and error if they are both present and
the list is not empty.

Fixes #231

Git stats


Failed to load latest commit information.

Build Status


Use your favorite grep tool (ag, ack, git grep, ripgrep, pt, sift, findstr, grep) to start an asynchronous search. All matches will be put in a quickfix or location list.

This plugin works with Vim and Neovim on Unix-like systems. It's mostly working on Windows as well.

Disclaimer: From my point of view it's feature-complete, so I won't add new features or put much time into reviewing complex PRs.

  • Prompt: Use :Grepper to open a prompt, enter your query, optionally cycle through the list of tools, fire up the search.
  • Operator: Use the current visual selection to pre-fill the prompt or start searching right away.
  • Commands: :Grepper supports a wide range of flags which makes it extremely flexible. All supported tools come with their own command for convenience: :GrepperGit, :GrepperAg, and so on. They're all built atop of :Grepper.
  • Custom tools: Changing the behaviour of the default tools is very easy. And so is adding new tools.

If you like ack.vim and ag.vim, you will love vim-grepper.


This README is only the tip of the iceberg. Make sure to read :h grepper and the wiki to learn about every feature.

Example configurations be be found here.

The truth is out there.


Use your favorite plugin manager, e.g. vim-plug:

Plug 'mhinz/vim-grepper'

If you prefer lazy loading:

Plug 'mhinz/vim-grepper', { 'on': ['Grepper', '<plug>(GrepperOperator)'] }


General usage:


Grepping only files currently loaded in Vim:



If you like this plugin, star it! It's a great way of getting feedback. The same goes for reporting issues or feature requests.

Contact: Twitter