はじめに
使ってて不便を感じたので設定を見直してみた。
特に複数ファイルのリビジョン比較する際にウィンドウ開きまくるのとか、空白検知とか。
よくやる使い方(一応)
- TortoirseSVNで管理しているフォルダのShow Logする。
- 比較したいリビジョンをShiftキーやCtrlキーを押しながらクリックする。
- 選択したうえで右クリックしてCompare Revisionsする。
- TortoirseSVNとWinMerge連携してたら、ダブルクリックでWinMergeが起動する。
- 複数ファイルを開くとWinMergeはタブで見れるのにウィンドウを開いてしまう。←これが嫌
基本の設定
まずは公式のドキュメントに従って、TortoirseSVNのDiffビューワーを設定する。
Tortoiseがインストールされてる人は、
エクスプローラ右クリックしてTortoiseSVN>Setting(もしくは設定)>DiffViewerで設定する。
WinMerge の設定例:
C:\Path-To\WinMerge.exe -e -ub -dl %bname -dr %yname %base %mine
※Path-Toは任意に変える
オプションパラメータを変えよう
特にWinMerge.exe以降のパラメータが大事。
-e -ub -dl %bname -dr %yname %base %mine
それぞれこんな意味
オプションの意味
| パラメータ | 意味 |
|---|---|
| e | EscキーでWinMergeが閉じる |
| ub | 最近使用した項目に追加しない |
| dl | 左側タイトルバーの説明を指定 |
| dr | 右側タイトルバーの説明を指定 |
パラメータの意味
| パラメータ | 意味 |
|---|---|
| %bname | 変更前ファイルのウィンドウタイトル |
| %yname | 変更後ファイルのウィンドウタイトル |
| %base | 変更前のファイル |
| %mine | 変更後のファイル |
ファイル名を指定しておくとよい感じ。そうでないとtmpとかになる。
個人的にはオプションに
| パラメータ | 意味 |
|---|---|
| s | 既存ウィンドウで比較実行 |
をつけると複数ウィンドウできずにタブできるので良いと思う。
WinMerge自体の設定をする
下記がおすすめ
- View>Launguageから 日本語に設定する
編集>設定
>一般
- 自動的に最初の際にスクロールする
- スプラッシュ画面を非表示
- 複数のインスタンスを起動しない →これで複数ウィンドウを開かなくなる。
- 開くダイアログのオートコンプリート →最近使ったリスト
>比較
- 空白 変更を無視する
- 空行を無視する
パラメータ一覧
| パラメータ | 意味 |
|---|---|
| %base | 変更前のファイル |
| %bname | 変更前ファイルのウィンドウタイトル |
| %brev | 元ファイルのリビジョン(もしあれば) |
| %burl | 元ファイルのURL(もしあれば) |
| %fname | 競合ファイルの名前 |
| %mine | 変更後のファイル |
| %nqbname | 引用符なしの変更前ファイルのウィンドウタイトル |
| %nqbrev | 引用符なしの元ファイルのリビジョン(もしあれば) |
| %nqburl | 引用符なしの元ファイルのURL(もしあれば) |
| %nqfname | 引用符なしの競合ファイルの名前 |
| %nqpeg | 引用符なしのペグリビジョン(もしあれば) |
| %nqyname | 引用符なしの変更後ファイルのウィンドウタイトル |
| %nqyrev | 引用符なしの第2ファイルのリビジョン(もしあれば) |
| %nqyurl | 引用符なしの第2ファイルのURL(もしあれば) |
| %peg | ペグリビジョン(もしあれば) |
| %yname | 変更後ファイルのウィンドウタイトル |
| %yrev | 2番目のファイルのリビジョン(もしあれば) |
| %yurl | 2番目のファイルのURL(もしあれば) |
ちなみに
ExcelもWinMergeできるけど
ExcelはTortoiseSVNのDiffすれば勝手にExcelで比較してくれるからあまり必要ないか。
参考リンク
こんなのもあった
画像も比較できるぽい