我遇到了一个奇怪的问题(对我来说),涉及 itemize 环境和\marginpar{}
。该问题在以下文档中进行了说明:
\documentclass{article}
\newcommand{\todo}[1]{\marginpar{\small\flushleft #1}}
\begin{document}
\begin{itemize}
\item first item
\item \todo{the second item is missing} third item
\end{itemize}
\end{document}
我原本期望得到类似的输出
- 第一项
- 第三项
旁边还有一条边注,写着“第二项缺失”。但我得到的却是以下内容:
IE第二个项目符号的黑点不知何故出现在了边缘!如果我在逐项列表中替换,则不会发生此问题\todo
,\marginpar
因此使用宏在某种程度上是此问题的一部分。
我的问题:
这里出了什么问题?
我该如何修复我的
\todo
宏以避免此问题?
答案1
您的问题是\flushleft
应该将 which 用作环境。\raggedright
而应使用 which 作为开关。
\documentclass{article}
\newcommand{\todo}[1]{\marginpar{\raggedright\small#1}}
\begin{document}
\begin{itemize}
\item first item
\item \todo{the second item is missing} third item
\end{itemize}
\end{document}
我希望marginnote
有更好的定位。
\documentclass{article}
\usepackage[fulladjust]{marginnote}
\newcommand{\todo}[1]{\marginnote{\raggedright\small#1}}
\begin{document}
\begin{itemize}
\item first item
\item \todo{the second item is missing} third item
\end{itemize}
\end{document}