summaryrefslogtreecommitdiff
path: root/lua/telescope/previewers/utils.lua
diff options
context:
space:
mode:
authorSimon Hauser <Simon-Hauser@outlook.de>2022-07-01 23:29:24 +0200
committerGitHub <noreply@github.com>2022-07-01 23:29:24 +0200
commit7df95f9b208ba7228a25e7f75fb4cc02d6604cce (patch)
treee4933fb547bc886f27f06011a6c4780facfd7642 /lua/telescope/previewers/utils.lua
parent1aa74b231c6f93152c4ac51549a0563dca9b4453 (diff)
parente778abfdb457cc47ca47ce9b76905e043e87e598 (diff)
Merge pull request #1945 from nvim-telescope/dev
full changelog `:help telescope.changelog-1945`
Diffstat (limited to 'lua/telescope/previewers/utils.lua')
-rw-r--r--lua/telescope/previewers/utils.lua26
1 files changed, 20 insertions, 6 deletions
diff --git a/lua/telescope/previewers/utils.lua b/lua/telescope/previewers/utils.lua
index d250894..b1d1d5e 100644
--- a/lua/telescope/previewers/utils.lua
+++ b/lua/telescope/previewers/utils.lua
@@ -82,12 +82,26 @@ end
utils.highlighter = function(bufnr, ft, opts)
opts = opts or {}
opts.preview = opts.preview or {}
- opts.preview.treesitter = vim.F.if_nil(
- opts.preview.treesitter,
- type(conf.preview) == "table" and conf.preview.treesitter
- )
- local ts_highlighting = opts.preview.treesitter == true
- or type(opts.preview.treesitter) == "table" and vim.tbl_contains(opts.preview.treesitter, ft)
+ opts.preview.treesitter = vim.F.if_nil(opts.preview.treesitter, conf.preview.treesitter)
+ if type(opts.preview.treesitter) == "boolean" then
+ local temp = { enable = opts.preview.treesitter }
+ opts.preview.treesitter = temp
+ end
+
+ local ts_highlighting = (function()
+ if type(opts.preview.treesitter.enable) == "table" then
+ if vim.tbl_contains(opts.preview.treesitter.enable, ft) then
+ return true
+ end
+ return false
+ end
+
+ if vim.tbl_contains(vim.F.if_nil(opts.preview.treesitter.disable, {}), ft) then
+ return false
+ end
+
+ return opts.preview.treesitter.enable == nil or opts.preview.treesitter.enable == true
+ end)()
local ts_success
if ts_highlighting then