" Vim filetype plugin file " Language: man " Maintainer: Jason Franklin " Maintainer: SungHyun Nam " Autoload Split: Bram Moolenaar " Last Change: 2024 Jun 06 (disabled the q mapping, #8210) " 2024 Jul 06 (use nnoremap, #15130) " 2024 Aug 23 (improve the ManBS mapping, #15547, #15556) " To make the ":Man" command available before editing a manual page, source " this script from your startup vimrc file. " If 'filetype' isn't "man", we must have been called to define ":Man" and not " to do the filetype plugin stuff. if &filetype == "man" " Only do this when not done yet for this buffer if exists("b:did_ftplugin") finish endif let b:did_ftplugin = 1 endif let s:cpo_save = &cpo set cpo-=C if &filetype == "man" " Allow hyphen, plus, colon, dot, and commercial at in manual page name. " Parentheses are not here but in dist#man#PreGetPage() setlocal iskeyword=48-57,_,a-z,A-Z,-,+,:,.,@-@ let b:undo_ftplugin = "setlocal iskeyword<" " Add mappings, unless the user didn't want this. if !exists("no_plugin_maps") && !exists("no_man_maps") if !hasmapto('ManBS') nmap h ManBS let b:undo_ftplugin = b:undo_ftplugin \ . '|silent! nunmap h' endif nnoremap ManBS :setl ma%s/.\b//g \ setl noma`' nnoremap :call dist#man#PreGetPage(v:count) nnoremap :call dist#man#PopPage() " Add undo commands for the maps let b:undo_ftplugin = b:undo_ftplugin \ . '|silent! nunmap ManBS' \ . '|silent! nunmap ' \ . '|silent! nunmap ' endif if exists('g:ft_man_folding_enable') && (g:ft_man_folding_enable == 1) setlocal foldmethod=indent foldnestmax=1 foldenable let b:undo_ftplugin = b:undo_ftplugin \ . '|silent! setl fdm< fdn< fen<' endif endif if exists(":Man") != 2 com -nargs=+ -complete=shellcmd Man call dist#man#GetPage(, ) nnoremap K :call dist#man#PreGetPage(0) nnoremap ManPreGetPage :call dist#man#PreGetPage(0) endif let &cpo = s:cpo_save unlet s:cpo_save " vim: set sw=2 ts=8 noet: