自定义 \hyphenation 规则在 Overleaf 上不起作用

自定义 \hyphenation 规则在 Overleaf 上不起作用

我想在 2 列acmart模板中将一个长单词拆分到下一行。这个单词是Sample_Super.Very.Uber.Long.Word。我尝试过\hyphenation{Sample_Super-.Very-.Uber-.Long-.Word}但它没有拆分单词。

以下是 Overleaf 上的示例:

\documentclass[sigconf]{acmart}
\usepackage[utf8]{inputenc}
\usepackage{hyphenat}
\hyphenation{Sample_Super-.Very-.Uber-.Long-.Word}

\title{test}

\begin{document}

\maketitle

\section{Introduction}
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Sample_Super.Very.Uber.Long.Word Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

\end{document}

我还在 Overleaf 上收到了一条错误通知,上面写着不正确的 \连字符将被清除。不是一个字母。即使文档仍可编译。我该如何设置此规则?同一个词可以出现在很多地方,所以我想为此设置一个全局规则。

答案1

要使某个字母成为可以考虑连字符的字母,它需要有一个非零的小写代码(它可以将其自身小写)

\documentclass[sigconf]{acmart}
\usepackage[utf8]{inputenc}
\usepackage{hyphenat}
\lccode`\_=`\_
\lccode`\.=`\.
\catcode`\_=12 % use  \sb for math subscripts
\hyphenation{Sample_Super-.Very-.Uber-.Long-.Word}
\showhyphens{Sample_Super-.Very-.Uber-.Long-.Word}

\title{test}

\begin{document}

\maketitle

\section{Introduction}
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Sample_Super.Very.Uber.Long.Word Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

\end{document}

相关内容