我正在使用glossaries
包含拉丁字母和希腊字母的混合词汇表包。为了使符号具有适当的宽度,我应用了\glssetwidest{app this width}
。但是,这会在左侧产生缩进,我想将其删除,因为\glssetwidest{app this width}
似乎在创建此缩进时也为父级指定了宽度。
梅威瑟:
\usepackage[nonumberlist]{glossaries}
\setglossarystyle{alttree}
\glssetwidest{app this width}
\makenoidxglossaries
\newglossaryentry{latin}{name={Latin letters},
description={}}
\newglossaryentry{greekl}{name={Greek letters},
description={}}
\newglossaryentry{hpt}{name={$\bar{H}^0_{P,T},\bar{H}^0_{P_r,T_r}$},
sort={H0},description={standard partial molal enthalpy at the
subscripted and reference pressure and temperature},parent=latin}
\newglossaryentry{gamma}{name={$\gamma $},description={activity coefficient},
sort={gamma},parent=greekl}
\begin{document}
\glsaddallunused
\printnoidxglossaries
\end{document}
我试过了\setlength\LTleft{-5in}
,但这并没有改变什么。
希望有人能帮助我。谢谢。
答案1
我试过了
\setlength\LTleft{-5in}
,但这并没有改变什么。
那是一个longtable
设置,因此它仅适用于使用 的样式longtable
。
与alttree
样式一起,\glssetwidest
有一个可选参数指定级别。如果省略,则假定为 0
\glssetwidest{app this width}
设置 0 级(顶层)的最宽条目。如果子级没有设置最宽条目,则默认为顶层设置。
这意味着在您的示例中,“拉丁字母”和“希腊字母”被放在与 宽度相同的框中app this width
。此宽度用作下一级的偏移量,以便子条目名称的起始位置低于父条目描述的起始位置。
由于没有,\glssetwidest[1]{...}
子条目名称被放置在与顶层设置相同宽度的框中(的宽度app this width
)。
为不同级别设置不同宽度的示例:
\documentclass[a4paper, 12pt]{article}
\usepackage[nonumberlist]{glossaries}
\setglossarystyle{alttree}
\glssetwidest{Greek Letters}
\glssetwidest[1]{$\bar{H}^0_{P,T},\bar{H}^0_{P_r,T_r}$}
\makenoidxglossaries
\newglossaryentry{latin}{name={Latin letters},
description={\nopostdesc}}
\newglossaryentry{greekl}{name={Greek letters},
description={\nopostdesc}}
\newglossaryentry{hpt}{name={$\bar{H}^0_{P,T},\bar{H}^0_{P_r,T_r}$},
sort={H0},description={standard partial molal enthalpy at the
subscripted and reference pressure and temperature},parent=latin}
\newglossaryentry{gamma}{name={$\gamma $},description={activity coefficient},
sort={gamma},parent=greekl}
\begin{document}
\glsaddallunused
\printnoidxglossaries
\end{document}
看起来您实际上并不希望子条目缩进,但树样式的设计方式并非如此。由于您的父条目没有描述或编号列表,因此您可以为顶层使用零宽度框。(如果父条目有描述,这将导致名称覆盖描述。)
这有一个轻微的缩进,这是由于父名称和父描述之间的偏移造成的:
\documentclass[a4paper, 12pt]{article}
\usepackage[nonumberlist]{glossaries}
\setglossarystyle{alttree}
\glssetwidest{}
\glssetwidest[1]{$\bar{H}^0_{P,T},\bar{H}^0_{P_r,T_r}$}
\makenoidxglossaries
\newglossaryentry{latin}{name={Latin letters},
description={\nopostdesc}}
\newglossaryentry{greekl}{name={Greek letters},
description={\nopostdesc}}
\newglossaryentry{hpt}{name={$\bar{H}^0_{P,T},\bar{H}^0_{P_r,T_r}$},
sort={H0},description={standard partial molal enthalpy at the
subscripted and reference pressure and temperature},parent=latin}
\newglossaryentry{gamma}{name={$\gamma $},description={activity coefficient},
sort={gamma},parent=greekl}
\begin{document}
\glsaddallunused
\printnoidxglossaries
\end{document}
假设您正在使用nonumberlist
和\glsaddallunused
,如果您乐意手动对条目进行排序(即,根据定义列出它们),那么您可能更喜欢这种方法:
\documentclass[a4paper, 12pt]{article}
\usepackage[sort=none,stylemods,postdot]{glossaries-extra}
\glsxtrprovidestoragekey{group}{}{\glsgroup}
\setglossarystyle{alttreegroup}
\glsxtrsetgrouptitle{latin}{Latin letters}
\glsxtrsetgrouptitle{greekl}{Greek letters}
\newglossaryentry{hpt}{name={$\bar{H}^0_{P,T},\bar{H}^0_{P_r,T_r}$},
description={standard partial molal enthalpy at the
subscripted and reference pressure and temperature},
group=latin}
\newglossaryentry{gamma}{name={$\gamma $},description={activity coefficient},
group=greekl}
\begin{document}
\glsFindWidestTopLevelName
\printunsrtglossaries
\end{document}
这改变了顺序,因为它反映了定义的顺序。在下面修改后的示例中,定义的顺序发生了变化:
\documentclass[a4paper, 12pt]{article}
\usepackage[sort=none,stylemods,postdot]{glossaries-extra}
\glsxtrprovidestoragekey{group}{}{\glsgroup}
\setglossarystyle{alttreegroup}
\glsxtrsetgrouptitle{latin}{Latin letters}
\glsxtrsetgrouptitle{greekl}{Greek letters}
\newglossaryentry{gamma}{name={$\gamma $},description={activity coefficient},
group=greekl}
\newglossaryentry{hpt}{name={$\bar{H}^0_{P,T},\bar{H}^0_{P_r,T_r}$},
description={standard partial molal enthalpy at the
subscripted and reference pressure and temperature},
group=latin}
\begin{document}
\glsFindWidestTopLevelName
\printunsrtglossaries
\end{document}
只要您不介意自己进行排序,这种方法比使用方法效率高得多,\makenoidxglossaries
并且只需要一次 LaTeX 调用。