以来ediff-files、Windowsマシンediff-buffersでapply: Searching for program: no such file or directory, diffエラーが発生します。
WindowsシステムでEmacsを使用して2つのファイルを比較する方法は?
exec-path変数上にあるべきだと思います。
以来ediff-files、Windowsマシンediff-buffersでapply: Searching for program: no such file or directory, diffエラーが発生します。
WindowsシステムでEmacsを使用して2つのファイルを比較する方法は?
exec-path変数上にあるべきだと思います。
回答:
@nannyがコメントで言ったように、解決策はdiffutilsでCygwinをインストールしたことです。これを行う方法は次のとおりです。
diffutils: A GNU collection of diff utilitiesパッケージとともにCygwinをインストールします。このパッケージはUtils、Cygwinインストールのいくつかのステップの1つにあるセクションにあります。

;
この後には、呼び出すことができますediff-buffers、ediff-filesそして成功した他の人。これは次のようになります。
楽しい!
これにより時間を節約できる可能性があるため、ここで回答します。cygwin binディレクトリをパス(または他の回答で提案されている他のディレクトリ)に追加したくない場合は、変数を設定して、ediffが使用するプログラムのパスを設定できますediff-diff-program。たとえば、C:\cygwin\bincygwinを使用している場合は、(または実際のパスが何であれ)に設定できます。設定する変数を見つけるのに少し時間がかかりました。仕事をしなかったことをいくつかは以下の通りであった。ediff-custom-diff-programとdiff-command。
例えば:
(setq ediff-diff-program "c:/CYGWIN64/bin/diff.exe")
それを行います。
PATH変数が正しく設定されているはずのCygwinからEmacsを実行した場合にのみ機能すると思います。私が間違っていたら訂正してください。
差分を生成する必要はないが、ファイル間の違いを見つけたいだけの場合は、M-x compare-windows代わりに使用する方法があります。
2つのファイルが同時に表示されるように2つのファイルを開き、両方のバッファーでポイントを先頭に移動して、を実行しM-x compare-windowsます。ファイルが異なる最初の場所にポイントを移動します。これは、外部の実行可能ファイルなしで動作するはずです。
コマンドラインインストーラーhttps://scoop.sh/を使用する場合は、プロンプトをdiff入力scoop install diffutilsして取得できます。