새 카운터 스타일에 대한 기호 시퀀스를 어떻게 정의할 수 있나요?

새 카운터 스타일에 대한 기호 시퀀스를 어떻게 정의할 수 있나요?

다음과 같이 카운터 스타일을 변경할 수 있다는 것을 알고 있습니다.

\renewcommand\thechapter{\Roman{chapter}}

(위 명령을 실행하면 장 번호가 대문자 로마 숫자로 표시됩니다.)

그러나 따르면위키북그리고 에 대한 대답이 질문, 아랍어, 로마자, 그리스어 및 각주 기호 중에서만 선택할 수 있습니다.

  • \arabic1, 2, 3 ...
  • \alph에, 비, ㄷ...
  • \Alph에이, 비, 씨...
  • \roman나, ii, iii ...
  • \Roman나, II, III ...
  • \fnsymbol각주를 목표로 함; 일련의 기호를 인쇄합니다.

카운터에 대한 고유한 기호 시퀀스를 정의할 수 있는 방법이 있습니까?

답변1

\alph다음과 같이 정의된 정의를 쉽게 조정할 수 있습니다 latex.ltx.

\def\alph#1{\expandafter\@alph\csname c@#1\endcsname}
\def\@alph#1{%
  \ifcase#1\or a\or b\or c\or d\or e\or f\or g\or h\or i\or j\or
   k\or l\or m\or n\or o\or p\or q\or r\or s\or t\or u\or v\or w\or x\or
    y\or z\else\@ctrerr\fi}

여기 맞춤형 시퀀스에 대한 MWE가 있습니다.

\documentclass{article}
\makeatletter
\def\mysequence#1{\expandafter\@mysequence\csname c@#1\endcsname}
\def\@mysequence#1{%
  \ifcase#1\or AAA\or BBB\or CCC\else\@ctrerr\fi}
\makeatother
\renewcommand\thesection{\mysequence{section}}
\begin{document}
\section{Section}
\section{Section}
\section{Section}
%\section{Section} % --> LaTeX Error: Counter too large
\end{document}

카운터 값이 너무 높으면(예제 4에서) 이 구현이 작동을 멈춘다는 점에 유의하세요. 따라서 충분한 기호를 정의했는지 확인하세요.

관련 정보