# Re: [NTG-context] referencing

Am 20.11.2011 um 21:26 schrieb Meer, H. van der:

> Thanks Wolfgang for the code.
>
> Just in case it is of use I concocted my variation on this theme. Now this
> simply replaces the \in, \at and \about macro's with one that does not show
> on the page where the link originates, but behaves as of old everywhere else.
> I introduced the unskip in order to remove the space that ruins the end of a
> line when there is nothing to display. For example from \in{see there}[ref].
> <--this period would otherwise acquire a space before it.

Instead of \unskip you should use \removeunwantedspaces which does a check
before it calls \unskip.

> \def\SamePageDo#1[#2]%
> {\doifreferencefoundelse{#2}
>    {\ifnum\referencepagestate=1
>       \unskip%\unknown % reference is on the same page
>      \else
>        #1[#2]%
>     \fi}
> \let\oldin=\in
> \let\oldat=\at
> \def\in{\SamePageDo\oldin}
> \def\at{\SamePageDo\oldat}

Don’t redefine \in, at and \about because all three commands can also be used
in math mode where they have a different meaning but with your redefinition
they can’t be used anymore for math.

Wolfgang
___________________________________________________________________________________