KTUG 한국 텍 사용자 그룹

Menu

KTUG :: Q&A 마당 › tcolorbox의 \DeclareTCBListing으로 정의한 환경이 첫 단어를 잡아먹는 현상

Progress | 2018.06.01 13:03:11 | 메뉴 건너뛰기 쓰기

[사용환경: 윈7 32비트, TL 2018, python 2.7.5]

tcolorbox 패키지는 소스코드 리스팅에 관한 몇 가지를 담고 있습니다.
그중에 소스코드 리스팅 엔진으로 minted 패키지를 이용할 수도 있습니다.
특히 minted를 엔진으로 삼았으면 pygments에서 제공하는 다양한 스타일을 사용할 수 있습니다.

pygments를 사용하려면 python이 설치되어 있어야합니다.
>  pip install Pygments
또는 
>  (sudo) easy_install Pygments

pygments에서 제공하는 스타일은 다음 명령으로 확인할 수 있습니다.
> pygmentize -L styles

===

tcolorbox에서 기본으로 제공하는 tcblisting 환경의 옵션으로  
minted 엔진을 이용하고, 소스코드 하이라이팅에 pygments의 tango 스타일을 적용하면
소스코드 리스팅에 첫 단어가 없어지지 않고 잘 나옵니다.
(예제에서 "\usepackage" 부분)

그런데 tcolorbox에서 소스코드 리스팅 환경을 정의하는 명령인 \DeclareTCBListing로
사용자 정의환경을 만들면 소스코드 리스팅에 첫 단어가 사라집니다.

원인을 잘 모르겠습니다. 

tcolorbox_DeclareTCBListing_gobble_the_first_word.jpg

참고로 minted 환경이 포함된 텍 문서는 --shell-escape 옵션을 주고 컴파일합니다.

> xelatex --shell-escape tcolorbox_DeclareTCBListing_test

소스코드에 탭(tab)이 포함되어 있을 때는 추가로 -8bit 옵션까지 줘야합니다.
그렇지 않으면 탭 부분이 ^^I로 나올 수 있습니다.

> xelatex --shell-escape -8bit tcolorbox_DeclareTCBListing_test

첨부 [3]

댓글 [2]

댓글 쓰기

목록

KTUG 한국 텍 사용자 그룹