在新命令中使用西里尔字母值

在新命令中使用西里尔字母值

我的目标是能够写:

\newcommand{\сlient_name}{Имя}

并在我的文档中全面使用\client_name。现在我遇到了以下错误,如下所示:

Underfull \hbox (badness 10000) in paragraph at lines 670--670
[][]|\l_fontspec_font –ü—Ä–æ-–≥—Ä–∞–º-–º–∏-—Ä–æ-–≤–∞-

完整错误截图在这里 -http://take.ms/opd30

我试过这个SE答案并尝试使用

\newcommand{\сlient_name}{\foreignlanguage{russian}{Имя}}

但没有帮助。

如何在 /newcommand 变量中使用西里尔字母值?

答案1

考虑以下最小文档:

\documentclass{article}
\usepackage{fontspec}

\newcommand{\сlient_name}{Имя}


\begin{document}

\client_name

\end{document}

在其上运行 XeLaTeX 会发现

! Missing $ inserted.
<inserted text> 
                $
l.4 \newcommand{\сlient_name}{Имя}

? 

! LaTeX Error: Missing \begin{document}.

See the LaTeX manual or LaTeX Companion for explanation.
Type  H <return>  for immediate help.
 ...                                              

l.4 \newcommand{\сlient_name}{Имя}

? 
! Missing number, treated as zero.
<to be read again> 
                   n
l.4 \newcommand{\сlient_name}{Имя}

? 
! You already have nine parameters.
\reserved@a ...xpandafter \сlient \reserved@b #10
                                                  n{
l.4 \newcommand{\сlient_name}{Имя}

? 
! Missing $ inserted.
<inserted text> 
                $
l.5 

? 
No file mohnstrudel.aux.
! Undefined control sequence.
l.9 \client
           _name
? 
! Missing $ inserted.
<inserted text> 
                $
l.9 \client_
            name
? 
! Missing $ inserted.
<inserted text> 
                $
l.10 

? 

注意第一次错误正是在\newcommand尝试时发生的。之后发生的情况完全不可预测。

_修复命令名称中包含的错误:这是不允许的,请参阅命令/宏名称不能包含数字和符号

相关内容