
私は現在、ドラフト版で実行すべき事項を示す必要がある文書に取り組んでおり、todo が非表示の最終版を作成したいと考えています。パッケージには、todonotes
これdisable
を実現するためのオプションがあります。コマンドで定義された todo は削除されます\todo
が、次のようなカスタム コマンドでは失敗します。
\newcommand{\minortodo}[2][]{\todo[color=green, #1]{#2}}
を使用した場合の最終的な PDF 出力は、\minortodo[inline]{change this to that}
まさに です[inline]change this to that
。todonotes
これらのインスタンスも非表示にするにはどうすればよいでしょうか? (注: インラインを削除しても問題は解決しません)。
編集: 次の最小限の動作例 (提案ありがとうございます) は、問題の原因が別にあることを示唆しています。これは期待どおりに動作します (つまり、マイナーな ToDo も消えます)。
\documentclass{book}
\usepackage[disable]{todonotes}
\newcommand{\minortodo}[2][]{\todo[color=magenta, #1]{#2}}
\begin{document}
Here's some text.
\todo[inline]{this todo goes away}
\minortodo[inline]{this one too}
\end{document}
実際のドキュメントでは、book
クラスを使用して次のパッケージをロードしますが、MWE に追加しても問題は発生しません。ドキュメントの実際のソースは、独自のテンプレートを使用せずに pandoc で処理された markdown ファイルであるため、この動作を引き起こす pandoc の挿入内容を調べる必要があると思います。
\usepackage{minitoc}\dominitoc
\usepackage{dot2texi}
\usepackage{tikz}
\usetikzlibrary{matrix}
\usetikzlibrary{shapes,arrows}
\usepackage{fancyvrb}
\usepackage{tabulary}
\usepackage{todonotes}
\usepackage{varwidth}
答え1
やではなく、 を使用する際の私の欠点sed
が原因です。役に立つかもしれないので、以下を記載します。次のコマンドはを に置き換えるものだと思っていましたが、間違いでした。todonotes
pandoc
\usepackage{todonotes}
\usepackage[disable]{todonotes}
grep
$ sed s/\\usepackage{todonotes}/\\usepackage[disable]{todonotes}/ draftdoc.tex | grep todonotes
\Sepackage[disable]{todonotes}
その結果、\todo
コマンドは未定義になりました (ただし、コマンドが非表示になっていて、マイナーな ToDo が非表示になっていない理由はまだわかりません)。これにより、正しい結果が得られます (追加の引用符に注意してください)。
$ sed 's/\\usepackage{todonotes}/\\usepackage[disable]{todonotes}/' draftdoc.tex | grep todonotes
\usepackage[disable]{todonotes}