{ config, lib, ... }: let inherit (config.myvim.mkKey) wKeyObj; inherit (lib.nixvim) mkRaw; in { plugins = { img-clip.enable = true; markdown-preview.enable = true; render-markdown.enable = true; mkdnflow = { enable = true; settings = { to_do.symbols = [ " " "⧖" "x" ]; mappings = { MkdnEnter = { key = ""; modes = [ "n" "i" ]; }; MkdnToggleToDo = { key = ""; modes = [ "n" "i" ]; }; }; }; }; glow = { enable = true; lazyLoad.settings = { ft = "markdown"; cmd = "Glow"; }; }; }; autoCmd = [ { desc = "Setup Markdown mappings"; event = "Filetype"; pattern = "markdown"; callback = # lua mkRaw '' function() -- Set keymap: p to save and convert to PDF using pandoc vim.api.nvim_buf_set_keymap(0, 'n', 'pg', 'Glow', { desc = "Markdown Glow preview", noremap = true, silent = true }) vim.api.nvim_buf_set_keymap(0, 'n', 'pb', 'MarkdownPreview', { desc = "Markdown Browser Preview", noremap = true, silent = true }) vim.api.nvim_buf_set_keymap(0, 'n', 'pp', ' lua require("md-pdf").convert_md_to_pdf()', { desc = "Markdown Print pdf", noremap = true, silent = true }) end ''; } ]; wKeyList = [ (wKeyObj [ "p" "" "preview" ]) ]; }