我想添加输出
\newcommand{\ki}{\emph{K}\textsubscript{i}\mbox{ }}
在词汇表条目中。这可能吗?
另外,我想知道应该使用哪种代码来在词汇表中定义相同的内容。
提前致谢,
最好的,达维德
这是最小的工作示例
\documentclass[a4paper,11pt,fleqn]{book}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[french,german,english]{babel}
\usepackage{listings}
\lstset{language=[LaTeX]Tex,tabsize=4, basicstyle=\scriptsize\ttfamily, showstringspaces=false, numbers=left, numberstyle=\tiny, numbersep=10pt, breaklines=true, breakautoindent=true, breakindent=10pt}
%\chapter*{List of abbreviations}
\markboth{List of abbreviations}{List of abbreviations}
%\addcontentsline{toc}{chapter}{List of abbreviations}
\usepackage[toc,nopostdot,nonumberlist,nogroupskip]{glossaries}
% \loadglsentries{head/abbreviations.tex} >> recalls a different file
\makenoidxglossaries
\newglossaryentry{ACN}{%
name={ACN},%
description={acetonitrile}%
}
\newglossaryentry{Ki}{%
name={??},%
description={??}%
}
\newcommand{\ki}{\emph{K}\textsubscript{i}\mbox{ }}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%% HEAD: Book-Begin
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}
\printnoidxglossary[type=\acronymtype,title={List of abbreviations}]
This one works: \gls{ACN}
\end{document}
编辑:
- \newcommand 所做的只是以正确的格式打印“ki”(抑制常数,顺便说一下),所以通过这种方式,我不需要在文本中多次这样做...我很高兴将它简单地正确地打印在词汇表中,事实上我不需要与文本有任何真正的联系。
- 项目清单
\ki
在文件中工作,我唯一的问题是将它放在词汇表中- 我尝试改成,
\newcommand{\ki}{$K_i$}
但结果还是一样 - 这是错误信息
(c:/texlive/2014/texmf-dist/tex/latex/glossaries/styles/glossary-tree.sty Package: glossary-tree 2015/02/03 v4.13 (NLCT) \glstreeindent=\skip64 )) ! Undefined control sequence. \ki ->\emph {K}\textsubscript
再次感谢 Davide
答案1
我不确定你的\ki
命令代表什么。(它应该是数学模式中的变量吗?尾随空格的用途是什么?)但是,从宏的角度来看,以下内容可以很好地编译:
\documentclass[a4paper,11pt,fleqn]{book}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[french,german,english]{babel}
\usepackage[toc,nopostdot,nonumberlist,nogroupskip]{glossaries}
\makenoidxglossaries
\newglossaryentry{ACN}{%
name={ACN},%
description={acetonitrile}%
}
\newcommand{\ki}{\emph{K}\textsubscript{i}\mbox{ }}
\newglossaryentry{Ki}{%
name={\ki},%
sort={ki},
description={description of \ki}%
}
\begin{document}
\printnoidxglossary[type=\acronymtype,title={List of abbreviations}]
This one works: \gls{ACN}
\gls{Ki}.
\end{document}
得出的结果为:
编辑:我不知道您为什么会收到与 相关的未定义控制序列\ki
。要检查的事项:
- 您是否完全复制并粘贴了 MWE?(是否有案例单,例如
\Ki
而不是\ki
?) \ki
在文档中单独工作吗?可能\textsubscript
是未定义的控制序列,这意味着您使用的是旧版本的 LaTeX 内核。(这与您的 WinEdt 版本无关。)如果您将的定义更改\ki
为\newcommand{\ki}{$K_i$}
您还收到错误吗?
添加
\listfiles
到 MWE 并重新运行。然后将确切的错误消息和文件列表从记录(.log
文件)复制并粘贴到您的问题中。
答案2
我通过以下方式部分解决了该问题:
\newglossaryentry{Ki}{%
name={\ensuremath{K_{\mathrm{i}}}},%
description={acetonitrile}%
}
我遇到了另外两个问题:
- Ki 在词汇表中没有以粗体显示
- 无论我把它放在哪里,它总是出现在列表的顶部
有解决方案吗?谢谢