サイトアイコン CAD日記

WinMergeのフィルタ

【2018/11/24追記】
この書きっぷりではあまりにもわかりずらいので、整理して追加情報を加えて新たな記事とした。
WinMegeのフィルタについて今すぐ知りたいならココを読め

プログラマにとってファイル比較は必須な作業だ。昔DFっていうとてもシンプルなファイル比較を使っていて重宝したもんだが、64bitOSで使えなくて更新もされないものだから世界的に使われているWinMergeを使いだした。ところがこいつがいろいろとよくわからないことがあって、そのうち調べようと思いつつなかなか使いこなせないでいた。直感的にわかるところだけでは幅が広がらないので、少し時間を使って調べてみたのだ。
特定の拡張子を除いて比較するにはどうしたらよいか?
初期状態ではWinMergeのフィルタの入力欄は「*.*」となっていて、あらゆるファイルを比較することになっている。「*.cpp;*.h」と入力すれば、限定した拡張子での比較ができることはわかった。逆に除くにはどうしたらよいかってこと。ファイルフィルタを使うしかなさそう。「選択…」ボタンを押して、既存のフィルタまたは自分で作ったフィルタを選ぶ。そうすると、フィルタ欄に[F]で始まるものがセットされる 。
特定の拡張子というのがVisual Source Safeの管理ファイルならば、既存フィルタの「Exlude Source Control」を選べばよい。そのフィルタ内には以下の記述がある。
f: \.(vs[sp])?scc$ ## Visual SourceSafe files
sccまたはvsssccまたはvspsccで終わるファイルという意味で、正規表現のなかなか難解な表現だ。
また、プログラム言語固有の余計なファイルも除外したい場合がある。C++だったら、Visual C++ looseを選べばよい。VSSのファイルも除きたければフィルタの編集で、Visual C++ looseに対して上記の1行を追加すればよい。フィルタファイルの詳細は以下のサイトが参考になった。
WinMerge のファイルフィルタ

モバイルバージョンを終了