summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/nameauth
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2016-10-27 21:23:31 +0000
committerKarl Berry <karl@freefriends.org>2016-10-27 21:23:31 +0000
commitaa5b2a5b49cfcd05ec9d1a4f3051320f78c4afbf (patch)
tree1ab16e5892ca3503125823ab93802a5a5e5a6048 /Master/texmf-dist/tex/latex/nameauth
parentdf9414db777046cce78cd97a995a21ffb3175ce3 (diff)
nameauth (27oct16)
git-svn-id: svn://tug.org/texlive/trunk@42368 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/nameauth')
-rw-r--r--Master/texmf-dist/tex/latex/nameauth/nameauth.sty1860
1 files changed, 914 insertions, 946 deletions
diff --git a/Master/texmf-dist/tex/latex/nameauth/nameauth.sty b/Master/texmf-dist/tex/latex/nameauth/nameauth.sty
index f01e7f486ff..1af86456999 100644
--- a/Master/texmf-dist/tex/latex/nameauth/nameauth.sty
+++ b/Master/texmf-dist/tex/latex/nameauth/nameauth.sty
@@ -7,7 +7,7 @@
%% nameauth.dtx (with options: `package')
%%
%% --------:| ----------------------------------------------------------------
-%% nameauth:| Name authority mechanism for consistency in text and index
+%% nameauth:| Name authority management 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
@@ -15,34 +15,47 @@
%%
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesPackage{nameauth}
- [2016/09/19 v2.6 Name authority mechanism for consistency in text and index]
-
-\newif\if@nameauth@AlwaysComma
-\newif\if@nameauth@ShowComma
-\newif\if@nameauth@NoComma
+ [2016/10/26 v3.0 Name authority management for consistency in text and index]
+\newif\if@nameauth@InAKA
+\newif\if@nameauth@InName
+\newif\if@nameauth@Xref
+\newif\if@nameauth@Lock
+\newif\if@nameauth@InHook
+\newif\if@nameauth@DoIndex
+\newif\if@nameauth@Pretag
+\newif\if@nameauth@SeeAlso
\newif\if@nameauth@MainFormat
\newif\if@nameauth@AKAFormat
\newif\if@nameauth@LocalNames
-\newif\if@nameauth@DoIndex
-\newif\if@nameauth@Pretag
+\newif\if@nameauth@FirstFormat
+\newif\if@nameauth@AlwaysFormat
+\newif\if@nameauth@AlwaysComma
+\newif\if@nameauth@ShowComma
+\newif\if@nameauth@NoComma
+\newif\if@nameauth@NBSP
+\newif\if@nameauth@Punct
\newif\if@nameauth@FullName
\newif\if@nameauth@FirstName
\newif\if@nameauth@AltAKA
-\newif\if@nameauth@AllCaps
-\newif\if@nameauth@AllThis
+\newif\if@nameauth@OldAKA
+\newif\if@nameauth@ShortSNN
+\newif\if@nameauth@EastFN
\newif\if@nameauth@RevAll
\newif\if@nameauth@RevThis
+\newif\if@nameauth@AllCaps
+\newif\if@nameauth@AllThis
\newif\if@nameauth@RevAllComma
\newif\if@nameauth@RevThisComma
\newif\if@nameauth@DoCaps
+\newif\if@nameauth@UTF
\newif\if@nameauth@Accent
-\newif\if@nameauth@NBSP
-\newif\if@nameauth@Punct
-\newif\if@nameauth@FirstFormat
-\newif\if@nameauth@AlwaysFormat
-\newif\if@nameauth@InAKA
-\newif\if@nameauth@InName
-\newif\if@nameauth@Lock
+\newif\if@nameauth@Verbose
+\newtoks\@nameauth@toksa%
+\newtoks\@nameauth@toksb%
+\newtoks\@nameauth@toksc%
+\newtoks\@nameauth@etoksb%
+\newtoks\@nameauth@etoksc%
+\newtoks\@nameauth@etoksd%
\newcommand*\NamesFormat{}
\newcommand*\MainNameHook{}
\newcommand*\FrontNamesFormat{}
@@ -50,17 +63,12 @@
\newcommand*\NameauthName{\@nameauth@Name}
\newcommand*\NameauthLName{\@nameauth@Name}
\newcommand*\NameauthFName{\@nameauth@Name}
-\newtoks\@nameauth@toksa%
-\newtoks\@nameauth@toksb%
-\newtoks\@nameauth@toksc%
-\newtoks\@nameauth@etoksb%
-\newtoks\@nameauth@etoksc%
-\newtoks\@nameauth@etoksd%
\DeclareOption{comma}{\@nameauth@AlwaysCommatrue}
\DeclareOption{nocomma}{\@nameauth@AlwaysCommafalse}
\DeclareOption{mainmatter}{\@nameauth@MainFormattrue}
\DeclareOption{frontmatter}{\@nameauth@MainFormatfalse}
\DeclareOption{formatAKA}{\@nameauth@AKAFormattrue}
+\DeclareOption{oldAKA}{\@nameauth@oldAKAtrue}
\DeclareOption{index}{\@nameauth@DoIndextrue}
\DeclareOption{noindex}{\@nameauth@DoIndexfalse}
\DeclareOption{pretag}{\@nameauth@Pretagtrue}
@@ -78,6 +86,7 @@
\DeclareOption{italic}{\renewcommand*\NamesFormat{\itshape}}
\DeclareOption{boldface}{\renewcommand*\NamesFormat{\bfseries}}
\DeclareOption{noformat}{\renewcommand*\NamesFormat{}}
+\DeclareOption{verbose}{\@nameauth@Verbosetrue}
\ExecuteOptions%
{nocomma,%
mainmatter,%
@@ -88,421 +97,361 @@
noformat}
\ProcessOptions\relax
\RequirePackage{etoolbox}
-\RequirePackage{ifluatex}
-\RequirePackage{ifxetex}
-\RequirePackage{trimspaces}
\RequirePackage{suffix}
+\RequirePackage{trimspaces}
\RequirePackage{xargs}
-\newcommand*\@nameauth@Clean[1]%
+\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{\trim@spaces{#1}}
-\newcommand*\@nameauth@CapRoot[1]%
+\newcommand*\@nameauth@Root[1]{\@nameauth@TrimRoot#1,\\}
+\def\@nameauth@TrimRoot#1,#2\\{\trim@spaces{#1}}
+\newcommand*\@nameauth@TagRoot[1]{\@nameauth@TrimTag#1|\\}
+\def\@nameauth@TrimTag#1|#2\\{#1}
+\newcommand*\@nameauth@Suffix[1]{\@nameauth@TrimSuffix#1,,\\}
+\def\@nameauth@TrimSuffix#1,#2,#3\\{%
+ \ifx\\#2\\\@empty\else\trim@spaces{#2}\fi}
+\newcommand*\@nameauth@AllCapRoot[1]
+ {\uppercase{\@nameauth@Root{#1}}}
+\newcommand*\@nameauth@UTFtest[1]
{%
- \ifxetex
- \@nameauth@CRii#1\relax%
+ \ifdefined\Umathchar
+ \@nameauth@UTFfalse%
\else
- \ifluatex
- \@nameauth@CRii#1\relax%
- \else
+ \ifdefined\UTFviii@two@octets
+ \toks@\expandafter{\@car#1\@nil}%
+ \edef\one{\the\toks@}%
+ \toks@\expandafter{\@carß\@nil}%
+ \edef\two{\the\toks@}%
+ \ifx\one\two\@nameauth@UTFtrue\else\@nameauth@UTFfalse\fi
\if@nameauth@Accent
- \@nameauth@CRiii#1\relax%
- \else
- \@nameauth@CRii#1\relax%
+ \@nameauth@UTFtrue%
+ \@nameauth@Accentfalse%
\fi
- \fi
+ \else\@nameauth@UTFfalse\fi
\fi
}
-\def\@nameauth@CRii#1#2\relax{\uppercase{#1}\@nameauth@Root{#2}}
-\def\@nameauth@CRiii#1#2#3\relax{\uppercase{#1#2}\@nameauth@Root{#3}}
-\newcommand*\@nameauth@AllCapRoot[1]%
- {\uppercase{\@nameauth@Root{#1}}}
-\newcommand*\@nameauth@Suffix[1]%
- {\@nameauth@TrimSuffix#1\relax}
-\def\@nameauth@TrimSuffix#1,#2\relax{\trim@spaces{#2}}
-\newcommand*\@nameauth@TestDot[1]%
+\newcommand*\@nameauth@CapRoot[1]
+{%
+ \if@nameauth@UTF \@nameauth@CRiii#1\\%
+ \else \@nameauth@CRii#1\\%
+ \fi
+}
+\def\@nameauth@CRii#1#2\\{\@nameauth@Root{\uppercase{#1}#2}}
+\def\@nameauth@CRiii#1#2#3\\{\@nameauth@Root{\uppercase{#1#2}#3}}
+\newcommand*\@nameauth@TestDot[1]
{%
- \def\TestDot##1.\TestEnd##2\TestStop{\TestPunct{##2}}%
- \def\TestPunct##1%
- {\ifx\TestPunct##1\TestPunct\else\@nameauth@Puncttrue\fi}%
+ \def\TestDot##1.\TestEnd##2\\{\TestPunct{##2}}%
+ \def\TestPunct##1{%
+ \ifx\TestPunct##1\TestPunct%
+ \else
+ \@nameauth@Puncttrue%
+ \fi
+ }%
\@nameauth@Punctfalse%
- \TestDot#1\TestEnd.\TestEnd\TestStop%
+ \TestDot#1\TestEnd.\TestEnd\\%
}
\newcommand*\@nameauth@CheckDot%
{\futurelet\@token\@nameauth@EvalDot}
\newcommand*\@nameauth@EvalDot%
- {\let\@period=.\ifx\@token\@period\expandafter\@gobble \fi}
-\newcommand*\@nameauth@FmtName[1]%
{%
- \if@nameauth@InAKA
- \if@nameauth@AlwaysFormat
- \@nameauth@FirstFormattrue%
- \else
- \if@nameauth@AKAFormat\else\@nameauth@FirstFormatfalse\fi
+ \let\@period=.%
+ \ifx\@token\@period\expandafter\@gobble \fi
+}
+\newcommand*\@nameauth@Error[2]
+{%
+ \edef\msg{#2}%
+ \edef\pkg{nameauth}%
+ \let\ex\expandafter%
+ \protected@edef\argb{\trim@spaces{#1}}%
+ \protected@edef\rootb{\@nameauth@Root{#1}}%
+ \ifx\argb\@empty
+ \ex\PackageError\ex{\ex\pkg\ex}\ex{\msg SNN field empty}%
+ \else
+ \ifx\rootb\@empty
+ \ex\PackageError\ex{\ex\pkg\ex}\ex{\msg SNN field malformed}%
\fi
- \@nameauth@TestDot{#1}%
- \if@nameauth@MainFormat
- \if@nameauth@FirstFormat
- \bgroup\NamesFormat{#1}\egroup%
- \else
- \bgroup\MainNameHook{#1}\egroup%
- \fi
+ \fi
+}
+\newcommandx*\@nameauth@Name[3][1=\@empty, 3=\@empty]
+{%
+ \if@nameauth@Lock\else
+ \@nameauth@Locktrue%
+ \@nameauth@InNametrue%
+ \@nameauth@Error{#2}{macro \string\@nameauth@name}%
+ \leavevmode\hbox{}%
+ \IndexName[#1]{#2}[#3]%
+ \if@nameauth@MainFormat
+ \@nameauth@Parse[#1]{#2}[#3]{!MN}%
+ \else
+ \@nameauth@Parse[#1]{#2}[#3]{!NF}%
+ \fi
+ \IndexName[#1]{#2}[#3]%
+ \@nameauth@Lockfalse%
+ \@nameauth@InNamefalse%
+ \@nameauth@NBSPfalse%
+ \@nameauth@DoCapsfalse%
+ \@nameauth@Accentfalse%
+ \@nameauth@AllThisfalse%
+ \@nameauth@ShowCommafalse%
+ \@nameauth@NoCommafalse%
+ \@nameauth@RevThisfalse%
+ \@nameauth@RevThisCommafalse%
+ \@nameauth@ShortSNNfalse%
+ \@nameauth@EastFNfalse%
+ \fi
+ \if@nameauth@Punct\expandafter\@nameauth@CheckDot\fi
+}
+\newcommandx*\@nameauth@Parse[4][1=\@empty, 3=\@empty]
+{%
+ \if@nameauth@Lock
+ \protected@edef\arga{\trim@spaces{#1}}%
+ \protected@edef\argc{\trim@spaces{#3}}%
+ \protected@edef\suffb{\@nameauth@Suffix{#2}}%
+ \if@nameauth@AllCaps\@nameauth@AllThistrue\fi
+ \if@nameauth@RevAll\@nameauth@RevThistrue\fi
+ \if@nameauth@RevAllComma\@nameauth@RevThisCommatrue\fi
+ \if@nameauth@DoCaps
+ \@nameauth@UTFtest{#2}%
+ \protected@edef\rootb{\@nameauth@CapRoot{#2}}%
\else
- \if@nameauth@FirstFormat
- \bgroup\FrontNamesFormat{#1}\egroup%
+ \if@nameauth@AllThis
+ \protected@edef\rootb{\@nameauth@AllCapRoot{#2}}%
\else
- \bgroup\FrontNameHook{#1}\egroup%
+ \protected@edef\rootb{\@nameauth@Root{#2}}%
\fi
\fi
- \else
- \if@nameauth@AlwaysFormat\@nameauth@FirstFormattrue\fi
- \@nameauth@TestDot{#1}%
- \if@nameauth@MainFormat
- \if@nameauth@FirstFormat
- \bgroup\NamesFormat{#1}\egroup%
+ \def\csb{\@nameauth@Clean{#2}}%
+ \def\csbc{\@nameauth@Clean{#2,#3}}%
+ \def\csab{\@nameauth@Clean{#1!#2}}%
+ \@nameauth@toksa\expandafter{#1}%
+ \@nameauth@toksb\expandafter{#2}%
+ \@nameauth@toksc\expandafter{#3}%
+ \edef\Space{\space}%
+ \if@nameauth@NBSP\edef\Space{\nobreakspace}\fi
+ \ifx\arga\@empty\else
+ \if@nameauth@AlwaysComma
+ \edef\Space{,\space}%
+ \if@nameauth@NBSP\edef\Space{,\nobreakspace}\fi
+ \fi
+ \if@nameauth@ShowComma
+ \edef\Space{,\space}%
+ \if@nameauth@NBSP\edef\Space{,\nobreakspace}\fi
+ \fi
+ \if@nameauth@NoComma
+ \edef\Space{\space}%
+ \if@nameauth@NBSP\edef\Space{\nobreakspace}\fi
+ \fi
+ \fi
+ \let\SNN\rootb%
+ \ifx\arga\@empty
+ \ifx\argc\@empty
+ \let\FNN\suffb%
+ \let\SNN\rootb%
+ \@nameauth@NonWest{\csb#4}%
\else
- \bgroup\MainNameHook{#1}\egroup%
+ \ifx\suffb\@empty
+ \let\FNN\argc%
+ \let\SNN\rootb%
+ \@nameauth@NonWest{\csbc#4}%
+ \else
+ \let\FNN\argc%
+ \let\SNN\rootb%
+ \@nameauth@NonWest{\csb#4}%
+ \fi
\fi
\else
- \if@nameauth@FirstFormat
- \bgroup\FrontNamesFormat{#1}\egroup%
+ \ifx\argc\@empty
+ \let\FNN\arga%
\else
- \bgroup\FrontNameHook{#1}\egroup%
+ \let\FNN\argc%
\fi
+ \ifx\suffb\@empty
+ \else
+ \protected@edef\SNN{\rootb\Space\suffb}%
+ \if@nameauth@ShortSNN\let\SNN\rootb\fi
+ \fi
+ \@nameauth@West{\csab#4}%
\fi
\fi
}
-\newcommand*\@nameauth@Actual{@}
-\newcommand*\@nameauth@Index[2]%
+\newcommand*\@nameauth@NonWest[1]
{%
- \def\cseq{#1}%
- \ifcsname\cseq!TAG\endcsname
- \ifcsname\cseq!PRE\endcsname
- \if@nameauth@DoIndex
- \index%
- {\csname\cseq!PRE\endcsname#2\csname\cseq!TAG\endcsname}%
+ \if@nameauth@Lock
+ \ifcsname#1\endcsname\else
+ \@nameauth@FirstFormattrue%
+ \fi
+ \if@nameauth@InAKA
+ \if@nameauth@AltAKA
+ \if@nameauth@OldAKA\@nameauth@EastFNtrue\fi
+ \@nameauth@FullNamefalse%
+ \@nameauth@FirstNametrue%
+ \else
+ \@nameauth@FullNametrue%
+ \@nameauth@FirstNamefalse%
\fi
\else
- \if@nameauth@DoIndex\index{#2\csname\cseq!TAG\endcsname}\fi
+ \ifcsname#1\endcsname\else
+ \@nameauth@FullNametrue%
+ \@nameauth@FirstNamefalse%
+ \fi
\fi
- \else
- \ifcsname\cseq!PRE\endcsname
- \if@nameauth@DoIndex\index{\csname\cseq!PRE\endcsname#2}\fi
+ \if@nameauth@FirstName
+ \@nameauth@FullNamefalse%
+ \fi
+ \ifx\FNN\@empty
+ \@nameauth@Hook{\SNN}%
\else
- \if@nameauth@DoIndex\index{#2}\fi
+ \if@nameauth@FullName
+ \if@nameauth@RevThis
+ \@nameauth@Hook{\FNN\Space\SNN}%
+ \else
+ \@nameauth@Hook{\SNN\Space\FNN}%
+ \fi
+ \else
+ \if@nameauth@EastFN
+ \@nameauth@Hook{\FNN}%
+ \else
+ \@nameauth@Hook{\SNN}%
+ \fi
+ \fi
+ \fi
+ \ifcsname#1\endcsname\else
+ \if@nameauth@InAKA\else\csgdef{#1}{}\fi%
\fi
+ \@nameauth@FullNamefalse%
+ \@nameauth@FirstNamefalse%
\fi
}
-\newcommandx*\@nameauth@Name[3][1=\@empty, 3=\@empty]%
+\newcommand*\@nameauth@West[1]
{%
- \if@nameauth@Lock\else
- \@nameauth@Locktrue%
- \@nameauth@InNametrue%
- \let\ex\expandafter%
- \leavevmode\hbox{}%
- \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}}%
- \@nameauth@toksa\expandafter{#1}%
- \@nameauth@toksb\expandafter{#2}%
- \@nameauth@toksc\expandafter{#3}%
- \ifx\testb\@empty
- \PackageError{nameauth}%
- {macro \Name: Essential name missing}%
- \else
- \ifx\csb\@empty
- \PackageError{nameauth}%
- {macro \Name: Essential name malformed}%
- \fi
- \fi
- \if@nameauth@AllCaps\@nameauth@AllThistrue\fi
- \if@nameauth@RevAll\@nameauth@RevThistrue\fi
- \if@nameauth@RevAllComma\@nameauth@RevThisCommatrue\fi
- \IndexName[#1]{#2}[#3]%
- \protected@edef\Space{\space}%
- \if@nameauth@NBSP\protected@edef\Space{\nobreakspace}\fi
- \ifx\arga\@empty\else
- \if@nameauth@AlwaysComma
- \protected@edef\Space{,\space}%
- \if@nameauth@NBSP\protected@edef\Space{,\nobreakspace}\fi
- \fi
- \if@nameauth@ShowComma
- \protected@edef\Space{,\space}%
- \if@nameauth@NBSP\protected@edef\Space{,\nobreakspace}\fi
- \fi
- \if@nameauth@NoComma
- \protected@edef\Space{\space}%
- \if@nameauth@NBSP\protected@edef\Space{\nobreakspace}\fi
- \fi
- \fi
- \protected@edef\RawShort{\@nameauth@Root{#2}}%
- \if@nameauth@DoCaps
- \protected@edef\CapShort{\@nameauth@CapRoot{#2}}%
- \else
- \let\CapShort\RawShort%
- \fi
- \protected@edef\AllCapShort{\@nameauth@AllCapRoot{#2}}%
- \ifx\testb\testbr
- \let\Suff\@empty%
- \let\Reversed\RawShort%
- \let\SNN\RawShort%
- \let\PrintShort\RawShort%
- \if@nameauth@DoCaps
- \let\Reversed\CapShort%
- \let\SNN\CapShort%
- \let\PrintShort\CapShort%
- \fi
- \if@nameauth@AllThis
- \let\Reversed\AllCapShort%
- \let\SNN\AllCapShort%
- \let\PrintShort\AllCapShort%
+ \if@nameauth@Lock
+ \ifcsname#1\endcsname\else
+ \@nameauth@FirstFormattrue%
\fi
- \else
- \protected@edef\Suff{\@nameauth@Suffix{#2}}%
- \protected@edef\Reversed{\Suff\Space\RawShort}%
- \protected@edef\SNN{\RawShort\Space\Suff}%
- \if@nameauth@RevThis
- \let\PrintShort\Suff%
+ \if@nameauth@InAKA
+ \if@nameauth@AltAKA
+ \@nameauth@FullNamefalse%
+ \@nameauth@FirstNametrue%
+ \else
+ \@nameauth@FullNametrue%
+ \@nameauth@FirstNamefalse%
+ \fi
\else
- \let\PrintShort\RawShort%
+ \ifcsname#1\endcsname\else
+ \@nameauth@FullNametrue%
+ \@nameauth@FirstNamefalse%
+ \fi
\fi
- \if@nameauth@DoCaps
- \protected@edef\Reversed{\Suff\Space\CapShort}%
- \protected@edef\SNN{\CapShort\Space\Suff}%
+ \if@nameauth@FirstName
+ \@nameauth@FullNamefalse%
+ \fi
+ \if@nameauth@FullName
\if@nameauth@RevThis
- \let\PrintShort\Suff%
+ \@nameauth@Hook{\SNN\space\FNN}%
\else
- \let\PrintShort\CapShort%
+ \if@nameauth@RevThisComma
+ \edef\RevSpace{,\space}%
+ \@nameauth@Hook{\SNN\RevSpace\FNN}%
+ \else
+ \@nameauth@Hook{\FNN\space\SNN}%
+ \fi
\fi
- \fi
- \if@nameauth@AllThis
- \protected@edef\Reversed{\Suff\Space\AllCapShort}%
- \protected@edef\SNN{\AllCapShort\Space\Suff}%
- \if@nameauth@RevThis
- \let\PrintShort\Suff%
+ \else
+ \if@nameauth@FirstName
+ \@nameauth@Hook{\FNN}%
\else
- \let\PrintShort\AllCapShort%
+ \@nameauth@Hook{\rootb}%
\fi
\fi
+ \ifcsname#1\endcsname\else
+ \if@nameauth@InAKA\else\csgdef{#1}{}\fi%
+ \fi
+ \@nameauth@FullNamefalse%
+ \@nameauth@FirstNamefalse%
\fi
- \ifx\testa\@empty
- \ifx\testc\@empty
+}
+\newcommand*\@nameauth@Hook[1]
+{%
+ \if@nameauth@Lock
+ \@nameauth@InHooktrue%
+ \protected@edef\test{#1}%
+ \expandafter\@nameauth@TestDot\expandafter{\test}%
+ \if@nameauth@InAKA
+ \if@nameauth@AlwaysFormat
+ \@nameauth@FirstFormattrue%
+ \else
+ \if@nameauth@AKAFormat\else
+ \@nameauth@FirstFormatfalse\fi
+ \fi
\if@nameauth@MainFormat
- \ifcsname\csb!MN\endcsname
- \if@nameauth@FirstName
- \@nameauth@FullNamefalse%
- \fi
- \if@nameauth@FullName
- \if@nameauth@RevThis
- \ex\@nameauth@FmtName\ex{\Reversed}%
- \else
- \ex\@nameauth@FmtName\ex{\SNN}%
- \fi
- \else
- \ex\@nameauth@FmtName\ex{\PrintShort}%
- \fi
- \@nameauth@FullNamefalse%
- \@nameauth@FirstNamefalse%
+ \if@nameauth@FirstFormat
+ \bgroup\NamesFormat{#1}\egroup%
\else
- \@nameauth@FirstFormattrue%
- \@nameauth@FullNametrue%
- \@nameauth@FirstNamefalse%
- \if@nameauth@RevThis
- \ex\@nameauth@FmtName\ex{\Reversed}%
- \else
- \ex\@nameauth@FmtName\ex{\SNN}%
- \fi
- \csgdef{\csb!MN}{}%
- \@nameauth@FullNamefalse%
+ \bgroup\MainNameHook{#1}\egroup%
\fi
\else
- \ifcsname\csb!NF\endcsname
- \if@nameauth@FirstName
- \@nameauth@FullNamefalse%
- \fi
- \if@nameauth@FullName
- \if@nameauth@RevThis
- \ex\@nameauth@FmtName\ex{\Reversed}%
- \else
- \ex\@nameauth@FmtName\ex{\SNN}%
- \fi
- \else
- \ex\@nameauth@FmtName\ex{\PrintShort}%
- \fi
- \@nameauth@FullNamefalse%
- \@nameauth@FirstNamefalse%
+ \if@nameauth@FirstFormat
+ \bgroup\FrontNamesFormat{#1}\egroup%
\else
- \@nameauth@FirstFormattrue%
- \@nameauth@FullNametrue%
- \@nameauth@FirstNamefalse%
- \if@nameauth@RevThis
- \ex\@nameauth@FmtName\ex{\Reversed}%
- \else
- \ex\@nameauth@FmtName\ex{\SNN}%
- \fi
- \csgdef{\csb!NF}{}%
- \@nameauth@FullNamefalse%
+ \bgroup\FrontNameHook{#1}\egroup%
\fi
\fi
\else
+ \if@nameauth@AlwaysFormat
+ \@nameauth@FirstFormattrue%
+ \fi
\if@nameauth@MainFormat
- \ifcsname\csbc!MN\endcsname
- \if@nameauth@FirstName
- \@nameauth@FullNamefalse%
- \fi
- \if@nameauth@FullName
- \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
- \@nameauth@FullNamefalse%
- \@nameauth@FirstNamefalse%
+ \if@nameauth@FirstFormat
+ \bgroup\NamesFormat{#1}\egroup%
\else
- \@nameauth@FirstFormattrue%
- \@nameauth@FullNametrue%
- \@nameauth@FirstNamefalse%
- \if@nameauth@RevThis
- \ex\@nameauth@FmtName\ex{\ex\argc\ex\Space\SNN}%
- \else
- \ex\@nameauth@FmtName\ex{\ex\SNN\ex\Space\argc}%
- \fi
- \csgdef{\csbc!MN}{}%
- \@nameauth@FullNamefalse%
+ \bgroup\MainNameHook{#1}\egroup%
\fi
\else
- \ifcsname\csbc!NF\endcsname
- \if@nameauth@FirstName
- \@nameauth@FullNamefalse%
- \fi
- \if@nameauth@FullName
- \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
- \@nameauth@FullNamefalse%
- \@nameauth@FirstNamefalse%
+ \if@nameauth@FirstFormat
+ \bgroup\FrontNamesFormat{#1}\egroup%
\else
- \@nameauth@FirstFormattrue%
- \@nameauth@FullNametrue%
- \@nameauth@FirstNamefalse%
- \if@nameauth@RevThis
- \ex\@nameauth@FmtName\ex{\ex\argc\ex\Space\SNN}%
- \else
- \ex\@nameauth@FmtName\ex{\ex\SNN\ex\Space\argc}%
- \fi
- \csgdef{\csbc!NF}{}%
- \@nameauth@FullNamefalse%
+ \bgroup\FrontNameHook{#1}\egroup%
\fi
\fi
\fi
- \else
- \if@nameauth@RevThisComma
- \protected@edef\Space{,\space}%
- \if@nameauth@NBSP\protected@edef\Space{,\nobreakspace}\fi
- \fi
- \ifx\testc\@empty
- \let\FNN\arga%
- \else
- \let\FNN\argc%
- \fi
- \if@nameauth@MainFormat
- \ifcsname\csab!MN\endcsname
- \if@nameauth@FirstName
- \@nameauth@FullNamefalse%
- \let\PrintShort\FNN%
- \fi
- \if@nameauth@FullName
- \if@nameauth@RevThis
- \ex\@nameauth@FmtName\ex{\ex\SNN\ex\Space\FNN}%
- \else
- \ex\@nameauth@FmtName\ex{\ex\FNN\ex\space\SNN}%
- \fi
+ \@nameauth@FirstFormatfalse%
+ \@nameauth@InHookfalse%
+ \fi
+}
+\newcommand*\@nameauth@Index[2]
+{%
+ \def\cseq{#1}%
+ \let\ex\expandafter%
+ \ifcsname\cseq!TAG\endcsname
+ \protected@edef\Tag{\csname#1!TAG\endcsname}%
+ \ex\def\ex\ShortTag\ex{\ex\@nameauth@TagRoot\ex{\Tag}}%
+ \fi
+ \if@nameauth@DoIndex
+ \ifcsname\cseq!TAG\endcsname
+ \ifcsname\cseq!PRE\endcsname
+ \if@nameauth@Xref%
+ \index%
+ {\csname\cseq!PRE\endcsname#2\ShortTag}%
\else
- \ex\@nameauth@FmtName\ex{\PrintShort}%
+ \index%
+ {\csname\cseq!PRE\endcsname#2\csname\cseq!TAG\endcsname}%
\fi
- \@nameauth@FullNamefalse%
- \@nameauth@FirstNamefalse%
\else
- \@nameauth@FirstFormattrue%
- \@nameauth@FullNametrue%
- \@nameauth@FirstNamefalse%
- \if@nameauth@RevThis
- \ex\@nameauth@FmtName\ex{\ex\SNN\ex\Space\FNN}%
+ \if@nameauth@Xref
+ \index{#2\ShortTag}%
\else
- \ex\@nameauth@FmtName\ex{\ex\FNN\ex\space\SNN}%
+ \index{#2\csname\cseq!TAG\endcsname}%
\fi
- \csgdef{\csab!MN}{}%
- \@nameauth@FullNamefalse%
\fi
\else
- \ifcsname\csab!NF\endcsname
- \if@nameauth@FirstName
- \@nameauth@FullNamefalse%
- \let\PrintShort\FNN%
- \fi
- \if@nameauth@FullName
- \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
- \@nameauth@FullNamefalse%
- \@nameauth@FirstNamefalse%
+ \ifcsname\cseq!PRE\endcsname
+ \index{\csname\cseq!PRE\endcsname#2}%
\else
- \@nameauth@FirstFormattrue%
- \@nameauth@FullNametrue%
- \@nameauth@FirstNamefalse%
- \if@nameauth@RevThis
- \ex\@nameauth@FmtName\ex{\ex\SNN\ex\Space\FNN}%
- \else
- \ex\@nameauth@FmtName\ex{\ex\FNN\ex\space\SNN}%
- \fi
- \csgdef{\csab!NF}{}%
- \@nameauth@FullNamefalse%
+ \index{#2}%
\fi
\fi
\fi
- \IndexName[#1]{#2}[#3]%
- \@nameauth@Lockfalse%
- \@nameauth@InNamefalse%
- \@nameauth@FirstFormatfalse%
- \@nameauth@NBSPfalse%
- \@nameauth@DoCapsfalse%
- \@nameauth@Accentfalse%
- \@nameauth@AllThisfalse%
- \@nameauth@ShowCommafalse%
- \@nameauth@NoCommafalse%
- \@nameauth@RevThisfalse%
- \@nameauth@RevThisCommafalse%
- \fi
- \if@nameauth@Punct\expandafter\@nameauth@CheckDot\fi
}
+\newcommand*\@nameauth@Actual{@}
\newcommand*\CapThis{\@nameauth@DoCapstrue}
\newcommand*\AccentCapThis%
{\@nameauth@Accenttrue\@nameauth@DoCapstrue}
@@ -512,14 +461,16 @@
\newcommand*\RevName{\@nameauth@RevThistrue}
\newcommand*\ReverseInactive{\@nameauth@RevAllfalse}
\newcommand*\ReverseActive{\@nameauth@RevAlltrue}
+\newcommand*\ForceFN{\@nameauth@EastFNtrue}
\newcommand*\RevComma%
- {\@nameauth@RevThistrue\@nameauth@RevThisCommatrue}
+ {\@nameauth@RevThisCommatrue}
\newcommand*\ReverseCommaInactive%
- {\@nameauth@RevAllfalse\@nameauth@RevAllCommafalse}
+ {\@nameauth@RevAllCommafalse}
\newcommand*\ReverseCommaActive%
- {\@nameauth@RevAlltrue\@nameauth@RevAllCommatrue}
+ {\@nameauth@RevAllCommatrue}
\newcommand*\ShowComma{\@nameauth@ShowCommatrue}
\newcommand*\NoComma{\@nameauth@NoCommatrue}
+\newcommand*\DropAffix{\@nameauth@ShortSNNtrue}
\newcommand*\KeepAffix{\@nameauth@NBSPtrue}
\newcommand*\NamesInactive{\@nameauth@MainFormatfalse}
\newcommand*\NamesActive{\@nameauth@MainFormattrue}
@@ -527,714 +478,673 @@
\newcommand*\GlobalNames{\global\@nameauth@LocalNamesfalse}
\newcommand*\IndexInactive{\@nameauth@DoIndexfalse}
\newcommand*\IndexActive{\@nameauth@DoIndextrue}
-\newcommand*\IndexActual[1]%
+\newcommand*\IndexActual[1]
{\global\renewcommand*\@nameauth@Actual{#1}}
-\def\Name{\NameauthName}
-\WithSuffix\def\Name*{\@nameauth@FullNametrue\NameauthLName}
-\def\FName{\@nameauth@FirstNametrue\NameauthFName}
-\WithSuffix\def\FName*{\@nameauth@FirstNametrue\NameauthFName}
-\newcommandx*\AKA[5][1=\@empty, 3=\@empty, 5=\@empty]%
+\newcommand*\SeeAlso{\@nameauth@SeeAlsotrue}
+\newcommand*\NameParser
{%
- \if@nameauth@Lock\else
- \@nameauth@Locktrue%
- \@nameauth@InAKAtrue%
- \let\ex\expandafter%
- \leavevmode\hbox{}%
- \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\argd{\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}}%
- \@nameauth@toksa\expandafter{#3}%
- \@nameauth@toksb\expandafter{#4}%
- \@nameauth@toksc\expandafter{#5}%
- \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\Space{\space}%
- \if@nameauth@NBSP\protected@edef\Space{\nobreakspace}\fi
- \ifx\argc\@empty\else
- \if@nameauth@AlwaysComma
- \protected@edef\Space{,\space}%
- \if@nameauth@NBSP\protected@edef\Space{,\nobreakspace}\fi
- \fi
- \if@nameauth@ShowComma
- \protected@edef\Space{,\space}%
- \if@nameauth@NBSP\protected@edef\Space{,\nobreakspace}\fi
- \fi
- \if@nameauth@NoComma
- \protected@edef\Space{\space}%
- \if@nameauth@NBSP\protected@edef\Space{\nobreakspace}\fi
- \fi
- \fi
- \protected@edef\Shortb{\@nameauth@Root{#2}}%
- \protected@edef\Shortd{\@nameauth@Root{#4}}%
- \if@nameauth@DoCaps
- \protected@edef\CapShort{\@nameauth@CapRoot{#4}}%
- \else
- \let\CapShort\Shortd
- \fi
- \protected@edef\AllCapShort{\@nameauth@AllCapRoot{#4}}%
- \ifx\testb\testbr
- \let\SNNb\Shortb%
- \let\Suffb\@empty%
- \else
- \protected@edef\Suffb{\@nameauth@Suffix{#2}}%
- \protected@edef\SNNb{\Shortb\space\Suffb}%
- \fi
- \ifx\testd\testdr
- \let\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\SNNd\AllCapShort%
- \let\Reversed\AllCapShort%
- \fi
- \else
- \protected@edef\Suffd{\@nameauth@Suffix{#4}}%
- \protected@edef\ISNNd{\Shortd\space\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}%
+ \if@nameauth@InHook
+ \let\SNN\rootb%
+ \ifx\arga\@empty
+ \ifx\argc\@empty
+ \let\FNN\suffb%
\else
- \ifcsname\csd!MN\endcsname
- \PackageWarning{nameauth}%
- {macro \AKA: Name reference: #4 exists; no xref}%
+ \let\FNN\argc%
+ \fi
+ \ifx\suffb\@empty
+ \SNN%
+ \else
+ \if@nameauth@FullName
+ \if@nameauth@RevThis
+ \FNN\Space\SNN%
+ \else
+ \SNN\Space\FNN%
+ \fi
\else
- \ifcsname\csd!NF\endcsname
- \PackageWarning{nameauth}%
- {macro \AKA: Name reference: #4 exists; no xref}%
+ \if@nameauth@EastFN
+ \FNN%
\else
- \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
+ \SNN%
\fi
\fi
\fi
- \if@nameauth@RevThisComma
- \protected@edef\Space{,\space}%
- \if@nameauth@NBSP
- \protected@edef\Space{,\nobreakspace}%
- \fi
- \fi
- \ifcsname\csd!PN\endcsname\else\@nameauth@FirstFormattrue\fi
- \if@nameauth@RevThis
- \ex\@nameauth@FmtName\ex{\Reversed}%
+ \else
+ \ifx\argc\@empty
+ \let\FNN\arga%
\else
- \ex\@nameauth@FmtName\ex{\SNNd}%
+ \let\FNN\argc%
\fi
- \ifcsname\csd!PN\endcsname\else\csgdef{\csd!PN}{}\fi
- \else
- \ifcsname\csde!PN\endcsname
- \PackageWarning{nameauth}%
- {macro \AKA: XRef: #4 #5 exists}%
+ \ifx\suffb\@empty
\else
- \ifcsname\csde!MN\endcsname
- \PackageWarning{nameauth}%
- {macro \AKA: Name reference: #4 #5 exists; no xref}%
+ \protected@edef\SNN{\rootb\Space\suffb}%
+ \if@nameauth@ShortSNN\let\SNN\rootb\fi%
+ \fi
+ \if@nameauth@FullName
+ \if@nameauth@RevThis
+ \SNN\space\FNN%
\else
- \ifcsname\csde!NF\endcsname
- \PackageWarning{nameauth}%
- {macro \AKA: Name reference: #4 #5 exists; no xref}%
+ \if@nameauth@RevThisComma
+ \SNN\RevSpace\FNN%
\else
- \ifx\testa\@empty
- \@nameauth@Index{\csde}%
- {\ISNNd\space\arge|see{\SNNb}}%
- \else
- \ifx\Suffb\@empty
- \@nameauth@Index{\csde}%
- {\ISNNd\space\arge|see{\SNNb,\space\arga}}%
- \else
- \@nameauth@Index{\csde}%
- {\ISNNd\space\arge|see{\Shortb,\space\arga,\space\Suffb}}%
- \fi
- \fi
+ \FNN\space\SNN%
\fi
\fi
+ \else
+ \if@nameauth@FirstName
+ \FNN%
+ \else
+ \protected@edef\SNN{\rootb}%
+ \SNN%
+ \fi
\fi
- \if@nameauth@RevThisComma
- \protected@edef\Space{,\space}%
- \if@nameauth@NBSP
- \protected@edef\Space{,\nobreakspace}%
+ \fi
+ \fi
+}
+\newcommand\Name{\NameauthName}
+\WithSuffix{\newcommand*}\Name*%
+ {\@nameauth@FullNametrue\NameauthLName}
+\newcommand\FName{\@nameauth@FirstNametrue\NameauthFName}
+\WithSuffix{\newcommand*}\FName*%
+ {\@nameauth@FirstNametrue\NameauthFName}
+\newcommandx*\IndexName[3][1=\@empty, 3=\@empty]
+{%
+ \protected@edef\testa{#1}%
+ \protected@edef\arga{\trim@spaces{#1}}%
+ \protected@edef\testb{\trim@spaces{#2}}%
+ \protected@edef\rootb{\@nameauth@Root{#2}}%
+ \protected@edef\suffb{\@nameauth@Suffix{#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}}%
+ \@nameauth@Error{#2}{macro \string\IndexName}%
+ \let\Short\rootb%
+ \ifx\suffb\@empty
+ \let\SNN\rootb%
+ \else
+ \protected@edef\SNN{\rootb\space\suffb}%
+ \fi
+ \ifx\testa\@empty
+ \ifx\testc\@empty
+ \ifcsname\csb!PN\endcsname
+ \if@nameauth@Verbose
+ \PackageWarning{nameauth}%
+ {macro \IndexName: XRef: #2 exists}%
\fi
+ \else
+ \@nameauth@Index{\csb}{\SNN}%
\fi
- \ifcsname\csde!PN\endcsname\else\@nameauth@FirstFormattrue\fi
- \if@nameauth@AltAKA
- \ex\@nameauth@FmtName\ex{\arge}%
+ \else
+ \ifx\suffb\@empty
+ \ifcsname\csbc!PN\endcsname
+ \if@nameauth@Verbose
+ \PackageWarning{nameauth}%
+ {macro \IndexName: XRef: #2 #3 exists}%
+ \fi
+ \else
+ \@nameauth@Index{\csbc}{\SNN\space\argc}%
+ \fi
\else
- \if@nameauth@RevThis
- \ex\@nameauth@FmtName\ex{\ex\arge\ex\Space\SNNd}%
+ \ifcsname\csb!PN\endcsname
+ \if@nameauth@Verbose
+ \PackageWarning{nameauth}%
+ {macro \IndexName: XRef: #2 exists}%
+ \fi
\else
- \ex\@nameauth@FmtName\ex{\ex\SNNd\ex\Space\arge}%
+ \@nameauth@Index{\csb}{\SNN}%
\fi
\fi
- \ifcsname\csde!PN\endcsname\else\csgdef{\csde!PN}{}\fi
\fi
\else
- \ifcsname\cscd!PN\endcsname
- \PackageWarning{nameauth}%
- {macro \AKA: XRef: #3 #4 exists}%
- \else
- \ifcsname\cscd!MN\endcsname
+ \ifcsname\csab!PN\endcsname
+ \if@nameauth@Verbose
\PackageWarning{nameauth}%
- {macro \AKA: Name reference: #3 #4 exists; no xref}%
+ {macro \IndexName: XRef: #1 #2 exists}%
+ \fi
+ \else
+ \ifx\suffb\@empty
+ \@nameauth@Index{\csab}%
+ {\Short,\space\arga}%
\else
- \ifcsname\cscd!NF\endcsname
+ \@nameauth@Index{\csab}%
+ {\Short,\space\arga,\space\suffb}%
+ \fi
+ \fi
+ \fi
+}
+\newcommandx*\IndexRef[4][1=\@empty, 3=\@empty]
+{%
+ \protected@edef\testa{#1}%
+ \protected@edef\arga{\trim@spaces{#1}}%
+ \protected@edef\rootb{\@nameauth@Root{#2}}%
+ \protected@edef\suffb{\@nameauth@Suffix{#2}}%
+ \protected@edef\testc{#3}%
+ \protected@edef\argc{\trim@spaces{#3}}%
+ \protected@edef\target{#4}%
+ \def\csb{\@nameauth@Clean{#2}}%
+ \def\csbc{\@nameauth@Clean{#2,#3}}%
+ \def\csab{\@nameauth@Clean{#1!#2}}%
+ \let\ex\expandafter%
+ \@nameauth@Error{#2}{macro \string\IndexRef}%
+ \@nameauth@Xreftrue%
+ \let\Short\rootb%
+ \ifx\suffb\@empty
+ \let\SNN\rootb%
+ \else
+ \protected@edef\SNN{\rootb\space\suffb}%
+ \fi
+ \ifx\testa\@empty
+ \ifx\testc\@empty
+ \ifcsname\csb!PN\endcsname
+ \if@nameauth@Verbose
\PackageWarning{nameauth}%
- {macro \AKA: Name reference: #3 #4 exists; no xref}%
+ {macro \IndexRef: XRef: #2 exists}%
+ \fi
+ \else
+ \if@nameauth@SeeAlso
+ \@nameauth@Index{\csb}{\SNN|seealso{\target}}%
\else
- \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
+ \@nameauth@Index{\csb}{\SNN|see{\target}}%
+ \fi
+ \csgdef{\csb!PN}{}%
+ \fi
+ \else
+ \ifx\suffb\@empty
+ \ifcsname\csbc!PN\endcsname
+ \if@nameauth@Verbose
+ \PackageWarning{nameauth}%
+ {macro \IndexRef: XRef: #2 #3 exists}%
+ \fi
+ \else
+ \if@nameauth@SeeAlso
+ \@nameauth@Index{\csbc}%
+ {\SNN\space\argc|seealso{\target}}%
\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
+ \@nameauth@Index{\csbc}%
+ {\SNN\space\argc|see{\target}}%
\fi
+ \csgdef{\csbc!PN}{}%
+ \fi
+ \else
+ \ifcsname\csb!PN\endcsname
+ \if@nameauth@Verbose
+ \PackageWarning{nameauth}%
+ {macro \IndexRef: XRef: #2 exists}%
+ \fi
+ \else
+ \if@nameauth@SeeAlso
+ \@nameauth@Index{\csb}%
+ {\SNN|seealso{\target}}%
+ \else
+ \@nameauth@Index{\csb}%
+ {\SNN|see{\target}}%
+ \fi
+ \csgdef{\csb!PN}{}%
\fi
\fi
\fi
- \if@nameauth@RevThisComma
- \protected@edef\Space{,\space}%
- \if@nameauth@NBSP\protected@edef\Space{,\nobreakspace}\fi
- \fi
- \ifx\teste\@empty
- \let\FNN\argc%
- \else
- \let\FNN\arge%
- \fi
- \ifcsname\cscd!PN\endcsname\else\@nameauth@FirstFormattrue\fi
- \if@nameauth@AltAKA
- \ex\@nameauth@FmtName\ex{\FNN}%
+ \else
+ \ifcsname\csab!PN\endcsname
+ \if@nameauth@Verbose
+ \PackageWarning{nameauth}%
+ {macro \IndexRef: XRef: #1 #2 exists}%
+ \fi
\else
- \if@nameauth@RevThis
- \ex\@nameauth@FmtName\ex{\ex\SNNd\ex\Space\FNN}%
+ \ifx\suffb\@empty
+ \if@nameauth@SeeAlso
+ \@nameauth@Index{\csab}%
+ {\Short,\space\arga|seealso{\target}}%
+ \else
+ \@nameauth@Index{\csab}%
+ {\Short,\space\arga|see{\target}}%
+ \fi
\else
- \ex\@nameauth@FmtName\ex{\ex\FNN\ex\space\SNNd}%
+ \if@nameauth@SeeAlso
+ \@nameauth@Index{\csab}%
+ {\Short,\space\arga,\space\suffb|seealso{\target}}%
+ \else
+ \@nameauth@Index{\csab}%
+ {\Short,\space\arga,\space\suffb|see{\target}}%
+ \fi
\fi
+ \csgdef{\csab!PN}{}%
\fi
- \ifcsname\cscd!PN\endcsname\else\csgdef{\cscd!PN}{}\fi
- \fi
- \@nameauth@Lockfalse%
- \@nameauth@InAKAfalse%
- \@nameauth@FirstFormatfalse%
- \@nameauth@NBSPfalse%
- \@nameauth@AltAKAfalse%
- \@nameauth@DoCapsfalse%
- \@nameauth@Accentfalse%
- \@nameauth@AllThisfalse%
- \@nameauth@ShowCommafalse%
- \@nameauth@NoCommafalse%
- \@nameauth@RevThisfalse%
- \@nameauth@RevThisCommafalse%
\fi
- \if@nameauth@Punct\expandafter\@nameauth@CheckDot\fi
+ \@nameauth@SeeAlsofalse%
+ \@nameauth@Xreffalse%
}
-\WithSuffix\def\AKA*{\@nameauth@AltAKAtrue\AKA}
-\newcommandx*\PName[5][1=\@empty,3=\@empty,5=\@empty]%
-{%
- \NameauthName[#1]{#2}\space(\AKA[#1]{#2}[#3]{#4}[#5])%
-}
-\WithSuffix\def\PName*{\@nameauth@FullNametrue\PName}
-\newcommandx\NameAddInfo[4][1=\@empty, 3=\@empty]%
+\newcommandx*\ExcludeName[3][1=\@empty, 3=\@empty]
{%
\protected@edef\testa{#1}%
- \protected@edef\testb{\trim@spaces{#2}}%
\protected@edef\testc{#3}%
+ \protected@edef\suffb{\@nameauth@Suffix{#2}}%
\def\csb{\@nameauth@Clean{#2}}%
\def\csbc{\@nameauth@Clean{#2,#3}}%
\def\csab{\@nameauth@Clean{#1!#2}}%
- \ifx\testb\@empty
- \PackageError{nameauth}%
- {macro \NameInfo: Essential name missing}%
- \else
- \ifx\csb\@empty
- \PackageError{nameauth}%
- {macro \NameInfo: Essential name malformed}%
- \fi
- \fi
+ \@nameauth@Error{#2}{macro \string\ExcludeName}%
\ifx\testa\@empty
\ifx\testc\@empty
- \csgdef{\csb!DB}{#4}%
+ \if@nameauth@Verbose
+ \ifcsname\csb!MN\endcsname
+ \PackageWarning{nameauth}%
+ {macro \ExcludeName: Reference: #2 exists}%
+ \fi
+ \ifcsname\csb!NF\endcsname
+ \PackageWarning{nameauth}%
+ {macro \ExcludeName: Reference: #2 exists}%
+ \fi
+ \fi
+ \ifcsname\csb!PN\endcsname
+ \if@nameauth@Verbose
+ \PackageWarning{nameauth}%
+ {macro \ExcludeName: Xref: #2 exists}%
+ \fi
+ \else
+ \csgdef{\csb!PN}{!}%
+ \fi
\else
- \csgdef{\csbc!DB}{#4}%
+ \ifx\suffb\@empty
+ \if@nameauth@Verbose
+ \ifcsname\csbc!MN\endcsname
+ \PackageWarning{nameauth}%
+ {macro \ExcludeName: Reference: #2 #3 exists}%
+ \fi
+ \ifcsname\csbc!NF\endcsname
+ \PackageWarning{nameauth}%
+ {macro \ExcludeName: Reference: #2 #3 exists}%
+ \fi
+ \fi
+ \csgdef{\csbc!PN}{!}%
+ \ifcsname\csbc!PN\endcsname
+ \if@nameauth@Verbose
+ \PackageWarning{nameauth}%
+ {macro \ExcludeName: Xref: #2 exists}%
+ \fi
+ \else
+ \csgdef{\csbc!PN}{!}%
+ \fi
+ \else
+ \if@nameauth@Verbose
+ \ifcsname\csb!MN\endcsname
+ \PackageWarning{nameauth}%
+ {macro \ExcludeName: Reference: #2 exists}%
+ \fi
+ \ifcsname\csb!NF\endcsname
+ \PackageWarning{nameauth}%
+ {macro \ExcludeName: Reference: #2 exists}%
+ \fi
+ \fi
+ \ifcsname\csb!PN\endcsname
+ \if@nameauth@Verbose
+ \PackageWarning{nameauth}%
+ {macro \ExcludeName: Xref: #2 exists}%
+ \fi
+ \else
+ \csgdef{\csb!PN}{!}%
+ \fi
+ \fi
\fi
\else
- \csgdef{\csab!DB}{#4}%
+ \if@nameauth@Verbose
+ \ifcsname\csab!MN\endcsname
+ \PackageWarning{nameauth}%
+ {macro \ExcludeName: Reference: #1 #2 exists}%
+ \fi
+ \ifcsname\csab!NF\endcsname
+ \PackageWarning{nameauth}%
+ {macro \ExcludeName: Reference: #1 #2 exists}%
+ \fi
+ \fi
+ \ifcsname\csab!PN\endcsname
+ \if@nameauth@Verbose
+ \PackageWarning{nameauth}%
+ {macro \ExcludeName: Xref: #2 exists}%
+ \fi
+ \else
+ \csgdef{\csab!PN}{!}%
+ \fi
\fi
}
-\newcommandx\NameQueryInfo[3][1=\@empty, 3=\@empty]%
+\newcommandx*\IncludeName[3][1=\@empty, 3=\@empty]
{%
\protected@edef\testa{#1}%
- \protected@edef\testb{\trim@spaces{#2}}%
\protected@edef\testc{#3}%
+ \protected@edef\suffb{\@nameauth@Suffix{#2}}%
\def\csb{\@nameauth@Clean{#2}}%
\def\csbc{\@nameauth@Clean{#2,#3}}%
\def\csab{\@nameauth@Clean{#1!#2}}%
- \ifx\testb\@empty
- \PackageError{nameauth}%
- {macro \NameInfo: Essential name missing}%
- \else
- \ifx\csb\@empty
- \PackageError{nameauth}%
- {macro \NameInfo: Essential name malformed}%
- \fi
- \fi
+ \@nameauth@Error{#2}{macro \string\IncludeName}%
\ifx\testa\@empty
\ifx\testc\@empty
- \ifcsname\csb!DB\endcsname\csname\csb!DB\endcsname\fi
+ \ifcsname\csb!PN\endcsname
+ \edef\testex{\csname\csb!PN\endcsname}%
+ \ifx\testex\@empty\else\global\csundef{\csb!PN}\fi
+ \fi
\else
- \ifcsname\csbc!DB\endcsname\csname\csbc!DB\endcsname\fi
+ \ifx\suffb\@empty
+ \ifcsname\csbc!PN\endcsname
+ \edef\testex{\csname\csbc!PN\endcsname}%
+ \ifx\testex\@empty\else\global\csundef{\csbc!PN}\fi
+ \fi
+ \else
+ \ifcsname\csb!PN\endcsname
+ \edef\testex{\csname\csb!PN\endcsname}%
+ \ifx\testex\@empty\else\global\csundef{\csb!PN}\fi
+ \fi
+ \fi
\fi
\else
- \ifcsname\csab!DB\endcsname\csname\csab!DB\endcsname\fi
+ \ifcsname\csab!PN\endcsname
+ \edef\testex{\csname\csab!PN\endcsname}%
+ \ifx\testex\@empty\else\global\csundef{\csab!PN}\fi
+ \fi
\fi
}
-\newcommandx*\NameClearInfo[3][1=\@empty, 3=\@empty]%
+\WithSuffix{\newcommandx*}\IncludeName*[3][1=\@empty, 3=\@empty]
{%
\protected@edef\testa{#1}%
- \protected@edef\testb{\trim@spaces{#2}}%
\protected@edef\testc{#3}%
+ \protected@edef\suffb{\@nameauth@Suffix{#2}}%
\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
+ \edef\testa{!}%
+ \@nameauth@Error{#2}{macro \string\IncludeName*}%
\ifx\testa\@empty
\ifx\testc\@empty
- \global\csundef{\csb!DB}%
+ \global\csundef{\csb!PN}%
\else
- \global\csundef{\csbc!DB}%
+ \ifx\suffb\@empty
+ \global\csundef{\csbc!PN}%
+ \else
+ \global\csundef{\csb!PN}%
+ \fi
\fi
\else
- \global\csundef{\csab!DB}%
+ \global\csundef{\csab!PN}%
\fi
}
-\newcommandx*\IndexName[3][1=\@empty, 3=\@empty]%
+\newcommandx*\PretagName[4][1=\@empty, 3=\@empty]
{%
\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\suffb{\@nameauth@Suffix{#2}}%
\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
- \let\Short\testbr%
- \ifx\testb\testbr
- \let\SNN\Short%
- \let\Suff\@empty%
- \else
- \protected@edef\Suff{\@nameauth@Suffix{#2}}%
- \protected@edef\SNN{\Short\space\Suff}%
- \fi
+ \@nameauth@Error{#2}{macro \string\PretagName}%
\ifx\testa\@empty
\ifx\testc\@empty
\ifcsname\csb!PN\endcsname
- \PackageWarning{nameauth}%
- {macro \IndexName: XRef: #2 exists}%
- \else
- \@nameauth@Index{\csb}{\SNN}%
+ \if@nameauth@Verbose
+ \PackageWarning{nameauth}%
+ {macro \PretagName: tagging xref: #2}%
+ \fi
\fi
+ \if@nameauth@Pretag\csgdef{\csb!PRE}{#4\@nameauth@Actual}\fi
\else
- \ifcsname\csbc!PN\endcsname
- \PackageWarning{nameauth}%
- {macro \IndexName: XRef: #2 #3 exists}%
+ \ifx\suffb\@empty
+ \ifcsname\csbc!PN\endcsname
+ \if@nameauth@Verbose
+ \PackageWarning{nameauth}%
+ {macro \PretagName: tagging xref: #2 #3}%
+ \fi
+ \fi
+ \if@nameauth@Pretag\csgdef{\csbc!PRE}{#4\@nameauth@Actual}\fi
\else
- \@nameauth@Index{\csbc}{\SNN\space\argc}%
+ \ifcsname\csb!PN\endcsname
+ \if@nameauth@Verbose
+ \PackageWarning{nameauth}%
+ {macro \PretagName: tagging xref: #2}%
+ \fi
+ \fi
+ \if@nameauth@Pretag\csgdef{\csb!PRE}{#4\@nameauth@Actual}\fi
\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}%
+ \if@nameauth@Verbose
+ \PackageWarning{nameauth}%
+ {macro \PretagName: tagging xref: #1 #2}%
\fi
\fi
+ \if@nameauth@Pretag\csgdef{\csab!PRE}{#4\@nameauth@Actual}\fi
\fi
}
-\newcommandx*\TagName[4][1=\@empty, 3=\@empty]%
+\newcommandx*\TagName[4][1=\@empty, 3=\@empty]
{%
\protected@edef\testa{#1}%
- \protected@edef\testb{\trim@spaces{#2}}%
\protected@edef\testc{#3}%
+ \protected@edef\suffb{\@nameauth@Suffix{#2}}%
\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
+ \@nameauth@Error{#2}{macro \string\TagName}%
\ifx\testa\@empty
\ifx\testc\@empty
\ifcsname\csb!PN\endcsname
- \PackageWarning{nameauth}%
- {macro \TagName: not tagging xref: #2}%
+ \if@nameauth@Verbose
+ \PackageWarning{nameauth}%
+ {macro \TagName: not tagging xref: #2}%
+ \fi
\else
\csgdef{\csb!TAG}{#4}%
\fi
\else
- \ifcsname\csbc!PN\endcsname
- \PackageWarning{nameauth}%
- {macro \TagName: not tagging xref: #2 #3}%
+ \ifx\suffb\@empty
+ \ifcsname\csbc!PN\endcsname
+ \if@nameauth@Verbose
+ \PackageWarning{nameauth}%
+ {macro \TagName: not tagging xref: #2 #3}%
+ \fi
+ \else
+ \csgdef{\csbc!TAG}{#4}%
+ \fi
\else
- \csgdef{\csbc!TAG}{#4}%
+ \ifcsname\csb!PN\endcsname
+ \if@nameauth@Verbose
+ \PackageWarning{nameauth}%
+ {macro \TagName: not tagging xref: #2}%
+ \fi
+ \else
+ \csgdef{\csb!TAG}{#4}%
+ \fi
\fi
\fi
\else
\ifcsname\csab!PN\endcsname
- \PackageWarning{nameauth}%
- {macro \TagName: not tagging xref: #1 #2}%
+ \if@nameauth@Verbose
+ \PackageWarning{nameauth}%
+ {macro \TagName: not tagging xref: #1 #2}%
+ \fi
\else
\csgdef{\csab!TAG}{#4}%
\fi
\fi
}
-\newcommandx*\UntagName[3][1=\@empty, 3=\@empty]%
+\newcommandx*\UntagName[3][1=\@empty, 3=\@empty]
{%
\protected@edef\testa{#1}%
- \protected@edef\testb{\trim@spaces{#2}}%
\protected@edef\testc{#3}%
+ \protected@edef\suffb{\@nameauth@Suffix{#2}}%
\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
+ \@nameauth@Error{#2}{macro \string\UntagName}%
\ifx\testa\@empty
\ifx\testc\@empty
\global\csundef{\csb!TAG}%
\else
- \global\csundef{\csbc!TAG}%
+ \ifx\suffb\@empty
+ \global\csundef{\csbc!TAG}%
+ \else
+ \global\csundef{\csb!TAG}%
+ \fi
\fi
\else
\global\csundef{\csab!TAG}%
\fi
}
-\newcommandx*\PretagName[4][1=\@empty, 3=\@empty]%
+\newcommandx\NameAddInfo[4][1=\@empty, 3=\@empty]
{%
\protected@edef\testa{#1}%
- \protected@edef\testb{\trim@spaces{#2}}%
\protected@edef\testc{#3}%
+ \protected@edef\Suff{\@nameauth@Suffix{#2}}%
\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
+ \@nameauth@Error{#2}{macro \string\NameAddInfo}%
\ifx\testa\@empty
\ifx\testc\@empty
- \ifcsname\csb!PN\endcsname
- \PackageWarning{nameauth}%
- {macro \PretagName: tagging xref: #2}%
- \fi
- \if@nameauth@Pretag\csgdef{\csb!PRE}{#4\@nameauth@Actual}\fi
+ \csgdef{\csb!DB}{#4}%
\else
- \ifcsname\csbc!PN\endcsname
- \PackageWarning{nameauth}%
- {macro \PretagName: tagging xref: #2 #3}%
+ \ifx\Suff\@empty
+ \csgdef{\csbc!DB}{#4}%
+ \else
+ \csgdef{\csb!DB}{#4}%
\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
+ \csgdef{\csab!DB}{#4}%
\fi
}
-\newcommandx*\ExcludeName[3][1=\@empty, 3=\@empty]%
+\newcommandx\NameQueryInfo[3][1=\@empty, 3=\@empty]
{%
\protected@edef\testa{#1}%
- \protected@edef\testb{\trim@spaces{#2}}%
\protected@edef\testc{#3}%
+ \protected@edef\Suff{\@nameauth@Suffix{#2}}%
\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
+ \@nameauth@Error{#2}{macro \string\NameQueryInfo}%
\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 exists; no exclusion}%
- \else
- \ifcsname\csb!NF\endcsname
- \PackageWarning{nameauth}%
- {macro \ExcludeName: Reference: #2 exists; no exclusion}%
- \else
- \csgdef{\csb!PN}{!}%
- \fi
- \fi
- \fi
+ \ifcsname\csb!DB\endcsname\csname\csb!DB\endcsname\fi
\else
- \ifcsname\csbc!PN\endcsname
- \PackageWarning{nameauth}%
- {macro \ExcludeName: Xref: #2 #3 already exists}%
+ \ifx\Suff\@empty
+ \ifcsname\csbc!DB\endcsname\csname\csbc!DB\endcsname\fi
\else
- \ifcsname\csbc!MN\endcsname
- \PackageWarning{nameauth}%
- {macro \ExcludeName: Reference: #2 #3 exists; no exclusion}%
- \else
- \ifcsname\csbc!NF\endcsname
- \PackageWarning{nameauth}%
- {macro \ExcludeName: Reference: #2 #3 exists; no exclusion}%
- \else
- \csgdef{\csbc!PN}{!}%
- \fi
- \fi
+ \ifcsname\csb!DB\endcsname\csname\csb!DB\endcsname\fi
\fi
\fi
\else
- \ifcsname\csab!PN\endcsname
- \PackageWarning{nameauth}%
- {macro \ExcludeName: XRef: #1 #2 already exists}%
- \else
- \ifcsname\csab!MN\endcsname
- \PackageWarning{nameauth}%
- {macro \ExcludeName: Reference: #1 #2 exists; no exclusion}%
- \else
- \ifcsname\csab!NF\endcsname
- \PackageWarning{nameauth}%
- {macro \ExcludeName: Reference: #1 #2 exists; no exclusion}%
- \else
- \csgdef{\csab!PN}{!}%
- \fi
- \fi
- \fi
+ \ifcsname\csab!DB\endcsname\csname\csab!DB\endcsname\fi
\fi
}
-\newcommandx\IfFrontName[5][1=\@empty, 3=\@empty]%
+\newcommandx*\NameClearInfo[3][1=\@empty, 3=\@empty]
{%
\protected@edef\testa{#1}%
- \protected@edef\testb{\trim@spaces{#2}}%
\protected@edef\testc{#3}%
+ \protected@edef\Suff{\@nameauth@Suffix{#2}}%
\def\csb{\@nameauth@Clean{#2}}%
\def\csbc{\@nameauth@Clean{#2,#3}}%
\def\csab{\@nameauth@Clean{#1!#2}}%
- \ifx\testb\@empty
- \PackageError{nameauth}%
- {macro \IfFrontName: Essential name missing}%
- \else
- \ifx\csb\@empty
- \PackageError{nameauth}%
- {macro \IfFrontName: Essential name malformed}%
- \fi
- \fi
+ \@nameauth@Error{#2}{macro \string\NameClearInfo}%
\ifx\testa\@empty
\ifx\testc\@empty
- \ifcsname\csb!NF\endcsname{#4}\else{#5}\fi
+ \global\csundef{\csb!DB}%
\else
- \ifcsname\csbc!NF\endcsname{#4}\else{#5}\fi
+ \ifx\Suff\@empty
+ \global\csundef{\csbc!DB}%
+ \else
+ \global\csundef{\csb!DB}%
+ \fi
\fi
\else
- \ifcsname\csab!NF\endcsname{#4}\else{#5}\fi
+ \global\csundef{\csab!DB}%
\fi
}
-\newcommandx\IfMainName[5][1=\@empty, 3=\@empty]%
+\newcommandx\IfMainName[5][1=\@empty, 3=\@empty]
{%
\protected@edef\testa{#1}%
- \protected@edef\testb{\trim@spaces{#2}}%
\protected@edef\testc{#3}%
+ \protected@edef\suffb{\@nameauth@Suffix{#2}}%
\def\csb{\@nameauth@Clean{#2}}%
\def\csbc{\@nameauth@Clean{#2,#3}}%
\def\csab{\@nameauth@Clean{#1!#2}}%
- \ifx\testb\@empty
- \PackageError{nameauth}%
- {macro \IfMainName: Essential name missing}%
- \else
- \ifx\csb\@empty
- \PackageError{nameauth}%
- {macro \IfMainName: Essential name malformed}%
- \fi
- \fi
+ \@nameauth@Error{#2}{macro \string\IfMainName}%
\ifx\testa\@empty
\ifx\testc\@empty
\ifcsname\csb!MN\endcsname{#4}\else{#5}\fi
\else
- \ifcsname\csbc!MN\endcsname{#4}\else{#5}\fi
+ \ifx\suffb\@empty
+ \ifcsname\csbc!MN\endcsname{#4}\else{#5}\fi
+ \else
+ \ifcsname\csb!MN\endcsname{#4}\else{#5}\fi
+ \fi
\fi
\else
\ifcsname\csab!MN\endcsname{#4}\else{#5}\fi
\fi
}
-\newcommandx\IfAKA[6][1=\@empty, 3=\@empty]%
+\newcommandx\IfFrontName[5][1=\@empty, 3=\@empty]
{%
\protected@edef\testa{#1}%
- \protected@edef\testb{\trim@spaces{#2}}%
\protected@edef\testc{#3}%
+ \protected@edef\suffb{\@nameauth@Suffix{#2}}%
\def\csb{\@nameauth@Clean{#2}}%
\def\csbc{\@nameauth@Clean{#2,#3}}%
\def\csab{\@nameauth@Clean{#1!#2}}%
- \def\test{!}%
- \ifx\testb\@empty
- \PackageError{nameauth}%
- {macro \IfAKA: Essential name missing}%
- \else
- \ifx\csb\@empty
- \PackageError{nameauth}%
- {macro \IfAKA: Essential name malformed}%
+ \@nameauth@Error{#2}{macro \string\IfFrontName}%
+ \ifx\testa\@empty
+ \ifx\testc\@empty
+ \ifcsname\csb!NF\endcsname{#4}\else{#5}\fi
+ \else
+ \ifx\suffb\@empty
+ \ifcsname\csbc!NF\endcsname{#4}\else{#5}\fi
+ \else
+ \ifcsname\csb!NF\endcsname{#4}\else{#5}\fi
+ \fi
\fi
+ \else
+ \ifcsname\csab!NF\endcsname{#4}\else{#5}\fi
\fi
+}
+\newcommandx\IfAKA[6][1=\@empty, 3=\@empty]
+{%
+ \protected@edef\testa{#1}%
+ \protected@edef\testc{#3}%
+ \protected@edef\suffb{\@nameauth@Suffix{#2}}%
+ \def\csb{\@nameauth@Clean{#2}}%
+ \def\csbc{\@nameauth@Clean{#2,#3}}%
+ \def\csab{\@nameauth@Clean{#1!#2}}%
+ \@nameauth@Error{#2}{macro \string\IfAKA}%
\ifx\testa\@empty
\ifx\testc\@empty
\ifcsname\csb!PN\endcsname
- \edef\testa{\csname\csb!PN\endcsname}%
- \ifx\testa\test{#6}\else{#4}\fi
+ \edef\testex{\csname\csb!PN\endcsname}%
+ \ifx\testex\@empty{#4}\else{#6}\fi
\else{#5}\fi
\else
- \ifcsname\csbc!PN\endcsname
- \edef\testa{\csname\csbc!PN\endcsname}%
- \ifx\testa\test{#6}\else{#4}\fi
- \else{#5}\fi
+ \ifx\suffb\@empty
+ \ifcsname\csbc!PN\endcsname
+ \edef\testex{\csname\csbc!PN\endcsname}%
+ \ifx\testex\@empty{#4}\else{#6}\fi
+ \else{#5}\fi
+ \else
+ \ifcsname\csb!PN\endcsname
+ \edef\testex{\csname\csb!PN\endcsname}%
+ \ifx\testex\@empty{#4}\else{#6}\fi
+ \else{#5}\fi
+ \fi
\fi
\else
\ifcsname\csab!PN\endcsname
- \edef\testa{\csname\csab!PN\endcsname}%
- \ifx\testa\test{#6}\else{#4}\fi
+ \edef\testex{\csname\csab!PN\endcsname}%
+ \ifx\testex\@empty{#4}\else{#6}\fi
\else{#5}\fi
\fi
}
-\newcommandx*\ForgetName[3][1=\@empty, 3=\@empty]%
+\newcommandx*\ForgetName[3][1=\@empty, 3=\@empty]
{%
\protected@edef\testa{#1}%
- \protected@edef\testb{\trim@spaces{#2}}%
\protected@edef\testc{#3}%
+ \protected@edef\suffb{\@nameauth@Suffix{#2}}%
\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
+ \@nameauth@Error{#2}{macro \string\ForgetName}%
\ifx\testa\@empty
\ifx\testc\@empty
\if@nameauth@LocalNames
@@ -1248,15 +1158,28 @@
\global\csundef{\csb!NF}%
\fi
\else
- \if@nameauth@LocalNames
- \if@nameauth@MainFormat
- \global\csundef{\csbc!MN}%
+ \ifx\suffb\@empty
+ \if@nameauth@LocalNames
+ \if@nameauth@MainFormat
+ \global\csundef{\csbc!MN}%
+ \else
+ \global\csundef{\csbc!NF}%
+ \fi
\else
+ \global\csundef{\csbc!MN}%
\global\csundef{\csbc!NF}%
\fi
\else
- \global\csundef{\csbc!MN}%
- \global\csundef{\csbc!NF}%
+ \if@nameauth@LocalNames
+ \if@nameauth@MainFormat
+ \global\csundef{\csb!MN}%
+ \else
+ \global\csundef{\csb!NF}%
+ \fi
+ \else
+ \global\csundef{\csb!MN}%
+ \global\csundef{\csb!NF}%
+ \fi
\fi
\fi
\else
@@ -1272,23 +1195,15 @@
\fi
\fi
}
-\newcommandx*\SubvertName[3][1=\@empty, 3=\@empty]%
+\newcommandx*\SubvertName[3][1=\@empty, 3=\@empty]
{%
\protected@edef\testa{#1}%
- \protected@edef\testb{\trim@spaces{#2}}%
\protected@edef\testc{#3}%
+ \protected@edef\suffb{\@nameauth@Suffix{#2}}%
\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
+ \@nameauth@Error{#2}{macro \string\SubvertName}%
\ifx\testa\@empty
\ifx\testc\@empty
\if@nameauth@LocalNames
@@ -1302,15 +1217,28 @@
\csgdef{\csb!NF}{}%
\fi
\else
+ \ifx\suffb\@empty
+ \if@nameauth@LocalNames
+ \if@nameauth@MainFormat
+ \csgdef{\csbc!MN}{}%
+ \else
+ \csgdef{\csbc!NF}{}%
+ \fi
+ \else
+ \csgdef{\csbc!MN}{}%
+ \csgdef{\csbc!NF}{}%
+ \fi
+ \fi
+ \else
\if@nameauth@LocalNames
\if@nameauth@MainFormat
- \csgdef{\csbc!MN}{}%
+ \csgdef{\csb!MN}{}%
\else
- \csgdef{\csbc!NF}{}%
+ \csgdef{\csb!NF}{}%
\fi
\else
- \csgdef{\csbc!MN}{}%
- \csgdef{\csbc!NF}{}%
+ \csgdef{\csb!MN}{}%
+ \csgdef{\csb!NF}{}%
\fi
\fi
\else
@@ -1326,13 +1254,58 @@
\fi
\fi
}
+\newcommandx*\AKA[5][1=\@empty, 3=\@empty, 5=\@empty]
+{%
+ \if@nameauth@Lock\else
+ \@nameauth@Locktrue%
+ \@nameauth@InAKAtrue%
+ \@nameauth@Error{#2}{macro \string\AKA}%
+ \@nameauth@Error{#4}{macro \string\AKA}%
+ \leavevmode\hbox{}%
+ \protected@edef\testi{#1}%
+ \protected@edef\argi{\trim@spaces{#1}}%
+ \protected@edef\rooti{\@nameauth@Root{#2}}%
+ \protected@edef\suffi{\@nameauth@Suffix{#2}}%
+ \@nameauth@Parse[#3]{#4}[#5]{!PN}%
+ \ifx\testi\@empty
+ \ifx\suffi\@empty
+ \IndexRef[#3]{#4}[#5]{\rooti}%
+ \else
+ \IndexRef[#3]{#4}[#5]{\rooti\space\suffi}%
+ \fi
+ \else
+ \ifx\suffi\@empty
+ \IndexRef[#3]{#4}[#5]{\rooti,\space\argi}%
+ \else
+ \IndexRef[#3]{#4}[#5]{\rooti,\space\argi,\space\suffi}%
+ \fi
+ \fi
+ \@nameauth@Lockfalse%
+ \@nameauth@InAKAfalse%
+ \@nameauth@AltAKAfalse%
+ \@nameauth@NBSPfalse%
+ \@nameauth@DoCapsfalse%
+ \@nameauth@Accentfalse%
+ \@nameauth@AllThisfalse%
+ \@nameauth@ShowCommafalse%
+ \@nameauth@NoCommafalse%
+ \@nameauth@RevThisfalse%
+ \@nameauth@RevThisCommafalse%
+ \@nameauth@ShortSNNfalse%
+ \@nameauth@EastFNfalse%
+ \fi
+ \if@nameauth@Punct\expandafter\@nameauth@CheckDot\fi
+}
+\WithSuffix{\newcommand*}\AKA*{\@nameauth@AltAKAtrue\AKA}
+\newcommandx*\PName[5][1=\@empty,3=\@empty,5=\@empty]
+{\NameauthName[#1]{#2}\space(\AKA[#1]{#2}[#3]{#4}[#5])}
+\WithSuffix{\newcommand*}\PName*{\@nameauth@FullNametrue\PName}
\newenvironment{nameauth}{%
\begingroup%
\let\ex\expandafter%
\csdef{<}##1&##2&##3&##4>{%
\protected@edef\@arga{\trim@spaces{##1}}%
\protected@edef\@testb{\trim@spaces{##2}}%
- \protected@edef\@testc{\trim@spaces{##3}}%
\protected@edef\@testd{\trim@spaces{##4}}%
\@nameauth@etoksb\expandafter{##2}%
\@nameauth@etoksc\expandafter{##3}%
@@ -1340,76 +1313,71 @@
\ifx\@arga\@empty
\PackageError{nameauth}%
{environment nameauth: Control sequence missing}%
+ \fi
+ \@nameauth@Error{##3}{environment nameauth}%
+ \ifcsname\@arga\endcsname
+ \PackageWarning{nameauth}%
+ {environment nameauth: Shorthand macro already exists}%
+ \fi
+ \ifx\@testd\@empty
+ \ifx\@testb\@empty
+ \ex\csgdef\ex{\ex\@arga\ex}\ex{\ex\NameauthName\ex{%
+ \the\@nameauth@etoksc}}%
+ \ex\csgdef\ex{\ex L\ex\@arga\ex}\ex{%
+ \ex\@nameauth@FullNametrue%
+ \ex\NameauthLName\ex{\the\@nameauth@etoksc}}%
+ \ex\csgdef\ex{\ex S\ex\@arga\ex}\ex{%
+ \ex\@nameauth@FirstNametrue%
+ \ex\NameauthFName\ex{\the\@nameauth@etoksc}}%
+ \else
+ \ex\ex\ex\csgdef\ex\ex\ex{\ex\ex\ex\@arga\ex\ex\ex}%
+ \ex\ex\ex{\ex\ex\ex\NameauthName\ex\ex\ex[%
+ \ex\the\ex\@nameauth@etoksb\ex]\ex{\the\@nameauth@etoksc}}%
+ \ex\ex\ex\csgdef\ex\ex\ex{\ex\ex\ex L\ex\ex\ex\@arga%
+ \ex\ex\ex}\ex\ex\ex{\ex\ex\ex\@nameauth@FullNametrue%
+ \ex\ex\ex\NameauthLName\ex\ex\ex[%
+ \ex\the\ex\@nameauth@etoksb\ex]\ex{\the\@nameauth@etoksc}}%
+ \ex\ex\ex\csgdef\ex\ex\ex{\ex\ex\ex S\ex\ex\ex\@arga%
+ \ex\ex\ex}\ex\ex\ex{\ex\ex\ex\@nameauth@FirstNametrue%
+ \ex\ex\ex\NameauthFName\ex\ex\ex[%
+ \ex\the\ex\@nameauth@etoksb\ex]\ex{\the\@nameauth@etoksc}}%
+ \fi
\else
- \ifx\@testc\@empty
- \PackageError{nameauth}%
- {environment nameauth: Essential name missing}%
+ \ifx\@testb\@empty
+ \ex\ex\ex\csgdef\ex\ex\ex{\ex\ex\ex\@arga\ex\ex\ex}%
+ \ex\ex\ex{\ex\ex\ex\NameauthName\ex\ex\ex{%
+ \ex\the\ex\@nameauth@etoksc\ex}\ex[\the\@nameauth@etoksd]}%
+ \ex\ex\ex\csgdef\ex\ex\ex{\ex\ex\ex L\ex\ex\ex\@arga%
+ \ex\ex\ex}\ex\ex\ex{\ex\ex\ex\@nameauth@FullNametrue%
+ \ex\ex\ex\NameauthLName\ex\ex\ex{%
+ \ex\the\ex\@nameauth@etoksc\ex}\ex[\the\@nameauth@etoksd]}%
+ \ex\ex\ex\csgdef\ex\ex\ex{\ex\ex\ex S\ex\ex\ex\@arga%
+ \ex\ex\ex}\ex\ex\ex{\ex\ex\ex\@nameauth@FirstNametrue%
+ \ex\ex\ex\NameauthFName\ex\ex\ex{%
+ \ex\the\ex\@nameauth@etoksc\ex}\ex[\the\@nameauth@etoksd]}%
\else
- \ifcsname\@arga\endcsname
- \PackageWarning{nameauth}%
- {environment nameauth: Redefinition of shorthands}%
- \fi
- \ifx\@testd\@empty
- \ifx\@testb\@empty
- \ex\csgdef\ex{\ex\@arga\ex}\ex{\ex\NameauthName\ex{%
- \the\@nameauth@etoksc}}%
- \ex\csgdef\ex{\ex L\ex\@arga\ex}\ex{%
- \ex\@nameauth@FullNametrue%
- \ex\NameauthLName\ex{\the\@nameauth@etoksc}}%
- \ex\csgdef\ex{\ex S\ex\@arga\ex}\ex{%
- \ex\@nameauth@FirstNametrue%
- \ex\NameauthFName\ex{\the\@nameauth@etoksc}}%
- \else
- \ex\ex\ex\csgdef\ex\ex\ex{\ex\ex\ex\@arga\ex\ex\ex}%
- \ex\ex\ex{\ex\ex\ex\NameauthName\ex\ex\ex[%
- \ex\the\ex\@nameauth@etoksb\ex]\ex{\the\@nameauth@etoksc}}%
- \ex\ex\ex\csgdef\ex\ex\ex{\ex\ex\ex L\ex\ex\ex\@arga%
- \ex\ex\ex}\ex\ex\ex{\ex\ex\ex\@nameauth@FullNametrue%
- \ex\ex\ex\NameauthLName\ex\ex\ex[%
- \ex\the\ex\@nameauth@etoksb\ex]\ex{\the\@nameauth@etoksc}}%
- \ex\ex\ex\csgdef\ex\ex\ex{\ex\ex\ex S\ex\ex\ex\@arga%
- \ex\ex\ex}\ex\ex\ex{\ex\ex\ex\@nameauth@FirstNametrue%
- \ex\ex\ex\NameauthFName\ex\ex\ex[%
- \ex\the\ex\@nameauth@etoksb\ex]\ex{\the\@nameauth@etoksc}}%
- \fi
- \else
- \ifx\@testb\@empty
- \ex\ex\ex\csgdef\ex\ex\ex{\ex\ex\ex\@arga\ex\ex\ex}%
- \ex\ex\ex{\ex\ex\ex\NameauthName\ex\ex\ex{%
- \ex\the\ex\@nameauth@etoksc\ex}\ex[\the\@nameauth@etoksd]}%
- \ex\ex\ex\csgdef\ex\ex\ex{\ex\ex\ex L\ex\ex\ex\@arga%
- \ex\ex\ex}\ex\ex\ex{\ex\ex\ex\@nameauth@FullNametrue%
- \ex\ex\ex\NameauthLName\ex\ex\ex{%
- \ex\the\ex\@nameauth@etoksc\ex}\ex[\the\@nameauth@etoksd]}%
- \ex\ex\ex\csgdef\ex\ex\ex{\ex\ex\ex S\ex\ex\ex\@arga%
- \ex\ex\ex}\ex\ex\ex{\ex\ex\ex\@nameauth@FirstNametrue%
- \ex\ex\ex\NameauthFName\ex\ex\ex{%
- \ex\the\ex\@nameauth@etoksc\ex}\ex[\the\@nameauth@etoksd]}%
- \else
- \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\NameauthName%
- \ex\ex\ex\ex\ex\ex\ex[\ex\ex\ex\the\ex\ex\ex\@nameauth@etoksb%
- \ex\ex\ex]\ex\ex\ex{\ex\the\ex\@nameauth@etoksc\ex}\ex[%
- \the\@nameauth@etoksd]}%
- \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\@nameauth@FullNametrue%
- \ex\ex\ex\ex\ex\ex\ex\NameauthLName\ex\ex\ex\ex\ex\ex\ex[%
- \ex\ex\ex\the\ex\ex\ex\@nameauth@etoksb%
- \ex\ex\ex]\ex\ex\ex{\ex\the\ex\@nameauth@etoksc\ex}\ex[%
- \the\@nameauth@etoksd]}%
- \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\@nameauth@FirstNametrue%
- \ex\ex\ex\ex\ex\ex\ex\NameauthFName\ex\ex\ex\ex\ex\ex\ex[%
- \ex\ex\ex\the\ex\ex\ex\@nameauth@etoksb\ex\ex\ex]%
- \ex\ex\ex{\ex\the\ex\@nameauth@etoksc\ex}\ex[%
- \the\@nameauth@etoksd]}%
- \fi
- \fi
+ \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\NameauthName%
+ \ex\ex\ex\ex\ex\ex\ex[\ex\ex\ex\the\ex\ex\ex\@nameauth@etoksb%
+ \ex\ex\ex]\ex\ex\ex{\ex\the\ex\@nameauth@etoksc\ex}\ex[%
+ \the\@nameauth@etoksd]}%
+ \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\@nameauth@FullNametrue%
+ \ex\ex\ex\ex\ex\ex\ex\NameauthLName\ex\ex\ex\ex\ex\ex\ex[%
+ \ex\ex\ex\the\ex\ex\ex\@nameauth@etoksb%
+ \ex\ex\ex]\ex\ex\ex{\ex\the\ex\@nameauth@etoksc\ex}\ex[%
+ \the\@nameauth@etoksd]}%
+ \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\@nameauth@FirstNametrue%
+ \ex\ex\ex\ex\ex\ex\ex\NameauthFName\ex\ex\ex\ex\ex\ex\ex[%
+ \ex\ex\ex\the\ex\ex\ex\@nameauth@etoksb\ex\ex\ex]%
+ \ex\ex\ex{\ex\the\ex\@nameauth@etoksc\ex}\ex[%
+ \the\@nameauth@etoksd]}%
\fi
\fi
\ignorespaces%
@@ -1429,8 +1397,8 @@
%% Charles P. Schaum.
%%
%% This work consists of the files nameauth.dtx, examples.tex, 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" 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.
%%
%%