Edited at

Git grep の検索結果をエディタで開く

More than 1 year has passed since last update.

普段開発でRubymineを使っているのですが、Rubymineの検索機能ではなく

git grep でサクッと検索したい場合があります。

そんなときに、検索結果を直接エディタで開けたら楽だなと思いこんな関数を使っています。


Rubymineで開く

function ggm(){

name_number=$(git grep $@ | peco | cut -d ":" -f 1,2)
if [ -n "$name_number" ]; then
mine $name_number
else
echo 'fileが見つかりません'
fi
}

vimで開くときはこちら。


vimで開く

function ggv(){

name_number=$(git grep $@ | peco | cut -d ":" -f 1,2)
if [ -n "$name_number" ]; then
name=$(echo $name_number | cut -d ":" -f 1)
number=$(echo $name_number | cut -d ":" -f 2)
vim -c $number $name
else
echo 'fileが見つかりません'
fi
}

使い方は検索したい単語を引数で渡すだけです

% ggm User

% ggv User

※ cutの1はファイル名,2は行数で、 git grep で行数を表示していることを前提にしています

[grep]

lineNumber = true