From a3bec7841215098ca4492a2a38336be76e7fbf4c Mon Sep 17 00:00:00 2001 From: Moxie Date: Mon, 16 Mar 2026 00:08:55 +0200 Subject: chore: update readme/docs --- doc/muwiki.txt | 43 ++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 42 insertions(+), 1 deletion(-) (limited to 'doc/muwiki.txt') 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', '', 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* -- cgit v1.2.3