Como simplesmente inserir mês e ano no meio do parágrafo?

Como simplesmente inserir mês e ano no meio do parágrafo?

Estou escrevendo minha tese e quero inserir mês e ano de alguns eventos passados ​​em vários lugares! Como fazer isso? Alguém pode me sugerir uma maneira mais simples de fazer isso? Sou muito iniciante em LaTeX. E também, por favor, me perdoe pelo meu inglês.

Eu tenho esses eventos listados em um arquivo de texto. por exemplo, a supercondutividade foi descoberta em abril de 1991 por Heike Kamerlingh Onnes.

Estou apenas esperando uma saída formatada como

Abril de 1991

Responder1

Você poderia simplesmente definir uma macro que armazene os dados relevantes, por exemplo, você poderia usar \newcommand\questionDay{Monday}para armazenar o dia em que fez esta pergunta. Então você poderia usar \questionDayem seu parágrafo onde quiser se referir a este dia. No entanto, lembre-se de que os espaços são ignorados após os nomes das macros; portanto, se você quiser um espaço a seguir, \questionDaypoderá usá-lo \questionDay{}.

Outra abordagem poderia ser armazenar os dados em alguma estrutura de dados e recuperá-los. O seguinte implementa uma estrutura de dados que você pode inicializar fornecendo um nome de macro e uma lista de key=valuepares que armazenam propriedades para esse nome de macro. Quando você usa a macro, ela aceita um argumento, sendo uma das propriedades armazenadas anteriormente, e compõe o valor dessa propriedade.

Este exemplo mostra os dois métodos:

\documentclass[]{article}

% basic approach
\newcommand\questionday{9th}
\newcommand\questionDay{Monday}
\newcommand\questionyear{2020}
\newcommand\questionmonth{November}

\usepackage{xparse}

% property list based approach
\ExplSyntaxOn
\msg_new:nnn { Bhargav } { already-defined }
  { #1 ~ `#2' ~ is ~ already ~ defined. }
\msg_new:nnn { Bhargav } { unknown~property }
  { The ~ property ~ `#2' ~ isn't ~ found ~ for ~ `#1'. }
\tl_new:N \l_Bhargav_tmp_tl
\NewDocumentCommand \newevent { m m }
  {
    \prop_if_exist:cTF { c_Bhargav_event_ \token_to_str:N #1 _prop }
      {
        \msg_error:nnxx { Bhargav } { already-defined }
          { The ~ property ~ list ~ for } { \token_to_str:N #1 }
      }
      {
        \NewDocumentCommand #1 { m }
          {
            \group_begin:
              \prop_get:cnN
                { c_Bhargav_event_ \token_to_str:N #1 _prop }
                { ##1 }
                \l_Bhargav_tmp_tl
              \quark_if_no_value:NTF \l_Bhargav_tmp_tl
                {
                  \msg_error:nnxx { Bhargav } { unknown~property }
                    { \token_to_str:N #1 } { \exp_not:n {##1} }
                }
                { \l_Bhargav_tmp_tl }
            \group_end:
          }
        \prop_const_from_keyval:cn
          { c_Bhargav_event_ \token_to_str:N #1 _prop }
          {#2}
      }
  }
\ExplSyntaxOff

% defining a new property list
\newevent\deathfreddie
  {%
    year=1991,
    month=11,
    day=24,
    Month=November,
  }

\begin{document}
Bhargav Rajyaguru asked a question on \questionDay{} the \questionday{} of
\questionmonth, \questionyear.

It was very sad that Freddie Mercury died on
\deathfreddie{year}-\deathfreddie{month}-\deathfreddie{day}. That was the
saddest \deathfreddie{Month} in \deathfreddie{year}.
\end{document}

informação relacionada