On Tue, Sep 30, 2014 at 8:08 AM, Christoph Reller <
christoph.rel...@gmail.com> wrote:

> On Sat, Sep 27, 2014 at 12:00 PM, Christoph Reller <
> christoph.rel...@gmail.com> wrote:
>
>> Hi,
>>
>> Various documents mention a namespace feature for references by setting
>> prefix=+. This is a really cool feature but I cannot get it to work. Why
>> does the following example not work:
>>
>> \setupinteraction[state=start]
>> \setuphead[chapter][prefix=+]
>>
>> \starttext
>>
>> \startchapter[reference=chap1,title={First Chapter}]
>>   \startsection[reference=sec1,title={First Section in First Chapter}]
>>     Reference \type{sec1} is \about[sec1].\par
>>     Reference \type{chap2:sec1} is \about[chap2:sec1].\par
>>   \stopsection
>> \stopchapter
>>
>> \startchapter[reference=chap2,title={Second Chapter}]
>>   \startsection[reference=sec1,title={First Section in Second Chapter}]
>>     Reference \type{sec1} is \about[sec1].\par
>>     Reference \type{chap1:sec1} is \about[chap1:sec1].\par
>>   \stopsection
>> \stopchapter
>>
>> \stoptext
>>
>> Any help is appreciated.
>>
>> Christoph Reller
>>
>
> Does anybody have a minimal working example on this topic? Because of the
> concise syntax "prefix=+" it is difficult to google for an example.
>
> This feature is mentioned in two places:
> 1. contextref.pdf in section "12.5 Cross references" explains the main
> mechanism but seems a little outdated.
> 2.  Hans Hagen, "This Way - Cross document referencing", September 2011.
> This is more up to date, but mentions the feature only briefly. The
> mentioned key there is not "prefix" but "referenceprefix", which doesn't
> seem to work either.
>
> Regards,
> Christoph Reller
>

Hi everybody

Is automatic prefixing of references partially broken?
I have found the following example for mkiv in the unofficial test suite (
https://github.com/melmothx/context-unofficial-test-suite):

\setuphead[chapter][referenceprefix=+]
\starttext
\chapter[one]{Chapter One}
\section[bla]{Blablabla}
\chapter[two]{Chapter Two}
See \in{Section}[one:bla]
\stoptext

The test suite also contains the output pdf with the correct reference. So
there must have been a time when mkiv did resolve the reference in the
above example correctly. On my ConTeXt standalone dating 2014.08.19 11:57,
the above example does, however, not work.

The example does only a test of "non-local" references (from within the
namespace "two" to the different namespace "one"). Local references do,
however, work even with my version of ConTeXt. Here is an example:

\setuphead[chapter][referenceprefix=+]
\starttext
\startchapter[reference=chap1,title=First Chapter]
  \startsection[reference=sec1,title=First Section in First Chapter]
    Reference \type{sec1} is \about[sec1].
  \stopsection
\stopchapter
\startchapter[reference=chap2,title=Second Chapter]
  \startsection[reference=sec1,title=First Section in Second Chapter]
    Reference \type{sec1} is \about[sec1].
  \stopsection
\stopchapter
\stoptext

But how can I now reference chap1:sec1 from withing chap2? I tried
\about[chap1:sec1], but in vain.

Referencing the global namespace with "-:" does, surprisingly, work. Here
is an example:

\setuphead[chapter][referenceprefix=+]
\starttext
\startsection[reference=sec1,title=Freefloating Section]
  \about[sec1]
\stopsection
\startchapter[reference=chap1,title=First Chapter]
  \startsection[reference=sec1,title=First Section in First Chapter]
    Reference \type{sec1} is \about[sec1].\par
    Reference \type{-:sec1} is \about[-:sec1]
  \stopsection
\stopchapter
\stoptext

Any help is appreciated.

Regards,
Christoph Reller
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________

Reply via email to