본문으로 건너뛰기

LaTeX의 코드 목록

코드를 verbatim, lstlisting, minted 환경에 넣거나 문장 안에서는 \verb|...|를 쓰세요. Scissor LaTeX는 코드를 입력한 그대로 고정폭 글꼴로 조판하며, 언어를 지정하면 구문에 색을 입힙니다.

verbatim

verbatim 안에서는 아무것도 해석되지 않습니다. 백슬래시, 중괄호, $, %가 그대로 출력되고, 줄바꿈과 공백도 유지됩니다. 코드나 터미널 출력을 보여 주는 가장 간단한 방법입니다.

verbatim 블록

\begin{verbatim}
for i in range(44):
    print(i)   # $ and \textbf stay as typed
\end{verbatim}

문장 안의 코드: \verb

\verb는 문장 안에서 짧은 코드 조각을 보여 줍니다. \verb 바로 뒤의 문자가 구분자가 되므로, |나 +처럼 코드에 없는 문자를 고르세요.

\verb와 \texttt로 쓴 문장 안의 코드

Call \verb|total(xs)| to add the list, or type \verb+x_1 = 44+.
For plain words in a monospaced font, \texttt{main.tex} is enough.
Scissor LaTeX로 조판: \verb와 \texttt로 쓴 문장 안의 코드

\texttt{...}는 글꼴만 바꿉니다. 그 안에서는 _나 % 같은 특수 문자를 여전히 이스케이프해야 하지만, \verb는 그대로 받아들입니다.

listings: 언어를 지정한 lstlisting

listings 패키지는 lstlisting을 제공합니다. language=...를 지정하면 코드에 구문 색상이 입혀집니다.

language=Python을 지정한 lstlisting

LaTeX프리앰블: \usepackage{listings}편집기에서 열기 (새 탭에서 열림)
\begin{lstlisting}[language=Python]
def total(xs):
    """Add up the numbers in xs."""
    return sum(xs)

print(total([40, 4]))  # 44
\end{lstlisting}
Scissor LaTeX로 조판: language=Python을 지정한 lstlisting

\lstinline|code|는 \verb처럼 문장 안에서 쓰는 형태입니다.

minted

minted는 언어를 인수로 받습니다. TeX 설치 환경에서는 Python과 -shell-escape 옵션이 필요하지만, Scissor LaTeX에서는 둘 다 없이 동작합니다.

언어를 지정한 minted

LaTeX프리앰블: \usepackage{minted}편집기에서 열기 (새 탭에서 열림)
\begin{minted}{rust}
fn main() {
    let answer = 40 + 4;
    println!("{}", answer);
}
\end{minted}
Inline: \mintinline{rust}{let x = 44;}
Scissor LaTeX로 조판: 언어를 지정한 minted

읽히는 것

명령Scissor LaTeX에서참고
verbatim, verbatim*동작함
\verb, \verb*동작함
lstlisting일부language=는 읽히고, 그 밖의 모든 옵션(numbers, caption, frame, basicstyle, firstline ...)은 무시됩니다.
\lstinline동작함문장 안에서는 구문 색상이 없습니다.
\lstset{...}생략됨여기서 정한 언어는 쓰이지 않으므로, 목록마다 language=를 지정하세요.
minted일부언어는 읽히고, linenos나 frame 같은 옵션은 무시됩니다.
\mintinline{lang}{code}동작함문장 안에서는 구문 색상이 없습니다.
Verbatim, BVerbatim (fancyvrb)일부verbatim으로 표시되고 옵션은 무시됩니다.
\lstinputlisting{file}, \inputminted{lang}{file}지원하지 않음메시지와 함께 건너뛰므로, 코드를 문서에 붙여 넣으세요.
\lstnewenvironment, \newminted지원하지 않음

구문 색상은 흔히 쓰이는 언어에서 사용할 수 있으며, 여기에는 Python, C, C++, Java, JavaScript, TypeScript, Rust, Go, Ruby, R, Julia, MATLAB, SQL, Bash, HTML, CSS, JSON, YAML, TeX, LaTeX가 포함됩니다. 언어 이름은 대소문자를 구분하지 않으므로 Python과 python은 같습니다. 인식되지 않는 이름이면 색상 없는 고정폭 코드가 됩니다.

파일의 코드

TeX 설치 환경에서 \lstinputlisting과 \inputminted는 다른 파일에서 코드를 읽어 옵니다. Scissor LaTeX는 이 명령들을 건너뛰고 문제 탭에 그 사실을 알립니다.

\lstinputlisting은 건너뜁니다

LaTeX프리앰블: \usepackage{listings}편집기에서 열기 (새 탭에서 열림)
The script below is not shown:
\lstinputlisting[language=Python]{scripts/total.py}
Paste the code into an lstlisting environment instead.

문제 탭: 1 included file is not part of this conversion

TeX 설치 환경과 다른 점

패키지 페이지는 listings와 minted를 참고하세요. 전체 설명서는 CTAN에 있습니다: listings, minted, fancyvrb.

질문과 답변

LaTeX에 코드 블록은 어떻게 넣나요?

코드를 \begin{verbatim} ... \end{verbatim}으로 감싸거나, 구문 색상이 필요하면 [language=Python]을 지정한 lstlisting으로 감싸세요.

minted는 shell escape 없이도 동작하나요?

Scissor LaTeX에서는 그렇습니다. minted 환경은 Python이나 -shell-escape 없이도 색이 입혀집니다. TeX 설치 환경에서는 여전히 둘 다 필요합니다.

코드 목록의 줄 번호는 왜 보이지 않나요?

Scissor LaTeX는 numbers=left를 비롯한 listings의 레이아웃 옵션을 무시합니다. 언어만 읽힙니다.

이 페이지의 모든 예제는 사이트를 빌드할 때 Scissor LaTeX로 조판됩니다. 마지막 업데이트: 2026-11-07