隐藏边注

隐藏边注

写作时我倾向于使用 添加大量注释\marginpar。有没有办法在打印最终版本之前隐藏它们?

答案1

您可以使用多种方法。一种方法是使用另一个包,例如,todo或者您可以简单地定义一个命令,如下所示,这在语义上可能也更适合注释。

\documentclass{article}
\usepackage{lipsum,xcolor}

\def\noteson{%
\gdef\note##1{\mbox{}\marginpar[$\leftarrow$ ##1]{%
    \color{blue}$\leftarrow$ ##1}}}
\gdef\notesoff{\gdef\note##1{}}
\noteson
% Comment line above and uncomment to hide notes
%\notesoff
\begin{document}
\note{Adams disagrees on this issue.} This is some lipsum text
\lipsum[1-7]
\note{Check the reference out.} This is some lipsum text
\end{document}

\notesoff您可以使用或打开或关闭它们\noteson

在此处输入图片描述

如果你想使用该todo包,请查看帖子如何添加待办事项?

答案2

你可以使用这个comment包(http://www.ctan.org/pkg/comment)。一个小例子(改为\includecomment{note}隐藏\excludecomment{note}边注):

\documentclass{book}
\usepackage{lipsum}
\usepackage{comment}

\includecomment{note}

\begin{document}

text text text text
\begin{note}
\marginpar{a margin note}
\end{note}
text text text

\end{document}

答案3

只需重新定义命令即可不执行任何操作:

\renewcommand{\marginpar}[2][]{}

答案4

我采取了两种方法 - 一种是使用opt包,它将输出与可以切换的标签联系起来:

\newcommand{\marpar}[1]{\opt{note}{\marginpar{\fnsize #1}\index{TODO}}}

如果环境无法使用,抑制那些修改后的 marginpars 的输出的另一种方法opt是隐藏\marginpar永远不会被调用的宏的内部。

\newcommand{\marpar}[1] {{\newcommand{\lastunprintedcommand}{\marginpar #1}}}

相关内容