1
0
Fork 0
dotfiles/config/nvim/plugins/treesitter.fnl

34 lines
2.2 KiB
Text
Raw Normal View History

2022-04-05 19:57:44 +00:00
(let [treesitter (require :nvim-treesitter)
treesitter-config (require :nvim-treesitter.configs)
treesitter-parsers (require :nvim-treesitter.parsers)
set-bufvar vim.api.nvim_buf_set_var
rainbow-parsers [:fennel]]
(treesitter.define_modules {:nifoc_hooks {:enable false
:attach (lambda [bufnr]
(set-bufvar bufnr
:nifoc_treesitter_enabled
1))
:detach (lambda [bufnr]
(set-bufvar bufnr
:nifoc_treesitter_enabled
0))
:is_supported #true}})
(treesitter-config.setup {:ensure_installed :maintained
:highlight {:enable true}
:indent {:enable true}
:textobjects {:select {:enable true
:keymaps {:af "@function.outer"
:if "@function.inner"
:ac "@conditional.outer"
:ic "@conditional.inner"}}}
:rainbow {:enable true
:disable (vim.tbl_filter (fn [parser]
(not (vim.tbl_contains rainbow-parsers
parser)))
(treesitter-parsers.available_parsers))}
:matchup {:enable true}
:autopairs {:enable true}
:autotag {:enable true}
:playground {:enable true}
:nifoc_hooks {:enable true}}))