unblevable / quick-scope

Lightning fast left-right movement in Vim
MIT License
1.42k stars 54 forks source link

Add asynchronous highlighting delay #64

Closed eilvelia closed 3 years ago

eilvelia commented 3 years ago

Adds g:qs_delay option. If the option set to >0, the highlighting will begin only after q:qs_delay milliseconds if the cursor is not moved.

It adds almost not noticeable delay, but hugely increases performance, especially if one repeats hjkl or uses shift+click in terminals, without using g:qs_lazy_highlight or g:qs_highlight_on_keys.

For example, quick-scope was very laggy for me with syntax on + vim-airline + clojure syntax.

The option is enabled by default (if has('timers') is true) and set to 50 ms.

vim-cursorword uses similar approach: https://github.com/itchyny/vim-cursorword/blob/cc8114226ceefb5cafe1890e0900d3efb7dab1fd/autoload/cursorword.vim#L44-L56