neovim/runtime/plugin/man.lua
zeertzjq 3320c3a322 fix(man): make :Man with a range work
(cherry picked from commit e41309c3b6)
2023-11-07 02:39:45 +00:00

36 lines
807 B
Lua

if vim.g.loaded_man ~= nil then
return
end
vim.g.loaded_man = true
vim.api.nvim_create_user_command('Man', function(params)
local man = require('man')
if params.bang then
man.init_pager()
else
local ok, err = pcall(man.open_page, params.count, params.smods, params.fargs)
if not ok then
vim.notify(man.errormsg or err, vim.log.levels.ERROR)
end
end
end, {
bang = true,
bar = true,
range = true,
addr = 'other',
nargs = '*',
complete = function(...)
return require('man').man_complete(...)
end,
})
local augroup = vim.api.nvim_create_augroup('man', {})
vim.api.nvim_create_autocmd('BufReadCmd', {
group = augroup,
pattern = 'man://*',
callback = function(params)
require('man').read_page(vim.fn.matchstr(params.match, 'man://\\zs.*'))
end,
})