aboutsummaryrefslogtreecommitdiff
path: root/autoload/grep.kak
blob: 27b6d65ad112a9e246d6866efe5af2ec616dd18b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
set-option global grepcmd "rg -S --vimgrep --hidden -g '!**/.git/**'"

map global file g ":grep ''<left>" -docstring 'Grep'

define-command grep-write %{
  execute-keys '%' # Consider selecting manually
  evaluate-commands %sh{
    echo "$kak_selections" | "$kak_config/scripts/apply_vimgrep_updates.fnl" | xargs -i echo "info '{}'"
  }
}

hook global -always BufOpenFifo '\*grep\*' %{
  map global file ] ': grep-next-match<ret>'
  map global file [ ': grep-previous-match<ret>'
}
hook global -always BufOpenFifo '\*make\*' %{
  map global file ] ': make-next-error<ret>'
  map global file [ ': make-previous-error<ret>'
}

# TODO: Prevent exiting command mode from grep
# define-command live-grep %{
#   prompt -on-change %{ eval %sh{ [ -z "$kak_text" ] || echo "grep $kak_text" } } 'live-grep: ' %{ info done }
# }