Qbilinux 日記

Linux に関係することだけではなく,最近は一般的なコンピュータやガジェット関係についても記載してます.

mac でのグラフィカル diff コマンド

あんまりまとまった情報がないみたいなので自分用のメモも兼ねて.

macOS 上でプログラムを書いてる時に linux とかである tkdiff みたいなのが欲しいなと少し調べてみました.

macOS では Xcode にツールが含まれているようなので,Xcode をインストールしてあれば入ってるみたいですね.あんまり Xcode を使いこなしていないのがバレバレだなぁ.

アプリの場所は /Applications/Xcode.app/Contents/Applications/FileMerge.app/ にあるので Finder から実行するか,ターミナルから

% open /Applications/Xcode.app/Contents/Applications/FileMerge.app/

でファイル選択のウインドウが立ち上がるのでファイルを指定すれば良いです.[left...] ボタン,[right...] ボタンをクリックしてファイル選択する他に,Finder から D&D でもファイルは選択できます.

コマンドラインから直接比較ウインドウを立ち上げるには /usr/bin/opendiff コマンドを使うと良いみたい.ターミナルから

% opendiff file1 file2

を実行すると比較した状態のウインドウが直接立ち上がります.

ファイルマージをするには差分箇所を選んで右下にある [actions] から好きなものを選択.その後,File > Save Merge もしくは File > Save Merge As ... で保存かな.

いろんなツールなどで外部 diff コマンドとして,この Xcode に含まれるコマンドを使いたい場合には /usr/bin/opendiff を指定するのがよさそうですね.

そんな感じです.