diff --git a/autoload/EasyMotion.vim b/autoload/EasyMotion.vim index 7ccdcf88..2a472237 100644 --- a/autoload/EasyMotion.vim +++ b/autoload/EasyMotion.vim @@ -1095,6 +1095,9 @@ function! s:PromptUser(groups) "{{{ let lines_items = items(lines) " }}} + " Invoke autocmd so the user can temporarily disable linters, etc. + silent doautocmd User EasyMotionPromptBegin + " -- Put labels on targets & Get User Input & Restore all {{{ " Save undo tree let undo_lock = EasyMotion#undo#save() @@ -1148,6 +1151,9 @@ function! s:PromptUser(groups) "{{{ call undo_lock.restore() redraw + + " Invoke autocmd + silent doautocmd User EasyMotionPromptEnd endtry "}}} " -- Check if we have an input char ------ {{{ diff --git a/doc/easymotion.txt b/doc/easymotion.txt index 9c88c3e1..1998112f 100644 --- a/doc/easymotion.txt +++ b/doc/easymotion.txt @@ -1,4 +1,4 @@ -*easymotion.txt* Version 3.0 +*easymotion.txt* Version 3.0 ______ __ ___ __ _ @@ -38,6 +38,7 @@ CONTENTS *easymotion-contents* Custom mappings ................. |easymotion-custom-mappings| Leader key .................. |easymotion-leader-key| Custom keys ................. |easymotion-custom-keys| + Autocommands .................... |easymotion-autocommands| License ............................ |easymotion-license| Known bugs ......................... |easymotion-known-bugs| Contributing ....................... |easymotion-contributing| @@ -1139,6 +1140,28 @@ Example: > See |easymotion-plug-table| for a table of motions that can be mapped and their default values. +------------------------------------------------------------------------------ +Autocommands *easymotion-autocommands* + *EasyMotionPromptBegin* *EasyMotionPromptEnd* + +EasyMotion invokes two |User| autocommands, |EasyMotionPromptBegin| and +|EasyMotionPromptEnd|, so you can temporarily disable your linter to avoid +annoying syntax errors. + +EasyMotionPromptBegin Before the content of buffer is changed with + markers. If EasyMotion directly jumps to the + target (no prompts given), this autocommand will + not be executed. + +EasyMotionPromptEnd After the content of buffer and the undo tree are + restored. + +Example with coc.nvim: > + + autocmd User EasyMotionPromptBegin silent! CocDisable + autocmd User EasyMotionPromptEnd silent! CocEnable +< + ============================================================================== License *easymotion-license*