init.lua/lua/plugins/treesitter.lua(view raw)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
---@type LazySpec
return {
{
"nvim-treesitter/nvim-treesitter",
event = "BufReadPost",
dependencies = {
"RRethy/nvim-treesitter-endwise",
{ "nvim-treesitter/nvim-treesitter-context", config = true },
},
build = function()
pcall(vim.cmd.TSUpdate)
end,
---@type TSConfig
---@diagnostic disable-next-line: missing-fields
opts = {
auto_install = true,
ensure_installed = {
"sql",
"markdown",
"markdown_inline",
"query",
},
ignore_install = { "org" },
indent = { enable = true, disable = { "python" } },
highlight = { enable = true, additional_vim_regex_highlighting = false },
autopairs = { enable = true },
endwise = { enable = true },
},
config = function(_, opts)
require("nvim-treesitter.configs").setup(opts)
end,
},
{
"JoosepAlviste/nvim-ts-context-commentstring",
lazy = false,
init = function()
local get_option = vim.filetype.get_option
---@diagnostic disable-next-line: duplicate-set-field
vim.filetype.get_option = function(filetype, option)
-- stylua: ignore
return option == "commentstring"
and require("ts_context_commentstring.internal").calculate_commentstring()
or get_option(filetype, option)
end
end,
},
}
|