From 0373234cc9bde1197449dfe9db6a7c4afb08001d Mon Sep 17 00:00:00 2001 From: Pratik Tripathy Date: Mon, 1 Sep 2025 11:57:05 +0530 Subject: [PATCH] feat(neovim): Markdown-oxide configured - Makes the Obsidian-like markdown work in Neovim --- .../.config/nvim/after/ftplugin/markdown.lua | 21 +++++++++++++++++++ common/.config/nvim/lsp/markdown_oxide.lua | 14 +++++++++++++ 2 files changed, 35 insertions(+) create mode 100644 common/.config/nvim/lsp/markdown_oxide.lua diff --git a/common/.config/nvim/after/ftplugin/markdown.lua b/common/.config/nvim/after/ftplugin/markdown.lua index a01a971..ffc28f0 100644 --- a/common/.config/nvim/after/ftplugin/markdown.lua +++ b/common/.config/nvim/after/ftplugin/markdown.lua @@ -1 +1,22 @@ require("shared.text_settings").setup() + +local function check_codelens_support() + local clients = vim.lsp.get_active_clients({ bufnr = 0 }) + for _, c in ipairs(clients) do + if c.server_capabilities.codeLensProvider then + return true + end + end + return false +end + +vim.api.nvim_create_autocmd({ "TextChanged", "InsertLeave", "CursorHold", "LspAttach", "BufEnter" }, { + buffer = bufnr, + callback = function() + if check_codelens_support() then + vim.lsp.codelens.refresh({ bufnr = 0 }) + end + end, +}) +-- trigger codelens refresh +vim.api.nvim_exec_autocmds("User", { pattern = "LspAttached" }) diff --git a/common/.config/nvim/lsp/markdown_oxide.lua b/common/.config/nvim/lsp/markdown_oxide.lua new file mode 100644 index 0000000..118f70f --- /dev/null +++ b/common/.config/nvim/lsp/markdown_oxide.lua @@ -0,0 +1,14 @@ +return { + cmd = { "markdown-oxide" }, + filetypes = { "markdown" }, + root_dir = function() + return vim.fn.getcwd() + end, + settings = { + workspace = { + didChangeWatchedFiles = { + dynamicRegistration = true, + }, + }, + }, +}