summaryrefslogtreecommitdiffstats
path: root/.local/bin/rfv
blob: a178e67fb530de2e057a1566cb13bc594bb70803 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#!/usr/bin/env bash

# 1. Search for text in files using Ripgrep
# 2. Interactively narrow down the list using fzf
# 3. Open the file in Vim
IFS=: read -ra selected < <(
    rg --color=always --line-number --no-heading --smart-case "${*:-}" \
        | fzf --ansi \
            --color "hl:-1:underline,hl+:-1:underline:reverse" \
            --delimiter : \
            --preview 'bat --color=always {1} --highlight-line {2}' \
            --preview-window='up:60%:+{2}+3/3:~3'
)
[ -n "${selected[0]}" ] && nvim "${selected[0]}" "+${selected[1]}"