soul 包的 \hl 中的自定义命令

soul 包的 \hl 中的自定义命令

soul我在使用该软件包及其命令时遇到了麻烦\hlsoul软件包手册说我不应该嵌套soul命令,而我没有这样做。\textsc在 内有效\hl。但是,以下操作会引发Argument of \name has an extra }错误:

\documentclass[a4paper,12pt,]{scrreprt}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{soulutf8}
\usepackage{color}

\newcommand{\name}[1]{\textsc{#1}}

\begin{document}
% this one works
Hello \hl{\textsc{Calvin}}!

% this one will throw an error, with both soul and soulutf8
Hello \hl{\name{Calvin}}!
\end{document}

我是否遗漏了某些工作方式\newcommand?这是软件包的已知问题吗soul?还有其他关于突出显示文本的建议吗?文本可能较长,因此需要换行?

感谢您的回复。

答案1

参见 soul 的文档“添加字体命令”(第 15 页)。

\soulregister{\name}{1}

相关内容