Windows環境のvimエディタでdiff機能を使うには
vimエディタのdiff機能は「diff」コマンドが実行できる状態でないと使用できません。 Windows環境に「diff」コマンドはインストールされていないので、 vimエディタで「diffsplit」などの機能を使用するには、 何らかの方法で「diff」コマンドが使えるようにする必要があります。 この記事では、その「diff」コマンドの入手方法を説明します。 (Windows)
概要
vimエディタのdiff機能は「diff」コマンドが実行できる状態でないと使用できません。
Windows環境に「diff」コマンドはインストールされていないので、
vimエディタで「diffsplit」などの機能を使用するには、
何らかの方法で「diff」コマンドが使えるようにする必要があります。
この記事では、その「diff」コマンドの入手方法を説明します。
Note
「diff」コマンドのインストールされていないvimエディタで
「VDSplit」コマンドを実行したところ、
次のようなエラーが表示されました。
E97: 差分を作成できません。
↓
エラーが発生した時は「help」コマンドを使用すれば、
その原因が分かるときがあります。
vimエディタを使いつづけていくのであれば、
必ず役に立つので覚えておきましょう。
:help E97
*E97* Vim will do a test if the diff output looks alright. If it doesn't, you will get an error message. Possible causes: - The "diff" program cannot be executed. - The "diff" program doesn't produce normal "ed" style diffs (see above). - The 'shell' and associated options are not set correctly. Try if filtering works with a command like ":!sort". - You are using 'diffexpr' and it doesn't work. If it's not clear what the problem is set the 'verbose' option to one or more to see more messages. The self-installing Vim includes a diff program. If you don't have it you might want to download a diff.exe. For example from http://jlb.twu.net/code/unixkit.php.
「diff」コマンドを入手する方法
Windows環境で「diff」コマンドを使えるようにするには、次のような方法が考えられます。
- 「diff」コマンドの実行ファイルを入手する
- cygwinをインストールする
この記事では、上の方法、「diff」コマンドの実行用のバイナリを入手し、
それをvimエディタから参照できる場所にコピーする方法を説明します。
Note
cygwinをインストールする場合はcygwinのサイトに行き、
setup.exeをダウンロード、実行してください。
http://www.cygwin.com/
「diff」コマンドのインストール
「diff」の実行用バイナリを入手する
Windows用の「diff」コマンドのバイナリは、次のサイトで入手できます。
このサイトから「Binaries」「Dependencies」の2つのファイルをダウンロードしてください。
「DiffUtils for Windows」
http://gnuwin32.sourceforge.net/packages/diffutils.htm
ダウンロードしたファイルを解凍すると、
それぞれの「bin」ディレクトリに「diff」コマンドに必要な
実行ファイルとライブラリが入っています。
- cmp.exe
- diff.exe
- diff3.exe
- sdiff.exe
- libiconv2.dll
- libintl3.dll
「diff」の実行用バイナリをvimエディタから参照できる場所にコピーする
vimエディタから「diff」実行ファイルを参照するには、 次のような方法があります。
- PATHの通った場所にコピーする
- vimエディタのインストールディレクトリにコピーする
お勧めは後者です。
vimエディタのインストールディレクトリに、
「diff」の実行ファイルとライブラリをコピーしてください。
Recent Comments
ありがとうございます!
http://nanasi.jp/articles/howto/editing/visualcursor-endtoend.html · 7 years ago
知りませんでした。有難うございました。
http://nanasi.jp/articles/howto/file/open-with-format.html · 9 years ago
<c-f>1ページ分、下にスクロールする<c-b>1ページ分、上にスクロールする
どっちも逆です。
http://nanasi.jp/articles/howto/user-manual/user-manual-motion.html · 10 years ago
set 使用時に : で閉じるのを忘れて右往左往してました。
http://nanasi.jp/articles/howto/file/modeline.html · 10 years ago
やっぱり日本語の方が早いっす。
http://nanasi.jp/articles/howto/help/help_ja.html · 11 years ago