質問: github の PR の diff 表示では、行ごとの diff に加えて、行中のどこの部分に差異があるのかを表示してくれます。例えば linux の PR から適当に拾ってきたこのページ などが具体例です。 今、コマンドライン上の diff においても、このように色付けができたら便利だろうと思い、その方法を探しています。 --- diff に色を付けようとして、見つかったパッケージは、 colordiff というツール で、これを使うと、例えば `+` の行は緑色、`-`の行は赤色といったように、行ごとに色を付与してくれますが、最終的に実現したい github 的な diff の再現において、「行中の差異の部分の表示」はやってくれていないな、と思っています。 ### 質問 github の PR ページの diff のように、行中の差異の部分まで色わけしてくれるような diff を、ターミナル上で実現したいのですが、これが可能になるツールなどはありませんでしょうか。
回答: 英語版の How to colorize diff on the command line? にいくつか回答が集まっており、 そのうちの一つに ydiff というツールが紹介されています。 (求めているものは "Word-level diff" と英語では表現されるようです) **表示例:** ! また、Git に diff-highlight というモジュールが同梱されているのでこれを使う方法もあるようです。 **参考:** gitのdiff-highlightを使い始めた