fix: save position into jumplist before 'edit' action (#1234)
currently enabled for some builtins. You can manually enable it by adding `push_cursor_on_edit = true` to the builtin options. But feel free to open a PR if you find a builtin that needs this option enabled.
This commit is contained in:
@@ -129,8 +129,13 @@ action_set.edit = function(prompt_bufnr, command)
|
|||||||
|
|
||||||
local entry_bufnr = entry.bufnr
|
local entry_bufnr = entry.bufnr
|
||||||
|
|
||||||
|
local picker = action_state.get_current_picker(prompt_bufnr)
|
||||||
require("telescope.actions").close(prompt_bufnr)
|
require("telescope.actions").close(prompt_bufnr)
|
||||||
|
|
||||||
|
if picker.push_cursor_on_edit then
|
||||||
|
vim.cmd "normal! m'"
|
||||||
|
end
|
||||||
|
|
||||||
if entry_bufnr then
|
if entry_bufnr then
|
||||||
if not vim.api.nvim_buf_get_option(entry_bufnr, "buflisted") then
|
if not vim.api.nvim_buf_get_option(entry_bufnr, "buflisted") then
|
||||||
vim.api.nvim_buf_set_option(entry_bufnr, "buflisted", true)
|
vim.api.nvim_buf_set_option(entry_bufnr, "buflisted", true)
|
||||||
|
|||||||
@@ -933,6 +933,7 @@ internal.marks = function(opts)
|
|||||||
},
|
},
|
||||||
previewer = conf.grep_previewer(opts),
|
previewer = conf.grep_previewer(opts),
|
||||||
sorter = conf.generic_sorter(opts),
|
sorter = conf.generic_sorter(opts),
|
||||||
|
push_cursor_on_edit = true,
|
||||||
}):find()
|
}):find()
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -45,6 +45,7 @@ lsp.references = function(opts)
|
|||||||
},
|
},
|
||||||
previewer = conf.qflist_previewer(opts),
|
previewer = conf.qflist_previewer(opts),
|
||||||
sorter = conf.generic_sorter(opts),
|
sorter = conf.generic_sorter(opts),
|
||||||
|
push_cursor_on_edit = true,
|
||||||
}):find()
|
}):find()
|
||||||
end)
|
end)
|
||||||
end
|
end
|
||||||
@@ -151,6 +152,7 @@ lsp.document_symbols = function(opts)
|
|||||||
tag = "symbol_type",
|
tag = "symbol_type",
|
||||||
sorter = conf.generic_sorter(opts),
|
sorter = conf.generic_sorter(opts),
|
||||||
},
|
},
|
||||||
|
push_cursor_on_edit = true,
|
||||||
}):find()
|
}):find()
|
||||||
end)
|
end)
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -110,6 +110,8 @@ function Picker:new(opts)
|
|||||||
tiebreak = get_default(opts.tiebreak, config.values.tiebreak),
|
tiebreak = get_default(opts.tiebreak, config.values.tiebreak),
|
||||||
selection_strategy = get_default(opts.selection_strategy, config.values.selection_strategy),
|
selection_strategy = get_default(opts.selection_strategy, config.values.selection_strategy),
|
||||||
|
|
||||||
|
push_cursor_on_edit = get_default(opts.push_cursor_on_edit, false),
|
||||||
|
|
||||||
layout_strategy = layout_strategy,
|
layout_strategy = layout_strategy,
|
||||||
layout_config = config.smarter_depth_2_extend(opts.layout_config or {}, config.values.layout_config or {}),
|
layout_config = config.smarter_depth_2_extend(opts.layout_config or {}, config.values.layout_config or {}),
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user