Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

\Cross conflict in bbding and marvosym

1,316 views
Skip to first unread message

Peter Flynn

unread,
Jan 17, 2013, 6:22:15 PM1/17/13
to
I thought this had been fixed long ago (it has certainly been reported
since 2007):

\documentclass{article}
\usepackage{marvosym}
\usepackage{bbding}
\begin{document}
foo
\end{document}

! LaTeX Error: Command \Cross already defined.

///Peter

Scott Pakin

unread,
Jan 17, 2013, 8:22:38 PM1/17/13
to
ifsym, too. See the Symbol Name Clashes table in the Comprehensive
LaTeX Symbol List.

-- Scott

Peter Flynn

unread,
Jan 18, 2013, 4:03:27 PM1/18/13
to
Aha. Thank you. I have edited a personal copy of bbding.sty and renamed
\Cross to \bbCross.

I seem to remember that at some stage 2-3 years ago I wrote to the
respective authors and asked if they could discuss a solution between
them; and I thought I had the answer that they would look at it. But
that may just be my memory playing tricks.

///Peter

Scott Pakin

unread,
Jan 18, 2013, 7:24:34 PM1/18/13
to
On 01/18/2013 02:03 PM, Peter Flynn wrote:
> Aha. Thank you. I have edited a personal copy of bbding.sty and renamed
> \Cross to \bbCross.

As an alternative to editing a personal copy, check out the
savesym package:

http://www.ctan.org/pkg/savesym

Usage:

\savesymbol{Cross}
\usepackage{bbding}
\restoresymbol{bb}{Cross}

That should have exactly the same effect as your edited bbding.sty.

-- Scott

GL

unread,
Jan 18, 2013, 9:24:11 PM1/18/13
to
Exactly the same, apart that i don't know what is \Cross nor {bb}{Cross} ???

>
> -- Scott
>

Scott Pakin

unread,
Jan 18, 2013, 10:35:27 PM1/18/13
to
\bbCross becomes bbding's \Cross, renamed. \Cross remains whatever it
was defined to before bbding was loaded. See the Comprehensive LaTeX
Symbol List for samples of various packages' \Cross glyphs.
Basically, marvosym defines \Cross to typeset a small crucifix; bbding
defines \Cross to typeset a large crucifix; and ifsym defines \Cross
to typeset a large "X".

-- Scott

GL

unread,
Jan 19, 2013, 5:52:31 AM1/19/13
to
Yes. Looking at savesym.sty (there is no documentation):
- \origCross is the saved value which is not undefined at the end of
the process.
- \Cross is locally \let to \relax and then globally \let to \origCross
- If \Cross was defined as a command with an option, the process will
fail (cf. letltxmacro in the Oberdiek bundle)
- \expandafter before \global is useless

Hum.

>
> -- Scott

Peter Flynn

unread,
Jan 19, 2013, 4:16:34 PM1/19/13
to
Very interesting. Hadn't come across savesym before...many thanks.

///Peter


0 new messages