Skip to content

glossary generation and drefi (broken and underspecified) #29

Description

@kohlhase

the glossary generation tools do not work as (I) expected. And I think that the behavior is still not sufficiently specified, so I will try here.

Generally in a situation like

\begin{module}[id=FOO]
\importmodule{foo}
\begin{definition}[id=def.FOOBAR]
A \defi{bar}  is a sdfsdfsdfsdfsdfsdfsdf...
\end{definition}
...
\end{module}

the \drefi[foo?bar}{BAR} references a symbol with name foo?bar (i.e. one name=foo from the imported module module bar) and creates a new symbol FOO?BAR, which is a "re-definition" or "recap" of foo?bar (whatever that really means).

In particular, both of them are visible whenever module FOO is imported. For the glossary tools this means that both foo?bar and FOO?BAR should be found, if the course contains the snippet above.

For the following I will assume that theory foo is from the SMGloM and is of the form

\begin{module}[id=foo]
\begin{definition}[id=def.foobar]
A \drefi[foo?bar}{BAR}  is a SDFSFSDFSDFSDF
\end{definition}
...
\end{module}

BUT it is not clear what should be in the generated glossary. There are a couple of possibilities:

  • local: only - BAR: A BAR is a SDFSDFSDSDFSF..., i.e. the lemma BAR and the content of the definition def.FOOBAR; after all that is all that is really in the course.
  • source: only - BAR: a bar is a sdfsdfsfsdfsdfsdfsdf..., i.e. the lemma BAR and the content of the definition def.foobar; after all, def.foobar is just an (often abbreviated in courses) recap of def.FOOBAR (and bar and BAR are usually identical).
  • both: - BAR (see "bar"): A BAR is a SDFSDFSDSDFSF... and - BAR: a bar is a sdfsdfsfsdfsdfsdfsdf...; that may be very duplicating.

And then there is the question where we want to specify the behavior:

  • in the glossary generation program? e.g. by a switch --drefi=local/source/both for the three possibilities above.
  • in the \drefi or the enclosing definition, after all there are multiple paradigmatic uses of \drefi
    1. the local definition is a literal copy of the source definition, then source and local are identical and both makes no sense. Here sTeX should probably have some way of inputting the respective definition from SMGloM.
    2. the local definition is an abbreviation or reformulation of the source definition (but the lemmata bar and BAR are identical), e.g. the local definition is in the form of an \inlinedef, then probably the source behavior above is called for.
    3. the local definition establishes a synonym BAR for bar, then the both behavior is appropriate.

It seems the latter gives more control: we could use a variant \drefi* for i. and ii. - their effect on the glossary is the same- and \drefi for the iii. The program option --drefi=? might set a useful default behavior if no behavior is specified on the local drefis.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions