我刚刚发现传递一个disable
选项会导致构建失败,我创建了一个简单的代码来重现相同的错误:
\documentclass[]{article}
\usepackage[disable]{easy-todo} %this failed
%\usepackage[enable]{easy-todo} %this works OK
\begin{document}
\section{good}
\todo{hi}
\end{document}
错误日志信息为:
! You can't use `\unskip' in vertical mode.
\todo #1->\todoii {#1}{#1}\unskip
l.9 \todo{hi}
Sorry...I usually can't take things from the current page.
Try `I\vskip-\lastskip' instead.
但如果我使用该enable
选项,它就可以正常工作。有什么办法可以解决这个问题吗?
答案1
由于错误是无法在垂直模式下执行命令,因此您可以跳过它\leavevmode
并进入水平模式。
代码
\documentclass[]{article}
\usepackage[disable]{easy-todo}
\begin{document}
\section{good}
\leavevmode\todo{hi}
\end{document}
更新
或者等价的
\documentclass[]{article}
\usepackage[disable]{easy-todo}
\let\oldtodo\todo
\renewcommand{\todo}{\leavevmode\oldtodo}
\begin{document}
\section{good}
\todo{hi}
\end{document}