更改两种语言缩写词文本的顺序,并附加词汇表

更改两种语言缩写词文本的顺序,并附加词汇表

我正在使用 glossaries-extra 来查找西班牙语和英语首字母缩略词,效果很好。我关注了以下帖子:

使用词汇表包查找德语文档中的英文缩写

但是我想改变在定义了 user1 的情况下列表中显示首字母缩略词的顺序。

我正在用这个

\documentclass{article}
\usepackage{lmodern}
\usepackage[utf8]{inputenc}         

\usepackage[acronym, nomain, nonumberlist, toc]{glossaries-extra}
\setabbreviationstyle[acronym]{long-short-user}

\renewcommand{\glsxtrpostdescacronym}{%
 \ifglshasfield{\glsxtruserfield}{\glscurrententrylabel}%
 { (\textit{\glscurrentfieldvalue})}%
 {}%
}
\makeglossaries

\newacronym[user1=Signal to Noise Ratio]{snr}{SNR}{relación señal a ruido}
\newacronym{utn}{UTN}{Universidad Tecnológica Nacional}

\begin{document}    

Primer uso de \gls{snr}. Segundo uso de \gls{snr}.

Primer uso de \gls{utn}. Segundo uso de \gls{utn}.

\printglossaries

\end{document}

我得到:

在此处输入图片描述

但我想要:

在此处输入图片描述

总之我想展示

短的用户1(长的)

如果定义了 user1,否则我只想显示

短长

有人能帮助我吗?

此致,

马蒂亚斯

答案1

我能想到两种方法。第一种方法是定义一个自定义样式,修改该样式以检查字段user1。例如:

\documentclass{article}
\usepackage{lmodern}
\usepackage[utf8]{inputenc}         

\usepackage[acronym, nomain, nonumberlist, toc]{glossaries-extra}
\setabbreviationstyle[acronym]{long-short-user}

\makeglossaries

\newacronym[user1=Signal to Noise Ratio]{snr}{SNR}{relación señal a ruido}
\newacronym{utn}{UTN}{Universidad Tecnológica Nacional}

\newglossarystyle{bilinguallist}{%
  \setglossarystyle{list}% base it on the list style
  \renewcommand*{\glossentry}[2]{%
    \item[\glsentryitem{##1}%
          \glstarget{##1}{\glossentryname{##1}}]
      \ifglshasfield{\glsxtruserfield}{##1}%
      {\textit{\glscurrentfieldvalue} (\glossentrydesc{##1})}%
      {\glossentrydesc{##1}}%
      \glspostdescription\space ##2}%
}
\setglossarystyle{bilinguallist}% set this new style

\begin{document}

Primer uso de \gls{snr}. Segundo uso de \gls{snr}.

Primer uso de \gls{utn}. Segundo uso de \gls{utn}.

\printglossaries

\end{document}

文件图像

第二种方法修改了\glossentrydesc显示描述时所有预定义词汇表样式所使用的样式。

使用基础glossaries包时,此命令仅检查条目是否已定义并显示描述。glossaries-extra包重新定义此命令以设置当前缩写样式并检查属性glossdescfontglossdesc然后再显示描述。

如果您不想使用glossdescfontglossdesc属性,您可以像\glossentrydesc这样重新定义:

\documentclass{article}
\usepackage{lmodern}
\usepackage[utf8]{inputenc}         

\usepackage[acronym, nomain, nonumberlist, toc]{glossaries-extra}
\setabbreviationstyle[acronym]{long-short-user}

\makeglossaries

\newacronym[user1=Signal to Noise Ratio]{snr}{SNR}{relación señal a ruido}
\newacronym{utn}{UTN}{Universidad Tecnológica Nacional}

\renewcommand{\glossentrydesc}[1]{%
 \glsdoifexistsorwarn{#1}%
 {%
   \glssetabbrvfmt{\glscategory{#1}}%
   \ifglshasfield{\glsxtruserfield}{#1}%
   {\textit{\glscurrentfieldvalue} (\glsentrydesc{#1})}%
   {\glsentrydesc{#1}}%
 }%
}

\begin{document}

Primer uso de \gls{snr}. Segundo uso de \gls{snr}.

Primer uso de \gls{utn}. Segundo uso de \gls{utn}.

\printglossaries

\end{document}

结果和以前一样。

相关内容