summaryrefslogtreecommitdiff
path: root/lua/telescope/builtin
diff options
context:
space:
mode:
authorAugust Masquelier <31262046+levouh@users.noreply.github.com>2021-04-04 05:04:06 -0600
committerGitHub <noreply@github.com>2021-04-04 13:04:06 +0200
commitd0cf646f65746415294f570ec643ffd0101ca3ab (patch)
tree1e63bc1efc2ae71603ff85106203ca427bee1177 /lua/telescope/builtin
parent0944c4a88f79ff45e5e750ebecdcb476ca221193 (diff)
feat: current buffer fuzzy find improvements (#694)
If you don't want to have a previewer disable it with `:Telescope current_buffer_fuzzy_find previewer=false` To ignore empty lines do: `:Telescope current_buffer_fuzzy_find skip_empty_lines=true`
Diffstat (limited to 'lua/telescope/builtin')
-rw-r--r--lua/telescope/builtin/files.lua29
1 files changed, 15 insertions, 14 deletions
diff --git a/lua/telescope/builtin/files.lua b/lua/telescope/builtin/files.lua
index ae125aa..f091ad0 100644
--- a/lua/telescope/builtin/files.lua
+++ b/lua/telescope/builtin/files.lua
@@ -329,34 +329,35 @@ files.treesitter = function(opts)
end
files.current_buffer_fuzzy_find = function(opts)
+ -- All actions are on the current buffer
+ local bufnr = vim.api.nvim_get_current_buf()
+ local filename = vim.fn.expand(vim.api.nvim_buf_get_name(bufnr))
+
local lines = vim.api.nvim_buf_get_lines(0, 0, -1, false)
local lines_with_numbers = {}
- for k, v in ipairs(lines) do
- table.insert(lines_with_numbers, {k, v})
- end
- local bufnr = vim.api.nvim_get_current_buf()
+ for lnum, line in ipairs(lines) do
+ table.insert(lines_with_numbers, {
+ lnum = lnum,
+ line = line,
+ bufnr = bufnr,
+ filename = filename,
+ })
+ end
pickers.new(opts, {
prompt_title = 'Current Buffer Fuzzy',
finder = finders.new_table {
results = lines_with_numbers,
- entry_maker = function(enumerated_line)
- return {
- bufnr = bufnr,
- display = enumerated_line[2],
- ordinal = enumerated_line[2],
-
- lnum = enumerated_line[1],
- }
- end
+ entry_maker = opts.entry_maker or make_entry.gen_from_buffer_lines(opts),
},
sorter = conf.generic_sorter(opts),
+ previewer = conf.grep_previewer(opts),
attach_mappings = function()
action_set.select:enhance {
post = function()
local selection = action_state.get_selected_entry()
- vim.api.nvim_win_set_cursor(0, {selection.lnum, 0})
+ vim.api.nvim_win_set_cursor(0, { selection.lnum, 0 })
end,
}