变量生成器仅适用于拉丁字母和数字吗?

变量生成器仅适用于拉丁字母和数字吗?

我如何为非 Latex 用户创建变量,例如使用\newcommand{}{}带参数?例如,我希望用户只更改新命令描述中的单词,它将自动更改整个文档?

\newcommand{\R}{My system}
...
\section{Introduction}
Here I would like to introduce \( \R \)
...
   \begin{table}[]
       \centering
       \begin{tabular}{c|c}
           \( \R \) &  \\
                    & 
       \end{tabular}
       \caption{Caption}
       \label{tab:my_label}
   \end{table}

这不适用于俄文字母(已添加\usepackage[russian,english]{babel}\selectlanguage{russian}正在使用)

好的,发布完整的例子,其中我没有得到任何内容(空格而不是俄语单词):

\documentclass{article}
%\documentclass{ICD}
\usepackage[T2A,T1]{fontenc}

\usepackage[utf8]{inputenc}
\usepackage{multicol}
%\usepackage[russian,english]{babel}
\usepackage[russian]{babel}
\usepackage{multirow}   %для таблиц со слиянием столбцов и строк
\usepackage{amsthm}
\usepackage{array}      %для таблиц с заданной шириной столбца
\usepackage{float}
\usepackage[table]{xcolor}
%\setlength{\arrayrulewidth}{1mm}
%\setlength{\tabcolsep}{18pt}
%\renewcommand{\arraystretch}{2.5}
%\newcolumntype{s}{>{\columncolor[HTML]{AAACED}} p{3cm}}
%\arrayrulecolor[HTML]{DB5800}

\ProcessOptions

\begin{document}
%\hoffset = 20pt
%\maketitle
\selectlanguage{russian}


\tableofcontents


\newcommand{\Mysyst}{ \begin{center} \selectlanguage{russian} система \end{center}}

 \section{Introduction}
    Here I would like to introduce \( \Mysyst \)
    ...
       \begin{table}[]
           \centering
           \begin{tabular}{c|c}
               \( \Mysyst \) &  \\
                        & 
           \end{tabular}
           \caption{Caption}
           \label{tab:my_label}
       \end{table}


\end{document}

答案1

MWE之后的新答案

  1. 您在这里使用了\(\)分隔符 --- 它们进入数学模式。我不懂俄语,但我认为 система 不是公式,不是吗?如果您想以斜体或倾斜字体排版,请使用\textit(或\emph,或\textsl,取决于目的)。在数学模式下,您只能使用公式:https://www.learnlatex.org/en/lesson-10

  2. 我不明白你想用那里的\begin{center}...得到什么\end{center}。在表格中,文本已经居中了。而且“居中”毫无意义里面一个段落,就像您尝试在文本的第一行中所做的那样。

  3. \ProcessOptions适用于软件包创建者,不适用于用户,请避免使用它。并且您必须指定浮动的位置,因此我添加了[ht](您应该已经收到警告)。

修正这些问题,你会得到:

校正后的 MWE 输出

\documentclass{article}
\usepackage[T2A,T1]{fontenc}

\usepackage[utf8]{inputenc}
\usepackage{multicol}
\usepackage[russian]{babel}
\usepackage{multirow}   %для таблиц со слиянием столбцов и строк
\usepackage{amsthm}
\usepackage{array}      %для таблиц с заданной шириной столбца
\usepackage{float}
\usepackage[table]{xcolor}


\begin{document}
\selectlanguage{russian}


\tableofcontents

% Additional braces to confine the effect of selectlanguage
\newcommand{\Mysyst}{{\selectlanguage{russian} система}}

 \section{Introduction}
    Here I would like to introduce \emph{\Mysyst}
    ...
       \begin{table}[ht]
           \centering
           \begin{tabular}{c|c}
               \Mysyst &  \\
                        & 
           \end{tabular}
           \caption{Caption}
           \label{tab:my_label}
       \end{table}

\end{document}

原始答案

只是为了向你展示为什么在 LaTeX 中 MWE 是理解问题所必需的:这个片段:

\documentclass[a4paper,11pt]{article}
\usepackage[spanish, english]{babel}
\newcommand{\R}{The letter ``ñ''} 
\begin{document}
\section{Introduction}
Here I would like to introduce \emph{\R}

   \begin{table}
       \centering
       \begin{tabular}{c|c}
           \emph{\R} &  \\
                    & 
       \end{tabular}
       \caption{Caption}
       \label{tab:my_label}
   \end{table}

\end{document}

完美运作,给予

上述代码片段的输出

...所以我们不知道你的问题出在哪里真的是。

相关内容