datetime2 패키지를 사용하여 약식 월 재정의

datetime2 패키지를 사용하여 약식 월 재정의

약식 월을 재정의하는 방법이 있는지 궁금합니다.datetime2패키지를 사용하면 명령을 사용할 때 \today월이 아래 이미지의 첫 번째 열과 똑같이 기록됩니다.

\documentclass{article}
\usepackage[en-US]{datetime2}
\DTMlangsetup[en-US]{abbr}
\begin{document}
    \today
\end{document}

이미 해결책이 있습니다---\today로 월 이름을 소문자로 만드는 방법--- datetime월 스타일을 재정의하는 패키지가 있지만 이 패키지는 내 문서에 적합합니다.

감사해요.

여기에 이미지 설명을 입력하세요

편집하다@quark67의 솔루션에 비추어 볼 때:

하이픈 넣기에 사용 되는 quark67의 솔루션을 사용하여 충돌을 식별했습니다 \usepackage[USenglish]{babel}. quark67의 솔루션이 작동하도록 하려면 인수를 제거해야 했지만 [USenglish]여전히 \usepackage[USenglish]{babel}.

해결책

이 게시물을 참고하여:오늘의 재정의 - 바벨과의 충돌, @quark67의 코드를 안에 넣으면 \AtBeginDocument{...}문제가 해결됩니다.

답변1

이것을 시도하십시오 (패키지 로딩에 유의하십시오)datetime2-calc숫자 값을 짧은 월 이름으로 변환하는 경우).

편집하다:당신이 말했듯이 문서 클래스가 필요합니다루테시스(https://scholarship.rice.edu/handle/1911/21747) 주석에서 이 문서 클래스로 코드를 업데이트했습니다.

또한 새로운 요구 사항을 추가했기 때문에(6월은 "Jun."이 아닌 "June"으로 축약되어야 하며, 7월은 "Jul."이 아닌 "July"로 축약되어야 함) 코드를 업데이트하고 더미 버그를 수정했습니다. , May는 절대로 "May"로 축약되지 않습니다.)

편집 2:"September"는 표의 첫 번째 열에서와 같이 "Sep."이 아닌 "Sept."로 축약됩니다.

\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}

결과:

여기에 이미지 설명을 입력하세요

댓글에서 이전 코드는 사용하는 패키지 때문에 작동하지 않는다고 말했지만 어떤 추가 패키지를 사용하는지 밝히지 않았기 때문에 이 코드가 실제 사용에서 작동한다고 보장할 수 없습니다.

관련 정보