Ошибка использования \Glsentrytext{} в заголовке раздела

При использовании glossaries пакет в документе LaTeX Я иногда хочу использовать глоссарий в качестве части раздела или заголовка главы. Например:

\section{\Glsentrytext{big}}

Это, однако, приводит к ошибке. Пытаясь использовать \protect\Glsentrytext{} не решает проблему. Обратите внимание, что используется некапитализированная версия (\glsentrytext) не доставляет никаких проблем.

Кто-нибудь знает способ заставить это работать?



Иногда я использую пакет глоссариев для согласованного форматирования определенных строк. Например \gls{big} превращается в "пучок в газ". Очевидно, я мог бы создать две записи глоссария, с заглавными буквами и без них, чтобы добиться этого, и включить только одну в окончательный глоссарий. Это уродливое решение, хотя.

1 ответ

Решение

К сожалению, я не знаю, почему это не работает или как это исправить, но я знаю обходной путь:

Примечание. Для этого требуется текущая версия glossaries пакет. Я протестировал его с версией 2.07, которая работала, и с версией 2.03, которая не работала, потому что в этой версии не было ключей user1-user6.

Временное решение

Определите запись с помощью следующей команды:

\newglossaryentry{big}{name=big,type=main,text={beam-into-gas},user1={Beam-into-gas}}

И затем используйте это так:

\section{\glsentryuseri{big}}

Если заголовок раздела является единственным вхождением записи, вы должны добавить запись в глоссарий вручную, используя \glsadd{big},


Комментарий

Этот обходной путь аналогичен предложенной вами идее создания двух записей, за исключением того, что вам не нужно создавать две записи.:-)

Тем не менее, я мог себе представить, что тот факт, что \Glsentrytext не работает - это ограничение в LaTeX, которое может означать, что это невозможно сделать. Но это только предположение.

PS: Может быть, вы должны были опубликовать вопрос на http://tex.stackexchange.com/ чтобы получить ответ быстрее.

Другие вопросы по тегам