summaryrefslogtreecommitdiffstats
path: root/runtime/plugin
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2022-06-17 15:42:40 +0100
committerBram Moolenaar <Bram@vim.org>2022-06-17 15:42:40 +0100
commitd592deb336523a5448779ee3d4bba80334cff1f7 (patch)
treefd1a7be2485c14e73f73761ee8e895efdf326338 /runtime/plugin
parent616592e0816d2d9f893fcd95e3e1e0fbc5893168 (diff)
Update runtime files
Diffstat (limited to 'runtime/plugin')
-rw-r--r--runtime/plugin/manpager.vim29
1 files changed, 21 insertions, 8 deletions
diff --git a/runtime/plugin/manpager.vim b/runtime/plugin/manpager.vim
index 6989bee494..24338ca8ae 100644
--- a/runtime/plugin/manpager.vim
+++ b/runtime/plugin/manpager.vim
@@ -1,8 +1,9 @@
" Vim plugin for using Vim as manpager.
" Maintainer: Enno Nagel <ennonagel+vim@gmail.com>
-" Last Change: 2022 Jun 05
+" Last Change: 2022 Jun 17
-command! -nargs=0 MANPAGER call s:ManPager() | delcommand MANPAGER
+" Set up the current buffer (likely read from stdin) as a manpage
+command MANPAGER call s:ManPager()
function s:ManPager()
" global options, keep these to a minimum to avoid side effects
@@ -12,11 +13,19 @@ function s:ManPager()
if exists('+viminfofile')
set viminfofile=NONE
endif
- set noswapfile
+ syntax on
- setlocal ft=man
- runtime ftplugin/man.vim
- setlocal buftype=nofile bufhidden=hide iskeyword+=: modifiable
+ " Make this an unlisted, readonly scratch buffer
+ setlocal buftype=nofile noswapfile bufhidden=hide nobuflisted readonly
+
+ " Is this useful? Should allow for using K on word with a colon.
+ setlocal iskeyword+=:
+
+ " Ensure text width matches window width
+ setlocal foldcolumn& nofoldenable nonumber norelativenumber
+
+ " In case Vim was invoked with -M
+ setlocal modifiable
" Emulate 'col -b'
silent! keepj keepp %s/\v(.)\b\ze\1?//ge
@@ -30,7 +39,11 @@ function s:ManPager()
if n > 1
exe "1," . n-1 . "d"
endif
- setlocal nomodifiable nomodified readonly nowrite
- syntax on
+ " Finished preprocessing the buffer, prevent any further modifications
+ setlocal nomodified nomodifiable
+
+ " Set filetype to man even if ftplugin is disabled
+ setlocal iskeyword+=: filetype=man
+ runtime ftplugin/man.vim
endfunction