将星期几插入自定义日期时间格式

将星期几插入自定义日期时间格式

我正在使用自定义日期时间格式和自定义环境来生成日期列表(用于课程大纲),并且想对其进行一些修改,以在数字日期后添加缩写的日期名称。

以下是我所拥有的:

\documentclass{article}
\usepackage{advdate}
\usepackage[dayofweek]{datetime}% http://ctan.org/pkg/{advdate,datetime}
\newdateformat{syldate}{\THEMONTH/\THEDAY ()}
\newenvironment{schedule}
  {\par\syldate\renewcommand{\item}{\par%
    \stepcounter{mycntr}\ifnum\value{mycntr}>2\relax%
      \setcounter{mycntr}{0}\AdvanceDate[3]%
    \else
      \AdvanceDate[2]%
    \fi\today\quad}
  }{\par}
\SetDate[02/09/2013]
\newcounter{mycntr}
\begin{document}
\begin{schedule}
  \item Something
  \item Something else
  \item Relax
  \item Go to the sea
  \item Something
  \item Something else
  \item Relax
  \item Go to the sea

\end{schedule}
\end{document}

得出以下结论:

在此处输入图片描述

我想在那些空括号中添加相应日期的缩写星期名称。因此最终结果将如下所示:

9/4(W)某事

9/6(五)某事

9/9(男)某事

有什么提示吗?无法仅从软件包文档中弄清楚如何操作datetime,我找到了dayofweek软件包选项,但似乎只能修改\today

答案1

您可以根据需要使用\shortdayofweekname由 3 个字符组成的标准缩写名称(Mon 等)。

对于不同的东西,您可以更改\shortdayofweeknameidenglish或定义另一种语言的类似命令(texdoc datetime,第 12 页)。

例如,定义两个字符的缩写:

平均能量损失

\documentclass{article}
\usepackage{advdate}
\usepackage[dayofweek]{datetime}

\renewcommand{\shortdayofweeknameidenglish}[1]{%
\ifcase#1\relax
\or Su%
\or Mo%
\or Tu%
\or We%
\or Th%
\or Fr%
\or Sa%
\fi}

\newdateformat{syldate}{\THEMONTH/\THEDAY%
(\shortdayofweekname%
{\THEDAY}{\THEMONTH}{\THEYEAR})}
\newenvironment{schedule}
  {\par\syldate\renewcommand{\item}{\par%
    \stepcounter{mycntr}\ifnum\value{mycntr}>2\relax%
      \setcounter{mycntr}{0}\AdvanceDate[3]%
    \else
      \AdvanceDate[2]%
    \fi\today\quad}
  }{\par}
\SetDate[01/07/2013]
\newcounter{mycntr}
\begin{document}
\begin{schedule}
  \item Something 
  \item Something else
  \item Relax
  \item Go to the sea
  \item Something
  \item Something else
  \item Relax
  \item Go to the sea

\end{schedule}
\end{document}

相关内容