Mehrfach-Pinpoint-Befehl für Apacite

Mehrfach-Pinpoint-Befehl für Apacite

Ich versuche, eine Funktion zu konstruieren, die erweitert werden kann \cite{}, um Mehrfach-Zitate zu unterstützen (ich verwende immer noch das Paket). Ich versuche, ein mit LaTeX markiertes Dokument zu erstellen, das in ShareLaTex ein ordentliches PDF rendern kann, das auch ohne ein Wirrwarr von Befehlen im Dokument apaciteanalysiert werden kann.\citeNP

Die Standardsyntax für \cite{}ist:

\cite<preliminarytext>[pinpoint]{bibtexref1,bibtexref2,...}

Ich versuche, diesen Befehl zu erstellen:

\myapacite[pinpoint1,pinpoint2,...][additionaloptions]{bibtexref1,bibtexref2,...}

Wo:

  • Wenn die Anzahl der durch Kommas getrennten "Pinpoint"-Parameter \myapacitenicht mit der Anzahl der durch Kommas getrennten "Bibtexref"-Parameter übereinstimmt, ignorieren Sie diese und fügen Sie einen regulären \cite{}Befehl ein

  • Wenn die Anzahl der durch Kommas getrennten Parameter „pinpoint“ und „bibtexref“ gleich ist, durchlaufen Sie diese und fügen Sie sie wie folgt ein:

    (\citeNP[pinpoint1]{bibtexref1}; \citeNP[pinpoint2]{bibtexref2}; ...)
    

Dies ist das grundlegende Layout dessen, was ich erreichen möchte, obwohl es mehrere TeX-Probleme geben wird (wie viele andere komme ich aus dem Programmierbereich und lerne TeX/LaTeX nur langsam). Für jeden Rat wäre ich sehr dankbar.

\documentclass[apacite]{apa6}
\usepackage{xparse,expl3}

\NewDocumentCommand\myapacite{O{}O{}m}{%
\if\equals{\clist_count:n {#1}}{\clist_count:n {#3}}%
    \cite[#1]{#3}%
    \else%
    \if\equals{1}{\clist_count:n {#3}}%
    \cite[#1]{#3}%
        \else%
        \if\equals{2}{\clist_count:n {#3}}%
        (\citeNP[\clist_item:Nn {1} {#2}]{\clist_item:Nn {1} {#3}}; \citeNP[\clist_item:Nn {2} {#2}]{\clist_item:Nn {2} {#3}})\fi\fi\fi%
}

\begin{document}

Single cite with no pinpoints: \myapacite{goossens93}
\\
\\
Double cite with both pinpoints: \myapacite[p.123,p.456]{greenwade93,goossens93}
\\
\\
Double cite with no pinpoints: \myapacite{greenwade93,goossens93}
\\
\\
\bibliography{ testbib }
\end{document}

Dies ist die testbib.bibDatei (ich konnte nicht herausfinden, wie man Dateiinhalte in ShareLaTeX verwendet):

@article{greenwade93,
    author  = "George D. Greenwade",
    title   = "The {C}omprehensive {T}ex {A}rchive {N}etwork ({CTAN})",
    year    = "1993",
    journal = "TUGBoat",
    volume  = "14",
    number  = "3",
    pages   = "342--351"
}
@book{goossens93,
    author    = "Michel Goossens and Frank Mittelbach and Alexander Samarin",
    title     = "The LaTeX Companion",
    year      = "1993",
    publisher = "Addison-Wesley",
    address   = "Reading, Massachusetts"
}

verwandte Informationen