summaryrefslogtreecommitdiff
path: root/lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua')
-rw-r--r--lua/telescope/pickers.lua41
1 files changed, 24 insertions, 17 deletions
diff --git a/lua/telescope/pickers.lua b/lua/telescope/pickers.lua
index 02f3de4..bf65a36 100644
--- a/lua/telescope/pickers.lua
+++ b/lua/telescope/pickers.lua
@@ -593,26 +593,33 @@ function Picker:set_selection(row)
return
end
- -- Handle adding '> ' to beginning of selections
- if self._selection_row then
- local old_selection = a.nvim_buf_get_lines(results_bufnr, self._selection_row, self._selection_row + 1, false)[1]
+ local set_ok, set_errmsg = pcall(function()
+ -- Handle adding '> ' to beginning of selections
+ if self._selection_row then
+ local old_selection = a.nvim_buf_get_lines(results_bufnr, self._selection_row, self._selection_row + 1, false)[1]
- if old_selection then
- a.nvim_buf_set_lines(results_bufnr, self._selection_row, self._selection_row + 1, false, {' ' .. old_selection:sub(3)})
+ if old_selection then
+ a.nvim_buf_set_lines(results_bufnr, self._selection_row, self._selection_row + 1, false, {' ' .. old_selection:sub(3)})
+ end
end
- end
- a.nvim_buf_set_lines(results_bufnr, row, row + 1, false, {'> ' .. (a.nvim_buf_get_lines(results_bufnr, row, row + 1, false)[1] or ''):sub(3)})
-
- a.nvim_buf_clear_namespace(results_bufnr, ns_telescope_selection, 0, -1)
- a.nvim_buf_add_highlight(
- results_bufnr,
- ns_telescope_selection,
- 'TelescopeSelection',
- row,
- 0,
- -1
- )
+ a.nvim_buf_set_lines(results_bufnr, row, row + 1, false, {'> ' .. (a.nvim_buf_get_lines(results_bufnr, row, row + 1, false)[1] or ''):sub(3)})
+
+ a.nvim_buf_clear_namespace(results_bufnr, ns_telescope_selection, 0, -1)
+ a.nvim_buf_add_highlight(
+ results_bufnr,
+ ns_telescope_selection,
+ 'TelescopeSelection',
+ row,
+ 0,
+ -1
+ )
+ end)
+
+ if not set_ok then
+ log.debug(set_errmsg)
+ return
+ end
-- if self._match_id then
-- -- vim.fn.matchdelete(self._match_id)