-*helphelp.txt* For Vim version 9.1. Last change: 2025 Jan 11
+*helphelp.txt* For Vim version 9.1. Last change: 2025 Apr 08
VIM REFERENCE MANUAL by Bram Moolenaar
You can find the details in $VIMRUNTIME/syntax/help.vim
-GENDER NEUTRAL LANGUAGE
+FILETYPE COMPLETION *ft-help-omni*
+
+To get completion for help tags when writing a tag reference, you can use the
+|i_CTRL-X_CTRL-O| command.
+
+GENDER NEUTRAL LANGUAGE
*gender-neutral* *inclusion*
Vim is for everybody, no matter race, gender or anything. For new or updated
help text, gender neutral language is recommended. Some of the help text is
ft-gsp-syntax syntax.txt /*ft-gsp-syntax*
ft-hare filetype.txt /*ft-hare*
ft-haskell-syntax syntax.txt /*ft-haskell-syntax*
+ft-help-omni helphelp.txt /*ft-help-omni*
ft-html-indent indent.txt /*ft-html-indent*
ft-html-omni insert.txt /*ft-html-omni*
ft-html-syntax syntax.txt /*ft-html-syntax*
" Vim filetype plugin file
" Language: Vim help file
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2018-12-29
+" Last Change: 2025 Apr 08
+" 2025 Apr 08 by Vim project (set 'omnifunc' and 'iskeyword', #17073)
if exists("b:did_ftplugin")
finish
let s:cpo_save = &cpo
set cpo&vim
-let b:undo_ftplugin = "setl fo< tw< cole< cocu< keywordprg<"
+let b:undo_ftplugin = "setl isk< fo< tw< cole< cocu< keywordprg< omnifunc<"
-setlocal formatoptions+=tcroql textwidth=78 keywordprg=:help
+setlocal formatoptions+=tcroql textwidth=78 keywordprg=:help omnifunc=s:HelpComplete
+let &l:iskeyword='!-~,^*,^|,^",192-255'
if has("conceal")
setlocal cole=2 cocu=nc
endif
+if !exists('*s:HelpComplete')
+ func s:HelpComplete(findstart, base)
+ if a:findstart
+ let colnr = col('.') - 1 " Get the column number before the cursor
+ let line = getline('.')
+ for i in range(colnr - 1, 0, -1)
+ if line[i] ==# '|'
+ return i + 1 " Don't include the `|` in base
+ elseif line[i] ==# "'"
+ return i " Include the `'` in base
+ endif
+ endfor
+ else
+ return taglist('^' .. a:base)
+ \ ->map({_, item -> #{word: item->get('name'), kind: item->get('kind')}})
+ \ ->extend(getcompletion(a:base, 'help'))
+ endif
+ endfunc
+endif
+
let &cpo = s:cpo_save
unlet s:cpo_save