我正在处理相当大的文档,并想使用 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 变量,但似乎没有任何效果。
有任何想法吗?