.texファイルの変更を確認する


8

私には2つのファイルがpaper.texありpaper_suggested_changes.tex、後者は前者を修正したバージョンです。

2つのファイルを調べ、どの変更を受け入れるか拒否するかを選択する必要があります。これをどのように実行しますか?


また、tex.sxでこの質問を確認することもできます。tex.stackexchange.com/ questions
65453

回答:


12

Meldなどのユーティリティをインストールします(これを行うためのユーティリティ他にもありますが、KDE ​​/ GNOMEに依存しないためMeldが好きです)。ファイルを視覚的に比較/マージするために使用します。

Meldは、開発者向けの視覚的な差分およびマージツールです。Meldは、ファイル、ディレクトリ、バージョン管理されたプロジェクトの比較に役立ちます。ファイルとディレクトリの両方の2者間および3者間比較を提供し、多くの一般的なバージョン管理システムをサポートしています。

ここに画像の説明を入力してください


2
わぁ、いいね!数か月前にこれが見つからなかったのはなぜですか?本当にありがとう。
Sigur

10

vimがデフォルトのエディターなので、私は確かにvimdiffを使用します。簡単にするため、最初にエディターにdiffオプションがあるかどうかを確認してください。

多くのグラフィカルツールがあり、最も使いやすいのはMeldです(Renanの提案による)。

また、latexdiffを使用して、すばらしいPDF形式で違いを確認することも検討してください。

latexdiff paper.tex paper_suggested_changes.tex > changes.tex
pdflatex changes.tex

これにより、さまざまな色の変更を含むchanges.pdfドキュメントが作成され、古いものが削除されます。


3

私はメルドを使用したことがありませんが、@ Renanによって投稿されたスクリーンショットに基づいて、それは目的のためにかなりよさそうです。

私はこれにvimを使用していますが、キーストロークを使用して違いをナビゲートして操作する方法を学ぶことを気にしない場合は、完全に機能します。これを学ぶことの利点はvim、ほとんどの* NIXシステムに存在する可能性が高いため、追加のソフトウェアをインストールする必要がないことです。使い方は次のとおりです。

  1. 次のいずれかを実行します。

    gvimdiff paper.tex paper_suggested_changes.tex
    gvim -d paper.tex paper_suggested_changes.tex
    vimdiff paper.tex paper_suggested_changes.tex
    vim -d paper.tex paper_suggested_changes.tex
    

    gvimdiffのショートカットgvim -dです。ない場合はgvimdiff、を使用してくださいgvim -d。同様にvimdiffgvim使用するよりも少し簡単ですvim

  2. 垂直分割ウィンドウが表示さpaper.txtれ、左側のバッファとpaper_suggested_changes.tex右側のバッファに、変更の種類に応じて異なる色で強調表示された違いが表示されます。たとえば、行が追加された、行が削除された、行が異なるなどです。

  3. キーシーケンスで次の違いにジャンプできます ]c

  4. キーシーケンスで前の違いにジャンプできます [c

  5. 他のファイルからの変更を受け入れて、カーソルのある現在のファイルに適用するには、変更の上にカーソルを移動してEnterキーを押しますdo

  6. 左右のバッファを切り替えるには、ctrl+を押しw wます。


1
:diffthisここで言及したいだけです。
Bernhard、


1

上記の推奨されるソリューションのいずれかを使用できます。vimに慣れている場合は、vimdiff / gvimdiffが最適です。Meldも良いですが、個人的にはbeyondcompareが好きです。これはmeldのような別のGUIツールです。meldは大きなファイルで誤解を招くことがあるので、meldからbcompareに切り替えました。Beyond Compareは、ubuntuソフトウェアセンターで利用できます。また、http: //www.scootersoftware.com/download.php このリンクから.debファイルをダウンロードできます。


0

ファイルのバージョン管理を使用することをお勧めします。バージョン管理システムでバージョンを追跡することで、作業がはるかに簡単になります。

学習する最も簡単なバージョン管理システムはCVSです。これは基本的なものです。つまり、その便利な機能をすぐに学ぶことができますが、より複雑なシステムの高度な機能のメリットは得られません。ファイルの連続する各バージョンをコミットし、を使用cvs diff paper.texして、新しいバージョンと最後にコミットされたバージョンcvs diff -r1.3 -r1.4 paper.texの違いを確認したり、バージョン1.3とバージョン1.4の違いを確認したりします。

複数のユーザーが同時にドキュメントを編集する場合、分散バージョン管理システムを利用できます。3つの一般的なDVCSは、BazaarGit、およびMercurialです。ブランチ上の各コントリビューターのバージョンをコミットします(さらに良いことに、共有用に単一のリポジトリーをセットアップし、各コントリビューターに作業をコミットさせます)。定期的にブランチ間でバージョンをマージします。DVCSは、既にマージした変更を追跡します—これは、誤って一部の作業を失わないようにするための大きな助けになります。DVCSのマージコマンドでは、1人のユーザーのみが変更したパーツも自動的にマージされるため、競合が発生しているパーツを手動でクリーンアップするだけで済みます。


3
それは、私の友人、非常識な考えです。コラボレーターが%を入力して新しい行を開始することができないため、比較する必要があるだけです。私はgitが非常に好きですが、他の人にgitを使用するように説得する可能性はまったくありません。
Lucas

0

xxdiff2つまたは3つのファイルの効果的な選択と結合に使用できます。また、ディレクトリを比較することもできます(2つのみ)。

それは見つけることができるここでは、多くのディストリビューションでもあります

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.