diff options
Diffstat (limited to '.vim/lua/internal/plugins/zk.lua')
| -rw-r--r-- | .vim/lua/internal/plugins/zk.lua | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/.vim/lua/internal/plugins/zk.lua b/.vim/lua/internal/plugins/zk.lua new file mode 100644 index 0000000..76cbcb3 --- /dev/null +++ b/.vim/lua/internal/plugins/zk.lua @@ -0,0 +1,35 @@ +return { + { + lazy = false, + 'zk-org/zk-nvim', + main = 'zk', + opts = { + picker = 'telescope', + }, + keys = { + -- these will work everywhere + { ';zc', ':ZkNew ' }, + { ';zz', '<cmd>ZkNotes {sort={"modified"}}<cr>' }, + { ';zl', '<cmd>ZkLinks<cr>' }, + { ';zb', '<cmd>ZkBacklinks<cr>' }, + { ';zt', '<cmd>ZkTags<cr>' }, + -- { ';zj', '<cmd>ZkNotes { dir = "500_journals" }<cr>' }, + }, + init = function() + if not vim.env.ZK_NOTEBOOK_DIR then + return + end + vim.api.nvim_create_autocmd({ 'BufEnter' }, { + pattern = vim.env.ZK_NOTEBOOK_DIR .. '/*', + callback = function() + local o = { remap = true, silent = false, buffer = true } + -- these will only work in a zettel + vim.keymap.set('n', '-', ':call feedkeys(";zz")<cr>', o) + vim.keymap.set('n', '<cr>', '<cmd>lua vim.lsp.buf.definition()<cr>', o) + end, + group = vim.api.nvim_create_augroup('zk-binds', { clear = true }), + once = true, + }) + end, + }, +} |