交叉引用文本中未显示的缩写词

交叉引用文本中未显示的缩写词

我使用词汇表,除了标准缩略词外,还定义一些这样的缩略词:

\documentclass{scrreprt}

\usepackage{xcolor} 

\definecolor{navy}{RGB}{0,0,128}

\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}

\usepackage[
    colorlinks=true,
    linkcolor=navy,
    anchorcolor=black,
    urlcolor=navy
]{hyperref}

\usepackage[acronym,toc]{glossaries}

\makeglossaries

\newglossaryentry{P2P}{
    type=\acronymtype, 
    name={P2P}, 
    description={Peer-to-Peer}, 
    first={Peer-to-Peer (P2P)}, 
    see=[\glossaryname:]{Peer-to-Peer}
}
\newglossaryentry{Peer-to-Peer}{
    name={Peer-to-Peer},
    description={Eine direkte Kommunikation zwischen zwei Teilnehmern}
}

\newglossaryentry{Plug-in}{
    name={Plug-in},
    description={Ein Softwaremodul, das zur Laufzeit eingebunden werden kann und damit die Funktionalität eines Systems erweitert}
}

\newacronym{DIN}{DIN}{Deutsches Institut für Normung}


\newcommand*\acrshortlong[2][]{\glslink[#1]{#2}{\glsentryshort{#2} (\glsentrylong{#2})}}

\begin{document}

Works as expected:

gls: \gls{Plug-in}

gls: \gls{DIN}

acrshort: \acrshort{DIN}

acrshortlong: \acrshortlong{DIN}

gls: \gls{Peer-to-Peer}

Not as expected:

acrshort: \acrshort{P2P}

acrshortlong: \acrshortlong{P2P}

\glossarystyle{altlist}
\printglossary[type=\acronymtype]

\glossarystyle{altlist}
\printglossary

\end{document}

不幸的是,\acr... 命令无法按预期使用通过 \newglossaryentry 定义的 type=\acronymtype 的首字母缩略词

有人知道如何让这些交叉引用缩写也能按预期工作吗?

答案1

(将评论转换为答案。)

\glsentrylong和等命令\glsentryshort可访问longshort键。这些键(及其复数版本)由 设置,\newacronym但如果需要,则在使用 时必须明确设置\newglossaryentry。但是在这种情况下,只需使用 的可选参数来\newacronym设置交叉引用信息就更简单了:

\newacronym[see={[\glossaryname:]{Peer-to-Peer}}]{P2P}{P2P}{Peer-to-Peer}

相关内容