diff options
Diffstat (limited to 'doc')
| -rw-r--r-- | doc/muwiki.txt | 43 |
1 files changed, 42 insertions, 1 deletions
diff --git a/doc/muwiki.txt b/doc/muwiki.txt index c22acb1..92750ae 100644 --- a/doc/muwiki.txt +++ b/doc/muwiki.txt @@ -38,7 +38,7 @@ It provides: Using vim.pack (Neovim 0.12+)~ > vim.pack.add({ - { src = "https://git.3kgcat.fi/muwiki.nvim" } + { src = "https://git.3kgcat.fi/muwiki.nvim", name = "muwiki" } }) < @@ -229,6 +229,47 @@ Open with menu example~ *muwiki-au }) < +Custom open handler using get_link()~ *muwiki-autocmd-custom-open* +> + vim.api.nvim_create_autocmd("FileType", { + pattern = "markdown", + callback = function(args) + if not muwiki.wiki_root(args.buf) then return end + vim.keymap.set('n', '<CR>', function() + local link = muwiki.get_link() + if not link then + vim.notify('No link under cursor', vim.log.levels.WARN) + return + end + + -- Custom logic based on link type + if link.type == 'web' then + vim.system({ 'xdg-open', link.target }, { detach = true }) + elseif link.type == 'file' then + local ext = link.target:match('%.([^%.]+)$') + if ext == 'png' or ext == 'jpg' or ext == 'jpeg' or ext == 'gif' or ext == 'webp' then + vim.system({ 'swayimg', link.target }, { detach = true }) + elseif ext == 'mp4' or ext == 'mkv' or ext == 'avi' or ext == 'mov' or ext == 'webm' then + vim.system({ 'mpv', link.target }, { detach = true }) + elseif ext == 'pdf' then + vim.system({ 'zathura', link.target }, { detach = true }) + else + -- Open in Neovim for other file types + local utils = require('muwiki.utils') + local file_path = utils.resolve(link.target, nil) + vim.cmd('edit ' .. vim.fn.fnameescape(file_path)) + end + else + -- Wiki link: open in Neovim + local utils = require('muwiki.utils') + local file_path = utils.resolve(link.target, nil) + vim.cmd('edit ' .. vim.fn.fnameescape(file_path)) + end + end, { buffer = args.buf, desc = "Open link (custom handler)" }) + end, + }) +< + ============================================================================== 8. HEALTH CHECK *muwiki-health* |
