Auch bei dieser Frage ist mir wieder nicht klar, was du haben willst. Bitte bemühe dich künftig, etwas genauer anzugeben, was das Ergebnis sein soll. Jedenfalls kann man selbstverständlich im Index auch „Meister, Wilhelm” eintragen:
\documentclass{scrartcl}
\usepackage[split,makeindex]{splitidx}% Option split nur, wenn man splitindex nicht verwendet.
\newindex[Personenverzeichnis]{Personen}
\makeindex
\begin{document}
Wilhelm Meister\sindex[Personen]{Meister, Wilhelm Otto} und
Friedrich Kleister\sindex[Personen]{Kleister, Friedrich Peter}
\printsubindex[Personen]
\end{document}
Ergibt dann:
[![alt text][1]][1]
text][1]][2]
Oder willst du vielleicht:
\documentclass{scrartcl}
\usepackage[split,makeindex]{splitidx}% Option split nur, wenn man auf den Komfort von splitindex verzichtet.
\newindex[Personenverzeichnis]{Personen}
\makeindex
\begin{document}
Wilhelm Meister\sindex[Personen]{Meister, Wilhelm Otto@Wilhelm Otto Meister} und
Friedrich Kleister\sindex[Personen]{Kleister, Friedrich Peter@Friedrich Peter Kleister}
\printsubindex[Personen]
\end{document}
[![alt text][2]][3]
text][3]][4]
Näheres zur Syntax mit `@` zwischen Anzeige- und Sortierterm ist der [MakeIndex](https://ctan.org/pkg/makeindex)-Anleitung zu entnehmen. Es ist zu beachten, dass Zeichen `@` nur die Voreinstellung ist und vom Index-Stil (aka `ist`-Datei) abhängen kann. Auch dazu sei auf die [MakeIndex](https://ctan.org/pkg/makeindex)-Anleitung verwiesen.
BTW: Ich finde es ja komfortabler, nicht Option `split` zu verwenden und die Aufteilung automatisch von `splitindex` erledigen zu lassen, statt für jede Index-Datei eigens `makeindex` aufrufen zu müssen.
müssen. Im Folgenden verwende ich daher nicht mehr die Option `split`.
Liegen die Namen aus unerfindlichen Gründen nur in der Form „*Vorname* *Nachname*” vor und eine Änderung in die sinnvolle Form „*Nachname*, *Vorname*” kommt aus ebenso unerfindlichen Gründen nicht in Frage, dann muss man die Namen vor dem Setzen des Index-Eintrags gegebenenfalls erst noch in *Vorname* und *Nachname* aufspalten. Es gibt dafür verschiedene Heuristiken. Ich verwende hier einmal die einfache Annahme, dass der Teil hinter dem letzten Leerzeichen der Nachname ist und alles davon der Vorname. Dann kann die Aufteilung mit einem einfachen regulären Ausdruck erfolgen. Hierfür bietet sich das LaTeX3-Kernel-Modul `l3regex` an (siehe „[The LaTeX3 interface](https://ctan.org/pkg/l3kernel)”):
\documentclass{scrartcl}
\usepackage[makeindex]{splitidx}
\usepackage{xparse}% lädt auch expl3 mit l3regex
\ExplSyntaxOn
\regex_const:Nn \c_lastspace_regex { \A(.*)\s([^\s]*)\Z }
% #1 = Tokenlistenvariable für den Vornamen
% #2 = Tokenlistenvariable für den Nachnamen
% #3 = "Vorname Nachname"
\cs_new:Npn \__splitatlastspacetoken:NNn #1#2#3
{
\tl_set:Nn #2 { #3 } % Zuerst den Namen
\tl_trim_spaces:N #2 % von Leerzeichen am Anfang und Ende befreien
\regex_replace_once:NnNTF \c_lastspace_regex { \2 } #2 % und den Nachnamen behalten.
{ % Wenn es Leerzeichen gab,
\tl_set:Nn #1 { #3 } % erneut den Namen
\tl_trim_spaces:N #1 % von Leerzeichen am Anfang und Ende befreien,
\regex_replace_once:NnN \c_lastspace_regex { \1 } #1 % dieses Mal ab den Vornamen behalten.
}
{ % Wenn es kein Leerzeichen gab,
\tl_clear:N #1 % gibt es keinen Vornamen.
}
}
\NewDocumentCommand \AddPersonToIndex { m }
{
\__splitatlastspacetoken:NNn \l_tmpa_tl \l_tmpb_tl { #1 }
\tl_if_empty:NTF \l_tmpa_tl
{ % Eine Person ohne Vorname, nur mit Nachnamen.
\sindex[Personen]{ \l_tmpb_tl }
}
{ % \l_tmpb_tl ist der Nachname, \l_tmpa_tl der Vorname.
\sindex[Personen]{ \l_tmpb_tl , ~ \l_tmpa_tl }
}
}
\ExplSyntaxOff
\newindex[Personenverzeichnis]{Personen}
\begin{document}
Wilhelm Meister\AddPersonToIndex{Wilhelm Meister} und
Otto Friedrich Leister\AddPersonToIndex{Otto Friedrich Leister} und als
Specialguest Alf\AddPersonToIndex{Alf}
\printsubindex[Personen]
\end{document}
[![alt text][5]][5]
Auch hier kann man natürlich die Ausgabe im Index von der Sortierreihenfolge abkoppeln. Dazu muss nur die zweite `\sindex`-Anweisung entsprechend dem zweiten Beispiel oben mit Hilfe des `@`-Operators abgeändert werden.
Es sei darauf hingewiesen, dass die hier verwendete Heuristik, Namen wie „Otto Graf von Mysterium” oder „Ben van Verratichnich”, abhängig von den Anforderungen nicht hinreichend gut erfasst, da dabei „Otto Graf von” bzw. „Ben van” als Vornamen behandelt wird. Ggf. ist also je nach Anforderung eine aufwändigere Aufspaltung des Namens in einzelne Bestandteile und auch eine aufwändigere Weiterbehandlung der Bestandteile notwendig. Ggf. kann der Aufwand mit TeX sogar mit LaTeX3 dafür auch sehr hoch sein, so dass eine Nachbearbeitung der Indexdatei mit einem zusätzlichen Programm eventuell besser sein könnte. Das war aber hier nicht die Frage, weshalb ich es auch nicht zu behandeln gedenke. Außerdem ist irgendwann dann die Grenze erreicht, bei der das Problem besser von der Eingabeseite zu lösen ist. Das kann bis zur Verwendung von [`bib2gls`](https://ctan.org/pkg/bib2gls) zur Erzeugung des Personenindex gehen.
[1]: https://texwelt.de/wissen/upfiles/test_20190320_183044.png
[2]: https://texwelt.de/wissen/upfiles/test_20190320_183044.png
[3]: https://texwelt.de/wissen/upfiles/test_20190320_182832.png
[3]: https://texwelt.de/wissen/upfiles/test_20190320_182832.png[4]: https://texwelt.de/wissen/upfiles/test_20190320_182832.png
[5]: https://texwelt.de/wissen/upfiles/test_20190321_112935.png