From d817c7e81b6e50c76fd8476814ae401b75fb4ee3 Mon Sep 17 00:00:00 2001 From: Jannik Buhr Date: Sat, 29 Jun 2024 14:43:03 +0200 Subject: [PATCH] disable treesitter textojects due to a bug --- lua/config/keymap.lua | 4 +--- lua/plugins/completion.lua | 2 +- lua/plugins/editing.lua | 1 + lua/plugins/lsp.lua | 18 ++++++++++-------- lua/plugins/treesitter.lua | 8 +++++++- 5 files changed, 20 insertions(+), 13 deletions(-) diff --git a/lua/config/keymap.lua b/lua/config/keymap.lua index ddad173..025cfc8 100644 --- a/lua/config/keymap.lua +++ b/lua/config/keymap.lua @@ -299,13 +299,11 @@ wk.register({ f = { 'Telescope find_files', '[f]iles' }, h = { 'Telescope help_tags', '[h]elp' }, k = { 'Telescope keymaps', '[k]eymaps' }, - r = { 'Telescope lsp_references', '[r]eferences' }, g = { 'Telescope live_grep', '[g]rep' }, b = { 'Telescope current_buffer_fuzzy_find', '[b]uffer fuzzy find' }, m = { 'Telescope marks', '[m]arks' }, M = { 'Telescope man_pages', '[M]an pages' }, c = { 'Telescope git_commits', 'git [c]ommits' }, - s = { 'Telescope lsp_document_symbols', 'document [s]ymbols' }, [''] = { 'Telescope buffers', '[ ] buffers' }, d = { 'Telescope buffers', '[d] buffers' }, q = { 'Telescope quickfix', '[q]uickfix' }, @@ -347,7 +345,7 @@ wk.register({ }, l = { name = '[l]anguage/lsp', - r = { 'Telescope lsp_references', '[r]eferences' }, + r = { vim.lsp.buf.references, '[r]eferences' }, R = { '[R]ename' }, D = { vim.lsp.buf.type_definition, 'type [D]efinition' }, a = { vim.lsp.buf.code_action, 'code [a]ction' }, diff --git a/lua/plugins/completion.lua b/lua/plugins/completion.lua index 95199de..9a4752d 100644 --- a/lua/plugins/completion.lua +++ b/lua/plugins/completion.lua @@ -120,7 +120,7 @@ return { }, }, sources = { - { name = 'otter' }, -- for code chunks in quarto + -- { name = 'otter' }, -- for code chunks in quarto { name = 'path' }, { name = 'nvim_lsp' }, { name = 'nvim_lsp_signature_help' }, diff --git a/lua/plugins/editing.lua b/lua/plugins/editing.lua index 67a9409..53b958c 100644 --- a/lua/plugins/editing.lua +++ b/lua/plugins/editing.lua @@ -39,6 +39,7 @@ return { formatters_by_ft = { lua = { 'mystylua' }, python = { 'isort', 'black' }, + quarto = { 'injected' }, }, formatters = { mystylua = { diff --git a/lua/plugins/lsp.lua b/lua/plugins/lsp.lua index 87e4bed..ca9ee8e 100644 --- a/lua/plugins/lsp.lua +++ b/lua/plugins/lsp.lua @@ -87,10 +87,12 @@ return { vim.api.nvim_create_autocmd('LspAttach', { group = vim.api.nvim_create_augroup('kickstart-lsp-attach', { clear = true }), callback = function(event) - local telescope = require 'telescope.builtin' local function map(keys, func, desc) vim.keymap.set('n', keys, func, { buffer = event.buf, desc = 'LSP: ' .. desc }) end + local function vmap(keys, func, desc) + vim.keymap.set('v', keys, func, { buffer = event.buf, desc = 'LSP: ' .. desc }) + end local client = vim.lsp.get_client_by_id(event.data.client_id) assert(client, 'LSP client not found') @@ -110,6 +112,7 @@ return { map('ll', vim.lsp.codelens.run, '[l]ens run') map('lR', vim.lsp.buf.rename, '[l]sp [R]ename') map('lf', vim.lsp.buf.format, '[l]sp [f]ormat') + vmap('lf', vim.lsp.buf.format, '[l]sp [f]ormat') map('lq', vim.diagnostic.setqflist, '[l]sp diagnostic [q]uickfix') end, }) @@ -119,11 +122,10 @@ return { debounce_text_changes = 150, } - local telescope_builtin = require 'telescope.builtin' vim.lsp.handlers['textDocument/hover'] = vim.lsp.with(vim.lsp.handlers.hover, { border = require('misc.style').border }) vim.lsp.handlers['textDocument/signatureHelp'] = vim.lsp.with(vim.lsp.handlers.signature_help, { border = require('misc.style').border }) -- TODO: handle this - vim.lsp.handlers['textDocument/references'] = telescope_builtin.lsp_references + -- vim.lsp.handlers['textDocument/references'] = telescope_builtin.lsp_references local capabilities = vim.lsp.protocol.make_client_capabilities() capabilities = vim.tbl_deep_extend('force', capabilities, require('cmp_nvim_lsp').default_capabilities()) @@ -133,11 +135,11 @@ return { -- $home/.config/marksman/config.toml : -- [core] -- markdown.file_extensions = ["md", "markdown", "qmd"] - -- lspconfig.marksman.setup { - -- capabilities = capabilities, - -- filetypes = { 'markdown', 'quarto' }, - -- root_dir = util.root_pattern('.git', '.marksman.toml', '_quarto.yml'), - -- } + lspconfig.marksman.setup { + capabilities = capabilities, + filetypes = { 'markdown', 'quarto' }, + root_dir = util.root_pattern('.git', '.marksman.toml', '_quarto.yml'), + } lspconfig.r_language_server.setup { capabilities = capabilities, diff --git a/lua/plugins/treesitter.lua b/lua/plugins/treesitter.lua index 82f6f58..e170a2d 100644 --- a/lua/plugins/treesitter.lua +++ b/lua/plugins/treesitter.lua @@ -1,8 +1,14 @@ return { { 'nvim-treesitter/nvim-treesitter', + dev = false, dependencies = { - { 'nvim-treesitter/nvim-treesitter-textobjects' }, + -- { + -- -- currently broken for R + -- 'nvim-treesitter/nvim-treesitter-textobjects', + -- dev = false, + -- enabled = false, + -- }, }, run = ':TSUpdate', config = function()