Definieren Sie die verkürzten Monate mit dem datetime2-Paket neu

Definieren Sie die verkürzten Monate mit dem datetime2-Paket neu

Ich habe mich gefragt, ob es eine Möglichkeit gibt, die verkürzten Monate neu zu definieren mitdatetime2Paket, sodass bei Verwendung des Befehls \todaydie 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 datetimePaket zum Neudefinieren des Monatsstils, aber dieses Paket erstellt ein Confit mit meinem Dokument.

Danke.

Bildbeschreibung hier eingeben

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:

Bildbeschreibung hier eingeben

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.

verwandte Informationen