diff --git a/flake.nix b/flake.nix index 54a9a38..414764a 100644 --- a/flake.nix +++ b/flake.nix @@ -116,6 +116,9 @@ shellcheck bash-language-server ]; + typst = [ + tinymist + ]; }; format = [ ]; @@ -193,6 +196,9 @@ lua = [ lazydev-nvim ]; + typst = [ + typst-preview-nvim + ]; }; git = [ gitsigns-nvim diff --git a/lua/myLuaConf/LSPs/init.lua b/lua/myLuaConf/LSPs/init.lua index 9f74cce..6291662 100644 --- a/lua/myLuaConf/LSPs/init.lua +++ b/lua/myLuaConf/LSPs/init.lua @@ -13,7 +13,7 @@ vim.keymap.set("n", "lws", Snacks.picker.lsp_workspace_symbols, { desc = vim.keymap.set("n", "lD", vim.lsp.buf.declaration, { desc = "Goto [D]eclaration" }) vim.keymap.set("n", "lD", vim.lsp.buf.type_definition, { desc = "Type [D]efinition" }) -vim.keymap.set("n", "la", vim.lsp.buf.code_action, { desc = "[C]ode Action" }) +vim.keymap.set({"n", "v",}, "la", vim.lsp.buf.code_action, { desc = "[C]ode Action" }) vim.keymap.set("n", "ld", vim.lsp.buf.definition, { desc = "Goto [D]efinition" }) vim.keymap.set("n", "lf", vim.lsp.buf.format, { desc = "Format buffer" }) vim.keymap.set("n", "lh", vim.lsp.buf.hover, { desc = "Hover Documentation" }) @@ -176,6 +176,17 @@ require('lze').load { enabled = nixCats("lsp.python"), lsp = {}, }, + { + "tinymist", + enabled = nixCats("lsp.tinymist"), + lsp = { + filetypes = { "typst" }, + settings = { + formatterMode = "typstyle", + + }, + }, + }, { "nixd", enabled = catUtils.isNixCats and nixCats('lsp.nix'), diff --git a/lua/myLuaConf/plugins/init.lua b/lua/myLuaConf/plugins/init.lua index 6b7b6bc..1a6e16e 100644 --- a/lua/myLuaConf/plugins/init.lua +++ b/lua/myLuaConf/plugins/init.lua @@ -197,19 +197,32 @@ require('lze').load { vim.g.mkdp_auto_close = 0 end, }, + { + "typst-preview.nvim", + for_cat = "lsp.typst", + ft = "typst", + cmd = { "TypstPreview", "TypstPreviewStop", "TypstPreviewToggle", }, + keys = { + { "mp", "TypstPreview ", mode = { "n" }, noremap = true, desc = "typst preview" }, + { "ms", "TypstPreviewStop ", mode = { "n" }, noremap = true, desc = "typst preview stop" }, + { "mt", "TypstPreviewToggle ", mode = { "n" }, noremap = true, desc = "typst preview toggle" }, + }, + after = function() + require('typst-preview').setup {} + end + }, { "leap.nvim", for_cat = 'always', event = "DeferredUIEnter", - after = function() - require('leap').set_default_mappings() - end, + keys = { + { "s", "(leap)", mode = { "n", "x", "o", "v" }, noremap = true, desc = "leap to char sequence" } + }, }, { "nvim-surround", for_cat = 'always', event = "DeferredUIEnter", - -- keys = "", after = function() require('nvim-surround').setup() end,