diff options
Diffstat (limited to 'lua/telescope/previewers/utils.lua')
| -rw-r--r-- | lua/telescope/previewers/utils.lua | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/lua/telescope/previewers/utils.lua b/lua/telescope/previewers/utils.lua index 44a6160..bd8c300 100644 --- a/lua/telescope/previewers/utils.lua +++ b/lua/telescope/previewers/utils.lua @@ -78,9 +78,22 @@ end --- Attach default highlighter which will choose between regex and ts utils.highlighter = function(bufnr, ft, opts) - opts = opts or {} - opts.preview = opts.preview or {} - opts.preview.treesitter = vim.F.if_nil(opts.preview.treesitter, conf.preview.treesitter) + opts = vim.F.if_nil(opts, {}) + opts.preview = vim.F.if_nil(opts.preview, {}) + opts.preview.treesitter = (function() + if type(opts.preview) == "table" and opts.preview.treesitter then + return opts.preview.treesitter + end + if type(conf.preview) == "table" and conf.preview.treesitter then + return conf.preview.treesitter + end + if type(conf.preview) == "boolean" then + return conf.preview + end + -- We should never get here + return false + end)() + if type(opts.preview.treesitter) == "boolean" then local temp = { enable = opts.preview.treesitter } opts.preview.treesitter = temp |
