Git Diff で日本語の文章も綺麗に差分を出す
git diff
コマンドで日本語の文章も綺麗に差分を出す方法が紹介されていたので試してみた。
コマンドは以下。
$ git diff --word-diff-regex=$'[^\x80-\xbf][\x80-\xbf]*' --word-diff=color
この正規表現は大体の UTF-8 の1文字にマッチさせる正規表現らしい。
--word-diff=color
は --color-words
とも書けて、さらに --word-diff-regrex=<RegRex>
も使っている場合は --color-words=<RegRex>
と省略表記できるので、以下のように書ける。
$ git diff --color-words=$'[^\x80-\xbf][\x80-\xbf]*'
コレを ~/.bashrc
にエイリアスとして書いておけば使いやすくなる。
# 「gdfj」コマンドとして使えるようにする
alias gdfwj='git diff --color-words=$'\''[^\x80-\xbf][\x80-\xbf]*'\'''
同様にコレを ~/.gitconfig
にも書こうと思ったのだが、以下のようなエラーが出てしまった。
fatal: bad config line 30 in file /Users/Neo/.gitconfig
最初は \
記号をエスケープしてみたのだが、コレだと削除されたところが赤字表示されなくなってしまい、結局何のエスケープが要るのかよく分からず断念した。いいや別に ~/.gitconfig
に書いたエイリアス使わないから…。