Sublime Text 3 の参考書(実践編)Wiki

to achieve your goal ! 〜目的別の設定を解説〜

ユーザ用ツール

サイト用ツール


コンテンツメニュー

コンテンツメニュー

Sublime Text とは

how-to:sublimerge

ファイル比較する方法 ~Sublimerge~

エンジニアにとって必須ツールの一つがファイル比較できるDIFFツールではないでしょうか。

そんなファイル比較をSublime Textでやる方法をご紹介します。

Sublime Text でファイル比較するために使用するプラグインがSublimergeです。

Sublimerge とは

Sublime Text でファイル比較するためのプラグインです。

  • 普段使っているSublime Textをそのまま使える。
  • シンタックスハイライト表示できる。
  • バージョン管理システムと連携できる。

といったところが魅力ではないでしょうか。

Sublimerge のインストール

  1. コマンドパレットを開きます。ショートカットは(mac :[cmd]+[shift]+[p], win/linux : [ctrl]+[shift]+[p])です。
  2. package installというように入力し、PackageControl: Install Packageを呼び出します。
  3. Sublimergeと入力し、Sublimergeをインストールします。

画面の説明とショートカット

In file view

:img:sublimerge-in-file-view.jpg

Sublime Text でファイルを開いている画面です。

Quick Panel の呼び出し

:img:sublimerge-quick-panel.jpg

In file viewで Quick Panelを呼び出すことができます。
ショートカットtは [ctrl]+[alt]+[d] です。

Quick Panel とは、現在の表示から呼び出せることが可能な Sublimerge のコマンドを表示してくれます。
Sublimerge 専用のコマンドパレットというイメージです。

基本的に、Quick Panelから Sublimerge の機能を呼び出し、ファイルを比較します。
その他にも、コマンドパレットやマウスの右クリックで Sublimerge を使うことができます。
ただし、呼び出せる機能に制限があるようなので、本記事では Quick Panel を使用して説明します。

In files diff view

:img:sublimerge-in-files-diff-view.jpg

Sublimerge でファイル比較している画面です。

キーバインディングズは以下のとおりです。

keybindings discription image
[/] Differences Navigator を表示 :img:sublimerge-differences-navigator.jpg
[↓] 次の差異へ
[↑] 前の差異へ
[←] 右から左へマージ
[→] 左から右へマージ
[shift]+[←] 全ての差異を右から左へマージ
[shift]+[→] 全ての差異を左から右へマージ
[ctrl]+[enter] 編集モードに切り替え

In directories diff view

:img:sublimerge-in-directories-diff-view.jpg

ディレクトリ同士を比較する画面です。

主に以下の差異がわかりやすく表示されます。

  • ファイルの有無の比較
  • ファイルの中身の差異
  • サブディレクトリの差異
keybindings discription image
[enter] サブディレクトリを開く
差異のあるファイルを開く
[↓] 次の差異のあるファイルまたはディレクトリを選ぶ
[↑] 前の差異のあるファイルまたはディレクトリを選ぶ
[←] 選択している差異を右から左へマージ
[→] 選択している差異を左から右へマージ
[shift]+[←] 全ての差異を右から左へマージ
[shift]+[→] 全ての差異を右から左へマージ

使い方

ここでは、よく使うSublimergeの使い方を説明します。

ローカルファイルの比較

まずはPCに保存してあるローカルファイルの比較方法です。

Sublimerge のコマンドの実行方法は以下の通りです。

Quick Panel [ctrl]+[alt]+[d]で Quick Panel を呼び出し、使いたいコマンドを選ぶ。 :img:sublimerge-quick-panel.gif
コマンドパレット コマンドパレットを開き、sublimerge ***と入力し、使いたいコマンドを選ぶ。
マウスの右クリックから 比較したいファイルで[右クリック]→[Sublimerge]から好きなコマンドを選ぶ。 :img:sublimerge-right-click.gif

現在開いているファイルとの比較

  1. Sublime Text で比較したいファイル2つ開きます。
  2. [ctrl]+[alt]+[d]で Quick Panel を開きます。
  3. Compare to View…を選択します。
    • 2つしかファイルを開いていない場合は、Compare to [another file name]というようにもう1つのファイル名が表示されます。
    • 3つ以上ファイルを開いている場合は、Compare to View…と表示されますので、それを選択後、比較したいファイルを選択します。

バージョン管理しているファイルのバージョン比較

バージョン管理しているファイルのバージョン比較をすることができます。

対応しているバージョン管理システムは以下の3つです。

  • Git
  • Subversion
  • Mercurial
本記事は、Gitでバージョン管理しているファイルで動作検証しました。

現在開いているファイルと過去のバージョンとの比較

  1. Sublime Text でバージョン管理している比較したいファイルを開きます。
  2. [ctrl]+[alt]+[d]で Quick Panel を開きます。
  3. Compare to Revision…を選択します。
  4. 比較したいリビジョンを選びます。

過去のバージョン同士の比較

  1. Sublime Text でバージョン管理している比較したいファイルを開きます。
  2. [ctrl]+[alt]+[d]で Quick Panel を開きます。
  3. Compare Revision to Revision…を選択します。
  4. 比較したいリビジョンを2つ選びます。

HEAD(作業中のブランチ)とコミット前のファイルとの比較

  1. Sublime Text でバージョン管理されている任意のファイルを開きます。
  2. [ctrl]+[alt]+[d]で Quick Panel を開きます。
  3. Show Uncommited Changes…を選択します。
  4. コミット前の編集済みファイルの一覧が表示されるので、比較したいファイルを選びます。

ディレクトリ比較

ディレクトリ同士を比較することができます。

  1. Sublime Text のサイドバーに比較したい2つのディレクトリをドラッグアンドドロップします。
  2. サイドバーで比較したいディレクトリを2つ選択します。
    • Win/Linux の場合は、[ctrl]を押しながら右クリックを押して選択します。
    • Mac の場合は、[cmd]を押しながら右クリックを押してく選択します。
  3. 選択したディレクトリの上で、右クリックを押し、Sublimerge → Compare Selected Directoriesを選択します。
  4. In directories diff viewが表示されます。

注意事項

Sublimerge は、文字コードが UTF-8 にしか対応していません。
UTF-8以外は文字化けしてしまいます。。。

ライセンスについて

Sublimerge は有料のプラグインです。

しかし、評価版の試用期間は無制限です。
評価版は、Quick Panel を呼び出す際に、定期的にライセンス購入を促されるだけで、機能が劣るわけではありません。

好きなだけ使い倒して、気に入ったら感謝を込めてライセンスを購入しましょう。

おわりに

いかがでしょうか。

かなり直感的に使用できるツールなので、非常に使いやすいと思います。

その他にも以下の様な機能があります。

  • Snapshotをとって、そのSnapshotと比較できる。
  • コピーした Clipboard と比較できる。
  • などなど

一度、本家サイト を参照してみるとよいと思います。

参考

how-to/sublimerge.txt · 最終更新: 2015/02/16 23:37 by seitaro

Copyright(c) Sublime Text 3 の参考書(実践編) 2015 All Rights Reserved.