Q&A 마당은 텍 관련 질문/답변을 위해 만들었습니다.
- 로그인 없이 자유롭게 글을 읽고 쓸 수 있는 철학은 처음과 같이 계속됩니다.
- 질문 전에 아래를 읽어 보세요. 좋은 질문이 좋은 답을 받을 수 있는 좋은 방법입니다.
- 질문에 맞는 제목을 붙이세요. 질문의 내용과 관련없는 "고수님", "긴급질문", "도와주세요"와 같은 제목은 답이 잘 올라오지 않습니다. 이 게시판에 올라오는 모든 글은 질문입니다. 굳이 [질문], [Q]를 적으실 필요도 없습니다.
- 내용을 충실히 적어 주시고, 같은 상황을 재현할 수 있는 최소한의 예제가 같이 있어야 합니다.
- 최소 예제는 "Minimal working example"을 읽어 보세요.
- 파일을 첨부하실 때에는 가능한 압축하여 파일 크기를 줄여서 올려주시길 바랍니다.
- 개인적으로 사용하신 글꼴이 들어 있는 경우, preparefont.sty에 관한 답변을 참조하세요.
- 스팸 글을 막기 위하여 짧은 시간 내에 다시 글이 등록되는 IP를 막거나, 광고 글을 막기 위하여 금지어로 .com, .net 등을 설정하고 있습니다. 다소간의 불편함이 있으시더라도 양해 바랍니다.
- 금지어에서 stackexchange, stackoverflow, ctan, overleaf, , github, google.com, gmail.com, .org, .io, sil.org, wiki.com, tistory.com등은 해제하였습니다.
- MathJax를 이용한 수식조판을 사용하실 수 있습니다. 여기를 참조하세요.
- 사용하는 편집기는 CKeditor입니다.
- 편집기에서 [enter]를 누르면 <p> 태그가 들어가고, 문단으로 생각하고 한 줄을 비웁니다.
- 글줄만 바꾸려면 [shift-enter]를 누르면 <BR> 태그가 들어가므로 용도에 맞게 나누어 쓸 수 있습니다.
- 수식를 문서내에 삽입하시려면 에디터를 툴바에서 [소스]를 눌러 HTML로 입력할 수 있게 바꾸신 후 <pre> </pre> tag를 사용하셔서 <pre> 여러 줄의 수식 </pre>처럼 입력하시면 좋습니다.
질문:listings에서 한글 코멘트 삽입하기
2017.10.25 22:57
안녕하세요,
listings 패키지를 이용해서 프로그램 소스에 필요한 부분만 강조할 목적으로
색깔을 입히려고 합니다. 그런데 프로그램 소스에 코멘트로 한글을 사용하면
한글이 깨져서 나옵니다.
검색을 해보면 다른 분들은 문제 없이 한글도 사용하시는 것 같은데,
제 경우에는 한글이 제대로 출력되지를 않네요.
다음은 메인 tex 화일입니다.
\documentclass[12pt,a4paper]{article}
\usepackage[euc]{kotex}
\usepackage[svgnames]{xcolor}
\usepackage{listings}
\lstset{
basicstyle=\footnotesize\ttfamily,
showspaces=false,
columns=fullflexible,
breaklines=true,
moredelim=[l][\color{Brown}]{//},
moredelim=[s][\color{Brown}]{/*}{*/},
moredelim=[is][\color{Red}]{|}{|},
moredelim=[is][\color{Blue}]{|*}{|},
moredelim=[is][\color{Brown}]{|!}{|},
moredelim=[is][\color{Teal}]{|.}{|},
moredelim=[is][\color{DarkViolet}]{|`}{|},
moredelim=[is][\color{LimeGreen}]{||}{|},
moredelim=[is][\color{Magenta}]{|@}{|},
moredelim=[is][\color{SeaGreen}]{|~}{|},
}
%--------------------------
% Main document begins here
%--------------------------
\begin{document}
\input{Deque}
\end{document}
프로그램 소스 파일입니다.
\begin{lstlisting}
public class |*Deque||<T>| {
/*-----------------------------------------------------------
* With LinkedList, all operations pertaining to deque are
* delegated to LinkedList as shown here.
*
------------------------------------------------------------*/
private |*LinkedList||<T>| |@deque| = new |*LinkedList||<T>|();
// 한글
public void addFirst(T e) {
|@deque|.addFirst(e);
}
public void addLast(T e) {
|@deque|.addLast(e);
}
// ...
// And other methods as necessary...
}
\end{lstlisting}
Tex Live 2012버전에서 pdflatex으로 컴파일했습니다.
감사합니다.
listings 매뉴얼 15쪽에 다음과 같은 내용이 있습니다.
> texdoc listings
요지는 이스케이프 문자를 지정하고, 한글 부분 앞뒤로 감싸주라는 겁니다. 구체적인 방법은 아래 내용을 참고하세요.
http://faq.ktug.org/faq/SourceCodeListing#s-1.5.4
[덧]
\usepackage[euc]{kotex} 으로 사용하고 계시네요.
문서 인코딩을 utf-8로 바꾸고 \usepackage{kotex}으로 사용하기를 바랍니다.