問題タブ [winmerge]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
comparison - ファイルの 3 つ以上のバージョンを比較する
構成ファイルを使用する環境がいくつかあります。これらのファイルをマージするために、それらを比較できるようにしたいと考えています。ただし、5 つの環境がある場合に一度に 2 つのファイルを比較するのは非常に面倒です。
n 個のファイルを参照と比較する簡単な方法を提供するツールを知っている人はいますか?
winmerge - WinMerge: コンテンツは同じだがエンコーディングが異なるファイルを比較する方法は?
動機: ドキュメントを書き直しています -- 後で処理するテキスト ファイルです。新しいソースは UTF-8 を使用するようになりました。ソースの大部分は同じです。違いを見つける必要があります。
詳細:古いドキュメント ソースは cp1250 エンコーディングを使用し、新しいソースは UTF-8 を使用します。新しいソースと古いソースの両方で、同じ行末 (CR+LF) が使用されています。WinMerge アプリケーション (WinMergeU.exe) の Unicode バージョン、バージョン 2.12.4.0 を使用しています。
ほとんど機能しますが... 線が異なる場合、最初は濃い黄色でブロックとしてマークされ、異なる部分は明るい色を使用してマークされます。赤いブロック カーソルをそこに移動すると、下のペインに別の部分が表示されます。
ただし、テキスト (の Unicode 表現) が同じ場合にも、テキストのブロックは濃い黄色でマークされます。赤いブロックもファイルのそれらの部分に移動します。このような場合、下の 2 つのペイン (相違点を示す) には同じテキストが含まれており、相違点としてマークされているものはありません。下の図を参照してください。
最初の行が異なります - これは問題ありません。しかし、2 行目の内容は視覚的には同じです。ASCII 範囲外の唯一の文字がÚ
あります。エンコードされたソースでは異なる表現になっています。これにより、異なるものとしてマークされた行が発生しますが、下のペインでは、その行のどの部分も異なるものとしてマークされません。
まったく同じである次の段落も参照してください (ソースのエンコーディングのみが異なり、同じ行末が使用されます)。
最初の比較は、行のバイナリ表現に基づいているように見えます。WinMerge に、比較 (つまりブロック マーキング) が Unicode コンテンツに基づくべきであることを伝える設定はありますか?
私は一生懸命努力しましたが、まだ運がありません。
更新:上記の質問は、最新の安定版 2.12.4 に対するものでした。ベータ版 2.13.22 は、私にとって完璧に機能します。以下の私の答えを見てください。
clearcase - winmerge への clearcase クエリの結果
コマンドラインで次のようなコマンドを使用して比較をトリガーすることにより、Winmerge で 2 つのファイルを比較できます。
次のような clearcase クエリを使用して、clearcase で特定のプロパティを持つファイルのリストをクエリできます。
私が望むのは、winmerge への入力として使用できる一連の clearcase クエリ結果を生成することです (つまり、ユーザーや日などの特定の基準を満たすチェックインで一連の diff コマンドを生成します)。
ファイル要素のリストを取得するための clearcase クエリを作成するにはどうすればよいですか (clearcase で参照可能、つまり winmerge は動的ビューでバージョンへのパスを開くことができます)、対応するファイルの以前のバージョンを取得するにはどうすればよいですか?
これを winmerge にフォーマットするビットは、次のようになります。
accurev - WinMerge を差分/マージ ツールとして使用するように AccuRev を構成することはできますか?
AccuRev の[ Diff/Merge Preferences] タブで、差分ツールとマージ ツールをサードパーティ ツールの定義済みリストに切り替えることができることがわかりました。
これらは私が持っている選択肢です:
差分
- アキュレブ
- TkDiff
- アラシス
- BeyondCompare V1
- BeyondCompare V2
- ギフィー
マージ
- アキュレブ
- TkDiff
- アラシス
- ギフィー
これらのリストに WinMerge を追加することは可能ですか? もしそうなら、どのように?
php - 非常に大きなファイル間の違いをphpで強調表示する
2 つの非常に大きなファイルの違いを示す Web インターフェイスを作成したいと考えています。通常は winmerge を使用しますが、サーバーにログインしてファイルをコピーし、比較する必要があります。私の好みにはあまりにも多くのステップがあります。基本的に同じことを行う Web インターフェイスを書きたいと思います。このようなことを行う、信頼できる優れたphpライブラリを知っている人はいますか? このファイルは 20,000 行の長さなので、信頼性が必要であり、超高速である必要はありません。
winmerge - Winmerge-単一の違いとしてブロック
以下のスクリーンショットをご覧ください。
次のテキストが黄色で強調表示されているのはなぜですか。これはTest2です。テキストは両方のファイルに表示されます。
次のWebサイトから引用を見つけました:http://manual.winmerge.org/Intro_diffs.html。引用は次のとおりです。「行のブロック全体を単一の違いとして扱うことも有用です」。したがって、ブロックが単一の違いとして扱われている場合、私はさまよっています。これはどこで構成されていますか?
winmerge - WinMerge - シフト/移動されたコード ブロックを並べる方法はありますか?
WinMerge を使用しているときに、ファイルの残りの部分が比較で同期されない関数にコード ブロックが挿入されているファイルを見ています。私のものははるかに複雑ですが、基本的には以下の単純な例と同じです:
WinMerge は、for ループを挿入されたブロックとして認識し、ファイルの残りの部分を同じように表示する代わりに、4、5、6、7、8 行目の違いを示します。ファイル 1 の 4 行目からファイル 2 の 7 行目を同期し、よりクリーンな差分にすることを期待しています。これには設定がありますか?「Moved Code Block」設定で遊んでみましたが、ファイル内の後で一致するコード ブロックを並べるのではなく強調表示するだけです。
助言がありますか?
winmerge - WinMerge の行番号
WinMergeを使い始めました。ファイル内を簡単に移動できるように行番号を表示したいと思います。オプションが見つかりません。
誰かが私がそれをオンにできる場所を知っていますか、それとも可能ですか?
c# - C# 用の protobuf-net で生成されたファイルは、C++ で生成された同じファイルとは少し異なります
有線の問題があります。C# 用の protobuf-net を使用して、Google Protocol Buffer メッセージに基づいてファイルを生成し、会社のサーバーの 1 つにアップロードしています。
.proto ファイルを .cs に生成するツールを C# で作成し、そのクラス (.cs ファイルから) を使用してメッセージのすべての必須フィールドに入力し、その後 Serializer.Serialze() 関数を呼び出しました。そして、要求されたファイルを作成します。
しかし、これが問題です。C++で記述された別のツールで作成された別のファイル(同じファイル)があります(使用したのと同じ.protoファイルを使用します)が、サーバーにファイルをアップロードしようとすると何かが間違っているというエラーが表示されます。
2 つのファイルを「Win Merge」ソフトウェアと比較したところ、C++ ツールで生成されたファイルと比較して、3 つの異なる行 (各ファイルの 7000 行以上) にほとんど違いがないことに気付きました。
Win Merge ツールからキャプチャされた 2 行の例を次に示します (左側が C++、右側が C#)。
違いは長方形(そこに何の意味があるのか わかりません)にあり、その中にバイトがあることに気づきました...
私が使用している .proto ファイルは次のとおりです。
}
.cs ファイルに挿入するフィールドは文字列であり、ファイル (*.bin) は文字列の例です。
「パワーマスター-30」
「JS702394 K17.A20」
等..
これらは、.proto ファイルのほとんどの文字列フィールドに挿入されます。
ファイル フィールド (.proto) に、会社が使用するバイナリ ファイル (C++ ツールに読み込まれたファイルと同じファイル) を読み込みます。
これは、「Falsher.exe」というプログラムで開かれた、データを読み取っているバイナリ ファイルのスクリーン ショットです。左側は 16 進ビューに変換され、右側は ASCII です。
そして、そのバイナリファイルを読み取るコードは次のとおりです。
結局のところ、このコードを使用してファイルを生成しています。
正確には何が違いで、どのような理由で起こったのかを説明してくれる人がいますか?
ありがとうございました!!
オリオン。