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>처럼 입력하시면 좋습니다.

listing 패키지의 한글 주석 색넣기

2017.02.15 11:44

김소원 조회 수:7225

안녕하세요.

TeX의 listing 패키지를 사용하던 중.. 

한글 코맨트가 색이 칠해지지 않아 어찌해결 할까 고민중 도움을 받고자 글을 올리게 되었습니다.

\documentclass[a4paper,footnote]{oblivoir}

 

\pagestyle{hangul}

 

%\usepackage[default]{memucs-interword-x}

%\interhword{.4}{.1}{.1}

 

\usepackage[utf8]{inputenc}

 

\usepackage{listings}

\usepackage{caption}

\usepackage{geometry}

\usepackage{color}

 

\usepackage{fontspec}

\usepackage{vhistory}

 

\newfontfamily{\ttconsolas}{Consolas}

 

\setmainfont[Mapping=tex-text]{TeX Gyre Termes}

\setsansfont[Mapping=tex-text]{TeX Gyre Heros}

\setkormainfont(NanumBarunGothicBold){NanumBarunGothic}

\setkorsansfont(NanumGothicExtraBold)(NanumGothicBold){NanumGothic}

 

\definecolor{codekeyword}{rgb}{0.34,0.61,0.84}

\definecolor{codecomment}{rgb}{0.34,0.65,0.29}

\definecolor{codegray}{rgb}{0.5,0.5,0.5}

\definecolor{codepurple}{rgb}{0.58,0,0.82}

\definecolor{backcolour}{rgb}{0.95,0.95,0.92}

 

\lstset{

commentstyle=\color{codecomment}\textit,

keywordstyle=\color{codekeyword}\textbf,

numberstyle=\small\color{codegray},

stringstyle=\color{codepurple},

frame=top,frame=bottom,

basicstyle=\small\normalfont\ttconsolas,

stepnumber=1,

numbers=left,

numbersep=10pt,

tabsize=2,

extendedchars=true,

breaklines=true,

captionpos=t,

mathescape=true,

stringstyle=\color{white}\ttfamily,

showspaces=false,

showtabs=false,

xleftmargin=17pt,

framexleftmargin=17pt,

framexrightmargin=17pt,

framexbottommargin=5pt,

framextopmargin=5pt,

showstringspaces=false

}

\DeclareCaptionFormat{listing}{\rule{\dimexpr\textwidth+17pt\relax}{0.4pt}\par\vskip1pt#1#2#3}

\captionsetup[lstlisting]{format=listing,singlelinecheck=false, margin=0pt, font={sf},labelsep=space,labelfont=bf}

 

\renewcommand\lstlistingname{Example}

\begin{document}

\begin{lstlisting}[language=C++,caption={테스트입니다. 하이하이},escapeinside=`']

#include <tuple>

#include <iostream>

#include <array>

#include <utility>

 

// Convert array into a tuple

template<typename Array, std::size_t... I>

decltype(auto) a2t_impl(const Array& a, std::index_sequence<I...>)

{

return std::make_tuple(a[I]...);

}

 

template<typename T, std::size_t N, typename Indices = std::make_index_sequence<N>>

decltype(auto) a2t(const std::array<T, N>& a)

{

return a2t_impl(a, Indices());

}

 

// pretty-print a tuple

// comment `한글 주석 스페이스도 안되나?' dmdm 

 

template<class Ch, class Tr, class Tuple, std::size_t... Is>

void print_tuple_impl(std::basic_ostream<Ch,Tr>& os,

const Tuple & t,

std::index_sequence<Is...>)

{

using swallow = int[]; // guarantees left to right order

(void)swallow{0, (void(os << (Is == 0? "" : ", ") << std::get<Is>(t)), 0)...};

}

 

template<class Ch, class Tr, class... Args>

decltype(auto) operator<<(std::basic_ostream<Ch, Tr>& os,

const std::tuple<Args...>& t)

{

os << "(";

print_tuple_impl(os, t, std::index_sequence_for<Args...>{});

return os << ")";

}

 

int main()

{

std::array<int, 4> array = {1,2,3,4};

 

// convert an array into a tuple

auto tuple = a2t(array);

static_assert(std::is_same<decltype(tuple),

std::tuple<int, int, int, int>>::value, "");

 

// print it to cout

std::cout << tuple << '\n';

}

\end{lstlisting}

 

\end{document}

 

로 작성하였습니다..

 

도움을 주시면 감사하겠습니다.

 

번호 제목 글쓴이 날짜 조회 수
공지 Minimal Working Example을 첨부해주세요 [4] nanim 2015.06.23 230378
2234 이런 행렬식은 수식을 어떻게 입력해야 하나요? [2] file tnttex 2016.04.09 1360
2233 문자열 저장 [4] foobar 2016.04.26 1360
2232 texmaker 환경설정 질문이요 [3] texmaker 2016.04.30 1360
2231 TexWorks editor에서 어떤 텍을 선택해야 하나요? [10] file 한인기 2016.08.31 1360
2230 TOC 에서 TOC 를 빼는 방법이 있을까요? [1] file 불량양파 2016.09.20 1360
2229 kotex 설치중 계속 이런상태네요. [10] file 초보자 2016.09.20 1360
2228 분수(frac)를 사용할때 앞쪽의 간격을 줄일 수 있는 방법이 있을까요? [4] file 불량양파 2016.09.27 1360
2227 TeXLive 설치하다 중단되요. 도움부탁. [2] 이창섭 2016.10.05 1360
2226 재단선을 그리고 싶습니다. [2] 이기문 2017.01.12 1360
2225 원호를 나타내는 기호 [1] 유혜린 2017.10.05 1360
2224 header의 줄간격질문. [1] ggg 2018.03.23 1360
2223 latex에서 matrix에 대한 메뉴얼 [2] dice7 2018.04.13 1360
2222 texlive2018에서의 latexdraw로 작성된 pstricks 그림 사용가능성 [6] 우디 2018.05.20 1360
2221 앨캐피탄 업그레이드 후 MacTex 작동 안됨 [1] esoh 2015.10.06 1361
2220 하나의 문서에서 다국어를 출력하려고 합니다. [6] 불량양파 2015.11.24 1361
2219 TeXLive 2015 설치시 디렉터리 변경 불가 [4] file 백수 2015.12.06 1361
2218 글꼴 크기와 여백 크기가 관련된 오류 [1] 이기문 2016.03.02 1361
2217 jaxodraw 를 사용해서 다이어그램을 그리고 [8] 안돼요 2016.05.18 1361
2216 Window10에 Tex Live 2016설치 후 WinEdt10에서 한글소스의 latex 시 에러 발생 [2] file S&S 2016.06.18 1361
2215 paragraph의 첫 빈줄 없애기 [6] file 김민규 2016.09.27 1361



XE Login