我使用 lingmacros 包来处理编号示例。默认情况下,它的工作方式如下:
\enumsentence{This is the first example.}
\enumsentence{This is the second example.}
(1)这是第一个例子。
(2)这是第二个例子。
我想在括号中添加章节编号。
如果我更改 .sty 文件中的以下行,它会添加章节编号:
-{\refstepcounter{enums}\@enumsentence[(\theenums)]}}
+{\refstepcounter{enums}\@enumsentence[(\arabic{chapter}.\theenums)]}}
问题:我应该在文档的序言中添加什么内容,以便获得相同的结果而无需修改.sty 文件?
另外,我想减少示例之间的间距。我在文档中使用了以下内容,但它不会影响示例:
\usepackage{enumitem}
\setlist{topsep=0pt, partopsep=0pt, parsep=0pt, itemsep=0pt}
答案1
这个lingmacros
包非常老旧,除了最基本的例子之外,它对于编号其他东西都不太实用。例如,它要求你手动标记子示例,这实际上违背了 LaTeX 和自动编号的目的。
请参阅以下问题,了解有关三个广泛使用的语言示例编号包的摘要:
我个人更喜欢gb4e
包,因为标记更具语义性。但linguex
在格式化示例方面具有更多的灵活性。由于gb4e
会干扰数学模式的使用_
和^
数学模式之外,最好在包的加载顺序中稍后加载它。要关闭此功能,请\noautomath
在加载包后立即使用该命令。
对于更改各种计数器依赖项,该chngcntr
包非常方便。要了解如何执行此操作,请gb4e
参阅以下问题: