yes there's a bit of java in my nvim config why do you ask?
This commit is contained in:
59
lua/conf/plugins/treesitter.lua
Normal file
59
lua/conf/plugins/treesitter.lua
Normal file
@ -0,0 +1,59 @@
|
||||
table.contains = function(self, string)
|
||||
for _, v in pairs(self) do
|
||||
if v == string then
|
||||
return true
|
||||
end
|
||||
end
|
||||
return false
|
||||
end
|
||||
|
||||
return { 'nvim-treesitter/nvim-treesitter',
|
||||
disable = vim.version.lt(vim.version(), { 0, 9, 2 }),
|
||||
config = function()
|
||||
vim.cmd("TSUpdate")
|
||||
end,
|
||||
function()
|
||||
require('nvim-treesitter.configs').setup {
|
||||
-- good default parsers
|
||||
ensure_installed = { "c", "lua", "vim", "vimdoc", "markdown",
|
||||
"markdown_inline", "java", "bash", "css", "html", "luadoc"
|
||||
},
|
||||
|
||||
-- install missing parsers
|
||||
auto_install = true,
|
||||
|
||||
-- indentation
|
||||
indent = {
|
||||
enable = true,
|
||||
|
||||
disable = function(lang, buf)
|
||||
-- disable indenting in php (it's more broken with than without)
|
||||
return table.contains({
|
||||
"php"
|
||||
}, lang)
|
||||
end
|
||||
},
|
||||
|
||||
-- enable highlighting
|
||||
highlight = {
|
||||
enable = true,
|
||||
-- use vim highlighting in addition to treesitter
|
||||
additional_vim_regex_highlighting = true,
|
||||
|
||||
disable = function(lang, buf)
|
||||
-- disable in diff files
|
||||
local langs = { "diff" }
|
||||
if table.contains(langs, lang) then
|
||||
return true
|
||||
end
|
||||
|
||||
-- disable in big files
|
||||
local ok, stats = pcall(vim.loop.fs_stat, vim.api.nvim_buf_get_name(buf))
|
||||
if ok and stats and stats.size > (1024 * 100 * 10) --[[1MB]] then
|
||||
return true
|
||||
end
|
||||
end
|
||||
}
|
||||
}
|
||||
end
|
||||
}
|
Reference in New Issue
Block a user