mirror of
https://github.com/neovim/neovim.git
synced 2024-12-25 13:45:15 -07:00
35 lines
791 B
Lua
35 lines
791 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,
|
||
|
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,
|
||
|
})
|