[vim/vim] control flow commands using '|' fail inside a {} block (PR #19543)

5 views
Skip to first unread message

Christian Brabandt

unread,
Mar 1, 2026, 2:18:31 PM (yesterday) Mar 1
to vim/vim, Subscribed

Problem: inside_block() iterates through all cstack levels
and returns TRUE when a CSF_BLOCK frame is found. For control
flow commands this causes '|' to no longer be
recognised as a command separator, breaking
"try | silent cmd | catch | endtry"
(Martin Tournoij, after v9.2.0072).
Solution: Return FALSE from inside_block() for control flow commands
that handle '|' themselves, so they always use '|' as
separator regardless of block nesting.

fixes: #19535

supported by AI claude.


You can view, comment on, or merge this pull request online at:

  https://github.com/vim/vim/pull/19543

Commit Summary

  • a1aaf20 control flow commands using '|' fail inside a {} block

File Changes

(2 files)

Patch Links:


Reply to this email directly, view it on GitHub.
You are receiving this because you are subscribed to this thread.Message ID: <vim/vim/pull/19543@github.com>

Christian Brabandt

unread,
2:04 PM (7 hours ago) 2:04 PM
to vim/vim, Subscribed

Closed #19543 via 62cf4c2.


Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <vim/vim/pull/19543/issue_event/23202866906@github.com>

Reply all
Reply to author
Forward
0 new messages