在序言或包/类文件中使用 \label 是好还是坏样式?

在序言或包/类文件中使用 \label 是好还是坏样式?

我想使用\labels 来组织一个太长而无法通过简单滚动进行导航的包文件。

看起来这不会引发任何错误,但我不确定这是否是好的编码风格。毕竟,我不能引用序言/包/类,不是吗?

那么,这是好风格还是坏风格?有没有其他/更好的方法来组织样式文件,以便我的编辑器可以帮助我浏览它?

答案1

这绝对是糟糕的风格,而且当它工作时也只是偶然。之前没有设置可引用的上下文,之前\begin{document}也没有aux打开文件进行写入\begin{document}。它不会产生错误的原因是\label执行延迟写入,以便可以保存页码,因此写入被延迟到第一页被发送出去,特别是直到文件aux被打开之后。

但是,所保存的信息\label始终是{}{1}这样的ref,标签的将返回任何内容,而标签的将返回 1,因此该位置的命令\pageref没有生成任何有用的信息。\label

答案2

是的,这是糟糕的编码风格。

然而,它很容易被规避。

一个很好的例子是,当转换TeX文件以使用较新的biblatex。这有一些其他的输入机制,用于将.bib文件添加到搜索路径。但是,大多数编辑器都依赖旧的\bibliography宏来发现条目。

因此我可以做到这一点(只需再进行一次操作)

% RefTeX does not read this
\addbibresource{text.bib}
\iffalse
  % RefTeX DOES read this
  \bibliography{text.bib}
\fi

您可以在您的课程/包中使用完全相同的东西。

\iffalse
  \label{critical point}
\fi

答案3

为了组织内容(并能够在冗长的序言中找到它),我只使用普通的 LaTeX 注释。例如

%% AMS stuff here
...
%% Handle page format
...

使用%%(甚至%%%%左右) 使注释突出,并使它们易于搜索。 可能可以说服 emacs 折叠每个部分(或将每个部分标记为折叠),但不能复杂的序言尚未...

相关内容