summaryrefslogtreecommitdiff
path: root/lua/config/plugins/notes.lua
blob: a76271e0307e6689746b5a98e2bb809318e581bc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
return {
  {
    "zk-org/zk-nvim",
    config = function()
      require("zk").setup({
        picker = "telescope",
        lsp = {
          config = {
            cmd = { "zk", "lsp" },
            name = "zk",
          },
          auto_attach = {
            enabled = true,
            filetypes = { "markdown" },
          },
        },
      })

      vim.keymap.set("n", "<Leader>zn", "<CMD>ZkNew { title = vim.fn.input('Title: ') }<CR>",
        { noremap = true, silent = false, desc = "Create a new note after asking for its title." })

      vim.keymap.set("n", "<Leader>zo", "<CMD>ZkNotes { sort = { 'modified' } }<CR>",
        { noremap = true, silent = false, desc = "Open notes." })
      vim.keymap.set("n", "<Leader>zt", "<CMD>ZkTags<CR>",
        { noremap = true, silent = false, desc = "Open notes associated with the selected tags." })

      vim.keymap.set("n", "<Leader>zf",
        "<CMD>ZkNotes { sort = { 'modified' }, match = { vim.fn.input('Search: ') } }<CR>",
        { noremap = true, silent = false, desc = "Search for the notes matching a given query." })
      vim.keymap.set("v", "<Leader>zf", ":'<,'>ZkMatch<CR>",
        { noremap = true, silent = false, desc = "Search for the notes matching the current visual selection." })
    end
  },

  -- Plugin to improve viewing Markdown files in Neovim
  {
    "MeanderingProgrammer/render-markdown.nvim",
    dependencies = { "nvim-treesitter/nvim-treesitter", "nvim-tree/nvim-web-devicons" },
    opts = {},
    config = function()
      local min_width = 80
      require("render-markdown").setup({
        code = {
          position = "right",
          width = "block",
          border = "thick",
          language_pad = 1,
          min_width = min_width,
          left_pad = 1,
          right_pad = 1,
        },
        completions = { lsp = { enabled = true } },
        dash = {
          width = min_width,
        },
        heading = {
          width = "block",
          min_width = min_width,
        },
      })
    end,
  },
}