忽略前缀的词汇表对齐

忽略前缀的词汇表对齐

这是一个后续问题词汇表和幻影

它是关于词汇表中的以下内容:

象征
#象征
 其他
#其他

而不是

象征
#象征
其他
#其他

我想像这样对齐术语并决定使用幻像,但是这个解决方案有一个缺点,那就是太多空白当我在文本中使用术语表符号时,幻影部分也会出现。有没有好的解决方案,让幻影部分只出现在术语表中,而在文本中使用术语时不出现?

\documentclass{report}
\usepackage[sanitize=none]{glossaries}    
\makeglossaries%

\newglossaryentry{nc:line:num}{
    name=thing,
    symbol=\ensuremath{\protect\hphantom{\#}l},
    description=other thing}
\newglossaryentry{nc}{
    name=thingy,
    symbol=\ensuremath{\#l},
    description=something}  

\usepackage{glossary-mcols}
\begin{document}
    \printglossary[style=altlong4col]
    \clearpage%
    nc:line:num glossary entry '\glssymbol{nc:line:num}`, notice the whitespace after the '
\end{document}

答案1

下面的例子定义了一个名为的命令,\nohash它在词汇表中输入了正确的间距,但在重新定义词汇表之后,符号可以在文本中毫无问题地使用:

\documentclass{report}
\usepackage[sanitize=none]{glossaries}
\makeglossaries

\newcommand*{\nohash}[1]{\hphantom{\#}#1}

\newglossaryentry{nc:line:num}{
    name=thing,
    symbol=\ensuremath{\protect\nohash{l}},
    description=other thing}
\newglossaryentry{nc}{
    name=thingy,
    symbol=\ensuremath{\#l},
    description=something}

\usepackage{glossary-mcols}
\begin{document}

\printglossary[style=altlong4col]

% reset \nohash:
\renewcommand{\nohash}[1]{#1}%

\clearpage

nc:line:num glossary entry `\glssymbol{nc:line:num}'.

For comparison: `\glssymbol{nc}'.

\end{document}

词汇表如下:

词汇表图片

文本如下所示:

在此处输入图片描述

相关内容