At 10:15 07.09.2001 +0200, Taco Hoekwater wrote:
>\cite{..} is accepted as meaning the same as \cite[..]. It is in there
>because existing databases use this syntax when refering to other items
>in the database. But: it is very latexy and not in sync with the context
>rule that typeset arguments use {} and setup arguments use [].
>
>So, question: to remove or not to remove? How many people share bibtex
>databases between latex en context? (removal makes it easier to implement
>the 'extra info').
As far as I am concerned, it can be removed, since I'm planning to abandon
the use of latex entirely and do not have large bibtex databases yet.
A more general solution could be to use a different command for
cross-referencing inside the bib file, let's call it \crosscite for
example. Then you could say something like
\def\crosscite#1{\cite[#1]} % for context
or
\def\crosscite#1{\cite{#1}} % for latex
in the setup area of your document, or perhaps better in the bib module and
in a cont-bib.sty file provided for use with latex. Existing databases
could be converted with a single search and replace, and the context \cite
command would be free of restrictions due to backwards compatibility
issues. I think this simple conversion would be an acceptable price for
enhanced functionality.
Perhaps the definition of \crosscite should provide equivalent use of
\crosscite{..} and \crosscite[..], so context users can use the square
brackets consistently.
Eckhart