Я хотел бы изменить поле glossaryentry так, чтобы оно создавало выходные данные в зависимости от того, был ли определен / установлен ключ1, предоставленный пакетом, или нет. Я попробовал следующее:
\renewcommand*{\glossaryentryfield}[5]{\bfseries{\glstarget{##1}{##2}} & ##3 \\
\ifempty{\glsentryuseri{##1}}
it & is very empty \\
\else
& \glsentryuseri{##1} \\%
\fi}
, которыйоднако приводит к нескольким сообщениям об ошибках, подобных этому:
! Неопределенная последовательность управления. \ ifempty l.49 \ setentrycounter {page} \ glsnumberformat {a}}}% Последовательность управления в конце верхней строкивашего сообщения об ошибке никогда не было \ def'ed. Если вы ошиблись (например, \hobx'), type
I 'и правильное написание (например, `I \ hbox'). В противном случае просто продолжите, и я забуду обо всем, что былоundefined.
(по-видимому, по одному на каждую запись в Глоссарии), за которым явно следует непревзойденный \ else и непревзойденный \ fi
Насколько я могу судить, мне нужно что-то сделатьпорядок расширения, однако я полный новичок в латексе. Я не могу просто установить все user1-ключи, так как я хочу отображать только эту дополнительную строку, если определен user1, другая строка только для отладки purposes.
Я также пытался добавить \ expandafter непосредственно перед \ if (\ expandafter \ ifempty {\ glsentryuseri {## 1}})) (в результате получился следующий вывод:)
user1value это & очень пусто \\ & user1value
, поскольку никто не мог этого заметить, я поместил его в сообщество латекса и добавил там минимальный пример.Как только он появится на одном сайте, я перейду к решению