From 464e342e58ca3863600cb9bc9e126dfcfc996de2 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Wed, 5 Feb 2025 21:01:20 +0200 Subject: [PATCH] Add obsidian support --- lazy-lock.json | 43 +++++++++++++----------- lua/config/autocmds.lua | 20 ++++++++++++ lua/plugins/blink.lua | 32 +++++++++++++++--- lua/plugins/image.lua | 3 +- lua/plugins/jupynium.lua | 23 +++++++++++++ lua/plugins/lspconfig.lua | 33 ++++++------------- lua/plugins/markdown.lua | 5 +++ lua/plugins/nvim-lint.lua | 1 - lua/plugins/obsidian.lua | 56 ++++++++++++++++++++++++++++++++ lua/plugins/typescript-tools.lua | 5 +-- 10 files changed, 170 insertions(+), 51 deletions(-) create mode 100644 lua/plugins/jupynium.lua create mode 100644 lua/plugins/obsidian.lua diff --git a/lazy-lock.json b/lazy-lock.json index b9e807b..56a78e7 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -3,7 +3,7 @@ "FixCursorHold.nvim": { "branch": "master", "commit": "1900f89dc17c603eec29960f57c00bd9ae696495" }, "LuaSnip": { "branch": "master", "commit": "03c8e67eb7293c404845b3982db895d59c0d1538" }, "bigfile.nvim": { "branch": "main", "commit": "33eb067e3d7029ac77e081cfe7c45361887a311a" }, - "blink-cmp-git": { "branch": "master", "commit": "0a317c416e2cddd29a24f5ebc826b69e6971dd66" }, + "blink-cmp-git": { "branch": "master", "commit": "599580d33b4034db4fb071615f7c6777da9a5b25" }, "blink-emoji.nvim": { "branch": "master", "commit": "81e6c080d1e64c9ef548534c51147fd8063481c8" }, "blink-ripgrep.nvim": { "branch": "main", "commit": "519ac7894113f6a7b517b157c26e31fbd58a0de5" }, "blink.cmp": { "branch": "main", "commit": "b6f11a0aa33e601c469a126e3ed6e35208fe3ea3" }, @@ -14,16 +14,15 @@ "cheatsheet.nvim": { "branch": "master", "commit": "8ee4d76b6f902c4017dc28eddd79d925dfc55066" }, "cloak.nvim": { "branch": "main", "commit": "648aca6d33ec011dc3166e7af3b38820d01a71e4" }, "cmake-tools.nvim": { "branch": "master", "commit": "83268ea6f969f1e6eaa85f72118a11acb6198bf0" }, - "cmp-conventionalcommits": { "branch": "master", "commit": "a4dfacf0601130b7f8afa7c948d735c27802fb7f" }, "cmp-dbee": { "branch": "main", "commit": "1650f67b9bf43c029fc37570665ca895a33cdf5a" }, "code-playground.nvim": { "branch": "main", "commit": "7b257911268ecf7ee11d6fe806193bda2c889e86" }, "conform.nvim": { "branch": "master", "commit": "363243c03102a531a8203311d4f2ae704c620d9b" }, "crates.nvim": { "branch": "main", "commit": "1c924d5a9ea3496c4e1a02d0d51388ba809f8468" }, "cratesearch.nvim": { "branch": "master", "commit": "9d09625d017f6b2e116503f935bc6862961313fa" }, - "csvview.nvim": { "branch": "main", "commit": "092fada3e43b61fe7573bf439e1bc92f1e304f2b" }, + "csvview.nvim": { "branch": "main", "commit": "22eb36a8d17b15bdb0d934381198089bad1e4b7d" }, "darkplus.nvim": { "branch": "master", "commit": "c7fff5ce62406121fc6c9e4746f118b2b2499c4c" }, "darkvoid.nvim": { "branch": "master", "commit": "45be993a5617e05811b6b293c05e6aded7003cc9" }, - "demicolon.nvim": { "branch": "main", "commit": "dfe95389643b0cae4bb897b7ffcb0fc45edf999d" }, + "demicolon.nvim": { "branch": "main", "commit": "eed33fc75e7af0aacd283c613d4500b188d62169" }, "diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" }, "dracula.nvim": { "branch": "main", "commit": "515acae4fd294fcefa5b15237a333c2606e958d1" }, "flow.nvim": { "branch": "main", "commit": "d8b2bc1a76325361fdbb2cdadbfe242d24370edd" }, @@ -31,18 +30,21 @@ "gh.nvim": { "branch": "main", "commit": "6f367b2ab8f9d4a0a23df2b703a3f91137618387" }, "gitignore.nvim": { "branch": "master", "commit": "2455191ec94da8ed222806a4fe3aa358eac1e558" }, "gitpad.nvim": { "branch": "main", "commit": "1e0f6fa335c72c05d1d3635120c572e198e5ae0d" }, - "gitsigns.nvim": { "branch": "main", "commit": "9b36d497495436c135659902054ee637e0ba6021" }, - "gruvbox.nvim": { "branch": "main", "commit": "68c3460a5d1d1a362318960035c9f3466d5011f5" }, + "gitsigns.nvim": { "branch": "main", "commit": "9772ce68a9a6d156f3f2166bfd0a17a09ab37eba" }, + "gruvbox.nvim": { "branch": "main", "commit": "089b60e92aa0a1c6fa76ff527837cd35b6f5ac81" }, "hardtime.nvim": { "branch": "main", "commit": "5d9adcbe2f12741de79e435c8b85dca69a3b22e4" }, "harpoon": { "branch": "harpoon2", "commit": "a84ab829eaf3678b586609888ef52f7779102263" }, "harpoon-lualine": { "branch": "master", "commit": "eae10bc6bddddbc73daa0956ba4ee5cc29cf9a49" }, + "hererocks": { "branch": "master", "commit": "c9c5444dea1e07e005484014a8231aa667be30b6" }, "http-codes.nvim": { "branch": "main", "commit": "a610788dff2fb5df05b230d73a926c8dc3173c16" }, "hypersonic.nvim": { "branch": "main", "commit": "734dfbfbe51952f102a9b439d53d4267bb0024cd" }, - "image.nvim": { "branch": "master", "commit": "b991fc7f845bc6ab40c6ec00b39750dcd5190010" }, + "image.nvim": { "branch": "master", "commit": "6ffafab2e98b5bda46bf227055aa84b90add8cdc" }, "indent-blankline.nvim": { "branch": "master", "commit": "7a698a1d7ed755af9f5a88733b23ca246ce2df28" }, "inlay-hint.nvim": { "branch": "main", "commit": "eb5f0579537db271dfedd7f38460cdacb238176f" }, "inlay-hints.nvim": { "branch": "master", "commit": "3259b54f3b954b4d8260f3ee49ceabe978ea5636" }, "jq.nvim": { "branch": "main", "commit": "3a736044a9ff4d2b39919c43e66c8148ce85b6a5" }, + "jupynium.nvim": { "branch": "master", "commit": "b0b71577c6e4a613b6a4180068dd0b2de0659e52" }, + "jupytext.nvim": { "branch": "master", "commit": "2e86acfa4345f611c86f57116db0c06ffecb721d" }, "kanagawa.nvim": { "branch": "master", "commit": "988082eb00b845e4afbcaa4fd8e903da8a3ab3b9" }, "lackluster.nvim": { "branch": "main", "commit": "662fba7e6719b7afc155076385c00d79290bc347" }, "lazy.nvim": { "branch": "main", "commit": "7527af40ddd4a93a02911be570b32609b9d4ea53" }, @@ -53,7 +55,7 @@ "lualine-lsp-status": { "branch": "main", "commit": "1218d51d4d0b8881a598a77e5d9f334ac31c6cc7" }, "lualine.nvim": { "branch": "master", "commit": "2a5bae925481f999263d6f5ed8361baef8df4f83" }, "luarocks.nvim": { "branch": "main", "commit": "1db9093915eb16ba2473cfb8d343ace5ee04130a" }, - "markdown-table-mode.nvim": { "branch": "main", "commit": "27d59c63c5520ebd8382be0946f6ead7dbc31b57" }, + "markdown-table-mode.nvim": { "branch": "main", "commit": "fe207ea7cef615ccaf2c0f1257c58ffa0a50a9f5" }, "markdown-togglecheck": { "branch": "main", "commit": "5e9ee3184109a102952c01ef816babe8835b299a" }, "markdown.nvim": { "branch": "master", "commit": "dfa0d2def6dbf77e9206b16dc90cad4dd23d55d2" }, "mason-lspconfig.nvim": { "branch": "main", "commit": "f75e877f5266e87523eb5a18fcde2081820d087b" }, @@ -61,7 +63,7 @@ "mason.nvim": { "branch": "main", "commit": "e2f7f9044ec30067bc11800a9e266664b88cda22" }, "melange.nvim": { "branch": "master", "commit": "2db5407f2f6d6d6286f50f2f7365728d66f6f3ae" }, "mini.icons": { "branch": "main", "commit": "ec61af6e606fc89ee3b1d8f2f20166a3ca917a36" }, - "neoconf.nvim": { "branch": "main", "commit": "ddd37d70db79ecce1d88055b43adee70e9df56bc" }, + "neoconf.nvim": { "branch": "main", "commit": "95b46f16b7bddc1278de8b4379121ed9e4e4a725" }, "neocord": { "branch": "main", "commit": "4d55d8dab2d5f2f272192add7a2c21982039c699" }, "neogen": { "branch": "main", "commit": "b2e78708876f4da507839726816010a68e33fec8" }, "neogit": { "branch": "master", "commit": "43fa47fb61773b0d90a78ebc2521ea8faaeebd86" }, @@ -71,29 +73,31 @@ "neotest-gtest": { "branch": "main", "commit": "16989561a6356878ec4ecd6afed4f0d7a471d1db" }, "neotest-python": { "branch": "master", "commit": "a2861ab3c9a0bf75a56b11835c2bfc8270f5be7e" }, "neotest-vim-test": { "branch": "master", "commit": "75c4228882ae4883b11bfce9b8383e637eb44192" }, - "nightfly.nvim": { "branch": "master", "commit": "58488be269a1f29819ce4b34f319269f11fe86b9" }, + "nightfly.nvim": { "branch": "master", "commit": "4ce84530dfd296a31a6c7d318fdd9dcbde8e11f1" }, "nightfox.nvim": { "branch": "main", "commit": "595ffb8f291fc4a9bef3201a28b7c0379a41cdee" }, "nui-components.nvim": { "branch": "main", "commit": "caecfe2089e5ffbe99c2b0e0468da91990263a90" }, "nui.nvim": { "branch": "main", "commit": "53e907ffe5eedebdca1cd503b00aa8692068ca46" }, "nvim-autopairs": { "branch": "master", "commit": "3d02855468f94bf435db41b661b58ec4f48a06b7" }, "nvim-colorizer.lua": { "branch": "master", "commit": "9b5fe0450bfb2521c6cea29391e5ec571f129136" }, - "nvim-dap": { "branch": "master", "commit": "b4f27d451c187de912fa8d3229025a952917eb9e" }, + "nvim-dap": { "branch": "master", "commit": "12b846bedbc7221e833b5e6611de21917d7d9184" }, "nvim-dap-python": { "branch": "master", "commit": "34282820bb713b9a5fdb120ae8dd85c2b3f49b51" }, "nvim-dap-ui": { "branch": "master", "commit": "bc81f8d3440aede116f821114547a476b082b319" }, "nvim-dap-virtual-text": { "branch": "master", "commit": "df66808cd78b5a97576bbaeee95ed5ca385a9750" }, - "nvim-dbee": { "branch": "master", "commit": "495f6f718ccfb98eba51c7998e30f3f3ea6e95e1" }, + "nvim-dbee": { "branch": "master", "commit": "f9aa10f113ae439ef20c6d8b91b27dab93274360" }, "nvim-lint": { "branch": "master", "commit": "789b7ada1b4f00e08d026dffde410dcfa6a0ba87" }, - "nvim-lspconfig": { "branch": "master", "commit": "ead2fbc4893fdd062e1dd0842679a48bfb7bac5c" }, + "nvim-lspconfig": { "branch": "master", "commit": "66bc018936c6ff76beb75f89d986af6442db4001" }, "nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" }, + "nvim-notify": { "branch": "master", "commit": "22f29093eae7785773ee9d543f8750348b1a195c" }, "nvim-silicon": { "branch": "main", "commit": "7f66bda8f60c97a5bf4b37e5b8acb0e829ae3c32" }, "nvim-surround": { "branch": "main", "commit": "ae298105122c87bbe0a36b1ad20b06d417c0433e" }, - "nvim-treesitter": { "branch": "master", "commit": "bcd0b26607c1a4336c392285a9f13e31f514ccf2" }, - "nvim-treesitter-context": { "branch": "master", "commit": "bece284c5322ddf6946fa4bdc383a2bc033269d7" }, + "nvim-treesitter": { "branch": "master", "commit": "9e0b5e7f0d148963d6ec71c48cec1a3f8607d619" }, + "nvim-treesitter-context": { "branch": "master", "commit": "9a49f43a2ec9bf77aecfb0fcbc43af43338375c0" }, "nvim-treesitter-textobjects": { "branch": "master", "commit": "ad8f0a472148c3e0ae9851e26a722ee4e29b1595" }, "nvim-ts-autotag": { "branch": "main", "commit": "1cca23c9da708047922d3895a71032bc0449c52d" }, "nvim-ts-context-commentstring": { "branch": "main", "commit": "1b212c2eee76d787bbea6aa5e92a2b534e7b4f8f" }, "nvim-ufo": { "branch": "main", "commit": "81f5ffa6e8ba27c48403cf681d4b383d924e03e4" }, "nvim-web-devicons": { "branch": "master", "commit": "402377242b04be3f4f0f3720bd952df86e946c30" }, + "obsidian.nvim": { "branch": "main", "commit": "ae1f76a75c7ce36866e1d9342a8f6f5b9c2caf9b" }, "oil.nvim": { "branch": "master", "commit": "ba858b662599eab8ef1cba9ab745afded99cb180" }, "onedark.nvim": { "branch": "master", "commit": "67a74c275d1116d575ab25485d1bfa6b2a9c38a6" }, "otter.nvim": { "branch": "main", "commit": "e8c662e1aefa8b483cfba6e00729a39a363dcecc" }, @@ -106,8 +110,9 @@ "pymple.nvim": { "branch": "main", "commit": "110cc9499b89f2b7230a0c3a7332b3e4b1ac5b7b" }, "rainbow-delimiters.nvim": { "branch": "master", "commit": "cf0da2516b0684596b09c51dbc93c609cdc2f455" }, "rainbow_csv.nvim": { "branch": "main", "commit": "7f3fddfe813641035fac2cdf94c2ff69bb0bf0b9" }, - "rose-pine.nvim": { "branch": "main", "commit": "42f0724e0bca9f57f0bcfa688787c37b8d4befe8" }, - "rustaceanvim": { "branch": "master", "commit": "66d688fc6934dde2f1c4b0139682fe7b3935f154" }, + "render-markdown.nvim": { "branch": "main", "commit": "2a9e0ab6043bfb4996ce6a6a35594ab357e5d299" }, + "rose-pine.nvim": { "branch": "main", "commit": "00ec4cec924b624920baac9d42eac02e1efcae76" }, + "rustaceanvim": { "branch": "master", "commit": "f03035fa03ccb36cd26d0792c946fbacba1d1a39" }, "spellwarn.nvim": { "branch": "main", "commit": "12734b47b008d912b4925c0bc2c1248eb534409d" }, "tagbar": { "branch": "master", "commit": "8de7694c0aeda253073098bbc9fb890b2902ddb8" }, "tailwind-fold.nvim": { "branch": "main", "commit": "30b8c04eec28628fbe554fb4f3a26984c4455176" }, @@ -132,7 +137,7 @@ "ts-comments.nvim": { "branch": "main", "commit": "872dcfa0418f4a33b7437fb4d9f4e89f2f000d74" }, "ts-error-translator.nvim": { "branch": "main", "commit": "47e5ba89f71b9e6c72eaaaaa519dd59bd6897df4" }, "twilight.nvim": { "branch": "main", "commit": "1584c0b0a979b71fd86b18d302ba84e9aba85b1b" }, - "typecheck.nvim": { "branch": "main", "commit": "38f3c135572a287f468bae269f956f4ba53dbddf" }, + "typecheck.nvim": { "branch": "main", "commit": "5a0b0f50be009e85c337f3e183fa6cd28a3c95a0" }, "typescript-tools.nvim": { "branch": "master", "commit": "35e397ce467bedbbbb5bfcd0aa79727b59a08d4a" }, "typst-preview.nvim": { "branch": "master", "commit": "c1100e8788baabe8ca8f8cd7fd63d3d479e49e36" }, "undotree": { "branch": "master", "commit": "2556c6800b210b2096b55b66e74b4cc1d9ebbe4f" }, @@ -141,7 +146,7 @@ "vim-illuminate": { "branch": "master", "commit": "5eeb7951fc630682c322e88a9bbdae5c224ff0aa" }, "vim-log-highlighting": { "branch": "master", "commit": "1037e26f3120e6a6a2c0c33b14a84336dee2a78f" }, "vim-tmux-navigator": { "branch": "master", "commit": "d847ea942a5bb4d4fab6efebc9f30d787fd96e65" }, - "vimtex": { "branch": "master", "commit": "3a9f47ce6e42c4a3c9a92a254f1f611a8d374fc9" }, + "vimtex": { "branch": "master", "commit": "dfaf26c2cafddf61963ebeff28437352002691ac" }, "which-key.nvim": { "branch": "main", "commit": "b74a3c85f03225bc91f4f5a9056518d3fa9a3470" }, "yuck.vim": { "branch": "master", "commit": "9b5e0370f70cc30383e1dabd6c215475915fe5c3" }, "zen-mode.nvim": { "branch": "main", "commit": "863f150ca321b3dd8aa1a2b69b5f411a220e144f" } diff --git a/lua/config/autocmds.lua b/lua/config/autocmds.lua index 6fe9e65..4138c62 100644 --- a/lua/config/autocmds.lua +++ b/lua/config/autocmds.lua @@ -79,12 +79,32 @@ vim.api.nvim_create_autocmd({ "BufWinEnter" }, { end, }) ]] +vim.api.nvim_create_autocmd({ "BufWritePost" }, { + group = vim.api.nvim_create_augroup("AutoReloadConfig", { clear = true }), + pattern = { "**/eww.yuck", "**/eww.scss" }, + callback = function() + vim.fn.system("eww reload") + end, +}) + vim.filetype.add({ pattern = { [".*/hypr/.*%.conf"] = "hyprlang", }, }) +-- Hyprlang LSP +vim.api.nvim_create_autocmd({ "BufEnter", "BufWinEnter" }, { + pattern = { "*.hl", "hypr*.conf" }, + callback = function(_) + vim.lsp.start({ + name = "hyprlang", + cmd = { "hyprls" }, + root_dir = vim.fn.getcwd(), + }) + end, +}) + vim.api.nvim_create_autocmd({ "VimEnter" }, { callback = function() if vim.env.TMUX_PLUGIN_MANAGER_PATH then diff --git a/lua/plugins/blink.lua b/lua/plugins/blink.lua index b33935f..07cc147 100644 --- a/lua/plugins/blink.lua +++ b/lua/plugins/blink.lua @@ -5,8 +5,10 @@ return { "folke/lazydev.nvim", "echasnovski/mini.icons", { "L3MON4D3/LuaSnip", version = "v2.*" }, - "Saecki/crates.nvim", - "davidsierradz/cmp-conventionalcommits", + { + "Saecki/crates.nvim", + event = { "BufRead Cargo.toml" }, + }, { "Kaiser-Yang/blink-cmp-git", dependencies = { "nvim-lua/plenary.nvim" }, @@ -21,6 +23,14 @@ return { ft = { "sql", "mysql", "plsql" }, opts = {}, }, + { + "epwalsh/obsidian.nvim", + event = "BufReadPre " .. vim.fn.expand("~") .. "/Obsidian/**/*.md", + }, + { + "kiyoon/jupynium.nvim", + event = "BufReadPre *.ju.py", + }, }, version = "*", opts = { @@ -64,6 +74,9 @@ return { "dbee", "snippets", "ripgrep", + "obsidian", + "markdown", + "jupynium", }, providers = { lazydev = { @@ -81,6 +94,17 @@ return { module = "blink.compat.source", score_offset = 50, }, + obsidian = { + name = "obsidian", + module = "blink.compat.source", + score_offset = 10, + }, + markdown = { + name = "RenderMarkdown", + module = "render-markdown.integ.blink", + score_offset = 10, + fallbacks = { "lsp" }, + }, ripgrep = { module = "blink-ripgrep", name = "Ripgrep", @@ -103,7 +127,7 @@ return { jupynium = { name = "jupynium", module = "blink.compat.source", - score_offset = 100, + score_offset = 1000, }, git = { score_offset = 100, @@ -113,7 +137,7 @@ return { should_show_items = function() return vim.o.filetype == "gitcommit" or vim.o.filetype == "markdown" end, - -- opts = {}, + opts = {}, }, }, }, diff --git a/lua/plugins/image.lua b/lua/plugins/image.lua index 1688923..9f424da 100644 --- a/lua/plugins/image.lua +++ b/lua/plugins/image.lua @@ -1,8 +1,7 @@ return { "3rd/image.nvim", - enabled = false, opts = { - backend = "ueberzug", + backend = "kitty", processor = "magick_rock", -- or "magick_cli" integrations = { markdown = { diff --git a/lua/plugins/jupynium.lua b/lua/plugins/jupynium.lua new file mode 100644 index 0000000..68445b0 --- /dev/null +++ b/lua/plugins/jupynium.lua @@ -0,0 +1,23 @@ +return { + { + "kiyoon/jupynium.nvim", + dependencies = { + "rcarriga/nvim-notify", -- optional + -- "stevearc/dressing.nvim", -- optional, UI for :JupyniumKernelSelect + }, + build = "uv tool install .", + event = "BufReadPre *.ju.py", + opts = { + python_host = { "uvx", "jupynium", "python" }, + }, + config = function(_, opts) + require("jupynium").setup(opts) + require("jupynium").get_folds() + end, + }, + { + "goerz/jupytext.nvim", + version = "*", + opts = {}, + }, +} diff --git a/lua/plugins/lspconfig.lua b/lua/plugins/lspconfig.lua index 62ee4e8..01438c1 100644 --- a/lua/plugins/lspconfig.lua +++ b/lua/plugins/lspconfig.lua @@ -26,12 +26,6 @@ return { }) end - for server, config in pairs(opts.servers) do - local capabilities = require("blink.cmp").get_lsp_capabilities(config.capabilities) - config.capabilities = extend_capabilities(capabilities) - lspconfig[server].setup(config) - end - local default_setup = function(server) local capabilities = require("blink.cmp").get_lsp_capabilities() lspconfig[server].setup({ @@ -136,7 +130,7 @@ return { "clangd", "cmake", "cssls", - "emmet_ls", + "emmet_language_server", "html", -- "jedi_language_server", "lua_ls", @@ -150,6 +144,12 @@ return { ts_ls = function() end, }, }) + + for server, config in pairs(opts.servers) do + local capabilities = require("blink.cmp").get_lsp_capabilities(config.capabilities) + config.capabilities = extend_capabilities(capabilities) + lspconfig[server].setup(config) + end end, opts = { @@ -228,19 +228,6 @@ return { "zsh", }, }, - emmet_ls = { - filetypes = { - "html", - "htmldjango", - "typescriptreact", - "javascriptreact", - "css", - "sass", - "scss", - "less", - "eruby", - }, - }, texlab = { texlab = { auxDirectory = ".", @@ -266,9 +253,9 @@ return { }, }, }, - htmx = { - filetypes = { "html", "htmldjango", "templ" }, - }, + -- htmx = { + -- filetypes = { "html", "htmldjango", "templ" }, + -- }, --[[ pylyzer = { settings = { python = { diff --git a/lua/plugins/markdown.lua b/lua/plugins/markdown.lua index 8c0a362..6d2dc64 100644 --- a/lua/plugins/markdown.lua +++ b/lua/plugins/markdown.lua @@ -93,4 +93,9 @@ return { }, }, }, + { + "MeanderingProgrammer/render-markdown.nvim", + dependencies = { "nvim-treesitter/nvim-treesitter", "echasnovski/mini.icons" }, + opts = {}, + }, } diff --git a/lua/plugins/nvim-lint.lua b/lua/plugins/nvim-lint.lua index ad33dc3..d3f092d 100644 --- a/lua/plugins/nvim-lint.lua +++ b/lua/plugins/nvim-lint.lua @@ -10,7 +10,6 @@ return { typescriptreact = js, python = { "mypy" }, htmldjango = { "djlint" }, - html = { "djlint" }, lua = { "selene" }, cmake = { "cmakelint" }, ["*"] = { "codespell", "typos" }, diff --git a/lua/plugins/obsidian.lua b/lua/plugins/obsidian.lua new file mode 100644 index 0000000..ada5f0d --- /dev/null +++ b/lua/plugins/obsidian.lua @@ -0,0 +1,56 @@ +return { + "epwalsh/obsidian.nvim", + version = "*", + lazy = true, + event = "BufReadPre " .. vim.fn.expand("~") .. "/Obsidian/**/*.md", + dependencies = { + "nvim-lua/plenary.nvim", + "nvim-telescope/telescope.nvim", + "nvim-treesitter/nvim-treesitter", + }, + opts = { + workspaces = { + { + name = "university", + path = "~/Obsidian/university", + }, + { + name = "personal", + path = "~/Obsidian/personal", + }, + { + name = "work", + path = "~/Obsidian/work", + }, + }, + templates = { + folder = "templates", + date_format = "%Y-%m-%d", + time_format = "%H:%M:%S", + }, + attachments = { + -- The default folder to place images in via `:ObsidianPasteImg`. + -- If this is a relative path it will be interpreted as relative to the vault root. + -- You can always override this per image by passing a full path to the command instead of just a filename. + img_folder = "assets/img", + + -- Optional, customize the default name or prefix when pasting images via `:ObsidianPasteImg`. + ---@return string + img_name_func = function() + print(os.time()) + return string.format("%s-", os.time()) + end, + + -- A function that determines the text to insert in the note when pasting an image. + -- It takes two arguments, the `obsidian.Client` and an `obsidian.Path` to the image file. + -- This is the default implementation. + ---@param client obsidian.Client + ---@param path obsidian.Path the absolute path to the image file + ---@return string + img_text_func = function(client, path) + path = client:vault_relative_path(path) or path + return string.format("![%s](../%s)", path.name, path) + end, + }, + }, +} diff --git a/lua/plugins/typescript-tools.lua b/lua/plugins/typescript-tools.lua index b6399a1..789cb71 100644 --- a/lua/plugins/typescript-tools.lua +++ b/lua/plugins/typescript-tools.lua @@ -13,7 +13,7 @@ return { end, settings = { -- spawn additional tsserver instance to calculate diagnostics on it - separate_diagnostic_server = false, + separate_diagnostic_server = true, -- "change"|"insert_leave" determine when the client asks the server about diagnostic publish_diagnostic_on = "insert_leave", -- array of strings("fix_all"|"add_missing_imports"|"remove_unused"| @@ -23,7 +23,7 @@ return { expose_as_code_action = "all", -- string|nil - specify a custom path to `tsserver.js` file, if this is nil or file under path -- not exists then standard path resolution strategy is applied - tsserver_path = nil, + tsserver_path = "tsserver", -- specify a list of plugins to load by tsserver, e.g., for support `styled-components` -- (see 💅 `styled-components` support section) tsserver_plugins = { @@ -79,5 +79,6 @@ return { opts = {}, event = "VeryLazy", enabled = vim.fn.has("nvim-0.10.0") == 1, + ft = { "javascriptreact", "typescriptreact", "javascript", "typescript" }, }, }