runtime(nohlsearch): include the the simple nohlsearch package
fixes: #15039
closes: #15042
Signed-off-by: Maxim Kim <habamax@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
diff --git a/runtime/doc/pattern.txt b/runtime/doc/pattern.txt
index 183806a..4351944 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 @@
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 <CR> to actually position the cursor at the displayed match. Or
use <Esc> 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 794fa0c..56385a8 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -9178,6 +9178,8 @@
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 a9e8fb9..5065e45 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 @@
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 @@
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 0000000..6cfe813
--- /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 <habamax@gmail.com>
+"
+" turn off hlsearch after:
+" - doing nothing for 'updatetime'
+" - getting into insert mode
+augroup nohlsearch
+ au!
+ noremap <Plug>(nohlsearch) <cmd>nohlsearch<cr>
+ noremap! <expr> <Plug>(nohlsearch) execute('nohlsearch')[-1]
+ au CursorHold * call feedkeys("\<Plug>(nohlsearch)", 'm')
+ au InsertEnter * call feedkeys("\<Plug>(nohlsearch)", 'm')
+augroup END