136

GitHub - romainl/vim-qf: Tame the quickfix window

 6 years ago
source link: https://github.com/romainl/vim-qf
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

vim-qf

vim-qf—short for vim-quickfix—is a growing collection of settings, commands and mappings put together to make working with the location list/window and the quickfix list/window smoother.

Features

Anti-features

Vim-qf and all quickfix-related plugins necessarily have overlapping features and thus undefined behaviors. Therefore, I don't recommend vim-qf to Syntastic/Neomake/ALE users.

Global features (available from any window)

  • quickfix buffers are hidden from :ls and buffer navigation

  • quit Vim if the last window is a location/quickfix window

  • close the location window automatically when quitting parent window

  • (optional) mappings for :cnext, :cprevious, :lnext, :lprevious that wrap around the beginning and end of the list

  • (optional) mapping for jumping to and from the location/quickfix window,

  • (optional) mappings for toggling location/quickfix windows

  • (optional) open the location/quickfix window automatically after :make, :grep, :lvimgrep and friends if there are valid locations/errors

  • (optional) automatically set the height of location/quickfix windows to the number of list items if less than Vim's default height (10) or the user's prefered height

Local features (available only in location/quickfix windows)

  • disable relative numbers

  • filter and restore the current list:

    filter
  • perform commands on each line in the current list

  • perform commands on each file in the current list

  • jump to next group of entries belonging to same file ("file grouping"):

    group
  • save and load named lists:

    list
  • (optional) disable soft-wrapping

  • (optional) Ack.vim-inspired mappings

  • (optional) shorten filepaths for better legibility

Installation

Use your favorite runtimepath/plugin manager or dump the files below in their standard location:

# Unix-like systems
~/.vim/after/ftplugin/qf.vim
~/.vim/autoload/qf.vim
~/.vim/autoload/qf/*.vim
~/.vim/doc/qf.txt
~/.vim/plugin/qf.vim

# Windows
%userprofile%\vimfiles\after\ftplugin\qf.vim
%userprofile%\vimfiles\autoload\qf.vim
%userprofile%\vimfiles\autoload\qf\*.vim
%userprofile%\vimfiles\doc\qf.txt
%userprofile%\vimfiles\plugin\qf.vim

Documentation

If you go with the manual installation method, don't forget to index the documentation:

# Unix-like systems
:helptags ~/.vim/doc

# Windows
:helptags %userprofile%\vimfiles\doc

Once the documentation is indexed, you can use this command to get help on vim-qf:

:help vim-qf
  • Export more options?

  • Add titles to saved lists, e.g. to display in :ListLists?

  • Add :packadd support?

  • Use <Plug> mappings.

  • Add proper attribution for a few features.

  • Write a proper help file.

  • Ask #vim's opinion.

  • Add a gifcast to the README.


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK