vim-patch:9.1.1535: the maximum search count uses hard-coded value 99 (#34873)

Problem:  The maximum search count uses a hard-coded value of 99
          (Andres Monge, Joschua Kesper)
Solution: Make it configurable using the 'maxsearchcount' option.

related: vim/vim#8855
fixes: vim/vim#17527
closes: vim/vim#17695

b7b7fa04bf

Co-authored-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
zeertzjq
2025-07-11 09:17:05 +08:00
committed by GitHub
parent 54cde0674b
commit 00f8f94d5b
15 changed files with 267 additions and 60 deletions

View File

@@ -233,6 +233,7 @@ OPTIONS
• 'completeopt' flag "nearset" sorts completion results by distance to cursor.
• 'diffopt' `inline:` configures diff highlighting for changes within a line.
• 'grepformat' is now a |global-local| option.
• 'maxsearchcount' sets maximum value for |searchcount()| and defaults to 999.
• 'pummaxwidth' sets maximum width for the completion popup menu.
• 'winborder' "bold" style, custom border style.
• |g:clipboard| accepts a string name to force any builtin clipboard tool.
@@ -296,7 +297,6 @@ These existing features changed their behavior.
• 'spellfile' location defaults to `stdpath("data").."/site/spell/"` instead of
the first writable directory in 'runtimepath'.
• |vim.version.range()| doesn't exclude `to` if it is equal to `from`.
• |searchcount()|'s maximal value is raised from 99 to 999.
==============================================================================
REMOVED FEATURES *news-removed*

View File

@@ -4286,6 +4286,15 @@ A jump table for the options with a short description can be found at |Q_op|.
Vim may run out of memory before hitting the 'maxmempattern' limit, in
which case you get an "Out of memory" error instead.
*'maxsearchcount'* *'msc'*
'maxsearchcount' 'msc' number (default 999)
global
Maximum number of matches shown for the search count status |shm-S|
When the number of matches exceeds this value, Vim shows ">" instead
of the exact count to keep searching fast.
Note: larger values may impact performance.
The value must be between 1 and 9999.
*'menuitems'* *'mis'*
'menuitems' 'mis' number (default 25)
global
@@ -5681,7 +5690,8 @@ A jump table for the options with a short description can be found at |Q_op|.
is shown), the "search hit BOTTOM, continuing at TOP" and
"search hit TOP, continuing at BOTTOM" messages are only
indicated by a "W" (Mnemonic: Wrapped) letter before the
search count statistics.
search count statistics. The maximum limit can be set with
the 'maxsearchcount' option.
This gives you the opportunity to avoid that a change between buffers
requires you to hit <Enter>, but still gives as useful a message as

View File

@@ -176,6 +176,7 @@ The following options affect how a search is performed in Vim:
'ignorecase' ignore case when searching
'imsearch' use IME when entering the search pattern
'incsearch' show matches incrementally as the pattern is typed
'maxsearchcount' maximum number for the search count |shm-S|
'shortmess' suppress messages |shm-s|; show search count |shm-S|
'smartcase' override 'ignorecase' if pattern contains uppercase
'wrapscan' continue searching from the start of the file

View File

@@ -69,6 +69,7 @@ Defaults *defaults* *nvim-defaults*
- 'langremap' is disabled
- 'laststatus' defaults to 2 (statusline is always shown)
- 'listchars' defaults to "tab:> ,trail:-,nbsp:+"
- 'maxsearchcount' defaults t0 999
- 'mouse' defaults to "nvi", see |default-mouse| for details
- 'mousemodel' defaults to "popup_setpos"
- 'nrformats' defaults to "bin,hex"
@@ -340,7 +341,6 @@ Functions:
- |matchadd()| can be called before highlight group is defined
- |tempname()| tries to recover if the Nvim |tempdir| disappears.
- |writefile()| with "p" flag creates parent directories.
- |searchcount()|'s maximal value is raised from 99 to 999.
- |prompt_getinput()|
Highlight groups: