So formatieren Sie eine Beschreibungsbezeichnung mit einem Befehl (enumitem)

So formatieren Sie eine Beschreibungsbezeichnung mit einem Befehl (enumitem)

Ich muss eine Listenumgebung basierend auf der Beschreibung erstellen, die zur Beschreibung Cvon Funktionen verwendet werden soll.

Zum Beispiel:

% !TeX program = lualatex

\documentclass[11pt]{report}
\usepackage{enumitem}
\usepackage{minted}

\NewDocumentCommand{\code}{m}{\texttt{#1}}

\newlist{funcDescription}{description}{1}
\setlist[funcDescription, 1]{style=nextline, font=\mdseries\ttfamily, align=left}

\begin{document}

    \begin{funcDescription}
        \item[int printf(const char * format, ...)]
            Writes the \code{C} string pointed by format to the standard output
            (stdout). If format includes format specifiers (subsequences
            beginning with \code{\%}), the additional arguments following
            format are formatted and inserted in the resulting string replacing
            their respective specifiers.
    \end{funcDescription}
    
\end{document}

Es erzeugt die

Bildbeschreibung hier eingeben

\mintinlineAber ich möchte einen Befehl auf das Argument anwenden \item[]. Außerdem möchte ich Verbtext an das \item[]und- \code{}Argument übergeben.

Es gibt also die Fragen:

  1. Wie wende ich einige Befehle auf funcDescriptionElemente aus an \setlist?
  2. Wie übergebe ich Verbtext \code{}mit an den Befehl in Latex \NewDocumentCommand{}{}{}?
  3. Wie übergebe ich Verbtext an das Argument von \item[]?

( texdocRecherche hat nicht geholfen)

Antwort1

Hier wird \funcitemanstelle von verwendet \item, was jedoch kein allzu großes Problem darzustellen scheint.

\documentclass[11pt]{report}
\usepackage{enumitem}
\usepackage{minted}

\newmintinline[code]{C}{}

\newlist{funcDescription}{description}{1}
\setlist[funcDescription, 1]{
  style=nextline,
  font=\mdseries\ttfamily,
  align=left,
}
\NewDocumentCommand{\funcitem}{v}{\item[\code|#1|]}

\begin{document}

\begin{funcDescription}
  \funcitem{int printf(const char * format, ...)}
    Writes the \code{C} string pointed by format to the standard output
    (stdout). If format includes format specifiers (subsequences
    beginning with \code|%|), the additional arguments following
    format are formatted and inserted in the resulting string replacing
    their respective specifiers.
  \funcitem|printf(%d,argument_list)|
    This is just to show how to do with \code|%|
\end{funcDescription}
    
\end{document}

Bei Bedarf \funcitemkann das Argument auch in |...|(oder ein beliebiges anderes Paar gleicher Zeichen, wie für üblich \verb) eingeschlossen werden, wie im Beispiel gezeigt. Dasselbe gilt für \code.

Bildbeschreibung hier eingeben

verwandte Informationen