如何在没有草稿选项的情况下使用回忆录更改标记

如何在没有草稿选项的情况下使用回忆录更改标记

经过深思熟虑和实验后,我得出结论,我想使用回忆录出于对客户的尊重,我\changemarks可以向客户指出我的提案在我们讨论后发生了哪些变化。

但是,除非使用类选项,\changemarks否则和朋友会被抑制。但使用会给我带来一些可怕的副作用,例如丢失图形和偶尔(!)溢出的框边缘的斑点,以及语义不真实。draftdraft

最初,我考虑过 latexdiff(对我的文件造成不良影响)、changebars(似乎不支持 xelatex)和 changes(与 memoir 冲突),但出于上述原因,我放弃了它们。现在,我已投入大量精力研究原生 memoir 解决方案,不知道该往哪个方向发展。

有人能建议一个合理的快速解决办法吗?

答案1

快速解决方法是重新定义内部宏\v@rid

\documentclass[changemarks]{memoir}
\makeatletter
\renewcommand{\v@rid}[2]{%
  \@bsphack
  \ifchangemarks
     \marginpar[#1]{#2}%
  \fi
  \@esphack}
\makeatother
\changemarks
\begin{document}
\added{text}
XXXXXXXXXXXXXXXX YYYYYYYYYYYYY
ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ
\end{document}​

此处,更改标记未显示draft。此外,黑色溢出的水平框标记未显示,如果您激活草稿选项,则会显示该标记。

最初,该宏包含

\ifchangemarks
   \ifdraftdoc
     \marginpar[#1]{#2}%
\fi\fi

我通过上面的重新定义删除了检查。此宏由、和\ifdraftdoc所使用。\added\deleted\changed

相关内容