diff --git a/src/kakrc b/src/kakrc index b60df82c..9830b7ef 100644 --- a/src/kakrc +++ b/src/kakrc @@ -7,3 +7,4 @@ runtime rc/git.kak runtime rc/global.kak runtime rc/diff.kak runtime rc/make.kak +runtime rc/grep.kak diff --git a/src/rc/grep.kak b/src/rc/grep.kak new file mode 100644 index 00000000..ecb45e0a --- /dev/null +++ b/src/rc/grep.kak @@ -0,0 +1,14 @@ +def -env-params grep %{ echo grep in progress, please wait...; %sh{ + output=$(mktemp -t kak-grep.XXXXXXXX) + grep -Hn $kak_param0 $kak_param1 $kak_param2 $kak_param3 $kak_param4 >& ${output} + echo "echo; edit ${output}; setb filetype grep; hook buffer BufClose ${output} %{ %sh{rm ${output} } }" +}} + +hook global WinSetOption filetype=grep %{ + addhl group grep-highlight + addhl -group grep-highlight regex "^([^:]+):(\d+):" 1:cyan 2:green +} + +hook global WinSetOption filetype=(?!grep).* %{ rmhl grep-highlight; } + +def gjump %{ exec 'xs^([^:]+):(\d+)'; edit %sh{ echo ${kak_reg_1} ${kak_reg_2} } }