Update runtime files.
This commit is contained in:
@ -1,29 +1,30 @@
|
||||
" Vim plugin for using Vim as manpager.
|
||||
" Maintainer: Enno Nagel <ennonagel+vim@gmail.com>
|
||||
" Last Change: 2017 November 07
|
||||
" Last Change: 2018 Feb 04
|
||||
|
||||
" $MAN_PN is supposed to be set by MANPAGER, see ":help manpager.vim".
|
||||
if empty($MAN_PN)
|
||||
finish
|
||||
endif
|
||||
command! -nargs=0 MANPAGER call s:ManPager() | delcommand MANPAGER
|
||||
|
||||
command! -nargs=0 MANPAGER call s:MANPAGER() | delcommand MANPAGER
|
||||
|
||||
function! s:MANPAGER()
|
||||
let page_pattern = '\v\w[-_.:0-9A-Za-z]*'
|
||||
let sec_pattern = '\v\w+%(\+\w+)*'
|
||||
let pagesec_pattern = '\v(' . page_pattern . ')\((' . sec_pattern . ')\)'
|
||||
|
||||
if $MAN_PN is '1'
|
||||
let manpage = tolower(matchstr( getline(nextnonblank(1)), '^' . pagesec_pattern ))
|
||||
else
|
||||
let manpage = expand($MAN_PN)
|
||||
function! s:ManPager()
|
||||
set nocompatible
|
||||
if exists('+viminfofile')
|
||||
set viminfofile=NONE
|
||||
endif
|
||||
set noswapfile
|
||||
|
||||
let page_sec = matchlist(manpage, '^' . pagesec_pattern . '$')
|
||||
setlocal ft=man
|
||||
runtime ftplugin/man.vim
|
||||
setlocal buftype=nofile bufhidden=hide iskeyword+=: modifiable
|
||||
|
||||
bwipe!
|
||||
" Emulate 'col -b'
|
||||
silent keepj keepp %s/\v(.)\b\ze\1?//ge
|
||||
|
||||
setlocal filetype=man
|
||||
exe 'Man' page_sec[2] page_sec[1]
|
||||
" Remove empty lines above the header
|
||||
call cursor(1, 1)
|
||||
let n = search(".*(.*)", "c")
|
||||
if n > 1
|
||||
exe "1," . n-1 . "d"
|
||||
endif
|
||||
setlocal nomodified readonly
|
||||
|
||||
syntax on
|
||||
endfunction
|
||||
|
||||
Reference in New Issue
Block a user