diff --git a/.github/MAINTAINERS b/.github/MAINTAINERS index 1254782e36..ea8e560d01 100644 --- a/.github/MAINTAINERS +++ b/.github/MAINTAINERS @@ -343,6 +343,7 @@ runtime/lang/menu_ru_ru.utf-8.vim @RestorerZ runtime/pack/dist/opt/cfilter/plugin/cfilter.vim @yegappan runtime/pack/dist/opt/comment/ @habamax runtime/pack/dist/opt/matchit/ @chrisbra +runtime/pack/dist/opt/nohlsearch/ @habamax runtime/plugin/manpager.vim @Konfekt runtime/syntax/shared/hgcommitDiff.vim @vegerot runtime/syntax/abaqus.vim @costerwi diff --git a/Filelist b/Filelist index 20c19f7623..ab4b1ebaae 100644 --- a/Filelist +++ b/Filelist @@ -782,6 +782,7 @@ RT_ALL = \ runtime/pack/dist/opt/matchit/doc/matchit.txt \ runtime/pack/dist/opt/matchit/doc/tags \ runtime/pack/dist/opt/matchit/autoload/*.vim \ + runtime/pack/dist/opt/nohlsearch/plugin/nohlsearch.vim \ runtime/pack/dist/opt/shellmenu/plugin/shellmenu.vim \ runtime/pack/dist/opt/swapmouse/plugin/swapmouse.vim \ runtime/pack/dist/opt/termdebug/plugin/termdebug.vim \ diff --git a/runtime/doc/pattern.txt b/runtime/doc/pattern.txt index 183806a968..4351944df9 100644 --- a/runtime/doc/pattern.txt +++ b/runtime/doc/pattern.txt @@ -1,4 +1,4 @@ -*pattern.txt* For Vim version 9.1. Last change: 2024 Jun 03 +*pattern.txt* For Vim version 9.1. Last change: 2024 Jun 18 VIM REFERENCE MANUAL by Bram Moolenaar @@ -151,13 +151,17 @@ CTRL-C Interrupt current (search) command. Use CTRL-Break on executing autocommands |autocmd-searchpat|. Same thing for when invoking a user function. + While typing the search pattern the current match will be shown if the 'incsearch' option is on. Remember that you still have to finish the search command with to actually position the cursor at the displayed match. Or use to abandon the search. + *nohlsearch-auto* All matches for the last used search pattern will be highlighted if you set -the 'hlsearch' option. This can be suspended with the |:nohlsearch| command. +the 'hlsearch' option. This can be suspended with the |:nohlsearch| command +or auto suspended with nohlsearch plugin. See |nohlsearch-install|. + When 'shortmess' does not include the "S" flag, Vim will automatically show an index, on which the cursor is. This can look like this: > diff --git a/runtime/doc/tags b/runtime/doc/tags index 794fa0c71b..56385a8442 100644 --- a/runtime/doc/tags +++ b/runtime/doc/tags @@ -9178,6 +9178,8 @@ no_buffers_menu gui.txt /*no_buffers_menu* no_mail_maps filetype.txt /*no_mail_maps* no_plugin_maps filetype.txt /*no_plugin_maps* nocombine syntax.txt /*nocombine* +nohlsearch-auto pattern.txt /*nohlsearch-auto* +nohlsearch-install usr_05.txt /*nohlsearch-install* non-greedy pattern.txt /*non-greedy* non-zero-arg eval.txt /*non-zero-arg* none-function_argument userfunc.txt /*none-function_argument* diff --git a/runtime/doc/usr_05.txt b/runtime/doc/usr_05.txt index a9e8fb9c31..5065e4583c 100644 --- a/runtime/doc/usr_05.txt +++ b/runtime/doc/usr_05.txt @@ -1,4 +1,4 @@ -*usr_05.txt* For Vim version 9.1. Last change: 2024 May 17 +*usr_05.txt* For Vim version 9.1. Last change: 2024 Jun 18 VIM USER MANUAL - by Bram Moolenaar @@ -440,7 +440,7 @@ After restarting your Vim, the plugin is active and you can read about it at: > Adding comment package *comment-install* Load the plugin with this command: > - packadd comment + packadd comment < This way you can use the plugin with the default key bindings `gc` and similar for commenting (which is a well-established mapping in the Vim community). @@ -449,6 +449,21 @@ If you add this line to your vimrc file, then you need to restart Vim to have the package loaded. Once the package is loaded, read about it at: > :h comment.txt + +Adding nohlsearch package *nohlsearch-install* + +Load the plugin with this command: > + packadd nohlsearch +< +Automatically execute |:nohlsearch| after 'updatetime' or getting into |Insert| mode. +Thus assuming default updatetime, hlsearch would be suspended/turned off after +4 seconds of idle time. + +To disable the effect of the plugin after is has been loaded: > + au! nohlsearch +< + + More information about packages can be found here: |packages|. ============================================================================== diff --git a/runtime/pack/dist/opt/nohlsearch/plugin/nohlsearch.vim b/runtime/pack/dist/opt/nohlsearch/plugin/nohlsearch.vim new file mode 100644 index 0000000000..6cfe813cfa --- /dev/null +++ b/runtime/pack/dist/opt/nohlsearch/plugin/nohlsearch.vim @@ -0,0 +1,14 @@ +" nohlsearch.vim: Auto turn off hlsearch +" Last Change: 2024-06-18 +" Maintainer: Maxim Kim +" +" turn off hlsearch after: +" - doing nothing for 'updatetime' +" - getting into insert mode +augroup nohlsearch + au! + noremap (nohlsearch) nohlsearch + noremap! (nohlsearch) execute('nohlsearch')[-1] + au CursorHold * call feedkeys("\(nohlsearch)", 'm') + au InsertEnter * call feedkeys("\(nohlsearch)", 'm') +augroup END