David Kastrup <dak(a)gnu.org> writes:
> Debugger entered--Lisp error: (invalid-regexp "Invalid
regular expression")
>
re-search-forward("\\(?:\\\\label{\\(?1:[^}]*\\)}\\|\\[[^]]*\\<label[[:space:]]*=[[:space:]]*{?\\(?1:[^],}]+\\)}?\\)\\|\\(^\\)[
>
]*\\\\\\(begin{SaveListing}\\|part\\|chapter\\|section\\|subsection\\|subsubsection\\|paragraph\\|subparagraph\\|addchap\\|addsec\\)\\*?\\(\\[[^]]*\\]\\)?[[{
> \n\\]\\|\\(^\\)[ ]*\\\\\\(include\\|input\\|subfile\\)[{
> ]+\\([^} \n]+\\)\\|\\(^\\)[
> ]*\\(\\\\appendix\\)\\|\\(\\\\glossary\\|\\\\index\\|\\\\nomenclature\\)[[{]"
> nil t)
It would be my guess that
‘\(?NUM: … \)’
is the "explicitly numbered group" construct. Normal groups get
their number implicitly, based on their position, which can be
inconvenient. This construct allows you to force a particular
group number. There is no particular restriction on the numbering,
e.g., you can have several groups with the same number in which
case the last one to match (i.e., the rightmost match) will win.
Implicitly numbered groups always get the smallest integer larger
than the one of any previous group.
is the culprit here. At least in the current XEmacs manual
<
URL:http://www.xemacs.org/Documentation/21.5/html/lispref_45.html#SEC599>
I can find nothing of the sort.
Yes, that's it. Unfortunately, I use that on purpose in
`reftex-label-regexps' which is a customizable list of regexps which
gets `regexp-opt'ed and starts `reftex-everything-regexp'. By default,
it has one entry matching \label{...} and one matching keyval
label={...} arguments.
RefTeX relies on the first group in `reftex-everything-regexp' capturing
the label name (see reftex-parse.el:242). Without the explicitly
numbered groups, the regex for \label{...} would be group 1, but the
regex for label={...} would already be two.
I don't see an easy fix here on my side. So basically you have two
options:
1. implement explicitly numbered groups in XEmacs (they are really
useful in many cases)
2. remove `reftex-label-regexps' and stick to matching only
\label{...} labels without being able to match other things that
also produce labels
(or even simpler: remove the "?1" from the first regexp in
`reftex-label-regexps' and delete the second regexp. Also make it
to a `defconst' to indicate that nobody should touch it.)
Bye,
Tassilo
_______________________________________________
XEmacs-Beta mailing list
XEmacs-Beta(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-beta