..png)
전류 출력:
설명 1블라 1
원하는 출력:
설명 1:블라 1
MWE:
전류 출력:
\documentclass[oneside,12pt]{scrartcl}
\usepackage{polyglossia}
\setdefaultlanguage{german}
\usepackage{fontspec}
\begin{document}
\begin{description}
\item[Desc 1] Bla 1
\end{description}
\end{document}
원하는 출력:
\documentclass[oneside,12pt]{scrartcl}
\usepackage{polyglossia}
\setdefaultlanguage{german}
\usepackage{fontspec}
\begin{document}
\begin{description}
\item[Desc 1:] Bla 1
\end{description}
\end{document}
물론 정규식 대체를 통해 이를 수행할 수 있다는 것을 알고 있습니다. 하지만 더 쉽고 우아한 방법이 있다고 확신합니다. 또한 100개 이상의 항목이 있는 경우에 대한 솔루션을 찾고 있습니다.
답변1
\descriptionlabel
콜론을 추가하도록 재정의합니다 .
\documentclass[oneside,12pt]{scrartcl}
\usepackage{polyglossia}
\setdefaultlanguage{german}
\usepackage{fontspec}
\renewcommand*{\descriptionlabel}[1]{\hspace{\labelsep}\descfont #1:}
\begin{document}
\begin{description}
\item[Desc 1] Bla 1
\item[Desc 2] Bla 2
\item[Desc 3] Bla 3
\end{description}
\end{document}
결과:
선택적 인수 of 가 사용되지 않는 경우에는 어떤 사전 예측도 하지 않았습니다 \item
. 왜냐하면 이것은 description
.
답변2
이는 을 재정의 \item
하지만 선택적 인수가 지정되지 않은 경우 기본 동작(콜론 생략)을 제공합니다.
\documentclass[oneside,12pt]{scrartcl}
%\usepackage{polyglossia}
%\setdefaultlanguage{german}
%\usepackage{fontspec}
\let\svitem\item
\renewcommand\item[1][\relax]{\ifx\relax#1\svitem\else\svitem[#1:]\fi}
\begin{document}
\begin{description}
\item[Desc 1] Bla 1
\item Default empty tag
\end{description}
\end{document}
위의 MWE는 재정의하므로 \item
다른 목록 유형에 영향을 미칩니다. 그러나 환경에만 영향을 미치는 다음 MWE를 사용하면 이를 피할 수 있습니다 description
.
\documentclass[oneside,12pt]{scrartcl}
%\usepackage{polyglossia}
%\setdefaultlanguage{german}
%\usepackage{fontspec}
\let\svitem\item
\newcommand\altitem[1][\relax]{\ifx\relax#1\svitem\else\svitem[#1:]\fi}
\let\svdescription\description
\def\description{\let\item\altitem\svdescription}
\begin{document}
\begin{description}
\item[Desc 1] Bla 1
\item Default empty tag
\end{description}
\begin{itemize}
\item[Desc 1] Bla 1
\item Default empty tag
\end{itemize}
\end{document}