Macの高機能diffツール「Kaleidoscope」

神戸業務ハッカーのTDに、Kaleidoscopeを勧められてドハマりしました。
今までdiffツールはXCodeに付属のFileMergeを使っていたのですが、それより遥かに使いやすく、デザインも良いです。
FileMergeは単純に差分を見るだけにしか使わなかったので、「まあ、最低限の差分機能が使えればいいしこれで十分だろう」と思っていました。
しかし、FileMergeだとデザインが微妙な上、差分がある行が詰まっていくので見にくくなってしまいます。
また、KaleidoscopeをGitのコンフリクト解消時に使用するとかなり使いやすいです(FileMergeも使用可能だけど、前述の通り使いにくいため、慎重な作業であるコンフリクト解消に使うのは少し怖い)。
Kaleidoscope

ダウンロードは公式サイトから購入してダウンロードする方法と、MacApp Storeから購入してダウンロードする方法がありますが、公式サイトからのダウンロードをオススメします。
公式サイトからダウンロードする場合は、フリートライアルも可能です。
Kaleidoscopeの使い方
使い方はKaleidoscopeを開いて、「Drag Files Here to Compare」と書かれたウインドウに2つのファイルをドラッグアンドドロップするだけです。

ドラッグできるファイルの種類は下記の通り
- フォルダ
- テキストファイル
- 画像
フォルダを選ぶとフォルダ内で差分が表示されます。
差分時の色はデフォルトだと下記のようになっています。
| 色 | 意味 |
|---|---|
| 緑色 | 追加されたファイル・フォルダ |
| 赤色 | 削除されたファイル・フォルダ |
| 紫色 | 変更されたファイル・フォルダ |

ファイルを選択して、下メニューのファイルの移動アイコンをクリックして「Copy」を押すとファイルのコピーができます。
ちなみにフォルダ階層の中に入る場合は、別タブとして開かれていくので、戻りたいときはタブを閉じる(command + W)で元の階層へ戻れます。
コードの場合も同様で、変更があった箇所が分かりやすくハイライトされています。

画像の差分があった場合には画像を重ねて見比べることもできます。

Kaleidoscopeの設定
Kaleidoscopeの[Preferences]では、ファイルの種類ごとの表示に関する設定ができます。
Images
[Images]では画像を比較したときの表示設定をします。
![Kaleidoscope[images]](https://webrandum.net/mskz/wp-content/uploads/2019/11/image_6-1-760x1024.png)
| 項目 | 設定内容 |
|---|---|
| Image Navigator | Show Automatically:イメージナビゲーターを自動的に表示 Never Show:イメージナビゲーターを非表示 |
| Background Color | 背景色の設定 |
| Transparency Rendition | 透明部分の表現の設定 |
| Difference Rendition | 変更箇所のピクセルが強調表示される設定 Absolute:ハイライトの強度が一律になる Proportional:ハイライトの強度がピクセルの変化に比例する |
| Difference Coloring | 変更箇所の差分の色 |
Text
[Text]では普通のテキストファイルを比較したときの表示設定をします。
![Kaleidoscope[Text]](https://webrandum.net/mskz/wp-content/uploads/2019/11/image_7-1.png)
| 項目 | 設定内容 |
|---|---|
| Background Color | 背景色を「Light(白)」にするか「Dark(黒)」にするかの設定 |
| Difference Coloring | 変更した部分の表示色設定 Multicolored:「追加」「変更」「削除」で色が分かれる Single Color:変更箇所の色が全て1色になる |
| Font | テキストファイル内のフォント指定 |
| Layout | 長い行を折り返すようになる |
| Whitespace | 空白の違いを無視(タブとスペース)するようになる |
Folders
[Folders]ではフォルダを比較したときの表示設定をします。
![Kaleidoscope[Folders]](https://webrandum.net/mskz/wp-content/uploads/2019/11/image_8-1.png)
| 項目 | 設定内容 |
|---|---|
| Hidden Files | 不可視ファイルも表示して比較する |
| Copy Files | ファイルコピー時にポップアップを表示する |


ウインドウリサイズ系のアプリMagnet・ShiftIt・BetterTouchToolの比較
Google Chromeの別ユーザーへの切り替えを簡単に行うKeyboard Maestroマクロ
1Passwordを便利に使うための小技や整理術!
テキストエディタのAtomをインストールしたら最低限設定しておきたいアレコレ
ATOKの文字パレットの「漢字検索」で特定の漢字を探し出す方法
Google Chromeのタブを検索するAlfred Workflowの「Search Safari and Chrome Tabs」で、タブ移動をラクにする
タッチバーをタッチしないようにするという向き合い方
Gmailのラベルとフィルタ機能を使ってメールを自動的に振り分ける
高機能なランチャーアプリ「Alfred 4」がリリース!ダークモード対応やWorkflowが強化
テキストエディタ.app起動時に表示されるダイアログボックスを非表示にする方法
iTerm2で「Use System Window Restoration Setting」を設定しているとアラートが表示されて機能しない
Google Chromeのサイト内検索(カスタム検索)機能を別のプロファイルに移行する方法
iPadで入力モードを切り替えずに数字や記号をすばやく入力する方法
iPhoneやiPadでYouTubeの再生速度を3倍速や4倍速にする方法
Keynoteで有効にしているはずのフォントが表示されない現象
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
AirPodsで片耳を外しても再生が止まらないようにする方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
Eagleで実現するクリエイティブ素材の簡単管理
かゆいところに手が届く「Supercharge」でMac環境を便利にカスタマイズする
超軽量なコードエディタ 「Zed」をサブエディタとして活用する
Bartender 6で追加されたWidgets機能で自作メニューバーアイテムを簡単に作成する
Googleカレンダーを便利に活用するための小技集(祝日だけを表示・月末の繰り返しイベントを追加)
Obsidianを使った「自己流PKM」で行う知識トレーニング
テキストエディタ・ノートアプリ関連のショートカットキーをKeyboard Maestroで統一する
Path Finderを使ってキーボードだけでファイル操作する方法(応用編)
macOSのコマンドパレット比較!SpotlightとAlfred、Raycastどれを使えばいい?