Skip to content

Instantly share code, notes, and snippets.

@helltone
Created September 3, 2024 09:37
Show Gist options
  • Select an option

  • Save helltone/c7ed8ead2d77e4aee02be8ebdd2df079 to your computer and use it in GitHub Desktop.

Select an option

Save helltone/c7ed8ead2d77e4aee02be8ebdd2df079 to your computer and use it in GitHub Desktop.
zsh search() function with rg/bat/fzf
search() {
if [ $# -lt 2 ]; then
echo "Usage: search <search_term> <directory>"
return 1
fi
search_term="$1"
directory="$2"
selected=$(rg --color=always "$search_term" "$directory" | \
fzf --ansi --delimiter : \
--preview 'bat --color=always -n {1} | head -500' \
--bind 'enter:accept')
if [ -n "$selected" ]; then
file=$(echo "$selected" | cut -d: -f1)
line=$(echo "$selected" | cut -d: -f2 | tr -dc '0-9')
echo "Opening file: $file"
echo "At line: $line"
vim "$file" "+$line"
fi
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment