summaryrefslogtreecommitdiff
path: root/lua/telescope/pickers/highlights.lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua/telescope/pickers/highlights.lua')
-rw-r--r--lua/telescope/pickers/highlights.lua23
1 files changed, 23 insertions, 0 deletions
diff --git a/lua/telescope/pickers/highlights.lua b/lua/telescope/pickers/highlights.lua
index 23e796e..62ffb4b 100644
--- a/lua/telescope/pickers/highlights.lua
+++ b/lua/telescope/pickers/highlights.lua
@@ -3,6 +3,7 @@ local a = vim.api
local highlights = {}
local ns_telescope_selection = a.nvim_create_namespace('telescope_selection')
+local ns_telescope_multiselection = a.nvim_create_namespace('telescope_mulitselection')
local ns_telescope_entry = a.nvim_create_namespace('telescope_entry')
local Highlighter = {}
@@ -75,6 +76,28 @@ function Highlighter:hi_selection(row, caret)
)
end
+function Highlighter:hi_multiselect(row, entry)
+ local results_bufnr = assert(self.picker.results_bufnr, "Must have a results bufnr")
+
+ if self.picker.multi_select[entry] then
+ vim.api.nvim_buf_add_highlight(
+ results_bufnr,
+ ns_telescope_multiselection,
+ "TelescopeMultiSelection",
+ row,
+ 0,
+ -1
+ )
+ else
+ vim.api.nvim_buf_clear_namespace(
+ results_bufnr,
+ ns_telescope_multiselection,
+ row,
+ row + 1
+ )
+ end
+end
+
highlights.new = function(...)
return Highlighter:new(...)
end