Skip to content

Commit

Permalink
feat(picker): allow appending original window's cfile to prompt
Browse files Browse the repository at this point in the history
Change-Id: I0a69a24a89bfebeda6bb68cb8d3bc7aa174dbf77
  • Loading branch information
younger-1 committed May 26, 2024
1 parent 948704b commit 474ee47
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 3 deletions.
5 changes: 3 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -263,8 +263,9 @@ Many familiar mapping patterns are set up as defaults.
| `<C-q>` | Send all items not filtered to quickfixlist (qflist) |
| `<M-q>` | Send all selected items to qflist |
| `<C-r><C-w>` | Insert cword in original window into prompt (insert mode) |
| `<C-r><C-e>` | Insert cWORD in original window into prompt (insert mode) |
| `<C-r><C-l>` | Insert line in original window into prompt (insert mode) |
| `<C-r><C-a>` | Insert cWORD in original window into prompt (insert mode) |
| `<C-r><C-f>` | Insert cfile in original window into prompt (insert mode) |
| `<C-r><C-l>` | Insert cline in original window into prompt (insert mode) |

To see the full list of mappings, check out `lua/telescope/mappings.lua` and the
`default_mappings` table.
Expand Down
7 changes: 7 additions & 0 deletions lua/telescope/actions/init.lua
Original file line number Diff line number Diff line change
Expand Up @@ -1503,6 +1503,13 @@ actions.insert_original_cWORD = function(prompt_bufnr)
current_picker:set_prompt(current_picker.original_cWORD, false)
end

--- Insert the file under the cursor of the original (pre-Telescope) window
---@param prompt_bufnr number: The prompt bufnr
actions.insert_original_cfile = function(prompt_bufnr)
local current_picker = action_state.get_current_picker(prompt_bufnr)
current_picker:set_prompt(current_picker.original_cfile, false)
end

--- Insert the line under the cursor of the original (pre-Telescope) window
---@param prompt_bufnr number: The prompt bufnr
actions.insert_original_cline = function(prompt_bufnr)
Expand Down
3 changes: 2 additions & 1 deletion lua/telescope/mappings.lua
Original file line number Diff line number Diff line change
Expand Up @@ -176,7 +176,8 @@ mappings.default_mappings = config.values.default_mappings
["<C-_>"] = actions.which_key, -- keys from pressing <C-/>
["<C-w>"] = { "<c-s-w>", type = "command" },
["<C-r><C-w>"] = actions.insert_original_cword,
["<C-r><C-e>"] = actions.insert_original_cWORD,
["<C-r><C-a>"] = actions.insert_original_cWORD,
["<C-r><C-f>"] = actions.insert_original_cfile,
["<C-r><C-l>"] = actions.insert_original_cline,

-- disable c-j because we dont want to allow new lines #2123
Expand Down
1 change: 1 addition & 0 deletions lua/telescope/pickers.lua
Original file line number Diff line number Diff line change
Expand Up @@ -538,6 +538,7 @@ function Picker:find()
self.original_win_id = a.nvim_get_current_win()
_, self.original_cword = pcall(vim.fn.expand, "<cword>")
_, self.original_cWORD = pcall(vim.fn.expand, "<cWORD>")
_, self.original_cfile = pcall(vim.fn.expand, "<cfile>")
_, self.original_cline = pcall(vim.trim, vim.api.nvim_get_current_line())

-- User autocmd run it before create Telescope window
Expand Down

0 comments on commit 474ee47

Please sign in to comment.