From df39230f5886d97f617bca98865e8e459275c147 Mon Sep 17 00:00:00 2001 From: blob42 Date: Wed, 9 Nov 2022 00:17:51 +0100 Subject: [PATCH] zk + custom diagnostics filters --- lua/core/mappings.lua | 24 ++++++++++++---- lua/custom/chadrc.lua | 3 +- lua/custom/plugins/configs/gonvim.lua | 2 +- lua/custom/plugins/configs/todo-comments.lua | 1 + lua/custom/plugins/configs/zk.lua | 29 ++++++++++++++++++++ lua/custom/plugins/init.lua | 18 ++++++++++-- lua/spike/diagnostics.lua | 14 ++++++---- 7 files changed, 74 insertions(+), 17 deletions(-) create mode 100644 lua/custom/plugins/configs/zk.lua diff --git a/lua/core/mappings.lua b/lua/core/mappings.lua index 91f571e..a87d62a 100644 --- a/lua/core/mappings.lua +++ b/lua/core/mappings.lua @@ -89,10 +89,10 @@ M.general = { --{{{ ["d"] = { "DelayTrainToggle", "disable delay train" }, - ["dge"] = { " lua require'spike.diagnostics'.set_diagnostics_level(1)", "diagnostic severity level error"}, - ["dgw"] = { " lua require'spike.diagnostics'.set_diagnostics_level(2)", "diagnostic severity level warning"}, - ["dgi"] = { " lua require'spike.diagnostics'.set_diagnostics_level(3)", "diagnostic severity level info"}, - ["dgh"] = { " lua require'spike.diagnostics'.set_diagnostics_level(4)", "diagnostic severity level hint"}, + ["dge"] = { ":lua require'spike.diagnostics'.set_diagnostics_level(1)", "diagnostic severity level error"}, + ["dgw"] = { ":lua require'spike.diagnostics'.set_diagnostics_level(2)", "diagnostic severity level warning"}, + ["dgi"] = { ":lua require'spike.diagnostics'.set_diagnostics_level(3)", "diagnostic severity level info"}, + ["dgh"] = { ":lua require'spike.diagnostics'.set_diagnostics_level(4)", "diagnostic severity level hint"}, -- update nvchad -- ["uu"] = { " :NvChadUpdate ", "update nvchad" }, @@ -215,7 +215,7 @@ M.general = { --{{{ -- syntax-tree-surfer -- visual selection from nomral mode ["vm"] = { "STSSelectMasterNode", "select master node" }, - ["vn"] = { "STSSelectCurrentNode", "select master node" }, + ["vn"] = { "STSSelectCurrentNode", "select current node" }, -- normal mode swapping -- swappint up/down @@ -854,7 +854,7 @@ M.blankline = { --{{{ M.aerial = { plugin = true, n = { - [""] = { " AerialOpen right" }, + [""] = { " AerialToggle right" }, } } @@ -984,4 +984,16 @@ M.grapple = { } } +M.zk = { + plugin = true, + n = { + ["zn"] = {"ZkNew { title = vim.fn.input('Title: ') }","zk new note"}, + ["zk"] = {"ZkNotes { sort = { 'modified' }}","zk list notes"}, + ["zf"] = {"ZkNotes { sort = { 'modified' }, match = vim.fn.input('Search: ') }","zk notes matching a given query"}, + ["zl"] = {"ZkLinks","zk links"}, + ["zh"] = {"ZkBacklinks","zk backlinks"}, + + } +} + return M diff --git a/lua/custom/chadrc.lua b/lua/custom/chadrc.lua index 3a5a094..c390e59 100644 --- a/lua/custom/chadrc.lua +++ b/lua/custom/chadrc.lua @@ -165,7 +165,8 @@ M.plugins = { "vim", "guihua", "guihua_rust", - "clap_input" + "clap_input", + "markdown" } }, ["nvim-treesitter/nvim-treesitter"] = require "custom.plugins.configs.treesitter", diff --git a/lua/custom/plugins/configs/gonvim.lua b/lua/custom/plugins/configs/gonvim.lua index b8428b4..8654d92 100644 --- a/lua/custom/plugins/configs/gonvim.lua +++ b/lua/custom/plugins/configs/gonvim.lua @@ -5,7 +5,7 @@ local config = { run_in_floaterm = false, icons = false, -- icons = { breakpoint = "🧘", currentpos = "🏃" }, -- set to false to disable - lsp_cfg = false, -- handled handled instead by navigator + lsp_cfg = false, -- handled instead by navigator lsp_keymaps = false, -- use navigator -- lsp_diag_signs = false, lsp_codelens = false, -- use navigator diff --git a/lua/custom/plugins/configs/todo-comments.lua b/lua/custom/plugins/configs/todo-comments.lua index 74c3b6a..98bf200 100644 --- a/lua/custom/plugins/configs/todo-comments.lua +++ b/lua/custom/plugins/configs/todo-comments.lua @@ -23,6 +23,7 @@ local config = { default = {"#8C3AED" }, }, highlight = { + -- multiline = false, after = "fg", } } diff --git a/lua/custom/plugins/configs/zk.lua b/lua/custom/plugins/configs/zk.lua new file mode 100644 index 0000000..3460bb3 --- /dev/null +++ b/lua/custom/plugins/configs/zk.lua @@ -0,0 +1,29 @@ +local M = {} + +local opts = { + -- can be "telescope", "fzf" or "select" (`vim.ui.select`) + -- it's recommended to use "telescope" or "fzf" + picker = "select", + + lsp = { + -- `config` is passed to `vim.lsp.start_client(config)` + config = { + cmd = { "zk", "lsp" }, + name = "zk", + -- on_attach = ... + -- etc, see `:h vim.lsp.start_client()` + }, + + -- automatically attach buffers in a zk notebook that match the given filetypes + auto_attach = { + enabled = true, + filetypes = { "markdown" }, + }, + }, +} + +M.setup = function() + require("zk").setup(opts) +end + +return M diff --git a/lua/custom/plugins/init.lua b/lua/custom/plugins/init.lua index 5e672c0..f592a0a 100644 --- a/lua/custom/plugins/init.lua +++ b/lua/custom/plugins/init.lua @@ -149,6 +149,7 @@ return { -- text formatting ["folke/todo-comments.nvim"] = { -- {{{ + -- commit = "6124066", after = "nvim-treesitter", setup = function() -- require("core.lazy_load").on_file_open "todo-comments" @@ -334,8 +335,8 @@ return { -- Job management (use nvim startjob ) -- Run async commands (make & errors) - -- TODO: replace with https://github.com/skywind3000/asynctasks.vim + ["skywind3000/asyncrun.vim"] = { -- {{{ lock = true, cmd = "AsyncRun", @@ -375,6 +376,7 @@ return { }, -- session and view + ["vim-scripts/restore_view.vim"] = {}, -- TODO: check if still needed -- ["rmagatti/auto-session"] = { @@ -538,7 +540,7 @@ return { -- ['stevearc/aerial.nvim'] = { - lock = true, + -- lock = true, after = { "base46" }, keys = { "" }, cmd = { "Aerial*" }, @@ -674,7 +676,17 @@ return { }, ["kristijanhusak/vim-dadbod-ui"] = { after = {"vim-dadbod"}, - } + }, + -- zk nvim + ["mickael-menu/zk-nvim"] = { + setup = function() + require("core.utils").load_mappings "zk" + end, + config = function() + require("custom.plugins.configs.zk").setup() + end + }, + } diff --git a/lua/spike/diagnostics.lua b/lua/spike/diagnostics.lua index 3e5c13a..14f594d 100644 --- a/lua/spike/diagnostics.lua +++ b/lua/spike/diagnostics.lua @@ -21,7 +21,7 @@ local filter_diagnostics = function(diagnostics, level) local filtered_diag = {} for _, d in ipairs(diagnostics) do if d.severity <= level then - table.insert(filtered_diag, 0, d) + table.insert(filtered_diag, 1, d) end end return filtered_diag @@ -29,10 +29,8 @@ end --NOTE: apply diagnostics filter to current buffer / all buffers M.set_diagnostics_level = function(level) - -- hide all diagnostics - vim.diagnostic.hide(nil, 0) - -- vim.diagnostic.reset() + vim.diagnostic.handlers.virtual_text = { show = function(_, bufnr, _, opts) -- get all diagnostics for local buffer @@ -46,10 +44,14 @@ M.set_diagnostics_level = function(level) end } - local diags = vim.diagnostic.get(0) + bufnr = vim.api.nvim_get_current_buf() + -- hide all diagnostics + vim.diagnostic.hide(nil, bufnr) + + local diags = vim.diagnostic.get(bufnr) if #diags > 0 then filtered = filter_diagnostics(diags, level) - vim.diagnostic.show(ns, 0, filtered) + vim.diagnostic.show(ns, bufnr, filtered) end end