Форматирование даты при помощи пакета datetime2

Изучаю взаимодействие с датами в Latex. Для этого существует отличный пакет datetime2, однако не могу добиться с помощью него некоторых целей.

Например, в документе мне нужна дата 2х разных форматов:

  1. 22 августа 2022 г.
  2. Август 2002 г.

Был написан следующий код:

\documentclass[a4paper,12pt,russian]{article}

% Подключение пакетов
%===================================================
\usepackage{polyglossia}    %для русского языка
\usepackage[left=10mm, right=10mm, top=20mm, bottom=20mm]{geometry} %задаёт поля документа
\usepackage[useregional]{datetime2} %формат даты

% Установка параметров для документа
%===================================================
\setdefaultlanguage{russian}  % устанавливает главный язык документа
\setotherlanguage{english} % объявляет второй язык документа
\pagestyle{empty} %отсутствует номер страницы
\defaultfontfeatures{Ligatures={TeX}, Renderer=Basic}
\setmainfont{Liberation Serif}

% Команды для документа
%====================================================
\newcommand{\eng}[1]{\textlang{english}{#1}} %сокращение для команды английского языка
\DTMnewdatestyle{monthyyyy}{%новый стиль даты (месяц и год)
    \renewcommand*{\DTMdisplaydate}[4]{
        \DTMrussianmonthname{##2} ##1 г.%если не указать, что месяц российский - ошибка
    }
    \renewcommand*{\DTMDisplaydate}{\DTMdisplaydate}
}

\begin{document}
    \DTMDisplaydate{2022}{8}{22}{-1} %день недели не нужен
    
    \DTMsetdatestyle{monthyyyy}
    
    \DTMdisplaydate{2022}{8}{22}{-1} %день недели не нужен
    
    \DTMsetdatestyle{russian}
    
    \DTMDisplaydate{2022}{8}{22}{-1} %день недели не нужен
\end{document}

Код выдал следующий результат:

введите сюда описание изображения

Пытался разобраться, как поставить месяц в именительный падеж, но не смог.

Раньше использовал такой костыль, но только для команды \Today:

\renewcommand{\Today}{\ifcase \month \or Январь\or Февраль\or Март\or %
    Апрель\or Май \or Июнь\or Июль\or Август\or Сентябрь\or Октябрь\or Ноябрь\or %
    Декабрь\fi ~ \number \year}

Однако в данном случае - это не решение.

Хотелось бы всё таки иметь 2 разных формата даты в рамках одного пакета, чтобы можно было переключаться между ними. Подскажите, как это можно сделать.

Дистрибутив: TeXLive

Компилятор: XeLaTeX


Ответы (0 шт):