首先,我很抱歉,因为我无法用语言很好地描述预期的行为,但我希望图像可以更好地解释它。
\sidenote
我怎样才能使命令中的文本sidenotes
包“挂”了?我希望边注中的文本与红线对齐,就像使用脚注一样
\usepackage[hang]{footmisc}
。
有没有什么办法可以让它工作?
先感谢您。
梅威瑟:
\documentclass[paper=a4, DIV=6]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage{blindtext}
\usepackage{sidenotes}
\usepackage[hang]{footmisc}
\begin{document}
Hello World!\footnote{\blindtext}\sidenote{\blindtext}
\end{document}
答案1
sidenotes
我抓取了包中放置旁注标记和文本的宏并对其进行了修改。我所做的是使用右对齐、零宽度的 makebox: 将标记水平向左移动\makebox[0pt][r]{\textsuperscript{\thesidenote}{}~}
。后来,在宏之外,我将 9pt\marginparsep
向右移动。我也将 增加了\marginparwidth
9pt。结果如下。
已编辑以解决指定可选参数(sidenotemark)时出现的问题。
\documentclass[paper=a4, DIV=6]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage{lipsum}
\usepackage{sidenotes}
\usepackage[hang]{footmisc}
\makeatletter
\RenewDocumentCommand \sidenotetext { o o +m }
{
\IfNoValueOrEmptyTF{#1}
{
\@sidenotes@placemarginal{#2}{%
\makebox[0pt][r]{% <--THIS WAS ADDED
\textsuperscript{\thesidenote}{}~%
}% <--THIS WAS ADDED
#3}
\refstepcounter{sidenote}
}
{\@sidenotes@placemarginal{#2}{%
\makebox[0pt][r]{% <--THIS WAS ADDED
\textsuperscript{#1}~%
}% <--THIS WAS ADDED
#3}}
}
\makeatother
\marginparwidth=\dimexpr\marginparwidth+9pt% <--THIS WAS ADDED
\marginparsep=\dimexpr\marginparsep+9pt% <--THIS WAS ADDED
\begin{document}
Hello World!\footnote{\lipsum[4]}\sidenote{This is the
text of my sidenote. I want it to hang.}
\lipsum[2]\sidenote[*]{This is a secondary test when
an optional argument is specified}
\end{document}