Refactor treesitter to simplify and format quick start config
This commit is contained in:
parent
4bdd3f38b0
commit
7a88c10079
1 changed files with 34 additions and 37 deletions
|
@ -1,44 +1,41 @@
|
||||||
return {
|
return {
|
||||||
"nvim-treesitter/nvim-treesitter",
|
"nvim-treesitter/nvim-treesitter",
|
||||||
config = function()
|
config = function()
|
||||||
local config = require("nvim-treesitter.configs")
|
local config = require("nvim-treesitter.configs")
|
||||||
config.setup({
|
config.setup({
|
||||||
-- A list of parser names, or "all" (the listed parsers MUST always be installed)
|
-- A list of parser names, or "all" (the listed parsers MUST always be installed)
|
||||||
ensure_installed = { "lua", "vim", "vimdoc", "query", "markdown", "markdown_inline", "json", "jsonc", "python", "yaml" },
|
ensure_installed = {
|
||||||
|
"lua",
|
||||||
|
"vim",
|
||||||
|
"vimdoc",
|
||||||
|
"query",
|
||||||
|
"markdown",
|
||||||
|
"markdown_inline",
|
||||||
|
"json",
|
||||||
|
"jsonc",
|
||||||
|
"python",
|
||||||
|
"yaml",
|
||||||
|
},
|
||||||
|
|
||||||
-- Install parsers synchronously (only applied to `ensure_installed`)
|
-- Install parsers synchronously (only applied to `ensure_installed`)
|
||||||
sync_install = false,
|
sync_install = false,
|
||||||
|
|
||||||
-- Automatically install missing parsers when entering buffer
|
-- Automatically install missing parsers when entering buffer
|
||||||
-- Recommendation: set to false if you don't have `tree-sitter` CLI installed locally
|
-- Recommendation: set to false if you don't have `tree-sitter` CLI installed locally
|
||||||
auto_install = true,
|
auto_install = true,
|
||||||
|
|
||||||
-- List of parsers to ignore installing (or "all")
|
|
||||||
ignore_install = { "javascript" },
|
|
||||||
|
|
||||||
highlight = {
|
-- List of parsers to ignore installing (or "all")
|
||||||
enable = true,
|
ignore_install = { "javascript" },
|
||||||
|
|
||||||
-- NOTE: these are the names of the parsers and not the filetype. (for example if you want to
|
highlight = {
|
||||||
-- disable highlighting for the `tex` filetype, you need to include `latex` in this list as this is
|
enable = true,
|
||||||
-- the name of the parser)
|
|
||||||
-- list of language that will be disabled
|
|
||||||
disable = { "c", "rust" },
|
|
||||||
-- Or use a function for more flexibility, e.g. to disable slow treesitter highlight for large files
|
|
||||||
disable = function(lang, buf)
|
|
||||||
local max_filesize = 100 * 1024 -- 100 KB
|
|
||||||
local ok, stats = pcall(vim.loop.fs_stat, vim.api.nvim_buf_get_name(buf))
|
|
||||||
if ok and stats and stats.size > max_filesize then
|
|
||||||
return true
|
|
||||||
end
|
|
||||||
end,
|
|
||||||
|
|
||||||
-- Setting this to true will run `:h syntax` and tree-sitter at the same time.
|
-- Setting this to true will run `:h syntax` and tree-sitter at the same time.
|
||||||
-- Set this to `true` if you depend on 'syntax' being enabled (like for indentation).
|
-- Set this to `true` if you depend on 'syntax' being enabled (like for indentation).
|
||||||
-- Using this option may slow down your editor, and you may see some duplicate highlights.
|
-- Using this option may slow down your editor, and you may see some duplicate highlights.
|
||||||
-- Instead of true it can also be a list of languages
|
-- Instead of true it can also be a list of languages
|
||||||
additional_vim_regex_highlighting = false,
|
additional_vim_regex_highlighting = false,
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
end
|
end,
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue