Skip to content
A pager for grep
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
app
src
test
.gitignore
.stylish-haskell.yaml
.travis.yml
CHANGELOG.md
LICENSE
README.md
Setup.hs
config.yaml.example
help.txt
screenshot.gif
stack.yaml
vgrep.cabal

README.md

vgrep -- A pager for grep

Screenshot

Usage

  • As a pager:

    grep -rn data /some/path | vgrep  # -n for line numbers
  • As a drop-in replacement for grep:

    vgrep data /some/path                  # recursive by default
    vgrep data /some/path | vgrep default  # works with pipes, too
  • With a git alias defined in your ~/.gitconfig:

    git config --global alias.vgrep '!__git_vgrep () { git grep --color=always "$@" | vgrep; }; __git_vgrep'
    git vgrep data
  • Using ack/ag instead of grep? No problem:

    ack data | vgrep           # Output of `ack` is compatible
    ack --color data | vgrep   # Even coloring works
    ag --color data | vgrep    # Same for `ag`

Keybindings:

  • Use hjkl or the arrow keys to navigate
  • Enter opens a pager with the selected file
  • e opens the selected file in $EDITOR
  • Tab switches between results list and pager
  • q closes the pager and then the entire application.

Installation

Binaries

Debian/Ubuntu: .deb files are available for the latest release.

wget https://github.com/fmthoma/vgrep/releases/download/v0.2/vgrep_0.2.0.0-1_amd64.deb
sudo dpkg -i vgrep_0.2.0.0-1_amd64.deb

From Hackage

Installation from Hackage via stack is recommended:

stack update
stack install vgrep

This will install vgrep to your ~/.local/bin directory.

From source

git clone https://github.com/fmthoma/vgrep.git
cd vgrep
stack setup
stack install
You can’t perform that action at this time.