Skip to content

FelikZ/ctrlp-py-matcher

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

67 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ctrlp-py-matcher

Fast CtrlP matcher based on python

Performance difference is up to x22, look at this perf:

Default matcher:

FUNCTIONS SORTED ON SELF TIME
count  total (s)   self (s)  function
    3  17.768008  17.610161  <SNR>102_MatchIt()

With Py Matcher:

FUNCTIONS SORTED ON SELF TIME
count  total (s)   self (s)  function
    3              0.730215  pymatcher#PyMatch()

To achieve such results try to do long (5-10+ sym) text queries on a large amount of files (1kk+).

To install this plugin you need Vim compiled with +python flag:

vim --version | grep python

This plugin should be compatible with vim 7.x and NeoVIM as well.

If you still have performance issues, it can be caused by bufferline or alike plugins. So if, for example, it caused by bufferline you can switch to airline and setup this option:

let g:airline#extensions#tabline#enabled = 1

Installation

git clone https://github.com/FelikZ/ctrlp-py-matcher ~/.vim/bundle/ctrlp-py-matcher
Plugin 'FelikZ/ctrlp-py-matcher'
NeoBundle 'FelikZ/ctrlp-py-matcher'

~/.vimrc setup

let g:ctrlp_match_func = { 'match': 'pymatcher#PyMatch' }

Full documentation is available here