__HEADER__(Definitions of categories with automatic indexing)%% Wrapper commands specific for defining categories \RequirePackage{__AUTHOR_ACRONYM__-symbindex} \RequirePackage{translator} \RequirePackage{amsmath} \usedictionary{translator-mathematical-categories-dictionary} \NewDocumentCommand{\category}{ m } { \operatorname{\textup{\textbf{#1}}} } \NewDocumentCommand{\DeclareCategory}{ O{} m } { \DeclareSymbol[group = categories, #1]{#2} } \NewDocumentCommand{\DeclareSimpleCategory}{ o m o} { \IfValueTF{#1} { \IfValueTF{#3} { \DeclareCategory[operator = \category, description = #3, #1]{#2} } { \DeclareCategory[operator = \category, #1]{#2} } } { \IfValueTF{#3} { \DeclareCategory[operator = \category, description = #3]{#2} } { \DeclareCategory[operator = \category]{#2} } } } \NewDocumentCommand{\MakeCategoryIndex}{ } { \printindex[categories] } \makeindex [ name = categories, title = \translate{Index~of~categories} ] %%%% Categories \DeclareSimpleCategory { Top } [ \translate{Top~(Category~description)} ] \DeclareSimpleCategory { hTop } [ \translate{hTop~(Category~description)} ] \DeclareSimpleCategory { Set } [ \translate{Set~(Category~description)} ] \DeclareSimpleCategory { CHaus } [ \translate{CHaus~(Category~description)} ] \DeclareSimpleCategory { Grp } [ \translate{Grp~(Category~description)} ] \DeclareSimpleCategory { Ab } [ \translate{Ab~(Category~description)} ] \DeclareSimpleCategory { CRing } [ \translate{CRing~(Category~description)} ] \DeclareSimpleCategory { Ring } [ \translate{Ring~(Category~description)} ] \DeclareSimpleCategory [ defaultargs = _k ] { Vect } [ \translate{Vect~(Category~description)} ] \DeclareSimpleCategory { Cat } [ \translate{Cat~(Category~description)} ] \DeclareSimpleCategory [ defaultargs = _R ] { Mod } [ \translate{Mod~(Category~description)} ] \DeclareSimpleCategory [ defaultargs = _k ] { Alg } [ \translate{Alg~(Category~description)} ] \DeclareSimpleCategory { Field } [ \translate{Field~(Category~description)} ] \DeclareSimpleCategory [ defaultargs = _k ] { AffVar } [ \translate{AffVar~(Category~description)} ] \DeclareSimpleCategory { Sch } [ \translate{Sch~(Category~description)} ] \DeclareSimpleCategory { GrAb } [ \translate{GrAb~(Category~description)} ] \DeclareSimpleCategory { CGHaus } [ \translate{CGHaus~(Category~description)} ] \DeclareSimpleCategory { SimplicialSet } [ formula = S, \translate{SimplicialSet~(Category~description)} ] \DeclareCategory [ operator = \operatorname, formula = \Delta, ordered = Ordinal, description = \translate{Ordinal ~ number ~ category ~ (Category ~ description)} ] {OrdCat}