저는 일부 LaTeX 코드 목록을 작업 중이며 간격을 4에서 2로 변경하기로 결정했습니다. 문제는 내 문서에 목록이 너무 많다는 것입니다(약 500페이지)... 4/8/12/... 대신 2개의 공백을 사용하도록 모든 목록의 형식을 빠르게 다시 지정할 수 있는 방법이 있습니까? ?
답변1
literate
키를 사용하여 4개의 연속 공백을 2개의 출력 공간으로 바꿀 수 있습니다 .
\documentclass{article}
\usepackage{listings}
\lstset{literate={\ \ \ \ }{\space\space}{2}}
\begin{document}
\begin{lstlisting}[language=python]
if x is None:
print('yes')
# just a quick test that 3 spaces aren't touched
# just a quick test that 5 spaces are touched
\end{lstlisting}
\end{document}
8칸 블록은 4칸 블록 2개와 동일하며, 키 를 통한 위의 교체가 literate
작동합니다. 더 많은 교체가 필요한 경우 간단히 추가할 수 있습니다. literate
키는 임의의 많은 교체 규칙을 세 인수(교체할 항목, 교체, 교체가 차지할 가상 열 수)의 블록으로 사용합니다.
\documentclass{article}
\usepackage{listings}
\lstset
{
literate=
{\ \ \ \ }{\space\space}{2}
{yes}{no}{2}
}
\begin{document}
\begin{lstlisting}[language=python]
if x is None:
print('yes')
if y is None:
print('yes again')
# just a quick test that 3 spaces aren't touched
# just a quick test that 5 spaces are touched
\end{lstlisting}
\end{document}