vim-patch:9.1.1599: :bnext doesn't go to unlisted help buffers (#35216)

Problem:  :bnext doesn't go to unlisted help buffers when cycling
          through help buffers (after 9.1.0557).
Solution: Don't check if a help buffer is listed (zeertzjq).

From <https://github.com/vim/vim/issues/4478#issuecomment-498831057>:

> I think we should fix that, since once you get to a non-help buffer
> all unlisted buffers are skipped, thus you won't encounter another
> help buffer.

This implies that cycling through help buffers should work even if help
buffers are unlisted. Otherwise this part of :bnext isn't really useful,
as :h makes help buffers unlisted by default.

related: vim/vim#4478
related: vim/vim#15198
closes: vim/vim#17913

9662f33480
(cherry picked from commit 53ac2ad20a)
This commit is contained in:
zeertzjq
2025-08-07 23:57:55 +08:00
committed by github-actions[bot]
parent f4b4c27a35
commit 54c2ea142a
2 changed files with 20 additions and 5 deletions

View File

@@ -169,6 +169,17 @@ func Test_bnext_bprev_help()
b XHelp1
blast | call assert_equal(b4, bufnr())
" Cycling through help buffers works even if they aren't listed.
b XHelp1
setlocal nobuflisted
bnext | call assert_equal(b3, bufnr())
bnext | call assert_equal(b1, bufnr())
bprev | call assert_equal(b3, bufnr())
setlocal nobuflisted
bprev | call assert_equal(b1, bufnr())
bprev | call assert_equal(b3, bufnr())
bnext | call assert_equal(b1, bufnr())
%bwipe!
endfunc