Richard Heck <rgheck <at> comcast.net> writes:

> I think "part" and "chap" are the way to go, but I think we can actually 
> do it without any lyx2lyx and so avoid breaking customized prettyref 
> stuff, such as Jurgen has. New labels will be "chap" by default, but we 
> can do this:
>       \let\pr <at> chap=\pr <at> cha
> and then all is well. If the user switches the document to refstyle, we 
> can do:
>       \let\charef=\chapref
> or they can change the references manually. But there will not be many 
> of them.
> 
> Sound good?

Let's try it...

I investigated examples a bit more and I found that it will be needed for
pro: -> prop: for propositions, and maybe enu:->enum: for enumerations.
And probably pro -> prob for problems to solve completely pro: hononymies (if
Proof gets pro:).
Will your hack work there also ? We'll have to recognize the corresponding
environment if we find a pro: (true for par: as well, which may be a paragraph
-- seems to be a bug in the convert_prettref code, which will convert par: for a
paragraph to part:).

It is in fact more a label than a reference problem (but for chapters which are
officially supported). 
Can we the consider that the prefixes outside the prettyref set (in
prettyref.sty) as simply cosmetic ones used to sort and remember more easily
labels ?

In fact the RefPrefix directives are incomplete currently, and I guess we have
the free choice of the prefixes for most of them (enum is used by fancyref,
modref has no standard definition of prefixes and cleveref does not use
prefixes). Are there other packahges defining standard prefixes ?

Currently if you load a 1.6 doc into 2.0.0, the labels are prefixed in the 1.6 
way (I guess it's an automatic 3 letter truncation), so we get a bunch of
fallback commands at the beginning of the preamble for various theorem
environments (only 4 are currently defined in theorems-refprefixes.inc).
IMHO, we should enhance theorems-prefixes.inc by all kinds of theorems
environments.I can do it if you like.

BTW, I've found a bug in InseRef.cpp: if the label has no prefix at all, we get
the label as prefix, as the current test works for label like {:foo} and not for
{foo}. I posted a patch in bug #6609.

-- 
Jean-Pierre


Reply via email to