summaryrefslogtreecommitdiff
path: root/lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua')
-rw-r--r--lua/telescope/config.lua3
-rw-r--r--lua/telescope/pickers.lua6
2 files changed, 8 insertions, 1 deletions
diff --git a/lua/telescope/config.lua b/lua/telescope/config.lua
index 847f067..01d3bc9 100644
--- a/lua/telescope/config.lua
+++ b/lua/telescope/config.lua
@@ -124,7 +124,8 @@ local telescope_defaults = {
Available options are:
- "reset" (default)
- "follow"
- - "row"]],
+ - "row"
+ - "closest"]],
},
scroll_strategy = {
diff --git a/lua/telescope/pickers.lua b/lua/telescope/pickers.lua
index f8a0eea..e4c73e2 100644
--- a/lua/telescope/pickers.lua
+++ b/lua/telescope/pickers.lua
@@ -1069,6 +1069,12 @@ function Picker:get_result_completor(results_bufnr, find_id, prompt, status_upda
else
self:set_selection(self:get_reset_row())
end
+ elseif selection_strategy == 'closest' then
+ if prompt == "" and self.default_selection_index ~= nil then
+ self:set_selection(self:get_row(self.default_selection_index))
+ else
+ self:set_selection(self:get_reset_row())
+ end
else
error('Unknown selection strategy: ' .. selection_strategy)
end