summaryrefslogtreecommitdiff
path: root/lua/nvim-treesitter/highlight.lua
diff options
context:
space:
mode:
authorkiyan42 <yazdani.kiyan@protonmail.com>2020-04-22 11:13:05 +0200
committerkiyan42 <yazdani.kiyan@protonmail.com>2020-04-24 22:15:21 +0200
commit62786ec7c60ea29cbbd48ae658cde7042dba4bb3 (patch)
tree16ee7598796807d07d4e5718b777e769dec09305 /lua/nvim-treesitter/highlight.lua
parentb7fdd6ae389e1364b0dda25811ddf566fa508bc3 (diff)
feat/refacto: improve configurations
- You should now get the configs through functions - Configs for languages are now inside a local object called parsers - You can get the parser installation configurations with `get_parser_configs` - A new object has been initialized inside configs to specify module config (called config). - Provide functions to enable/disable a module on one buffer - Provide functions to enable/disable a module on all buffers, and if filetype is specified, for specific filetype - Provide function to determine if module is activated for a specified filetype
Diffstat (limited to 'lua/nvim-treesitter/highlight.lua')
-rw-r--r--lua/nvim-treesitter/highlight.lua15
1 files changed, 12 insertions, 3 deletions
diff --git a/lua/nvim-treesitter/highlight.lua b/lua/nvim-treesitter/highlight.lua
index 110954a6..65ab48dc 100644
--- a/lua/nvim-treesitter/highlight.lua
+++ b/lua/nvim-treesitter/highlight.lua
@@ -1,12 +1,12 @@
local api = vim.api
-local queries = require'nvim-treesitter.query'
local ts = vim.treesitter
+local queries = require'nvim-treesitter.query'
local M = {
- highlighters={}
+ highlighters = {}
}
-function M.setup(bufnr, ft)
+function M.attach(bufnr, ft)
local buf = bufnr or api.nvim_get_current_buf()
local ft = ft or api.nvim_buf_get_option(buf, 'ft')
@@ -16,4 +16,13 @@ function M.setup(bufnr, ft)
M.highlighters[buf] = ts.TSHighlighter.new(query, buf, ft)
end
+function M.detach(bufnr)
+ local buf = bufnr or api.nvim_get_current_buf()
+ if M.highlighters[buf] then
+ M.highlighters[buf]:set_query("")
+ M.highlighters[buf] = nil
+ end
+ api.nvim_buf_set_option(buf, 'syntax', 'on')
+end
+
return M