边注中的自动连字符

边注中的自动连字符

我创建了一个文档,在页边空白处添加了注释(类似脚注)。我在 LaTeX 社区中找到了帮助,现在我的序言如下所示:

\documentclass{book}

\usepackage{marginnote}
\renewcommand*{\marginfont}{\footnotesize}
\newcounter{mynote}
\newcommand{\mynote}[2][0]{
\refstepcounter{mynote}
\mbox{\textsuperscript{\themynote}}
\marginnote{\mbox{\textsuperscript{\themynote}}\hspace{0pt}#2}[#1\baselineskip}
\newcommand{\mybr}{-\\}

除了自动连字之外,一切都运行良好。我需要使用 手动划分单词\mybr{}。我更喜欢不规则的注释,但如果自动连字仅像这样工作,那么对齐的注释也可以。

答案1

TeX 不会对段落中的第一个单词进行连字符连接。您可以\hspace{0pt}在其前面写一个,然后 TeX 会将其作为第一个单词,或者使用lualatex它,而没有这样的限制。

\documentclass{scrbook}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{marginnote}
\usepackage[ngerman]{babel}
\usepackage{ragged2e}
\renewcommand*{\raggedleftmarginnote}{\RaggedLeft}
\renewcommand*{\raggedrightmarginnote}{\RaggedRight}
\newcommand\Marginnote[1]{\marginnote{\hspace{0pt}#1}}

\begin{document}
foo\Marginnote{Mülltonnenentsorgungsprogramm}
\end{document}

或者使用最新的 TeX 发行版 (2018),只需要

\listfiles
\documentclass{scrbook}
\usepackage[T1]{fontenc}
\usepackage{marginnote}
\usepackage[ngerman]{babel}
\begin{document}
    foo\marginnote{Mülltonnenentsorgungsprogramm}
\end{document}


*File List*
 scrbook.cls    2018/03/30 v3.25 KOMA-Script document class (book)
scrkbase.sty    2018/03/30 v3.25 KOMA-Script package (KOMA-Script-dependent bas
ics and keyval usage)
 scrbase.sty    2018/03/30 v3.25 KOMA-Script package (KOMA-Script-independent b
asics and keyval usage)
  keyval.sty    2014/10/28 v1.15 key=value parser (DPC)
scrlfile.sty    2018/03/30 v3.25 KOMA-Script package (loading files)
tocbasic.sty    2018/03/30 v3.25 KOMA-Script package (handling toc-files)
scrsize11pt.clo    2018/03/30 v3.25 KOMA-Script font size class option (11pt)
typearea.sty    2018/03/30 v3.25 KOMA-Script package (type area)
 fontenc.sty
   t1enc.def    2017/04/05 v2.0i Standard LaTeX file
marginnote.sty    2018/08/09 v1.4b non floating margin notes for LaTeX
   babel.sty    2018/09/02 3.23 The Babel package
 ngerman.ldf    2018/03/29 v2.10 German support for babel (post-1996 orthography)
 ***********

答案2

这将有助于:

\usepackage{marginnote}
\usepackage{ragged2e}
\renewcommand*{\raggedleftmarginnote}{\RaggedLeft}
\renewcommand*{\raggedrightmarginnote}{\RaggedRight}

marginnote请参阅和的手册ragged2e以了解更多信息。

相关内容