latexdiff:忽略插入的命令

latexdiff:忽略插入的命令

我正在处理相当大的文档,并想使用 latexdiff 直观地展示不同版本的差异。

我的旧文档没有使用花哨的词汇表,而新文档使用了。现在,latexdiff 会显示文本中任何词汇表条目的所有替换,产生大量差异,但实际上这些差异并不存在。

最小工作示例:

旧文本

\documentclass{article}

\newcommand{\foo}[1]{#1}

\begin{document}

Bla.

\end{document}

新特克斯

\documentclass{article}

\newcommand{\foo}[1]{#1}

\begin{document}

\foo{Bla}.

\end{document}

latexdiff 旧.tex 新.tex > diff.tex:

\documentclass{article}
%DIF LATEXDIFF DIFFERENCE FILE
%DIF DEL old.tex   Tue Mar 29 09:47:08 2016
%DIF ADD new.tex   Tue Mar 29 09:47:53 2016

\newcommand{\foo}[1]{#1}
%DIF PREAMBLE EXTENSION ADDED BY LATEXDIFF
%DIF UNDERLINE PREAMBLE %DIF PREAMBLE
\RequirePackage[normalem]{ulem} %DIF PREAMBLE
\RequirePackage{color}\definecolor{RED}{rgb}{1,0,0}\definecolor{BLUE}{rgb}{0,0,1} %DIF PREAMBLE
\providecommand{\DIFadd}[1]{{\protect\color{blue}\uwave{#1}}} %DIF PREAMBLE
\providecommand{\DIFdel}[1]{{\protect\color{red}\sout{#1}}}                      %DIF PREAMBLE
%DIF SAFE PREAMBLE %DIF PREAMBLE
\providecommand{\DIFaddbegin}{} %DIF PREAMBLE
\providecommand{\DIFaddend}{} %DIF PREAMBLE
\providecommand{\DIFdelbegin}{} %DIF PREAMBLE
\providecommand{\DIFdelend}{} %DIF PREAMBLE
%DIF FLOATSAFE PREAMBLE %DIF PREAMBLE
\providecommand{\DIFaddFL}[1]{\DIFadd{#1}} %DIF PREAMBLE
\providecommand{\DIFdelFL}[1]{\DIFdel{#1}} %DIF PREAMBLE
\providecommand{\DIFaddbeginFL}{} %DIF PREAMBLE
\providecommand{\DIFaddendFL}{} %DIF PREAMBLE
\providecommand{\DIFdelbeginFL}{} %DIF PREAMBLE
\providecommand{\DIFdelendFL}{} %DIF PREAMBLE
%DIF END PREAMBLE EXTENSION ADDED BY LATEXDIFF

\begin{document}

\DIFdelbegin \DIFdel{Bla}\DIFdelend \DIFaddbegin \DIFadd{\foo{Bla}}\DIFaddend .

\end{document}

我怎样才能让 latexdiff 忽略命令 \foo 的任何插入?

我尝试使用 latexdiff 的各种命令行选项(--exclude-safecmd 等)以及 PICTUREENV 变量,但似乎没有任何效果。

有任何想法吗?

相关内容