13
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

latexdiff で変更後のみを赤く強調.

Posted at

はじめに.

latexdiff は二つのTeXのソースコードを比較する際に便利なコマンドです.たとえば,before.tex に見つけたスペルミスを訂正して after.tex に保存したとします.latexdiff を使うと次のように,二つのファイルのどこが異なるのかがひと目で確認できます.
[latexdiff の標準的な出力]
Screen Shot 2021-05-13 at 16.29.22.png
ところが,訂正後のみを強調させるだけでよく,訂正前の記載が邪魔になることがしばしばあります.つまり,以下のように出力したくなるわけです.
[理想的な出力]
Screen Shot 2021-05-13 at 16.37.47.png
ここではこの方法を記載します.

方法.

ここでは以下の before.tex を訂正し,after.tex として保存した場合を考えます.

before.tex
\documentclass{jlreq}
\begin{document}
以下の文章を訂正します.\\
 hallo warld ? \\
こんにちわ世界.
\end{document}
after.tex
\documentclass{jlreq}
\begin{document}
以下の文章を訂正します.\\
 hello world ? \\
こんにちわ世界.
\end{document}

latexdiff を使い,diff.tex を生成します.

bash
$ latexdiff before.tex after.tex > diff.tex

diff.tex を vi 等のテキストエディタで開き,プリアンプルにある次の二行を書き換えます.

diff.tex(変更前)
(前略)
\providecommand{\DIFadd}[1]{{\protect\color{blue}\uwave{#1}}}
\providecommand{\DIFdel}[1]{{\protect\color{red}\sout{#1}}}
(後略)
diff.tex(変更後)
(前略)
\providecommand{\DIFadd}[1]{{\protect\color{red}#1}}
\providecommand{\DIFdel}[1]{{}}
(後略)

最後に,diff.tex をLuaLaTeXなどの適切なエンジンでコンパイルします.すると,上記 [理想的な出力] が出力されたdiff.pdf が得られます.

13
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?