使用带下划线的连字符命令

使用带下划线的连字符命令

我的文本中有包含下划线且超出页面边界的单词

在此处输入图片描述

文本中输入的单词为

FOS\_SOCIAL\_SCIENCE

我希望这个单词能够在下划线边界处用连字符连接。

我努力了:

\hyphenation{FOS-\_-NA-TU-RAL-\_-SCIEN-CE}

但 pdfLatex 返回以下错误

不正确的 \hyphenation 将被清除。 \hyphenation{FOS-_

underscore由于不兼容,我不想使用该软件包

我也试过

\renewcommand{\_}{%
    \textunderscore\nobreak\hspace{0pt}%
}

不起作用:编译时没有错误,但单词没有连字符

我也尝试过:

\def\_{\_\allowbreak\hspace{0pt}}

无法编译。错误消息为:

TeX 容量超出,抱歉 [输入堆栈大小=5000]。 \item[FOS_NATURAL_SCIENCE]

答案1

\nobreak如果你想要破坏某些东西,为什么要使用它?没有它,它会按预期工作:

\documentclass{article}

\textwidth=1mm
\begin{document}
FOS\_SOCIAL\_SCIENCE   

\renewcommand{\_}{%
    \textunderscore\nobreak\hspace{0pt}%
}

FOS\_SOCIAL\_SCIENCE

\renewcommand{\_}{%
    \textunderscore\hspace{0pt}%
}

FOS\_SOCIAL\_SCIENCE

\end{document}

在此处输入图片描述

相关内容