# [luatex] Getting all symbols

Robin Fairbairns Robin.Fairbairns at cl.cam.ac.uk
Wed Jun 13 11:58:39 CEST 2012

Sensei <senseiwa at gmail.com> wrote:

> > (note, ulrike's is the first lua code i've run; i tend to spend my tex
> > time behind the bleading edge, hoping to ride others' shock waves...)
>
> That code essentially satifies me.
>
> One thing that I've noticed though is this: it isn't
> "hierarchical". If I add a package, there seems no distinction on
> symbols.

that's a property of hash tables.  a new cs will be put in the table at
a place selected by the hashing algorithm, not by the specifics of its
definition.

as far as the hash table (indeed, the tex engine as a whole) is
concerned, a cs is nothing more than a link to its definition.

> You may say that it's the way TeX works, and that could be fine with
> me. But this also means that we are unable to know the origin of
> symbols
>
> Is this last step hopeless?

yes.

you could take snapshots of the hash table before loading each package,
and then compare them.  (this would require sorting the name list,
presumably.)

> (which package defines, for instance, \mathbb?).

quite a lot.  of tex required packages, the answer is something in the
amslatex distribution, by the look of it, but several packages provide
alternative bb characters.