写作时我倾向于使用 添加大量注释\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}}}