summaryrefslogtreecommitdiffstatshomepage
path: root/runtime/lua/vim/_core/help.lua
AgeCommit message (Collapse)AuthorFiles
2026-03-15feat(help): super K (":help!") guesses tag at cursor #36205Justin M. Keyes1
Problem: `K` in help files may fail in some noisy text. Example: (`fun(config: vim.lsp.ClientConfig): boolean`) ^cursor Solution: - `:help!` (bang, no args) activates DWIM behavior: tries `<cWORD>`, then trims punctuation until a valid tag is found. - Set `keywordprg=:help!` by default. - Does not affect `CTRL-]`, that is still fully "tags" based.
2026-02-27fix(help): better align local-additions #38097Yochem van Rosmalen1
Problem: Descriptions of plugins often contain taglinks which are generally concealed. This misaligns them by 2 characters with descriptions that don't have a taglink in them. Solution: Don't count "bar" characters (`|`) for the description width. Example: Actual buffer content: ``` myplugin.txt |lsp| is cool myplugin.txt this is a nice plugin ``` Rendered as: ``` myplugin.txt lsp is cool myplugin.txt this is a nice plugin ```
2026-02-14refactor(help): move local-additions to Lua #37831Yochem van Rosmalen1
Problem: - ~200 line function of hard-to-maintain C code. - Local Addition section looks messy because of the varying description formats. Solution: - Move code to Lua. - Have a best-effort approach where short descriptions are right aligned, giving a cleaner look. Long descriptions are untouched.
2026-02-10refactor(help): move escaping logic to Lua #37757Yochem van Rosmalen1
Problem: Escaping logic for {subject} in ex cmd `:help {subject}` is done in a messy 200+ lines C function which is hard to maintain and improve. Solution: Rewrite in Lua. Use `string.gsub()` instead of looping over characters to improve clarity and add many more tests to be able to confidently improve current code later on.