summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2015-11-12 22:17:08 +0000
committerKarl Berry <karl@freefriends.org>2015-11-12 22:17:08 +0000
commitd7234c8b1a0b9dd638531f41e22cb99a6952c474 (patch)
tree2a940d903fef9b0d12ba5c2c08956863b552e1fe /Master/texmf-dist/tex
parent0af11921db2db5ec5f91fc203ee43ebdba0a18c4 (diff)
nameauth (12nov15)
git-svn-id: svn://tug.org/texlive/trunk@38829 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex')
-rw-r--r--Master/texmf-dist/tex/latex/nameauth/nameauth.sty1576
1 files changed, 900 insertions, 676 deletions
diff --git a/Master/texmf-dist/tex/latex/nameauth/nameauth.sty b/Master/texmf-dist/tex/latex/nameauth/nameauth.sty
index e6ae07608af..a78b978c695 100644
--- a/Master/texmf-dist/tex/latex/nameauth/nameauth.sty
+++ b/Master/texmf-dist/tex/latex/nameauth/nameauth.sty
@@ -5,34 +5,27 @@
%% The original source files were:
%%
%% nameauth.dtx (with options: `package')
+%% --------:| ----------------------------------------------------------------
+%% nameauth:| Name authority mechanism for consistency in text and index
+%% Author:| Charles P. Schaum
+%% E-mail:| charles dot schaum at comcast dot net
+%% License:| Released under the LaTeX Project Public License v1.3c or later
+%% See:| http://www.latex-project.org/lppl.txt
%%
-%% This is a generated file.
-%%
-%% Copyright (C) 2011 by Charles P. Schaum <charles dot schaum at comcast dot net>
-%%
-%% This file may be distributed and/or modified under the conditions of
-%% the LaTeX Project Public License, either version 1.2 of this license
-%% or (at your option) any later version. The latest version of this
-%% license is in:
-%%
-%% http://www.latex-project.org/lppl.txt
-%%
-%% and version 1.2 or later is part of all distributions of LaTeX version
-%% 1999/12/01 or later.
-%%
-\NeedsTeXFormat{LaTeX2e}[2005/12/01]
+\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesPackage{nameauth}
- [2015/07/09 v1.9 name authority macros to aid consistent display and indexing of names]
+ [2015/11/11 v2.0 Name authority mechanism for consistency in text and index]
\newif\if@nameauth@FullName
\newif\if@nameauth@FirstName
\newif\if@nameauth@AltAKA
\newif\if@nameauth@DoFormat
-\newif\if@nameauth@DoIndex
+\newif\if@nameauth@FirstFormat
\newif\if@nameauth@AlwaysFormat
\newif\if@nameauth@AlwaysComma
\newif\if@nameauth@ShowComma
\newif\if@nameauth@NBSP
-\newif\if@nameauth@Comma
+\newif\if@nameauth@DoIndex
+\newif\if@nameauth@Pretag
\newif\if@nameauth@Punct
\newif\if@nameauth@DoCaps
\newif\if@nameauth@AllCaps
@@ -42,6 +35,7 @@
\newif\if@nameauth@RevAllComma
\newif\if@nameauth@RevThisComma
\newcommand{\NamesFormat}{}
+\def\@nameauth@Actual{@}
\DeclareOption{mainmatter}{\@nameauth@DoFormattrue}
\DeclareOption{frontmatter}{\@nameauth@DoFormatfalse}
\DeclareOption{smallcaps}{\renewcommand{\NamesFormat}{\scshape}}
@@ -51,28 +45,36 @@
\DeclareOption{alwaysformat}{\@nameauth@AlwaysFormattrue}
\DeclareOption{allcaps}{\@nameauth@AllCapstrue}
\DeclareOption{normalcaps}{\@nameauth@AllCapsfalse}
-\DeclareOption{allreversed}{\@nameauth@RevAlltrue\@nameauth@RevAllCommafalse}
-\DeclareOption{allrevcomma}{\@nameauth@RevAlltrue\@nameauth@RevAllCommatrue}
-\DeclareOption{notreversed}{\@nameauth@RevAllfalse\@nameauth@RevAllCommafalse}
+\DeclareOption{allreversed}%
+ {\@nameauth@RevAlltrue\@nameauth@RevAllCommafalse}
+\DeclareOption{allrevcomma}%
+ {\@nameauth@RevAlltrue\@nameauth@RevAllCommatrue}
+\DeclareOption{notreversed}%
+ {\@nameauth@RevAllfalse\@nameauth@RevAllCommafalse}
\DeclareOption{comma}{\@nameauth@AlwaysCommatrue}
\DeclareOption{nocomma}{\@nameauth@AlwaysCommafalse}
\DeclareOption{index}{\@nameauth@DoIndextrue}
\DeclareOption{noindex}{\@nameauth@DoIndexfalse}
-\ExecuteOptions{nocomma,mainmatter,index,normalcaps,notreversed,smallcaps}
+\DeclareOption{pretag}{\@nameauth@Pretagtrue}
+\DeclareOption{nopretag}{\@nameauth@Pretagfalse}
+\ExecuteOptions%
+ {nocomma,%
+ mainmatter,%
+ index,%
+ pretag,%
+ normalcaps,%
+ notreversed,%
+ smallcaps}
\ProcessOptions\relax
\RequirePackage{etoolbox}
\RequirePackage{trimspaces}
\RequirePackage{suffix}
\RequirePackage{xargs}
-\newcommand*{\@nameauth@CleanName}[1]%
-{%
- \expandafter\zap@space\detokenize{#1} \@empty%
-}
+\newcommand*{\@nameauth@Clean}[1]%
+ {\expandafter\zap@space\detokenize{#1} \@empty}
\newcommand*{\@nameauth@Root}[1]%
-{%
- \@nameauth@TrimRoot#1,\@empty\relax%
-}
-\def\@nameauth@TrimRoot#1,#2\relax{#1}
+ {\@nameauth@TrimRoot#1,\@empty\relax}
+\def\@nameauth@TrimRoot#1,#2\relax{\trim@spaces{#1}}
\newcommand*{\@nameauth@CapRoot}[1]%
{\@nameauth@CR#1\relax}
\def\@nameauth@CR#1#2\relax{\uppercase{#1}\@nameauth@Root{#2}}
@@ -89,548 +91,609 @@
\@nameauth@Punctfalse%
\TestDot#1\TestEnd.\TestEnd\TestStop%
}
-\def\@nameauth@CheckDot{\futurelet\@token\@nameauth@EvalDot}
-\def\@nameauth@EvalDot%
+\newcommand*{\@nameauth@CheckDot}%
+ {\futurelet\@token\@nameauth@EvalDot}
+\newcommand*{\@nameauth@EvalDot}%
{\let\@period=.\ifx\@token\@period\expandafter\@gobble \fi}
-\newcommand{\@nameauth@FmtName}[1]%
+\newcommand*{\@nameauth@FmtName}[1]%
{%
+ \if@nameauth@AlwaysFormat\@nameauth@FirstFormattrue\fi
\@nameauth@TestDot{#1}%
- \if@nameauth@DoFormat%
- \bgroup\NamesFormat{#1}\egroup%
- \else%
- #1%
- \fi%
-}
-\WithSuffix\newcommand\@nameauth@FmtName*[1]%
-{%
- \@nameauth@TestDot{#1}%
- \if@nameauth@DoFormat%
- \if@nameauth@AlwaysFormat%
+ \if@nameauth@DoFormat
+ \if@nameauth@FirstFormat
\bgroup\NamesFormat{#1}\egroup%
- \else%
+ \else
#1%
- \fi%
- \else%
+ \fi
+ \else
#1%
- \fi%
+ \fi
}
-\newcommandx\@nameauth@Index[2][2=\@empty]%
+\newcommand*{\@nameauth@Index}[2]%
{%
- \ifx#2\@empty%
- \if@nameauth@DoIndex\index{#1}\fi%
- \else%
- \ifcsname#2\endcsname%
- \if@nameauth@DoIndex\index{#1\csname#2\endcsname}\fi%
- \else%
- \if@nameauth@DoIndex\index{#1}\fi%
- \fi%
- \fi%
+ \def\cseq{#1}%
+ \ifcsname\cseq!TAG\endcsname
+ \ifcsname\cseq!PRE\endcsname
+ \if@nameauth@DoIndex
+ \index{\csname\cseq!PRE\endcsname#2\csname\cseq!TAG\endcsname}%
+ \fi
+ \else
+ \if@nameauth@DoIndex\index{#2\csname\cseq!TAG\endcsname}\fi
+ \fi
+ \else
+ \ifcsname\cseq!PRE\endcsname
+ \if@nameauth@DoIndex\index{\csname\cseq!PRE\endcsname#2}\fi
+ \else
+ \if@nameauth@DoIndex\index{#2}\fi
+ \fi
+ \fi
}
-\newcommand{\CapThis}{\@nameauth@DoCapstrue}
-\newcommand{\CapName}{\@nameauth@AllThistrue}
-\newcommand{\RevName}{\@nameauth@RevThistrue}
-\newcommand{\RevComma}%
+\newcommand*{\CapThis}{\@nameauth@DoCapstrue}
+\newcommand*{\CapName}{\@nameauth@AllThistrue}
+\newcommand*{\RevName}{\@nameauth@RevThistrue}
+\newcommand*{\RevComma}%
{\@nameauth@RevThistrue\@nameauth@RevThisCommatrue}
-\newcommand{\ShowComma}{\@nameauth@ShowCommatrue}
-\newcommand{\KeepAffix}{\@nameauth@NBSPtrue}
-\newcommandx\Name[3][1=\@empty, 3=\@empty]%
+\newcommand*{\ShowComma}{\@nameauth@ShowCommatrue}
+\newcommand*{\KeepAffix}{\@nameauth@NBSPtrue}
+\newcommand*{\NamesInactive}{\@nameauth@DoFormatfalse}
+\newcommand*{\NamesActive}{\@nameauth@DoFormattrue}
+\newcommand*{\AllCapsInactive}{\@nameauth@AllCapsfalse}
+\newcommand*{\AllCapsActive}{\@nameauth@AllCapstrue}
+\newcommand*{\ReverseInactive}{\@nameauth@RevAllfalse}
+\newcommand*{\ReverseActive}{\@nameauth@RevAlltrue}
+\newcommand*{\ReverseCommaInactive}%
+ {\@nameauth@RevAllfalse\@nameauth@RevAllCommafalse}
+\newcommand*{\ReverseCommaActive}%
+ {\@nameauth@RevAlltrue\@nameauth@RevAllCommatrue}
+\newcommand*{\IndexInactive}{\@nameauth@DoIndexfalse}
+\newcommand*{\IndexActive}{\@nameauth@DoIndextrue}
+\newcommand*{\IndexActual}[1]{\gdef\@nameauth@Actual{#1}}
+\newcommandx*\Name[3][1=\@empty, 3=\@empty]%
{%
+ \let\ex\expandafter%
\leavevmode\hbox{}%
- \protected@edef\testi{#1}%
- \protected@edef\testii{#2}%
- \protected@edef\testiii{#3}%
- \if@nameauth@AllCaps\@nameauth@AllThistrue\fi%
- \if@nameauth@RevAll\@nameauth@RevThistrue\fi%
- \if@nameauth@RevAllComma\@nameauth@RevThisCommatrue\fi%
+ \protected@edef\testa{#1}%
+ \protected@edef\arga{\trim@spaces{#1}}%
+ \protected@edef\testb{\trim@spaces{#2}}%
+ \protected@edef\testbr{\@nameauth@Root{#2}}%
+ \protected@edef\testc{#3}%
+ \protected@edef\argc{\trim@spaces{#3}}%
+ \def\csb{\@nameauth@Clean{#2}}%
+ \def\csbc{\@nameauth@Clean{#2#3}}%
+ \def\csab{\@nameauth@Clean{#1!#2}}%
+ \ifx\testb\@empty
+ \PackageError{nameauth}%
+ {macro \Name: Essential name missing}%
+ \else
+ \ifx\csb\@empty
+ \PackageError{nameauth}%
+ {macro \AKA: Essential name malformed}%
+ \fi
+ \fi
+ \if@nameauth@AllCaps\@nameauth@AllThistrue\fi
+ \if@nameauth@RevAll\@nameauth@RevThistrue\fi
+ \if@nameauth@RevAllComma\@nameauth@RevThisCommatrue\fi
\protected@edef\ISpace{\space}%
\protected@edef\Space{\space}%
- \if@nameauth@NBSP\protected@edef\Space{\nobreakspace}\fi%
- \if@nameauth@AlwaysComma%
+ \if@nameauth@NBSP\protected@edef\Space{\nobreakspace}\fi
+ \if@nameauth@AlwaysComma
\protected@edef\ISpace{,\space}%
\protected@edef\Space{,\space}%
- \if@nameauth@NBSP\protected@edef\Space{,\nobreakspace}\fi%
- \fi%
- \if@nameauth@ShowComma%
+ \if@nameauth@NBSP\protected@edef\Space{,\nobreakspace}\fi
+ \fi
+ \if@nameauth@ShowComma
\protected@edef\ISpace{,\space}%
\protected@edef\Space{,\space}%
- \if@nameauth@NBSP\protected@edef\Space{,\nobreakspace}\fi%
- \fi%
+ \if@nameauth@NBSP\protected@edef\Space{,\nobreakspace}\fi
+ \fi
\protected@edef\RawShort{\@nameauth@Root{#2}}%
\protected@edef\CapShort{\@nameauth@CapRoot{#2}}%
\protected@edef\AllCapShort{\@nameauth@AllCapRoot{#2}}%
\let\IndexShort\RawShort%
- \ifx\testii\RawShort%
- \protected@edef\Suffix{\@empty}%
- \let\IndexSurnames\RawShort%
+ \ifx\testb\testbr
+ \protected@edef\Suff{\@empty}%
+ \let\IndexSNN\RawShort%
\let\Reversed\RawShort%
- \let\Surnames\RawShort%
+ \let\SNN\RawShort%
\let\PrintShort\RawShort%
- \if@nameauth@DoCaps%
+ \if@nameauth@DoCaps
\let\Reversed\CapShort%
- \let\Surnames\CapShort%
+ \let\SNN\CapShort%
\let\PrintShort\CapShort%
- \fi%
- \if@nameauth@AllThis%
+ \fi
+ \if@nameauth@AllThis
\let\Reversed\AllCapShort%
- \let\Surnames\AllCapShort%
+ \let\SNN\AllCapShort%
\let\PrintShort\AllCapShort%
- \fi%
- \else%
- \protected@edef\Suffix{\@nameauth@Suffix{#2}}%
- \protected@edef\IndexSurnames{\RawShort\ISpace\Suffix}%
- \protected@edef\Reversed{\Suffix\Space\RawShort}%
- \protected@edef\Surnames{\RawShort\Space\Suffix}%
- \if@nameauth@RevThis%
- \let\PrintShort\Suffix%
- \else%
+ \fi
+ \else
+ \protected@edef\Suff{\@nameauth@Suffix{#2}}%
+ \protected@edef\IndexSNN{\RawShort\ISpace\Suff}%
+ \protected@edef\Reversed{\Suff\Space\RawShort}%
+ \protected@edef\SNN{\RawShort\Space\Suff}%
+ \if@nameauth@RevThis
+ \let\PrintShort\Suff%
+ \else
\let\PrintShort\RawShort%
- \fi%
- \if@nameauth@DoCaps%
- \protected@edef\Reversed{\Suffix\Space\CapShort}%
- \protected@edef\Surnames{\CapShort\Space\Suffix}%
- \if@nameauth@RevThis%
- \let\PrintShort\Suffix%
- \else%
+ \fi
+ \if@nameauth@DoCaps
+ \protected@edef\Reversed{\Suff\Space\CapShort}%
+ \protected@edef\SNN{\CapShort\Space\Suff}%
+ \if@nameauth@RevThis
+ \let\PrintShort\Suff%
+ \else
\let\PrintShort\CapShort%
- \fi%
- \fi%
- \if@nameauth@AllThis%
- \protected@edef\Reversed{\Suffix\Space\AllCapShort}%
- \protected@edef\Surnames{\AllCapShort\Space\Suffix}%
- \if@nameauth@RevThis%
- \let\PrintShort\Suffix%
- \else%
+ \fi
+ \fi
+ \if@nameauth@AllThis
+ \protected@edef\Reversed{\Suff\Space\AllCapShort}%
+ \protected@edef\SNN{\AllCapShort\Space\Suff}%
+ \if@nameauth@RevThis
+ \let\PrintShort\Suff%
+ \else
\let\PrintShort\AllCapShort%
- \fi%
- \fi%
- \fi%
- \ifx\testi\@empty%
- \ifx\testiii\@empty%
- \ifcsname\@nameauth@CleanName{#2!PN!}\endcsname%
+ \fi
+ \fi
+ \fi
+ \ifx\testa\@empty
+ \ifx\testc\@empty
+ \ifcsname\csb!PN\endcsname
\PackageWarning{nameauth}%
- {macro \Name: Xref: #2 cannot be a page reference.}%
- \else%
- \@nameauth@Index{\IndexSurnames}[\@nameauth@CleanName{#2}!TAG!]%
- \fi%
- \if@nameauth@DoFormat%
- \ifcsname\@nameauth@CleanName{#2!MN!}\endcsname%
- \if@nameauth@FirstName%
- \@nameauth@FullNamefalse%
- \@nameauth@FirstNamefalse%
- \fi%
- \if@nameauth@FullName%
- \@nameauth@FullNamefalse%
- \if@nameauth@RevThis%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{\Reversed}%
- \else%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{\Surnames}%
- \fi%
- \else%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{\PrintShort}%
- \fi%
- \else%
+ {macro \Name: Xref: #2 cannot be a page reference}%
+ \else
+ \@nameauth@Index{\csb}{\IndexSNN}%
+ \fi
+ \if@nameauth@DoFormat
+ \ifcsname\csb!MN\endcsname
+ \if@nameauth@FirstName
\@nameauth@FullNamefalse%
\@nameauth@FirstNamefalse%
- \csgdef{\@nameauth@CleanName{#2!MN!}}{}%
- \if@nameauth@RevThis%
- \expandafter\@nameauth@FmtName\expandafter{\Reversed}%
- \else%
- \expandafter\@nameauth@FmtName\expandafter{\Surnames}%
- \fi%
- \fi%
- \else%
- \ifcsname\@nameauth@CleanName{#2!NF!}\endcsname%
- \if@nameauth@FirstName%
- \@nameauth@FullNamefalse%
- \@nameauth@FirstNamefalse%
- \fi%
- \if@nameauth@FullName%
- \@nameauth@FullNamefalse%
- \if@nameauth@RevThis%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{\Reversed}%
- \else%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{\Surnames}%
- \fi%
- \else%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{\PrintShort}%
- \fi%
- \else%
+ \fi
+ \if@nameauth@FullName
+ \@nameauth@FullNamefalse%
+ \if@nameauth@RevThis
+ \ex\@nameauth@FmtName\ex{\Reversed}%
+ \else
+ \ex\@nameauth@FmtName\ex{\SNN}%
+ \fi
+ \else
+ \ex\@nameauth@FmtName\ex{\PrintShort}%
+ \fi
+ \else
+ \@nameauth@FirstFormattrue%
+ \@nameauth@FullNamefalse%
+ \@nameauth@FirstNamefalse%
+ \csgdef{\csb!MN}{}%
+ \if@nameauth@RevThis
+ \ex\@nameauth@FmtName\ex{\Reversed}%
+ \else
+ \ex\@nameauth@FmtName\ex{\SNN}%
+ \fi
+ \fi
+ \else
+ \ifcsname\csb!NF\endcsname
+ \if@nameauth@FirstName
\@nameauth@FullNamefalse%
\@nameauth@FirstNamefalse%
- \csgdef{\@nameauth@CleanName{#2!NF!}}{}%
- \if@nameauth@RevThis%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{\Reversed}%
- \else%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{\Surnames}%
- \fi%
- \fi%
- \fi%
- \else%
- \ifcsname\@nameauth@CleanName{#2#3!PN!}\endcsname%
+ \fi
+ \if@nameauth@FullName
+ \@nameauth@FullNamefalse%
+ \if@nameauth@RevThis
+ \ex\@nameauth@FmtName\ex{\Reversed}%
+ \else
+ \ex\@nameauth@FmtName\ex{\SNN}%
+ \fi
+ \else
+ \ex\@nameauth@FmtName\ex{\PrintShort}%
+ \fi
+ \else
+ \@nameauth@FullNamefalse%
+ \@nameauth@FirstNamefalse%
+ \csgdef{\csb!NF}{}%
+ \if@nameauth@RevThis
+ \ex\@nameauth@FmtName\ex{\Reversed}%
+ \else
+ \ex\@nameauth@FmtName\ex{\SNN}%
+ \fi
+ \fi
+ \fi
+ \else
+ \ifcsname\csbc!PN\endcsname
\PackageWarning{nameauth}%
- {macro \Name: Xref: #2 #3 cannot be a page reference.}%
- \else%
- \@nameauth@Index{\IndexSurnames\ISpace#3}[\@nameauth@CleanName{#2#3}!TAG!]%
- \fi%
- \if@nameauth@DoFormat%
- \ifcsname\@nameauth@CleanName{#2#3!MN!}\endcsname%
- \if@nameauth@FirstName%
+ {macro \Name: Xref: #2 #3 cannot be a page reference}%
+ \else
+ \@nameauth@Index{\csbc}{\IndexSNN\ISpace\argc}%
+ \fi
+ \if@nameauth@DoFormat
+ \ifcsname\csbc!MN\endcsname
+ \if@nameauth@FirstName
\@nameauth@FullNamefalse%
\@nameauth@FirstNamefalse%
- \fi%
- \if@nameauth@FullName%
+ \fi
+ \if@nameauth@FullName
\@nameauth@FullNamefalse%
- \if@nameauth@RevThis%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{%
- \expandafter\testiii\expandafter\space\Surnames}%
- \else%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{%
- \expandafter\Surnames\expandafter\space#3}%
- \fi%
- \else%
- \if@nameauth@RevThis%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{\testiii}%
- \else%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{\PrintShort}%
- \fi%
- \fi%
- \else%
+ \if@nameauth@RevThis
+ \ex\@nameauth@FmtName\ex{\ex\argc\ex\space\SNN}%
+ \else
+ \ex\@nameauth@FmtName\ex{\ex\SNN\ex\space\argc}%
+ \fi
+ \else
+ \if@nameauth@RevThis
+ \ex\@nameauth@FmtName\ex{\argc}%
+ \else
+ \ex\@nameauth@FmtName\ex{\PrintShort}%
+ \fi
+ \fi
+ \else
+ \@nameauth@FirstFormattrue%
\@nameauth@FullNamefalse%
\@nameauth@FirstNamefalse%
- \csgdef{\@nameauth@CleanName{#2#3!MN!}}{}%
- \if@nameauth@RevThis%
- \expandafter\@nameauth@FmtName\expandafter{%
- \expandafter\testiii\expandafter\space\Surnames}%
- \else%
- \expandafter\@nameauth@FmtName\expandafter{%
- \expandafter\Surnames\expandafter\space#3}%
- \fi%
- \fi%
- \else%
- \ifcsname\@nameauth@CleanName{#2#3!NF!}\endcsname%
- \if@nameauth@FirstName%
+ \csgdef{\csbc!MN}{}%
+ \if@nameauth@RevThis
+ \ex\@nameauth@FmtName\ex{\ex\argc\ex\space\SNN}%
+ \else
+ \ex\@nameauth@FmtName\ex{\ex\SNN\ex\space\argc}%
+ \fi
+ \fi
+ \else
+ \ifcsname\csbc!NF\endcsname
+ \if@nameauth@FirstName
\@nameauth@FullNamefalse%
\@nameauth@FirstNamefalse%
- \fi%
- \if@nameauth@FullName%
+ \fi
+ \if@nameauth@FullName
\@nameauth@FullNamefalse%
- \if@nameauth@RevThis%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{%
- \expandafter\testiii\expandafter\space\Surnames}%
- \else%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{%
- \expandafter\Surnames\expandafter\space#3}%
- \fi%
- \else%
- \if@nameauth@RevThis%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{\testiii}%
- \else%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{\PrintShort}%
- \fi%
- \fi%
- \else%
+ \if@nameauth@RevThis
+ \ex\@nameauth@FmtName\ex{\ex\argc\ex\space\SNN}%
+ \else
+ \ex\@nameauth@FmtName\ex{\ex\SNN\ex\space\argc}%
+ \fi
+ \else
+ \if@nameauth@RevThis
+ \ex\@nameauth@FmtName\ex{\argc}%
+ \else
+ \ex\@nameauth@FmtName\ex{\PrintShort}%
+ \fi
+ \fi
+ \else
\@nameauth@FullNamefalse%
\@nameauth@FirstNamefalse%
- \csgdef{\@nameauth@CleanName{#2#3!NF!}}{}%
- \if@nameauth@RevThis%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{%
- \expandafter\testiii\expandafter\space\Surnames}%
- \else%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{%
- \expandafter\Surnames\expandafter\space\testiii}%
- \fi%
- \fi%
- \fi%
- \fi%
- \else%
- \if@nameauth@RevThisComma%
+ \csgdef{\csbc!NF}{}%
+ \if@nameauth@RevThis
+ \ex\@nameauth@FmtName\ex{\ex\argc\ex\space\SNN}%
+ \else
+ \ex\@nameauth@FmtName\ex{\ex\SNN\ex\space\argc}%
+ \fi
+ \fi
+ \fi
+ \fi
+ \else
+ \if@nameauth@RevThisComma
\protected@edef\ISpace{,\space}%
\protected@edef\Space{,\space}%
- \if@nameauth@NBSP\protected@edef\Space{,\nobreakspace}\fi%
- \fi%
- \ifx\testiii\@empty%
- \protected@edef\Forenames{#1}%
- \else%
- \protected@edef\Forenames{#3}%
- \fi
- \ifcsname\@nameauth@CleanName{#1#2!PN!}\endcsname%
+ \if@nameauth@NBSP\protected@edef\Space{,\nobreakspace}\fi
+ \fi
+ \ifx\testc\@empty
+ \let\FNN\arga%
+ \else
+ \let\FNN\argc%
+ \fi
+ \ifcsname\csab!PN\endcsname
\PackageWarning{nameauth}%
- {macro \Name: Xref: #1 #2 cannot be a page reference.}%
- \else%
- \ifx\Suffix\@empty%
- \@nameauth@Index{\IndexShort, #1}[\@nameauth@CleanName{#1#2}!TAG!]%
- \else%
- \@nameauth@Index{\IndexShort, #1, \Suffix}[\@nameauth@CleanName{#1#2}!TAG!]%
- \fi%
- \fi%
- \if@nameauth@DoFormat%
- \ifcsname\@nameauth@CleanName{#1#2!MN!}\endcsname%
- \if@nameauth@FirstName%
+ {macro \Name: Xref: #1 #2 cannot be a page reference}%
+ \else
+ \ifx\Suff\@empty
+ \@nameauth@Index{\csab}{\IndexShort,\space\arga}%
+ \else
+ \@nameauth@Index{\csab}{\IndexShort,\space\arga,\space\Suff}%
+ \fi
+ \fi
+ \if@nameauth@DoFormat
+ \ifcsname\csab!MN\endcsname
+ \if@nameauth@FirstName
\@nameauth@FullNamefalse%
\@nameauth@FirstNamefalse%
- \let\PrintShort\Forenames%
- \fi%
- \if@nameauth@FullName%
+ \let\PrintShort\FNN%
+ \fi
+ \if@nameauth@FullName
\@nameauth@FullNamefalse%
- \if@nameauth@RevThis%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{%
- \expandafter\Surnames\expandafter\Space\Forenames}%
- \else%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{%
- \expandafter\Forenames\expandafter\space\Surnames}%
- \fi%
- \else%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{\PrintShort}%
- \fi%
- \else%
+ \if@nameauth@RevThis
+ \ex\@nameauth@FmtName\ex{\ex\SNN\ex\Space\FNN}%
+ \else
+ \ex\@nameauth@FmtName\ex{\ex\FNN\ex\space\SNN}%
+ \fi
+ \else
+ \ex\@nameauth@FmtName\ex{\PrintShort}%
+ \fi
+ \else
+ \@nameauth@FirstFormattrue%
\@nameauth@FullNamefalse%
\@nameauth@FirstNamefalse%
- \csgdef{\@nameauth@CleanName{#1#2!MN!}}{}%
- \if@nameauth@RevThis%
- \expandafter\@nameauth@FmtName\expandafter{%
- \expandafter\Surnames\expandafter\Space\Forenames}%
- \else%
- \expandafter\@nameauth@FmtName\expandafter{%
- \expandafter\Forenames\expandafter\space\Surnames}%
- \fi%
- \fi%
- \else%
- \ifcsname\@nameauth@CleanName{#1#2!NF!}\endcsname%
- \if@nameauth@FirstName%
+ \csgdef{\csab!MN}{}%
+ \if@nameauth@RevThis
+ \ex\@nameauth@FmtName\ex{\ex\SNN\ex\Space\FNN}%
+ \else
+ \ex\@nameauth@FmtName\ex{\ex\FNN\ex\space\SNN}%
+ \fi
+ \fi
+ \else
+ \ifcsname\csab!NF\endcsname
+ \if@nameauth@FirstName
\@nameauth@FullNamefalse%
\@nameauth@FirstNamefalse%
- \let\PrintShort\Forenames%
- \fi%
- \if@nameauth@FullName%
+ \let\PrintShort\FNN%
+ \fi
+ \if@nameauth@FullName
\@nameauth@FullNamefalse%
- \if@nameauth@RevThis%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{%
- \expandafter\Surnames\expandafter\Space\Forenames}%
- \else%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{%
- \expandafter\Forenames\expandafter\space\Surnames}%
- \fi%
- \else%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{\PrintShort}%
- \fi%
- \else%
+ \if@nameauth@RevThis
+ \ex\@nameauth@FmtName\ex{\ex\SNN\ex\Space\FNN}%
+ \else
+ \ex\@nameauth@FmtName\ex{\ex\FNN\ex\space\SNN}%
+ \fi
+ \else
+ \ex\@nameauth@FmtName\ex{\PrintShort}%
+ \fi
+ \else
\@nameauth@FullNamefalse%
\@nameauth@FirstNamefalse%
- \csgdef{\@nameauth@CleanName{#1#2!NF!}}{}%
- \if@nameauth@RevThis%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{%
- \expandafter\Surnames\expandafter\Space\Forenames}%
- \else%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{%
- \expandafter\Forenames\expandafter\space\Surnames}%
- \fi%
- \fi%
- \fi%
- \fi%
+ \csgdef{\csab!NF}{}%
+ \if@nameauth@RevThis
+ \ex\@nameauth@FmtName\ex{\ex\SNN\ex\Space\FNN}%
+ \else
+ \ex\@nameauth@FmtName\ex{\ex\FNN\ex\space\SNN}%
+ \fi
+ \fi
+ \fi
+ \fi
+ \@nameauth@FirstFormatfalse%
\@nameauth@NBSPfalse%
\@nameauth@DoCapsfalse%
\@nameauth@AllThisfalse%
\@nameauth@ShowCommafalse%
\@nameauth@RevThisfalse%
\@nameauth@RevThisCommafalse%
- \if@nameauth@Punct\expandafter\@nameauth@CheckDot\fi%
+ \if@nameauth@Punct\expandafter\@nameauth@CheckDot\fi
}
-\WithSuffix\newcommandx\Name*[3][1=\@empty, 3=\@empty]%
- {\@nameauth@FullNametrue\Name[#1]{#2}[#3]}
-\newcommandx\FName[3][1=\@empty, 3=\@empty]%
- {\@nameauth@FirstNametrue\Name[#1]{#2}[#3]}
-\WithSuffix\newcommandx\FName*[3][1=\@empty, 3=\@empty]%
- {\@nameauth@FirstNametrue\Name[#1]{#2}[#3]}
-\newcommandx\AKA[5][1=\@empty, 3=\@empty, 5=\@empty]%
+\WithSuffix\def\Name*{\@nameauth@FullNametrue\Name}
+\def\FName{\@nameauth@FirstNametrue\Name}
+\WithSuffix\def\FName*{\@nameauth@FirstNametrue\Name}
+\newcommandx*\AKA[5][1=\@empty, 3=\@empty, 5=\@empty]%
{%
+ \let\ex\expandafter%
\leavevmode\hbox{}%
- \protected@edef\testi{#1}%
- \protected@edef\testii{#2}%
- \protected@edef\testiii{#3}%
- \protected@edef\testiv{#4}%
- \protected@edef\testv{#5}%
- \if@nameauth@AllCaps\@nameauth@AllThistrue\fi%
- \if@nameauth@RevAll\@nameauth@RevThistrue\fi%
- \if@nameauth@RevAllComma\@nameauth@RevThisCommatrue\fi%
+ \protected@edef\testa{#1}%
+ \protected@edef\arga{\trim@spaces{#1}}%
+ \protected@edef\testb{\trim@spaces{#2}}%
+ \protected@edef\testbr{\@nameauth@Root{#2}}%
+ \protected@edef\testc{#3}%
+ \protected@edef\argc{\trim@spaces{#3}}%
+ \protected@edef\testd{\trim@spaces{#4}}%
+ \protected@edef\testdr{\@nameauth@Root{#4}}%
+ \protected@edef\teste{#5}%
+ \protected@edef\arge{\trim@spaces{#5}}%
+ \def\csd{\@nameauth@Clean{#4}}%
+ \def\csde{\@nameauth@Clean{#4#5}}%
+ \def\cscd{\@nameauth@Clean{#3!#4}}%
+ \ifx\testb\@empty
+ \PackageError{nameauth}%
+ {macro \AKA: Essential name missing}%
+ \else
+ \ifx\csb\@empty
+ \PackageError{nameauth}%
+ {macro \AKA: Essential name malformed}%
+ \fi
+ \fi
+ \ifx\testd\@empty
+ \PackageError{nameauth}%
+ {macro \AKA: Essential name missing}%
+ \else
+ \ifx\csd\@empty
+ \PackageError{nameauth}%
+ {macro \AKA: Essential name malformed}%
+ \fi
+ \fi
+ \if@nameauth@AllCaps\@nameauth@AllThistrue\fi
+ \if@nameauth@RevAll\@nameauth@RevThistrue\fi
+ \if@nameauth@RevAllComma\@nameauth@RevThisCommatrue\fi
\protected@edef\ISpace{\space}%
\protected@edef\Space{\space}%
- \if@nameauth@NBSP\protected@edef\Space{\nobreakspace}\fi%
- \if@nameauth@AlwaysComma%
+ \if@nameauth@NBSP\protected@edef\Space{\nobreakspace}\fi
+ \if@nameauth@AlwaysComma
\protected@edef\ISpace{,\space}%
\protected@edef\Space{,\space}%
- \if@nameauth@NBSP\protected@edef\Space{,\nobreakspace}\fi%
- \fi%
- \if@nameauth@ShowComma%
+ \if@nameauth@NBSP\protected@edef\Space{,\nobreakspace}\fi
+ \fi
+ \if@nameauth@ShowComma
\protected@edef\ISpace{,\space}%
\protected@edef\Space{,\space}%
- \if@nameauth@NBSP\protected@edef\Space{,\nobreakspace}\fi%
- \fi%
- \protected@edef\Shortii{\@nameauth@Root{#2}}%
- \protected@edef\Shortiv{\@nameauth@Root{#4}}%
+ \if@nameauth@NBSP\protected@edef\Space{,\nobreakspace}\fi
+ \fi
+ \protected@edef\Shortb{\@nameauth@Root{#2}}%
+ \protected@edef\Shortd{\@nameauth@Root{#4}}%
\protected@edef\CapShort{\@nameauth@CapRoot{#4}}%
\protected@edef\AllCapShort{\@nameauth@AllCapRoot{#4}}%
- \ifx\testii\Shortii%
- \let\Surnamesii\Shortii%
- \protected@edef\Suffixii{\@empty}%
- \else%
- \protected@edef\Suffixii{\@nameauth@Suffix{#2}}%
- \protected@edef\Surnamesii{\Shortii\ISpace\Suffixii}%
- \fi%
- \ifx\testiv\Shortiv%
- \protected@edef\Suffixiv{\@empty}%
- \let\ISurnamesiv\Shortiv%
- \let\Reversed\Shortiv%
- \let\Surnamesiv\Shortiv%
- \if@nameauth@DoCaps%
- \let\Surnamesiv\CapShort%
+ \ifx\testb\testbr
+ \let\SNNb\Shortb%
+ \protected@edef\Suffb{\@empty}%
+ \else
+ \protected@edef\Suffb{\@nameauth@Suffix{#2}}%
+ \protected@edef\SNNb{\Shortb\ISpace\Suffb}%
+ \fi
+ \ifx\testd\testdr
+ \protected@edef\Suffd{\@empty}%
+ \let\ISNNd\Shortd%
+ \let\Reversed\Shortd%
+ \let\SNNd\Shortd%
+ \if@nameauth@DoCaps
+ \let\SNNd\CapShort%
\let\Reversed\CapShort%
- \fi%
- \if@nameauth@AllThis%
- \let\Surnamesiv\AllCapShort%
+ \fi
+ \if@nameauth@AllThis
+ \let\SNNd\AllCapShort%
\let\Reversed\AllCapShort%
- \fi%
- \else%
- \protected@edef\Suffixiv{\@nameauth@Suffix{#4}}%
- \protected@edef\ISurnamesiv{\Shortiv\ISpace\Suffixiv}%
- \protected@edef\Reversed{\Suffixiv\Space\Shortiv}%
- \protected@edef\Surnamesiv{\Shortiv\Space\Suffixiv}%
- \if@nameauth@DoCaps%
- \protected@edef\Reversed{\Suffixiv\Space\CapShort}%
- \protected@edef\Surnamesiv{\CapShort\Space\Suffixiv}%
- \fi%
- \if@nameauth@AllThis%
- \protected@edef\Reversed{\Suffixiv\Space\AllCapShort}%
- \protected@edef\Surnamesiv{\AllCapShort\Space\Suffixiv}%
- \fi%
- \fi%
- \ifx\testiii\@empty%
- \ifx\testv\@empty%
- \ifcsname\@nameauth@CleanName{#4!PN!}\endcsname%
+ \fi
+ \else
+ \protected@edef\Suffd{\@nameauth@Suffix{#4}}%
+ \protected@edef\ISNNd{\Shortd\ISpace\Suffd}%
+ \protected@edef\Reversed{\Suffd\Space\Shortd}%
+ \protected@edef\SNNd{\Shortd\Space\Suffd}%
+ \if@nameauth@DoCaps
+ \protected@edef\Reversed{\Suffd\Space\CapShort}%
+ \protected@edef\SNNd{\CapShort\Space\Suffd}%
+ \fi
+ \if@nameauth@AllThis
+ \protected@edef\Reversed{\Suffd\Space\AllCapShort}%
+ \protected@edef\SNNd{\AllCapShort\Space\Suffd}%
+ \fi
+ \fi
+ \ifx\testc\@empty
+ \ifx\teste\@empty
+ \ifcsname\csd!PN\endcsname
\PackageWarning{nameauth}%
- {macro \AKA: XRef: #4 exists.}%
- \else%
- \ifcsname\@nameauth@CleanName{#4!MN!}\endcsname%
+ {macro \AKA: XRef: #4 exists}%
+ \else
+ \ifcsname\csd!MN\endcsname
\PackageWarning{nameauth}%
- {macro \AKA: Name reference: #4 already exists; no see ref.}%
- \else%
- \ifcsname\@nameauth@CleanName{#4#5!NF!}\endcsname%
+ {macro \AKA: Name reference: #4 exists; no xref}%
+ \else
+ \ifcsname\csd!NF\endcsname
\PackageWarning{nameauth}%
- {macro \AKA: Name reference: #4 already exists; no see ref.}%
- \else%
- \csgdef{\@nameauth@CleanName{#4!PN!}}{}%
- \ifx\testi\@empty%
- \@nameauth@Index{\ISurnamesiv|see{\Surnamesii}}%
- \else%
- \ifx\Suffixii\@empty \@nameauth@Index{\ISurnamesiv|see{\Surnamesii, #1}}%
- \else \@nameauth@Index{\ISurnamesiv|see{\Shortii, #1, \Suffixii}}\fi%
- \fi%
- \fi%
- \fi%
- \fi%
- \if@nameauth@RevThisComma%
+ {macro \AKA: Name reference: #4 exists; no xref}%
+ \else
+ \csgdef{\csd!PN}{}%
+ \ifx\testa\@empty
+ \@nameauth@Index{\csd}%
+ {\ISNNd|see{\SNNb}}%
+ \else
+ \ifx\Suffb\@empty
+ \@nameauth@Index{\csd}%
+ {\ISNNd|see{\SNNb,\space\arga}}%
+ \else
+ \@nameauth@Index{\csd}%
+ {\ISNNd|see{\Shortb,\space\arga,\space\Suffb}}%
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \if@nameauth@RevThisComma
\protected@edef\ISpace{,\space}%
\protected@edef\Space{,\space}%
- \if@nameauth@NBSP\protected@edef\Space{,\nobreakspace}\fi%
- \fi%
- \if@nameauth@RevThis%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{\Reversed}%
- \else%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{\Surnamesiv}%
- \fi%
- \else%
- \ifcsname\@nameauth@CleanName{#4#5!PN!}\endcsname%
+ \if@nameauth@NBSP
+ \protected@edef\Space{,\nobreakspace}%
+ \fi
+ \fi
+ \if@nameauth@RevThis
+ \ex\@nameauth@FmtName\ex{\Reversed}%
+ \else
+ \ex\@nameauth@FmtName\ex{\SNNd}%
+ \fi
+ \else
+ \ifcsname\csde!PN\endcsname
\PackageWarning{nameauth}%
- {macro \AKA: XRef: #4 #5 exists.}%
- \else%
- \ifcsname\@nameauth@CleanName{#4#5!MN!}\endcsname%
+ {macro \AKA: XRef: #4 #5 exists}%
+ \else
+ \ifcsname\csde!MN\endcsname
\PackageWarning{nameauth}%
- {macro \AKA: Name reference: #4 #5 already exists; no see ref.}%
- \else%
- \ifcsname\@nameauth@CleanName{#4#5!NF!}\endcsname%
+ {macro \AKA: Name reference: #4 #5 exists; no xref}%
+ \else
+ \ifcsname\csde!NF\endcsname
\PackageWarning{nameauth}%
- {macro \AKA: Name reference: #4 #5 already exists; no see ref.}%
- \else%
- \csgdef{\@nameauth@CleanName{#4#5!PN!}}{}%
- \ifx\testi\@empty%
- \@nameauth@Index{\ISurnamesiv\ISpace#5|see{\Surnamesii}}%
- \else%
- \ifx\Suffixii\@empty \@nameauth@Index{\ISurnamesiv\ISpace#5|see{\Surnamesii, #1}}%
- \else \@nameauth@Index{\ISurnamesiv\ISpace#5|see{\Shortii, #1, \Suffixii}}\fi%
- \fi%
- \fi%
- \fi%
- \fi%
- \if@nameauth@RevThisComma%
+ {macro \AKA: Name reference: #4 #5 exists; no xref}%
+ \else
+ \csgdef{\csde!PN}{}%
+ \ifx\testa\@empty
+ \@nameauth@Index{\csde}%
+ {\ISNNd\ISpace\arge|see{\SNNb}}%
+ \else
+ \ifx\Suffb\@empty
+ \@nameauth@Index{\csde}%
+ {\ISNNd\ISpace\arge|see{\SNNb,\space\arga}}%
+ \else
+ \@nameauth@Index{\csde}%
+ {\ISNNd\ISpace\arge|see{\Shortb,\space\arga,\space\Suffb}}%
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \if@nameauth@RevThisComma
\protected@edef\ISpace{,\space}%
\protected@edef\Space{,\space}%
- \if@nameauth@NBSP\protected@edef\Space{,\nobreakspace}\fi%
- \fi%
- \if@nameauth@AltAKA%
- \if@nameauth@RevThis%
- \else%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{\testv}%
- \fi%
- \else%
- \if@nameauth@RevThis%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{\expandafter\testv\expandafter\Space\Surnamesiv}%
- \else%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{\expandafter\Surnamesiv\expandafter\space\testv}%
- \fi%
- \fi%
- \fi%
- \else%
- \ifcsname\@nameauth@CleanName{#3#4!PN!}\endcsname%
+ \if@nameauth@NBSP
+ \protected@edef\Space{,\nobreakspace}%
+ \fi
+ \fi
+ \if@nameauth@AltAKA
+ \ex\@nameauth@FmtName\ex{\arge}%
+ \else
+ \if@nameauth@RevThis
+ \ex\@nameauth@FmtName\ex{\ex\arge\ex\Space\SNNd}%
+ \else
+ \ex\@nameauth@FmtName\ex{\ex\SNNd\ex\space\arge}%
+ \fi
+ \fi
+ \fi
+ \else
+ \ifcsname\cscd!PN\endcsname
\PackageWarning{nameauth}%
- {macro \AKA: XRef: #3 #4 exists.}%
- \else%
- \ifcsname\@nameauth@CleanName{#3#4!MN!}\endcsname%
+ {macro \AKA: XRef: #3 #4 exists}%
+ \else
+ \ifcsname\cscd!MN\endcsname
\PackageWarning{nameauth}%
- {macro \AKA: Name reference: #3 #4 already exists; no see ref.}%
- \else%
- \ifcsname\@nameauth@CleanName{#3#4!NF!}\endcsname%
+ {macro \AKA: Name reference: #3 #4 exists; no xref}%
+ \else
+ \ifcsname\cscd!NF\endcsname
\PackageWarning{nameauth}%
- {macro \AKA: Name reference: #3 #4 already exists; no see ref.}%
- \else%
- \csgdef{\@nameauth@CleanName{#3#4!PN!}}{}%
- \ifx\testi\@empty%
- \ifx\Suffixiv\@empty \@nameauth@Index{\ISurnamesiv, #3|see{\Surnamesii}}%
- \else \@nameauth@Index{\Shortiv, #3, \Suffixiv|see{\Surnamesii}}\fi%
- \else%
- \ifx\Suffixii\@empty%
- \ifx\Suffixiv\@empty%
- \@nameauth@Index{\ISurnamesiv, #3|see{\Surnamesii, #1}}%
- \else%
- \@nameauth@Index{\Shortiv, #3, \Suffixiv|see{\Surnamesii, #1}}%
- \fi%
- \else%
- \ifx\Suffixiv\@empty%
- \@nameauth@Index{\ISurnamesiv, #3|see{\Shortii, #1, \Suffixii}}%
- \else%
- \@nameauth@Index{\Shortiv, #3, \Suffixiv|see{\Shortii, #1, \Suffixii}}%
- \fi%
- \fi%
- \fi%
- \fi%
- \fi%
- \fi%
- \if@nameauth@RevThisComma%
+ {macro \AKA: Name reference: #3 #4 exists; no xref}%
+ \else
+ \csgdef{\cscd!PN}{}%
+ \ifx\testa\@empty
+ \ifx\Suffd\@empty
+ \@nameauth@Index{\cscd}%
+ {\ISNNd,\space\argc|see{\SNNb}}%
+ \else
+ \@nameauth@Index{\cscd}%
+ {\Shortd,\space\argc,\space\Suffd|see{\SNNb}}%
+ \fi
+ \else
+ \ifx\Suffb\@empty
+ \ifx\Suffd\@empty
+ \@nameauth@Index{\cscd}%
+ {\ISNNd,\space\argc|see{\SNNb,\space\arga}}%
+ \else
+ \@nameauth@Index{\cscd}%
+ {\Shortd,\space\argc,\space\Suffd|see{\SNNb,\space\arga}}%
+ \fi
+ \else
+ \ifx\Suffd\@empty
+ \@nameauth@Index{\cscd}%
+ {\ISNNd,\space\argc|see{\Shortb,\space\arga,\space\Suffb}}%
+ \else
+ \@nameauth@Index{\cscd}%
+ {\Shortd,\space\argc,\space\Suffd|see{\Shortb,\space\arga,\space\Suffb}}%
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \if@nameauth@RevThisComma
\protected@edef\ISpace{,\space}%
\protected@edef\Space{,\space}%
- \if@nameauth@NBSP\protected@edef\Space{,\nobreakspace}\fi%
- \fi%
- \ifx\testv\@empty%
- \protected@edef\Forenames{#3}%
- \else%
- \protected@edef\Forenames{#5}%
- \fi%
- \if@nameauth@RevThis%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{%
- \expandafter\Surnamesiv\expandafter\Space\Forenames}%
- \else%
- \expandafter\@nameauth@FmtName\expandafter*\expandafter{%
- \expandafter\Forenames\expandafter\space\Surnamesiv}%
- \fi%
- \fi%
+ \if@nameauth@NBSP\protected@edef\Space{,\nobreakspace}\fi
+ \fi
+ \ifx\teste\@empty
+ \let\FNN\argc%
+ \else
+ \let\FNN\arge%
+ \fi
+ \if@nameauth@RevThis
+ \ex\@nameauth@FmtName\ex{\ex\SNNd\ex\Space\FNN}%
+ \else
+ \ex\@nameauth@FmtName\ex{\ex\FNN\ex\space\SNNd}%
+ \fi
+ \fi
\@nameauth@NBSPfalse%
\@nameauth@AltAKAfalse%
\@nameauth@DoCapsfalse%
@@ -638,253 +701,414 @@
\@nameauth@ShowCommafalse%
\@nameauth@RevThisfalse%
\@nameauth@RevThisCommafalse%
- \if@nameauth@Punct\expandafter\@nameauth@CheckDot\fi%
+ \if@nameauth@Punct\expandafter\@nameauth@CheckDot\fi
}
-\WithSuffix\newcommandx\AKA*[5][1=\@empty,3=\@empty,5=\@empty]%
+\WithSuffix\def\AKA*{\@nameauth@AltAKAtrue\AKA}
+\newcommandx*\PName[5][1=\@empty,3=\@empty,5=\@empty]%
{%
- \@nameauth@AltAKAtrue%
- \AKA[#1]{#2}[#3]{#4}[#5]%
+ \Name[#1]{#2}\space(\AKA[#1]{#2}[#3]{#4}[#5])%
}
-\newcommandx\PName[5][1=\@empty,3=\@empty,5=\@empty]%
+\WithSuffix\def\PName*{\@nameauth@FullNametrue\PName}
+\newcommandx*\TagName[4][1=\@empty, 3=\@empty]%
{%
- \Name[#1]{#2}\space(\AKA[#1]{#2}[#3]{#4}[#5])%
+ \protected@edef\testa{#1}%
+ \protected@edef\testb{\trim@spaces{#2}}%
+ \protected@edef\testc{#3}%
+ \def\csb{\@nameauth@Clean{#2}}%
+ \def\csbc{\@nameauth@Clean{#2#3}}%
+ \def\csab{\@nameauth@Clean{#1!#2}}%
+ \ifx\testb\@empty
+ \PackageError{nameauth}%
+ {macro \TagName: Essential name missing}%
+ \else
+ \ifx\csb\@empty
+ \PackageError{nameauth}%
+ {macro \TagName: Essential name malformed}%
+ \fi
+ \fi
+ \ifx\testa\@empty
+ \ifx\testc\@empty
+ \ifcsname\csb!PN\endcsname
+ \PackageWarning{nameauth}%
+ {macro \TagName: not tagging xref: #2}%
+ \else
+ \csgdef{\csb!TAG}{#4}%
+ \fi
+ \else
+ \ifcsname\csbc!PN\endcsname
+ \PackageWarning{nameauth}%
+ {macro \TagName: not tagging xref: #2 #3}%
+ \else
+ \csgdef{\csbc!TAG}{#4}%
+ \fi
+ \fi
+ \else
+ \ifcsname\csab!PN\endcsname
+ \PackageWarning{nameauth}%
+ {macro \TagName: not tagging xref: #1 #2}%
+ \else
+ \csgdef{\csab!TAG}{#4}%
+ \fi
+ \fi
}
-\WithSuffix\newcommandx\PName*[5][1=\@empty,3=\@empty,5=\@empty]%
+\newcommandx*\UntagName[3][1=\@empty, 3=\@empty]%
{%
- \Name*[#1]{#2}\space(\AKA[#1]{#2}[#3]{#4}[#5])%
+ \protected@edef\testa{#1}%
+ \protected@edef\testb{\trim@spaces{#2}}%
+ \protected@edef\testc{#3}%
+ \def\csb{\@nameauth@Clean{#2}}%
+ \def\csbc{\@nameauth@Clean{#2#3}}%
+ \def\csab{\@nameauth@Clean{#1!#2}}%
+ \ifx\testb\@empty
+ \PackageError{nameauth}%
+ {macro \UntagName: Essential name missing}%
+ \else
+ \ifx\csb\@empty
+ \PackageError{nameauth}%
+ {macro \UntagName: Essential name malformed}%
+ \fi
+ \fi
+ \ifx\testa\@empty
+ \ifx\testc\@empty
+ \global\csundef{\csb!TAG}%
+ \else
+ \global\csundef{\csbc!TAG}%
+ \fi
+ \else
+ \global\csundef{\csab!TAG}%
+ \fi
}
-\newcommandx\TagName[4][1=\@empty, 3=\@empty]%
+\newcommandx*\PretagName[4][1=\@empty, 3=\@empty]%
{%
- \protected@edef\testi{#1}%
- \protected@edef\testiii{#3}%
- \ifx\testi\@empty%
- \ifx\testiii\@empty%
- \ifcsname\@nameauth@CleanName{#2!PN!}\endcsname%
- \PackageWarning{nameauth}%
- {macro \textbackslash TagName Cannot tag xref: #2.}%
- \else%
- \csgdef{\@nameauth@CleanName{#2}!TAG!}{#4}%
- \fi%
- \else%
- \ifcsname\@nameauth@CleanName{#2#3!PN!}\endcsname%
+ \protected@edef\testa{#1}%
+ \protected@edef\testb{\trim@spaces{#2}}%
+ \protected@edef\testc{#3}%
+ \def\csb{\@nameauth@Clean{#2}}%
+ \def\csbc{\@nameauth@Clean{#2#3}}%
+ \def\csab{\@nameauth@Clean{#1!#2}}%
+ \ifx\testb\@empty
+ \PackageError{nameauth}%
+ {macro \TagName: Essential name missing}%
+ \else
+ \ifx\csb\@empty
+ \PackageError{nameauth}%
+ {macro \TagName: Essential name malformed}%
+ \fi
+ \fi
+ \ifx\testa\@empty
+ \ifx\testc\@empty
+ \ifcsname\csb!PN\endcsname
\PackageWarning{nameauth}%
- {macro \textbackslash TagName Cannot tag xref: #2 #3.}%
- \else%
- \csgdef{\@nameauth@CleanName{#2#3}!TAG!}{#4}%
- \fi%
- \fi%
- \else%
- \ifcsname\@nameauth@CleanName{#1#2!PN!}\endcsname%
+ {macro \PretagName: tagging xref: #2}%
+ \fi
+ \if@nameauth@Pretag\csgdef{\csb!PRE}{#4\@nameauth@Actual}\fi
+ \else
+ \ifcsname\csbc!PN\endcsname
\PackageWarning{nameauth}%
- {macro \textbackslash TagName Cannot tag xref: #1 #2.}%
- \else%
- \csgdef{\@nameauth@CleanName{#1#2}!TAG!}{#4}%
- \fi%
- \fi%
-}
-\newcommandx\UntagName[3][1=\@empty, 3=\@empty]%
-{%
- \protected@edef\testi{#1}%
- \protected@edef\testiii{#3}%
- \ifx\testi\@empty%
- \ifx\testiii\@empty%
- \global\csundef{\@nameauth@CleanName{#2}!TAG!}%
- \else%
- \global\csundef{\@nameauth@CleanName{#2#3}!TAG!}%
- \fi%
- \else%
- \global\csundef{\@nameauth@CleanName{#1#2}!TAG!}%
- \fi%
+ {macro \PretagName: tagging xref: #2 #3}%
+ \fi
+ \if@nameauth@Pretag\csgdef{\csbc!PRE}{#4\@nameauth@Actual}\fi
+ \fi
+ \else
+ \ifcsname\csab!PN\endcsname
+ \PackageWarning{nameauth}%
+ {macro \PretagName: tagging xref: #1 #2}%
+ \fi
+ \if@nameauth@Pretag\csgdef{\csab!PRE}{#4\@nameauth@Actual}\fi
+ \fi
}
-\newcommandx\IndexName[3][1=\@empty, 3=\@empty]%
+\newcommandx*\IndexName[3][1=\@empty, 3=\@empty]%
{%
- \protected@edef\testi{#1}%
- \protected@edef\testii{#2}%
- \protected@edef\testiii{#3}%
+ \protected@edef\testa{#1}%
+ \protected@edef\arga{\trim@spaces{#1}}%
+ \protected@edef\testb{\trim@spaces{#2}}%
+ \protected@edef\testbr{\@nameauth@Root{#2}}%
+ \protected@edef\testc{#3}%
+ \protected@edef\argc{\trim@spaces{#3}}%
+ \def\csb{\@nameauth@Clean{#2}}%
+ \def\csbc{\@nameauth@Clean{#2#3}}%
+ \def\csab{\@nameauth@Clean{#1!#2}}%
+ \ifx\testb\@empty
+ \PackageError{nameauth}%
+ {macro \IndexName: Essential name missing}%
+ \else
+ \ifx\csb\@empty
+ \PackageError{nameauth}%
+ {macro \IndexName: Essential name malformed}%
+ \fi
+ \fi
\protected@edef\Space{\space}%
- \if@nameauth@AlwaysComma%
+ \if@nameauth@AlwaysComma
\protected@edef\Space{,\space}%
- \fi%
- \if@nameauth@ShowComma%
+ \fi
+ \if@nameauth@ShowComma
\protected@edef\Space{,\space}%
- \fi%
- \protected@edef\Short{\@nameauth@Root{#2}}%
- \ifx\testii\Short%
- \let\Surnames\Short%
- \protected@edef\Suffix{\@empty}%
- \else%
- \protected@edef\Suffix{\@nameauth@Suffix{#2}}%
- \protected@edef\Surnames{\Short\Space\Suffix}%
- \fi%
- \ifx\testi\@empty%
- \ifx\testiii\@empty%
- \ifcsname\@nameauth@CleanName{#2!PN!}\endcsname%
+ \fi
+ \let\Short\testbr%
+ \ifx\testb\testbr
+ \let\SNN\Short%
+ \protected@edef\Suff{\@empty}%
+ \else
+ \protected@edef\Suff{\@nameauth@Suffix{#2}}%
+ \protected@edef\SNN{\Short\Space\Suff}%
+ \fi
+ \ifx\testa\@empty
+ \ifx\testc\@empty
+ \ifcsname\csb!PN\endcsname
\PackageWarning{nameauth}%
- {macro \IndexName: XRef: #2 exists.}%
- \else%
- \@nameauth@Index{\Surnames}[\@nameauth@CleanName{#2}!TAG!]%
- \fi%
- \else%
- \ifcsname\@nameauth@CleanName{#2#3!PN!}\endcsname%
- \PackageWarning{nameauth}%
- {macro \IndexName: XRef: #2 #3 exists.}%
- \else%
- \@nameauth@Index{\Surnames\Space#3}[\@nameauth@CleanName{#2#3}!TAG!]%
- \fi%
- \fi%
- \else%
- \ifcsname\@nameauth@CleanName{#1#2!PN!}\endcsname%
+ {macro \IndexName: XRef: #2 exists}%
+ \else
+ \@nameauth@Index{\csb}{\SNN}%
+ \fi
+ \else
+ \ifcsname\csbc!PN\endcsname
\PackageWarning{nameauth}%
- {macro \IndexName: XRef: #1 #2 exists.}%
- \else%
- \ifx\Suffix\@empty \@nameauth@Index{\Short, #1}[\@nameauth@CleanName{#1#2}!TAG!]%
- \else \@nameauth@Index{\Short, #1, \Suffix}[\@nameauth@CleanName{#1#2}!TAG!]\fi%
- \fi%
- \fi%
+ {macro \IndexName: XRef: #2 #3 exists}%
+ \else
+ \@nameauth@Index{\csbc}{\SNN\Space\argc}%
+ \fi
+ \fi
+ \else
+ \ifcsname\csab!PN\endcsname
+ \PackageWarning{nameauth}%
+ {macro \IndexName: XRef: #1 #2 exists}%
+ \else
+ \ifx\Suff\@empty
+ \@nameauth@Index{\csab}{\Short,\space\arga}%
+ \else
+ \@nameauth@Index{\csab}{\Short,\space\arga,\space\Suff}%
+ \fi
+ \fi
+ \fi
\@nameauth@ShowCommafalse%
}
-\newcommandx\ExcludeName[3][1=\@empty, 3=\@empty]%
+\newcommandx*\ExcludeName[3][1=\@empty, 3=\@empty]%
{%
- \protected@edef\testi{#1}%
- \protected@edef\testiii{#3}%
- \ifx\testi\@empty%
- \ifx\testiii\@empty%
- \ifcsname\@nameauth@CleanName{#2!PN!}\endcsname\relax%
- \else%
- \ifcsname\@nameauth@CleanName{#2!MN!}\endcsname%
+ \protected@edef\testa{#1}%
+ \protected@edef\testb{\trim@spaces{#2}}%
+ \protected@edef\testc{#3}%
+ \def\csb{\@nameauth@Clean{#2}}%
+ \def\csbc{\@nameauth@Clean{#2#3}}%
+ \def\csab{\@nameauth@Clean{#1!#2}}%
+ \ifx\testb\@empty
+ \PackageError{nameauth}%
+ {macro \ExcludeName: Essential name missing}%
+ \else
+ \ifx\csb\@empty
+ \PackageError{nameauth}%
+ {macro \ExcludeName: Essential name malformed}%
+ \fi
+ \fi
+ \ifx\testa\@empty
+ \ifx\testc\@empty
+ \ifcsname\csb!PN\endcsname
+ \PackageWarning{nameauth}%
+ {macro \ExcludeName: Xref: #2 already exists}%
+ \else
+ \ifcsname\csb!MN\endcsname
\PackageWarning{nameauth}%
- {macro \ExcludeName: Reference: #2 already exists; no exclusion.}%
- \else%
- \ifcsname\@nameauth@CleanName{#2!NF!}\endcsname%
+ {macro \ExcludeName: Reference: #2 exists; no exclusion}%
+ \else
+ \ifcsname\csb!NF\endcsname
\PackageWarning{nameauth}%
- {macro \ExcludeName: Reference: #2 already exists; no exclusion.}%
- \else%
- \csgdef{\@nameauth@CleanName{#2!PN!}}{}%
- \fi%
- \fi%
- \fi%
- \else%
- \ifcsname\@nameauth@CleanName{#2#3!PN!}\endcsname\relax%
- \else%
- \ifcsname\@nameauth@CleanName{#2#3!MN!}\endcsname%
+ {macro \ExcludeName: Reference: #2 exists; no exclusion}%
+ \else
+ \csgdef{\csb!PN}{}%
+ \fi
+ \fi
+ \fi
+ \else
+ \ifcsname\csbc!PN\endcsname
+ \PackageWarning{nameauth}%
+ {macro \ExcludeName: Xref: #2 #3 already exists}%
+ \else
+ \ifcsname\csbc!MN\endcsname
\PackageWarning{nameauth}%
- {macro \ExcludeName: Reference: #2 #3 already exists; no exclusion.}%
- \else%
- \ifcsname\@nameauth@CleanName{#2#3!NF!}\endcsname%
+ {macro \ExcludeName: Reference: #2 #3 exists; no exclusion}%
+ \else
+ \ifcsname\csbc!NF\endcsname
\PackageWarning{nameauth}%
- {macro \ExcludeName: Reference: #2 #3 already exists; no exclusion.}%
- \else%
- \csgdef{\@nameauth@CleanName{#2#3!PN!}}{}%
- \fi%
- \fi%
- \fi%
- \fi%
- \else%
- \ifcsname\@nameauth@CleanName{#1#2!PN!}\endcsname%
+ {macro \ExcludeName: Reference: #2 #3 exists; no exclusion}%
+ \else
+ \csgdef{\csbc!PN}{}%
+ \fi
+ \fi
+ \fi
+ \fi
+ \else
+ \ifcsname\csab!PN\endcsname
\PackageWarning{nameauth}%
- {macro \ExcludeName: XRef: #1 #2 exists.}%
- \else%
- \ifcsname\@nameauth@CleanName{#1#2!MN!}\endcsname%
+ {macro \ExcludeName: XRef: #1 #2 already exists}%
+ \else
+ \ifcsname\csab!MN\endcsname
\PackageWarning{nameauth}%
- {macro \ExcludeName: Reference: #1 #2 already exists; no exclusion.}%
- \else%
- \ifcsname\@nameauth@CleanName{#1#2!NF!}\endcsname%
+ {macro \ExcludeName: Reference: #1 #2 exists; no exclusion}%
+ \else
+ \ifcsname\csab!NF\endcsname
\PackageWarning{nameauth}%
- {macro \ExcludeName: Reference: #1 #2 already exists; no exclusion.}%
- \else%
- \csgdef{\@nameauth@CleanName{#1#2!PN!}}{}%
- \fi%
- \fi%
- \fi%
- \fi%
+ {macro \ExcludeName: Reference: #1 #2 exists; no exclusion}%
+ \else
+ \csgdef{\csab!PN}{}%
+ \fi
+ \fi
+ \fi
+ \fi
}
-\newcommandx\ForgetName[3][1=\@empty, 3=\@empty]%
+\newcommandx*\ForgetName[3][1=\@empty, 3=\@empty]%
{%
- \protected@edef\testi{#1}%
- \protected@edef\testiii{#3}%
- \ifx\testi\@empty%
- \ifx\testiii\@empty%
- \global\csundef{\@nameauth@CleanName{#2!MN!}}%
- \global\csundef{\@nameauth@CleanName{#2!NF!}}%
- \else%
- \global\csundef{\@nameauth@CleanName{#2#3!MN!}}%
- \global\csundef{\@nameauth@CleanName{#2#3!NF!}}%
- \fi%
- \else%
- \global\csundef{\@nameauth@CleanName{#1#2!MN!}}%
- \global\csundef{\@nameauth@CleanName{#1#2!NF!}}%
- \fi%
+ \protected@edef\testa{#1}%
+ \protected@edef\testb{\trim@spaces{#2}}%
+ \protected@edef\testc{#3}%
+ \def\csb{\@nameauth@Clean{#2}}%
+ \def\csbc{\@nameauth@Clean{#2#3}}%
+ \def\csab{\@nameauth@Clean{#1!#2}}%
+ \ifx\testb\@empty
+ \PackageError{nameauth}%
+ {macro \ForgetName: Essential name missing}%
+ \else
+ \ifx\csb\@empty
+ \PackageError{nameauth}%
+ {macro \ForgetName: Essential name malformed}%
+ \fi
+ \fi
+ \ifx\testa\@empty
+ \ifx\testc\@empty
+ \global\csundef{\csb!MN}%
+ \global\csundef{\csb!NF}%
+ \else
+ \global\csundef{\csbc!MN}%
+ \global\csundef{\csbc!NF}%
+ \fi
+ \else
+ \global\csundef{\csab!MN}%
+ \global\csundef{\csab!NF}%
+ \fi
}
-\newcommandx\SubvertName[3][1=\@empty, 3=\@empty]%
+\newcommandx*\SubvertName[3][1=\@empty, 3=\@empty]%
{%
- \protected@edef\testi{#1}%
- \protected@edef\testiii{#3}%
- \ifx\testi\@empty%
- \ifx\testiii\@empty%
- \csgdef{\@nameauth@CleanName{#2!MN!}}{}%
- \csgdef{\@nameauth@CleanName{#2!NF!}}{}%
- \else%
- \csgdef{\@nameauth@CleanName{#2#3!MN!}}{}%
- \csgdef{\@nameauth@CleanName{#2#3!NF!}}{}%
- \fi%
- \else%
- \csgdef{\@nameauth@CleanName{#1#2!MN!}}{}%
- \csgdef{\@nameauth@CleanName{#1#2!NF!}}{}%
- \fi%
+ \protected@edef\testa{#1}%
+ \protected@edef\testb{\trim@spaces{#2}}%
+ \protected@edef\testc{#3}%
+ \def\csb{\@nameauth@Clean{#2}}%
+ \def\csbc{\@nameauth@Clean{#2#3}}%
+ \def\csab{\@nameauth@Clean{#1!#2}}%
+ \ifx\testb\@empty
+ \PackageError{nameauth}%
+ {macro \SubvertName: Essential name missing}%
+ \else
+ \ifx\csb\@empty
+ \PackageError{nameauth}%
+ {macro \SubvertName: Essential name malformed}%
+ \fi
+ \fi
+ \ifx\testa\@empty
+ \ifx\testc\@empty
+ \csgdef{\csb!MN}{}%
+ \csgdef{\csb!NF}{}%
+ \else
+ \csgdef{\csbc!MN}{}%
+ \csgdef{\csbc!NF}{}%
+ \fi
+ \else
+ \csgdef{\csab!MN}{}%
+ \csgdef{\csab!NF}{}%
+ \fi
}
\newenvironment{nameauth}{%
\begingroup%
+ \let\ex\expandafter%
\csdef{<}##1&##2&##3&##4>{%
\protected@edef\arga{\trim@spaces{##1}}%
- \protected@edef\argb{\trim@spaces{##2}}%
- \protected@edef\argc{\trim@spaces{##3}}%
- \protected@edef\argd{\trim@spaces{##4}}%
+ \protected@edef\testb{\trim@spaces{##2}}%
+ \protected@edef\testc{\trim@spaces{##3}}%
+ \protected@edef\testd{\trim@spaces{##4}}%
+ \newtoks\tokb%
+ \newtoks\tokc%
+ \newtoks\tokd%
+ \tokb\expandafter{##2}%
+ \tokc\expandafter{##3}%
+ \tokd\expandafter{##4}%
\ifx\arga\@empty
\PackageError{nameauth}%
- {environment nameauth: Control sequence missing.}%
+ {environment nameauth: Control sequence missing}%
\else
- \ifx\argc\@empty
+ \ifx\testc\@empty
\PackageError{nameauth}%
- {environment nameauth: Essential name missing.}%
+ {environment nameauth: Essential name missing}%
\else
- \ifx\argd\@empty
- \ifx\argb\@empty
- \csxdef{\arga}{\Name{\argc}}%
- \csxdef{L\arga}{\Name*{\argc}}%
- \csxdef{S\arga}{\FName{\argc}}%
+ \ifcsname\arga\endcsname
+ \PackageWarning{nameauth}%
+ {environment nameauth: Redefinition of shorthands}%
+ \fi
+ \ifx\testd\@empty
+ \ifx\testb\@empty
+ \ex\csxdef\ex{\ex\arga\ex}\ex{\ex\Name\ex{\the\tokc}}%
+ \ex\csgdef\ex{\ex L\ex\arga\ex}\ex{\ex\Name\ex*\ex{\the\tokc}}%
+ \ex\csgdef\ex{\ex S\ex\arga\ex}\ex{\ex\FName\ex{\the\tokc}}%
\else
- \csxdef{\arga}{\Name[\argb]{\argc}}%
- \csxdef{L\arga}{\Name*[\argb]{\argc}}%
- \csxdef{S\arga}{\FName[\argb]{\argc}}%
+ \ex\ex\ex\csgdef\ex\ex\ex{\ex\ex\ex\arga\ex\ex\ex}%
+ \ex\ex\ex{\ex\ex\ex\Name\ex\ex\ex[\ex\the\ex\tokb\ex]%
+ \ex{\the\tokc}}%
+ \ex\ex\ex\csgdef\ex\ex\ex{\ex\ex\ex L\ex\ex\ex\arga%
+ \ex\ex\ex}\ex\ex\ex{\ex\ex\ex\Name\ex\ex\ex*%
+ \ex\ex\ex[\ex\the\ex\tokb\ex]\ex{\the\tokc}}%
+ \ex\ex\ex\csgdef\ex\ex\ex{\ex\ex\ex S\ex\ex\ex\arga%
+ \ex\ex\ex}\ex\ex\ex{\ex\ex\ex\FName\ex\ex\ex[%
+ \ex\the\ex\tokb\ex]\ex{\the\tokc}}%
\fi
\else
- \ifx\argb\@empty
- \csxdef{\arga}{\Name{\argc}[\argd]}%
- \csxdef{L\arga}{\Name*{\argc}[\argd]}%
- \csxdef{S\arga}{\FName{\argc}[\argd]}%
+ \ifx\testb\@empty
+ \ex\ex\ex\csgdef\ex\ex\ex{\ex\ex\ex\arga\ex\ex\ex}%
+ \ex\ex\ex{\ex\ex\ex\Name\ex\ex\ex{\ex\the\ex\tokc\ex}%
+ \ex[\the\tokd]}%
+ \ex\ex\ex\csgdef\ex\ex\ex{\ex\ex\ex L\ex\ex\ex\arga%
+ \ex\ex\ex}\ex\ex\ex{\ex\ex\ex\Name%
+ \ex\ex\ex*\ex\ex\ex{\ex\the\ex\tokc\ex}\ex[\the\tokd]}%
+ \ex\ex\ex\csgdef\ex\ex\ex{\ex\ex\ex S\ex\ex\ex\arga%
+ \ex\ex\ex}\ex\ex\ex{\ex\ex\ex\FName\ex\ex\ex{%
+ \ex\the\ex\tokc\ex}\ex[\the\tokd]}%
\else
- \csxdef{\arga}{\Name[\argb]{\argc}[\argd]}%
- \csxdef{L\arga}{\Name*[\argb]{\argc}[\argd]}%
- \csxdef{S\arga}{\FName[\argb]{\argc}[\argd]}%
+ \ex\ex\ex\ex\ex\ex\ex\csgdef\ex\ex\ex\ex\ex\ex\ex{%
+ \ex\ex\ex\ex\ex\ex\ex\arga\ex\ex\ex\ex\ex\ex\ex}%
+ \ex\ex\ex\ex\ex\ex\ex{\ex\ex\ex\ex\ex\ex\ex\Name%
+ \ex\ex\ex\ex\ex\ex\ex[\ex\ex\ex\the\ex\ex\ex\tokb%
+ \ex\ex\ex]\ex\ex\ex{\ex\the\ex\tokc\ex}\ex[\the\tokd]}%
+ \ex\ex\ex\ex\ex\ex\ex\csgdef\ex\ex\ex\ex\ex\ex\ex{%
+ \ex\ex\ex\ex\ex\ex\ex L\ex\ex\ex\ex\ex\ex\ex\arga%
+ \ex\ex\ex\ex\ex\ex\ex}\ex\ex\ex\ex\ex\ex\ex{%
+ \ex\ex\ex\ex\ex\ex\ex\Name\ex\ex\ex\ex\ex\ex\ex*%
+ \ex\ex\ex\ex\ex\ex\ex[\ex\ex\ex\the\ex\ex\ex\tokb%
+ \ex\ex\ex]\ex\ex\ex{\ex\the\ex\tokc\ex}\ex[\the\tokd]}%
+ \ex\ex\ex\ex\ex\ex\ex\csgdef\ex\ex\ex\ex\ex\ex\ex{%
+ \ex\ex\ex\ex\ex\ex\ex S\ex\ex\ex\ex\ex\ex\ex\arga%
+ \ex\ex\ex\ex\ex\ex\ex}\ex\ex\ex\ex\ex\ex\ex{%
+ \ex\ex\ex\ex\ex\ex\ex\FName\ex\ex\ex\ex\ex\ex\ex[%
+ \ex\ex\ex\the\ex\ex\ex\tokb\ex\ex\ex]%
+ \ex\ex\ex{\ex\the\ex\tokc\ex}\ex[\the\tokd]}%
\fi
\fi
\fi
\fi
\ignorespaces%
- }%
-}{\endgroup}
-\newcommand{\NamesInactive}{\@nameauth@DoFormatfalse}
-\newcommand{\NamesActive}{\@nameauth@DoFormattrue}
-\newcommand{\AllCapsInactive}{\@nameauth@AllCapsfalse}
-\newcommand{\AllCapsActive}{\@nameauth@AllCapstrue}
-\newcommand{\ReverseInactive}{\@nameauth@RevAllfalse}
-\newcommand{\ReverseActive}{\@nameauth@RevAlltrue}
-\newcommand{\ReverseCommaInactive}%
- {\@nameauth@RevAllfalse\@nameauth@RevAllCommafalse}
-\newcommand{\ReverseCommaActive}%
- {\@nameauth@RevAlltrue\@nameauth@RevAllCommatrue}
-\newcommand{\IndexInactive}{\@nameauth@DoIndexfalse}
-\newcommand{\IndexActive}{\@nameauth@DoIndextrue}
-\endinput
+ }\ignorespaces%
+}{\endgroup\ignorespaces}
+%%
+%% Copyright (C) 2015 by Charles P. Schaum <charles dot schaum at comcast dot net>
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License (LPPL), either
+%% version 1.3c of this license or (at your option) any later
+%% version. The latest version of this license is in the file:
+%%
+%% http://www.latex-project.org/lppl.txt
+%%
+%% This work is "maintained" (as per LPPL maintenance status) by
+%% Charles P. Schaum.
+%%
+%% This work consists of the file nameauth.dtx and a Makefile.
+%% Running "make" generates the derived files README, nameauth.pdf and nameauth.sty.
+%% Running "make inst" installs the files in the user's TeX tree.
+%% Running "make install" installs the files in the local TeX tree.
+%%
%%
%% End of file `nameauth.sty'.