GithubHelp home page GithubHelp logo

greper.vim's Introduction

greper.vim

This vim plugin improves searching, for words and with regular expressions, using a simple syntax.

It allows using any of these tools: ag, ack and grep. Whichever is avaiable, greper.vim will pick the fastest.

It provides a new set of commands, easy navigation of the search results window and (recommended) mappings.

Commands, Mappings and Configuration

Read the help to know more.

Installation

Using Vundle:

Just add this 2 lines to your ~/.vimrc:

Plugin 'rizzatti/funcoo.vim'
Plugin 'rizzatti/greper.vim'

And run :PluginInstall inside Vim.

Copy and paste in your shell:

cd ~/.vim/bundle
git clone https://github.com/rizzatti/funcoo.vim.git
git clone https://github.com/rizzatti/greper.vim.git

Using vpm:

Run this command in your shell:

vpm insert rizzatti/funcoo.vim
vpm insert rizzatti/greper.vim

Using Plug:

Just add this line to your ~/.vimrc inside plug call:

Plug 'rizzatti/funcoo.vim'
Plug 'rizzatti/greper.vim'

And run :PlugInstall inside Vim or vim +PlugInstall +qa from shell.

License

MIT

greper.vim's People

Contributors

maxnordlund avatar rizzatti avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

greper.vim's Issues

Don't switch automatically to quickfix list if search was long

If search is taking long sometimes it's useful to do something else, while it's in progress. In my particular case I've tried to insert text into buffer. I've experienced some lags, but have been able to insert text, until suddenly search is done and I was placed into quickfix in insert mode (I have a plugin that makes quickifix editable) I've started to hit j key to traverse quickfix list, but instead I've edited text in it.

So in my opinion there is two things that gone wrong here. First, don't force me into quickfix if I've already switched my attention from search (simple heuristic is time, better heuristic is user actions). Second when switching force switch to normal mode.

Quickfix mappings sometimes leak into other buffers

I've found two things with the Quickfix mappings:

  • Sometimes they seem to get activated and stuck in a non-quickfix buffer. For example, the t mapping to <C-W><CR><C-W>T will be stuck, and doing a :map t to whatever seems to do nothing to fix it.
  • On a related note, I've tried to override these mapping in the quickfix itself using an after/ftplugin/qf.vim and it doesn't work. Also, entering my override mappings directly as ex commands doesn't work. Greper seems to be blocking it.

Finally, it would be nice if you provided an option to disable the default quickfix mappings. Thanks!

Use a single window for previewing results

Using the mappings will create new windows indefinitely right now. Previewing should behave like:

  • o, go: use the window from the buffer which generated the search to show results in.
  • v, gv: create a vertical split to the right of the window which generated the search.
  • s, gs: create a horizontal split below the window which generated the search.
  • t, gt: create a new tab to show the results in. If the user chooses the same file using t, gt a 2nd time from the quickfix window, the same tab window should be updated to show the new position, not create a new one.

Beyond this, switching modes, like using 's' after 'v' should close the vertical split and open a horizontal one. A single preview should be usable, except for tabs.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.