Files
fish-config/functions/__fzf_inline_picker.fish
T
rootiest 2a08e1acef feat(shell): add fzf inline picker bound to @@
Adds __fzf_inline_picker function and @@ keybinding (Emacs + all Vi
modes). Opens an fzf session and injects the selected item at the
cursor position in the current command line. Includes SYNOPSIS/
DESCRIPTION doc block per project conventions. Updates README with
new binding in the User Bindings table.
2026-06-05 19:46:54 -04:00

30 lines
880 B
Fish

# Copyright (C) 2026 Rootiest
# SPDX-License-Identifier: AGPL-3.0-or-later
# SYNOPSIS
# __fzf_inline_picker
#
# DESCRIPTION
# Opens an interactive fzf session and injects the selected item directly
# into the command line at the cursor position. Bound to @@ by default.
# Requires fzf to be installed. Repaints the prompt after insertion.
#
# RETURNS
# 0 A selection was made and inserted into the command line
# 0 No selection was made (fzf cancelled); command line is unchanged
#
# EXAMPLE
# # Press @@ at the prompt — fzf opens, pick an item, it appears at cursor
#
function __fzf_inline_picker
# Open fzf and capture selection
set -l selection (fzf)
if test -n "$selection"
# Injects text instantly at the cursor
commandline -i (string escape -- $selection)
end
# Refresh the line display
commandline -f repaint
end