2012-08-07 14:29:33 +02:00
|
|
|
def -env-params grep %{ echo grep in progress, please wait...; %sh{
|
|
|
|
output=$(mktemp -t kak-grep.XXXXXXXX)
|
2012-08-17 12:39:57 +02:00
|
|
|
grep -PHn "$kak_param0" "$kak_param1" "$kak_param2" "$kak_param3" "$kak_param4" >& ${output}
|
2012-08-07 23:29:12 +02:00
|
|
|
echo "echo
|
|
|
|
try %{ db *grep* } catch %{ }
|
|
|
|
edit -scratch *grep*
|
|
|
|
setb filetype grep
|
|
|
|
exec %{|cat ${output}<ret>gg}
|
2012-08-14 14:27:32 +02:00
|
|
|
%sh{ rm ${output} }"
|
2012-08-07 14:29:33 +02:00
|
|
|
}}
|
|
|
|
|
|
|
|
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; }
|
|
|
|
|
2012-08-11 12:14:17 +02:00
|
|
|
def gjump %{ exec 'xs^([^:]+):(\d+)<ret>'; edit %reg{1} %reg{2} }
|