Ich habe mich gefragt, ob es eine Möglichkeit gibt, die verkürzten Monate neu zu definieren mitdatetime2
Paket, sodass bei Verwendung des Befehls \today
die Monate genau wie in der ersten Spalte des Bildes unten geschrieben werden.
\documentclass{article}
\usepackage[en-US]{datetime2}
\DTMlangsetup[en-US]{abbr}
\begin{document}
\today
\end{document}
Es gibt bereits eine Lösung---So erstellen Sie mit \today einen Monatsnamen in Kleinbuchstaben--- mit datetime
Paket zum Neudefinieren des Monatsstils, aber dieses Paket erstellt ein Confit mit meinem Dokument.
Danke.
BEARBEITENim Lichte der Lösung von @quark67:
Ich habe den Konflikt mithilfe der Lösung von quark67 identifiziert \usepackage[USenglish]{babel}
, die mit für die Silbentrennung verwendet wird. Ich musste nur das Argument entfernen, [USenglish]
damit die Lösung von quark67 funktioniert, aber ich möchte trotzdem behalten \usepackage[USenglish]{babel}
.
LÖSUNG
In Bezug auf diesen Beitrag:Neudefinition von \today -- Kampf mit Babel, das Einfügen des Codes von @quark67 \AtBeginDocument{...}
hat das Problem gelöst.
Antwort1
Versuchen Sie dies (beachten Sie das Laden des Paketsdatetime2-calczur Konvertierung vom numerischen Wert in den kurzen Monatsnamen).
Bearbeiten:Wie Sie sagen, benötigen Sie die DokumentklasseRuthenium(https://scholarship.rice.edu/handle/1911/21747) in einem Kommentar aktualisiere ich meinen Code mit dieser Dokumentklasse.
Da Sie außerdem eine neue Anforderung hinzugefügt haben (Juni muss als „June“ abgekürzt werden, kein „Jun.“ und Juli als „July“, kein „Jul.“), habe ich den Code aktualisiert (und meinen Dummy-Fehler korrigiert, Mai wird nie als „May“ abgekürzt.)
Bearbeitung 2:„September“ wird mit „Sept.“ abgekürzt, nicht mit „Sep.“, wie in der ersten Spalte der Tabelle.
\documentclass{ruthesis}
\usepackage[en-US]{datetime2}
\usepackage{datetime2-calc}
\DTMnewdatestyle{mydate}{%
\renewcommand*{\DTMdisplaydate}[4]{%
\edef\paramTwo{##2}%
\def\monthV{05}%
\def\monthVI{06}%
\def\monthVII{07}%
\def\monthIX{09}%
\DTMshortmonthname{##2}%
\ifx\paramTwo\monthV%
\else\ifx\paramTwo\monthVI%
e%
\else\ifx\paramTwo\monthVII
y%
\else\ifx\paramTwo\monthIX
t.%
\else
.%
\fi\fi\fi\fi%
\ \DTMtwodigits{##3}, ##1}%
\renewcommand*{\DTMDisplaydate}{\DTMdisplaydate}%
}
\DTMsetdatestyle{mydate}
\begin{document}
\today % Mar. 11, 2023
\DTMdate{2023-06-11}
\DTMdate{2023-05-11}
\DTMdate{2023-04-11}
\DTMdate{2023-07-11}
\end{document}
Ergebnis:
In einem Kommentar sagen Sie, dass der vorherige Code aufgrund eines von Ihnen verwendeten Pakets nicht funktioniert, Sie sagen jedoch nicht, welche zusätzlichen Pakete Sie verwenden. Daher kann ich nicht garantieren, dass dieser Code in Ihrem tatsächlichen Anwendungsfall funktioniert.