KC2007/mpm 처음사용하기 KTUG Collection Team 2007 년 8 월 요약 이문서는 KC2007을이용하여 TEX 에입문하는 Windows 사용자를위한 따라하기안내서 (Tutorial) 이다. KC2007 시스템에대한자세한설명과설정및운영방법등에대해서는 사용자설명서 (User s Guide) 및 관리자설명서 (Administrator s Guide) 를참고하라. 이글은완전한초보자를위한최소한의정보만을제공한다. 차례 1 들어가는말......................................... 3 2 알아두어야할것...................................... 3 3 내려받기와설치....................................... 4 3.1 MiKTEX 과 KC2007................................... 4 3.2 내려받기 (Download)................................ 5 3.3 기본설치파일의인스톨 (Install)........................ 5 3.4 설정 (Setup)...................................... 9 3.5 한글환경과기본배포스타일의설치..................... 13 4 에디터............................................. 13 4.1 EmEditor....................................... 13 4.2 WinEdt.......................................... 14 4.3 L Y X............................................ 14 5 KC2007의유지....................................... 15 5.1 KC2007의확장과추가설치........................... 15 5.2 정기업데이트.................................... 16 6 문서의작성, 컴파일..................................... 17 6.1 작업디렉터리란?................................... 17 1
6.2 새로운문서작성하기............................... 18 6.3 컴파일하고결과보기................................ 19 6.4 인버스서치는언제필요한가?........................... 22 6.5 유틸리티....................................... 23 7 도움말을얻을수있는곳.................................. 24 7.1 필수문서........................................ 24 7.2 그밖의도움말..................................... 24 2
1 들어가는말 작년에이어 KC2007을제작하게되었다. 작년한해동안의여러가지경험을살려, 더나은시스템이되어야할텐데. KC2006은두번 CD로제작 배포되었고세번시스템을바꾸었다. 그기간동안많은분들이사실상베타테스터나다름없는상황을이해해주시고개선을건의해주신덕에그런대로만족스러운 TEX 실행체계로자리잡을수있었다고생각한다. KTUG Collection Team은모든사용자께다시한번감사한마음을표한다. 어쩔도리없이이번 KC2007도사실상비슷한상황일것이므로, 배전의격려와도움을부탁드리는바이다. 이글은 KTUG Collection Team을저자로하여공개되는문서로서, 초안을김강수가쓰고조인성이감수하였다. 내용에대한의견, 코멘트는 mailto:info@mail. ktug.or.kr 로보내주시기바란다. 2 알아두어야할것 KC2007은다음과같은형식으로제작 배포된다. 1. KC2007/TEXLive : 주로 Linux와 Mac OS X를위한것으로이버전은 TEXLive 2007 텍실행체계가설치되어있는조건을전제로 ko.tex 설치만을지원한다. 이버전에대한더상세한정보는 ko.tex 사이트 1) 를참고하라. 2. KC2007/mpm : Win32를위한바이너리와지원체계를갖춘완전한 TEX Implementation 2) 으로제공되는것으로 KC2006의다음버전이다. 이글에서 KC2007 이라하면이버전을가리키는것으로한다. 여기서 mpm 이라함은 MiKTEX Package Manager를패키지관리도구로채택하고있음을의미한다. KC2007/mpm의특징은다음과같다. 가. 기본적인설계는 KC2006에서크게변한것이없다. 3) 나. 한글환경은 ko.tex 이탑재되었다. 다. pdftex, X TEX, luatex 등주요엔진이최신버전으로교체되었다. E 라. Ghostscript 가 GPL 8.60 이채택되었다. 1) http://project.ktug.or.kr/ko.tex/ 2) TEX 관련실행파일들, 매크로스타일과클래스, 유틸리티등을모두포함하여제공되는, 시스템에서 TEX 을운영하기위한배포판을말한다. TEX 배포판, TEX 실행체계등과같은말이다. 3) 제작자로서, 이부분에대해서는망설임이매우많았다. 원래두종류의개발옵션을가지고있었는데, 하나는 KC2006 의설계를그대로이어받는것이고다른하나는 TEXLive 를이용하는것이었다. 즉, KC2007/mpm 도 TEXLive 의트리구조를그대로이용하고자하는것이었는데, 그럴경우여러가지변경을가하지않으면안될일이라, 호환성을최대한유지하는선에서타협하였다. 3
이러한변화는시스템설계상의것으로, 사실상사용자수준에서는크게새로운것이없다고보아도좋을것이다. 이전과동일한점중에서몇가지, 가. 기본에디터는여전히 EmEditor이다. 이것은 EmEditor에 free 버전이있다는점때문에채택된것으로, EmEditor free + KCmenu 조합사용을입문자에게적절한것으로상정하고있다. 그러나자신에게맞는에디터, 예컨대 EmEditor Professional 버전이나 WinEdt 또는 TEXmaker 등을사용하는것도좋다. KC2007 의 KCmenu는에디터설정을매우손쉽게변경할수있도록해준다. 나. KC2007이설치되는시점에서만약 HOME 변수가설정되어있는상태였다면, 시스템의사용자변수 HOME은변경되지않는다. 그러나이변수가설정되어있지않은상태라면 [TeX]/HOME 폴더를사용자변수 HOME에할당한다. 이변수이름을 TeXHOME 등으로하자는의견이일부있었으나, KC2007은 HOME 을필요로하고, 이디렉터리를사용하도록하는것이논리적으로무난하다고보아서변경하지않았다. 다. 언인스톨시, [TeX]/HOME 폴더는삭제되지않는다. 라. 바이너리 ( 실행파일 ) 들은 W32TEX 의것을가져왔으므로 TEXLive와동일하다. 그러나대체로 TEXLive의버전업은없다고해도과언이아니지만 KC2007은지속적으로업그레이드가이루어진다. 3 내려받기와설치 3.1 MiKTEX 과 KC2007 Windows 운영체제에서가장많은사용자를가지고있는 Christian Schenk 씨의 MiKTEX 은그자체가하나의 TEX Implementation이다. 쉬운설치, 강력한패키지관리, 윈도친화적인사용자환경등이특징이며그명성만큼이나다양한지원체계도갖추고있다. KC2007은독자적인텍실행체계이다. 그러므로 MiKTEX 과 KC2007을동시에설치해서쓸필요도없고그렇게할수도없다. 즉, KC2007을사용하려한다면 MiKTEX 을제거해야한다. MiKTEX 과 KC2007은대부분그기능이동일하지만다음과같은몇가지차이점을갖는다. 1. MiKTEX 과달리 KC2007은한글관련환경을기본으로제공한다. 즉 KC2007을설치하면별도로한글관련설정을추가할필요가없다. 2. MiKTEX 과달리 KC2007은 TEXLive 또는 W32TEX 의실행환경에더가까우며 TEXLive 의 web2c 표준과호환된다. 4
3. MiKTEX 2.6에는없는 X TEX, luatex 등의엔진이탑재되어있다. E 4. MiKTEX 의 Yap과 texify라는유틸리티가 KC2007에는없다. 그대신, dviout과 kcltxmk라는유틸리티가제공된다. 하는일은거의비슷하지만사용법이약간차이가난다. 두시스템을모두사용해본사용자들의경험담에의하면, 프로그램의실행속도는 KC2007의것이현저히빠르다고한다. 또한, KC2007의패키지관리는 MiKTEX 의것을빌어쓰고있다. 즉, KC2007은 ( 아마도 ) TEXLive의강력함과 MiKTEX 의편리함을모두취하려는전략의결과라고생각한다. 3.2 내려받기 (Download) 내려받기는 KC2007 페이지 4) 에서한다. KC2007은기본설치파일과추가설치파일로구분되어있다. 설치파일의크기가지나치게커지는것을막기위해구분한것으로, 기본설치파일 (KC2007-TINY-INSTALL.exe) 은실행파일형식이며추가설치파일은 KC2007에서사용하는업데이트파일형식인 kcupdate 확장자파일로되어있다. 추가설치파일은몇종류가있는데, TEX 입문자라면, 다음두가지를설치하는것이좋다. 5) 기본설치실행파일과함께다운로드받아두면편리하다. 1. 한글환경 (ko.tex) 설치파일 = kotex ( 약 87mebibytes) 2. 기본배포추가스타일 = basic dist ( 약 100mebibytes) 처음설치시에주의할사항은, 기본설치파일 을아래지침에따라설치한후, 기본설정 (dviout, mktexlsr, kcmpm 초기화 ) 을마친후에위의추가설치파일들을 실행하라는것이다. 3.3 기본설치파일의인스톨 (Install) 다운로드받은실행파일 (KC2007-MINI-INSTALL.exe) 을더블클릭하여실행한다. 6) 4) http://faq.ktug.or.kr/faq/kc2007 5) 다른방식의설치는 TEX 시스템을잘알고있고자신이시스템을구축하고관리할수있다면생각해볼수있는옵션이다. 처음사용자는 basic dist 와 kotex 을설치하는것이가장간편하고수고를덜수있는방법이된다. 물론이경우에도다양한패키지스타일들은 kcmpm 과 kclogmpm 을이용하여관리할수있다. 6) 이파일이름의일부인 mini 라는표현은 KC2007 공개판에붙는명칭이다. 한국텍학회 (KTS) 회원에게는 TEXLive 의기본 distribution 을모두포함한 full 버전의 KC2007 이 CD 또는 DVD 로제공되는데, 공개판으로는그패키지의일부만을설치해주고필요한것은온라인자동설치하도록하는버전을제공한다. 두버전의기능상의차이는전혀없으며, 동일한바이너리를채택하고있다. 5
1. 잠깐의로딩시간이지난다음, 설치시작화면이나타나면다음버튼을눌러서 진행한다. 2. 사용권관련계약사항에모두동의한다. 3. 다음으로구성요소선택을한다. 6
그냥다음버튼을눌러진행한다. 4. 시작메뉴폴더선택도그냥다음으로진행한다. 5. 설치위치를정해야한다. 기본값 (default) 은그림에서보듯이 C:\KC2007\TeX 으로되어있다. 초보자는이를변경하지않고설치버튼을누른다. 7
사용자가변경하고자할때에는, 경로명에공백이들어가지않도록하고, 마지막에는반드시 <TeX> 이라는폴더가위치해야한다. 예를들면 C:\MyKC2007\TeX 은괜찮지만 C:\TeX\MyKC2007 은안된다. 어떤이유에선가 Program Files 폴더아래두어야만할상황이라면 8.3 파일이름형식으로다음과같이써넣는다 : C:\Progra~1\TeX. 6. 설치가시작되면, 방대한시스템이설치되는과정을시커먼 cmd 창으로감상하면서기다린다. ( 설치시간은컴퓨터사양에따라대략 5분 20분정도걸린다.) 7. 설치종료되면, 바탕화면에 KCmenu 의바로가기가생겨난다. 8
일단이것으로기본적인설치는마무리되었다. 설치후에, 현재화면에실행중인 Shell을일단한번내릴필요가있다. 즉, Internet Explorer는한번닫았다가다시열고, Total Commander 같은파일관리프로그램도닫고재실행하는것이좋다. 물론 Cmd 창도마찬가지다. 이것은설치프로그램이설정한레지스트리와환경변수를유효하게하기위해서이다. 3.4 설정 (Setup) 이제 KC2007을실제로운영하기위한설정을몇가지실행해야한다. 이설정은 (dviout 초기화 (Install) 를제외하면 ) 시스템운영과정에서몇번이고반복할수있는것이므로매우중요하다. 그과정을눈여겨보아두는것이좋다. dviout 설정 dviout 은 KC2007 의기본뷰어이다. 물론 pdf 에익숙해지면쓸기회가줄어드기도 하지만, 여전히많은입문서에서 dvi 를기본결과파일로안내하고있으며, Inverse Search 와같은것을위해서도사용할필요가있다. 이설정과정은일회성 (one-time) 과정이므로처음설치시한번만해두면된다. Windows 단축키가있는키보드라면 <Windows>+R 키를눌러서이것은 [ 시작 ] - [ 실행 ] 을누르는것과같다 dviout 이라입력하고확인한다. 그러면 dviout 이실 행된다. 9
메뉴의 Option -> Install 을찾아서선택한다. ( 메뉴의 Setup Parameters 항목 을잘보아두도록하자. 이후로, dviout 의모든설정은이 Setup Parameters 항목을 통해이루어진다.) 이이후에이루어지는일은기본적으로 Finish 가나올때까지 Next 를누르는것밖에 없다. 가벼운마음으로몇번 Next 버튼을눌러준다. 마지막단계가지나면프로그램그룹이등록되고프로그램그룹창이뜰것이다. 그 러면성공! 10
이제시스템초기화과정을거치면모든설치과정이끝난다. 주의사항 : dviout 설정에서, 두어가지주의할사항이있다. 첫번째는그림에관련된것으로자신의주작업그림이 EPS인경우와그렇지않은경우에설정값을조금다르게하는것이좋다. 안타깝지만 dviout은 PSTricks로그린그림을직접보여주지는않는다. 그러나일반적인 EPS 그림은매우잘보여준다. FAQ에이에대한언급이있으므로반드시참고하기바란다. 7) 처음설치시의기본값은 EPS 작업에적합하게되어있다. 또하나는 truetype 폰트사용에관한것인데, ko.tex 은기본폰트가트루타입이아니므로, 지금당장은큰문제가되지않을것이다. 지금은처음설정이므로 Install 로충분하다. dviout은트루타입글꼴을 pk 비트맵을만들지않고직접보여줄수있는탁월한기능이있고, 처음설치옵션은이기능을활성화해두었다. 이설정을바꾸는것도 Setup Parameters를통하여가능하다. ko.tex 문서를디스플레이할때 dviout은 pk 글꼴이라는비트맵폰트를생성한다. 처음에 pk 비트맵글꼴생성시간이조금소요되지만한번만들어진글꼴을다음에다시사용하므로어느정도시간이지나면 pk 글꼴생성의필요가점점줄어들면서빠른속도로화면보여주기를할수있다. TEX 을처음이용하는분들이가끔왜화면보여주기가이렇게더디냐고질문하기도하는데그까닭이주로 pk 글꼴생성시간이므로문서를만들고처리하는경험이쌓여갈수록처리시간이빨라져, 문제가해결되어갈것임을알아두자. 그러나자신이초보자라면이모든주의사항을 잊고 다음의시스템초기화과정으로가면된다. 몇가지초기화 시스템초기화는명령행입력을통해서하는것이지만, KCmenu 8) 를사용하면이를 매우쉽게할수있다. KC2007 이설치되고나면바탕화면에 KCmenu 바로가기가 7) http://faq.ktug.or.kr/faq/kc2006/%c3%b3%c0%bd%bb%e7%bf%eb%c0%da/%bc%b3%c4%a1/ DviOut%BC%B3%C1%A4 8) likesam 님이 KC2006 을위하여제작한유틸리티. 11
생기는데, 이것을더블클릭하여실행한다. KCmenu 가열릴때는파일찾기대화창이 나타나지만지금은파일작업을하려는것이아니므로 [ESC] 또는 [ 취소 ] 를누른다. 그러면 KCmenu 의세번째탭인 [TeX 시스템관리 ] 가열린상태가된다. 이상태에서초기화버튼을차례로한번씩눌러준다. 하나씩누를때마다 cmd 창이열리면서초기화를실행하므로, cmd 창의동작이모두끝나기를기다린후다음버튼을누른다. 1. TDS 갱신 : 명령행에서 mktexlsr을실행하는것과동일하다. 향후로도가장많이사용할초기화버튼이다. 2. map 갱신 : 자주사용할것은아니지만, 맨처음설치했을때는반 드 시 해주어야한다. 명령행에서 updmap을실행하는것과동일하다. 3. 패키지관리 (kcmpm) 초기화 (update-db) : 명령행에서 kcmpm --update-db 를실행하는것과동일하다. kcmpm은패키지관리와자동패키지설치를위해꼭필요한유틸리티이므로, 이초기화도필수적으로해둔다. 인터넷연결이원활하지않으면실패하는경우도있으므로, 만약문제가생기면반드시질문을올려해결해두어야한다. 9) 9) 최근 kcmpm 을대체하는 KCpm 이제작되었다. 패키지를설치하고삭제하는것만이라면 kcmpm 에비하여빠르고편리하게작업할수있으므로이유틸리티를추가로설치해서쓰는것도좋다. KCpm 페이지에자세한설명이되어있다. 12
4. 시스템글꼴갱신 (fc-cache) : 명령행에서 fc-cache -f -v 를실행하는것과 동일하다. X TEX 을위한글꼴초기화이다. X TEX 이꼭필요하지않다면생략해도 E 무방하다. pdfl A TEX 등을사용하는데는지장이없다. 시스템의글꼴디렉터리를모두읽기때문에약간시간이소요되므로컴퓨터가반응이없는것처럼보이더라도 (2분가량 ) 기다린다. 이정도의초기화를해주면충분하다. E 3.5 한글환경과기본배포스타일의설치 설치파일을다운로드받을때추가설치파일두개를미리다운로드받아두었다면, 해당폴더를탐색기로열었을때이파일들의아이콘이생겨나있음을볼수있다. 이상태에서는더블클릭으로추가파일의설치가진행된다. kotex 과 basic-dist 파일은어느것을먼저설치해도상관없다. 만약미리다운로드해두지않았다면 Internet Explorer 를한번닫았다가다시열 어서, KC2007 페이지로연결한다. KCmenu 의 Help 탭에 KC2007 페이지의바로가기 단축버튼이있다. 한글환경설치파일과기본배포추가스타일은 kcupdate 형식 의파일이므로, 링크를누르고 실행 을선택하면 ( 설치후환경변수와레지스트리 정보가활성화되었을때 ) 된다. 또는대상파일을저장하여더블클릭하는방법도 있다. 4 에디터 에디터의선택은어렵고도중요한일이다. KC2007 은에디터를제공하지않는다. 자 신에게가장알맞은에디터를선택해서써야한다. 4.1 EmEditor EmEditor는 Emura Soft에서제작한셰어웨어유니코드편집기 10) 이다. 기능제한이있기는하나무료로이용할수있는 free version도있기때문에부담없이쓸수있다. KC2007은이에디터를위한설정을기본으로해준다. 즉, 별다른추가설정없이 EmEditor를바로사용할수있다. TEX 전용에디터는아니지만 EmEditor Professional 버전에 M s TEX Helper 플러그인을설치하면 TEX 작업에특화된환경을조성할수있다. KC2007 은 EmEditor/Free 버전을잠재적인기본에디터로간주하고있으며, KC2007 이처음설치된상태에서 EmEditor에모든설정이맞추어져있다. 10) http://www.emeditor.com 13
EmEditor 를더잘사용하기위한방법에대한것은 KTUG Faq 11) 를참고한다. 4.2 WinEdt 아마도가장유명한 Windows 셰어웨어편집기가아닐까한다. 유니코드편집에약간의제약이있기는하나탁월한기능을갖춘 TEX 전용편집기이다. WinEdt은 MiKTEX 에최적화되어있지만 KC2007을위한별도의설정프로그램이제공되므로 MiKTEX 환경과거의유사한작업을할수있도록편의를제공하고있다. 1. File Type Association : 이것은 WinEdt 자체에서해결된다. Configuration Wizard 에 File Association 항목이있다. 2. TEXEDIT 변수설정 : KCmenu의환경변수 TEXEDIT 설정항목에서 WinEdt에해당하는행을고른뒤활성화한다. 3. Inverse Search 설정 : dviout에서 WinEdt을위한 Inverse Search를설정한다. 4. KC2007_WinEdt.exe를실행한다. 12) 5. WinEdt 의 Option->Configuration 에서 "KC2007 (default)" 를선택한다. 이에디터에서유니코드파일을편집할때는저장옵션에서 :UTF-8을잘선택해주어야한다. 유니코드편집된파일을나중에다시열었을때 UTF-8 모드가유지되도록하려면, 파일의첫머리에, % -*- TeX:UTF-8 -*- 라고써두면된다. 4.3 LYX LYX 은 WYSIWYM (What You See Is What You Mean) 워드프로세서이다. 또한 L A TEX Front-end 에디터로쓸수있다. LYX 1.5.x 버전은유니코드문서를편집할수있다. 1. WYSIWIM 철학에입각하여일일이 L A TEX Commands를쳐넣지않아도문서를손쉽게편집할수있다. 2. L A TEX 의강력한기능을거의모두활용할수있다. 11) http://faq.ktug.or.kr/faq/emeditortip 12) 주의할것은 WinEdt 을기본옵션으로설치해두어야한다는것이다. http://faq.ktug.or.kr/ faq/winedt/kc2007 14
그림 1: LYX 1.5.1 3. 수식편집은수식입력창이별도로제공되는등거의 WYSIWYG이므로수식편집기로사용할수도있다. LYX 에서한글 L A TEX 문서를작성하려면, 한글화설정을해야하는데, 이에대해서는 KTUG Faq에잘나와있으므로다음페이지들을참고하라. Karnes/LYX LYX/Korean 생각건대 LYX 은여타에디터를대체할만한훌륭한 L A TEX 편집기라고볼수있을것같다. 참고로, 이문서도 LYX 에서작성하였다. 그림 1은이문서를편집하는화면이다. 5 KC2007의유지 5.1 KC2007의확장과추가설치 KC2007은 TEXLive와같은 완비된 (complete) 시스템이아니다. 만약그런방식으로 구성한다면설치파일의크기만 1Gibibytes를훌쩍넘을것이다. 그대신시스템의확장이필요할때는그에따라추가설치가가능하도록하였다. 여기에는두가지방법이있다. 15
패키지추가설치 (mpm) MiKTEX Package Manager 를빌어서사용자가새로운패키지가필요하여이를설치하고자할때, MiKTEX Package Manager (mpm) 를빌면온라인상에서직접설치할수있다. 이를위하여 KC2007이제공하는기본유틸리티는 kcmpm이다. 컴파일과정에서, 설치되지않은새로운패키지를자동으로검색하여온라인상에서자동으로설치할수있게하는유틸리티는 kclogmpm 이다. KCmenu에있는 패키지자동설치 버튼을누르면 kclogmpm을실행해준다. 13) kcmpm은 update-db가정기적으로필요하다. 대개 3 4개월마다한번정도초기화 (update-db) 를해주면될것으로보는데, MiKTEX 의사정에따라좀더빠르게변할수도있다. db 초기화는자동적으로이루어지지않으므로, 이따금생각날때한번씩눌러주면된다. kcupdate KC2007 기본설치만으로부족을느끼는경우, 시스템의확장을위하여 kcupdate를사용할수있다. 주로추가폰트, 추가매크로등으로이루어져있으며, 기본설치로는제공되지않지만혹시필요할는지모르는추가적인시스템도이방식으로설치한다. kcupdate 형식의추가설치또는확장파일은 KC2007/UPDATES 페이지 14) 에서다운로드받아설치할수있다. 현재제공되는 kcupdate는, MusiXTEX 확장, 추가폰트등으로이루어져있으며향후새로운것이더해질수있다. 해당링크를누르고 열기 를클릭하면알아서설치해준다. 이런방식을우리는 반자동설치 라고부르는데, 반 자 동이란 웹브라우저로해당페이지를열어서링크를클릭해야한다는것까지를의식한표현이며, 그이후의설치와설정은자동으로이루어진다. 이런설치용파일들의확장자가.kcupdate이다. 15) 5.2 정기업데이트 KC2007은정기적으로 16) 업데이트가릴리스된다. 대략한달에한번정도새로운업데이트파일이올라오므로 http://faq.ktug.or.kr/faq/kc2007/updates 페이지를가끔방문하여새로운업데이트가있는지를확인하는것이좋다. 또, KCmenu 의 시스템관리 탭보면 권장 Update 유무확인 이라는버튼이있는데, 이버튼을 13) KCpm 에대해서는각주 9 를볼것. KCpm 의자동설치프로그램의이름이 kcautopm 이지만, KCmenu 에서쉽게호출하기위하여 kclogmpm 으로실행파일이름을바꾸어줄수있도록하고있다. 14) http://faq.ktug.or.kr/faq/kc2007/updates 15) kcupdate 파일은실제로는 gzip 압축된 tar 파일이다. 그리고여기에 _kcupdate.bat 라는설정용배치파일이들어있다. KC2007 은.kcupdate 라는확장자를가진파일은적당한곳에압축을푼다음이배치파일을자동으로실행해주는일을한다. 16) 정기적 이라는말은반드시날짜를지켜서라는뜻이아니라, 대체로 regular 하게라는정도의의미이다. 즉, 정 기업데이트 ( 또는정규업데이트 ) 가릴리스되는날짜가정해져있지는않다. 16
누르면현재설치되어있는 KC2007의버전이최신의것인지를알려준다. 17) 만약새로운정기업데이트가있다면업데이트사이트로이동하게해주므로편리하게정기업데이트를확인할수있다. KC2007의정기업데이트파일은 RUD(Regular UpDate) 라표시된번호를붙여서구별한다. KC2007 설치배포판은 RUD 1.2.1이다. 이후의업데이트파일을설치하면이번호가증가한다. KC2006의마지막버전은 RUD 5.5였다. 어느정도정기업데이트파일이쌓이면일괄설치버전을별도로제공하기도하며, 설치실행파일을별도로릴리스하기도한다. 예컨대 KC2006은 RUD 5.2, RUD 5.4에서설치프로그램을릴리스하였다. 그러나대부분차례대로 RUD들을설치해가면, 새로이설치프로그램을돌려야할필요가거의없을것이다. 정기업데이트파일의제공형식도 kcupdate이다. 6 문서의작성, 컴파일 이제, 본격적으로문서를작성하고처리하는연습을해보자. TEX 을설치하는궁극적목적이문서를작성하기위해서이므로, 이과정을테스트해봄으로써 L A TEX 사용법을거의대부분짐작할수있게될것이다. 그러나 L A TEX 명령들을이글에서모두설명할수는없다. 그것은 L A TEX 사용법에관한많은도움문헌들, 예컨대 lshort-kr, latex4wp, L A TEX Companion 등을참고하여익혀야할것이다. 7절을참고하라. 6.1 작업디렉터리란? 먼저알아두어야할것은작업디렉터리 18) 이다. 자신의작업디렉터리위치를정확하게알아두는것은매우중요하다. 이와관련하여다음과같은점을지적해두자. 1. 작업디렉터리의경로 (PATH) 에공백문자가들어있지않은것이좋다. 19) Windows XP의바탕화면에있는 내문서 폴더는그경로가 ( 사용자 ID가 user 라할때 ), C:\Documents and Settings\user\My Documents 이다. 이경로에는공백문자가들어있다. 바탕화면이나 내문서 를작업디렉터리로선택해도큰문제는없다. 그러나공백문자관련주의가필요하므로, 진짜처음사용자라면권장하지않는다고말해두겠다. 17) 컴퓨터가온라인에연결되어있어야한다. 18) 디렉터리 는전통적인명칭이고그림운영체제 (GUI) 가도입된후로흔히 폴더 라부른다. 이글에서는이두용어를넘나들어썼다. 19) 실은, KC2007 에서작업할때작업디렉터리의공백문자는대부분의경우문제되지않는다. 그러나예전 TEX utility 중일부는공백문자에에러를보이기도한다. 그러므로아예공백문자를포함하지않는경로를권장하는것이다. 17
2. 작업디렉터리의경로에되도록즉시접근할수있으면편리하다. 그러므로경로의깊이가너무깊지않도록하는것이좋다. 3. 작업디렉터리에서명령창을즉시열수있으면때로편리하다. 이것은여러가지유틸리티가있으므로자신에게적절한것을찾아서설치하거나설정해두도록하자. 가장간편한것중하나가 빵집 이라는압축유틸리티인데설치시옵션으로오른쪽버튼의맥락메뉴에명령창열기를추가할수있게되어있다. EmEditor나 WinEdt 등편집기의툴바에도명령창을여는단추가있는데, 이를클릭하면현재작업중인디렉터리로명령창이열린다. 작업디렉터리를, 가령, C:\WORK로하기로하자. 요약하면, 자신의작업디렉터리와그경로에주의를기울이라는것이다. 때로는자신이작성한문서가어디에저장되어있는지잘모르는경우도있으므로, 항상어느디렉터리에서작업하고있는가를알필요가있는것이다. 6.2 새로운문서작성하기기존문서를불러와서작업할수도있겠지만, 여기서는간단한파일을새로만들고, 저장하고, 컴파일하고, 결과를보기로하자. 에디터는 EmEditor를이용하는것으로가정하겠다. 새문서를만드는방법은몇가지가있다. 1. EmEditor에서간단한문서를먼저편집하여자신의작업디렉터리에저장하는방법. 2. 작업디렉터리에먼저내용이없는파일을만들고이것을 EmEditor로열어서편집하고재저장하는방법. 어떤방법을써도마찬가지이다. EmEditor에다음과같은내용을써넣어보자. \documentclass{oblivoir} \begin{document} 헬로우, Hello, World! \end{document} 이파일을저장한다. 저장할때, 문서의인코딩에주의해야한다. EmEditor에아무런설정을가하지않은상태에서는 Windows 기본인코딩인 CP949로저장되는데, 이것은곤란하다. 그러므로반드시 UTF-8로저장하도록하자. 인코딩을제어하거나변경하는것이 EmEditor에서모두가능하므로, Faq의관련페이지 20) 를잘읽어두어야할것이다. 다른에디터의경우라도저장시인코딩문제에신경써야한다는점이같다. 20) http://faq.ktug.or.kr/faq/emeditortip/language 18
6.3 컴파일하고결과보기 컴파일 이란작성한.tex 파일에대해 latex을실행하는것이다. 즉 TEX 으로하여금 L A TEX 포맷을이용하여입력파일을처리하게하는것 을 L A TEX 을실행한다 또는 컴파일한다 고한다. 최종목적출력이 pdf라할때, pdfl A TEX 을직접실행하는방법도있지만, 먼저 L A TEX 을실행하여 dvi를만들고, 이 dvi에대하여 pdf 변환유틸리티 (DVIPDFMx) 를실행하는방법도있다. 이두가지 ( 또는세가지 ) 방법의일장일단에대해서는다른곳에서 ( 예를들면 ko.tex 사용설명서등 ) 충분히다루었으므로해당글을참고하면된다. 컴파일하기컴파일하는전통적인방법은명령행을이용하는것이다. 예를들어, foo.tex이라는파일을컴파일하기위해서, cmd 창을열고 ( 당연히작업디렉터리에서또는작업디렉터리로이동해서 ), 다음과같이명령어를써넣는것이다. #> latex foo 또는아래의 6.4절에서설명되는 Inverse Search를위해서는다음과같이써넣는다. #> latex -src foo 그러나명령행에익숙하지않거나좀더 GUI-지향적인작업환경을원한다면, 명령행작업을버튼을한번클릭하는것으로대신하도록할수있다. WinEdt이나 EmEditor+MTEXHelper2 환경에서는다양한방법으로컴파일하는단추를갖추고있다. 이러한에디터를텍작업에특화된환경을갖춘에디터라한다. 그러나텍에특화된에디터가없다하더라도, KCmenu를이용하면단추를누르는것으로텍작업을할수있다. KCmenu를이용하여컴파일하려면, 일단 KCmenu로하여금자신이작성하고자하는파일을현재작업파일로인식하도록해야한다. 가장쉬운방법은 KCmenu 아이콘으로해당파일을 끌어다놓기 하는것이다. 또는, KCmenu를실행하면처음에뜨는파일찾기대화창에서자신이작업한파일을찾아가도된다. 그후, L A TEX 버튼을누른다. 문서작성결과확인하기 결과를보고싶으면, dvi 보기 단추를누르거나, 아예 pdf 까지자동실행한후에 pdf 보기하는방법이있다. 버튼클릭한번이면최종결과물까지모두만들어주므로, 19
원본 (소스) 에 문제만 없다면 컴파일하고 결과를 보는 것은 아주 쉬운 일이다. 다만, 컴파일하고 화면으로 pdf 파일 등의 결과 파일을 보여주기까지 걸리는 시간 정도는 참아줘야 한다. 짧은 문서는 거의 즉각적으로 결과를 볼 수 있다. 긴 문서는 약간의 시간이 걸리지만 대부분 참을 만하다. dviout 설정의 주의사항 (11 페이지) 에서 언급한 바와 같이 dvi 파일의 경우, 처음에는 약간의 시간이 걸리지만, 만들어진 pk 글꼴이 축적될수록 결과를 빨리 볼 수 있다. 필요한 패키지가 설치되어 있지 않을 때 LATEX 의 장점 중 하나가 전세계의 수많은 사람들이 지난 십수년 간 만들어 둔 솔루션 이 축적되어 있다는 것이다. 그것이 스타일 패키지라 불리는 것이다. 거의 대부분의 상상가능한 문제에 대응하는 패키지가 CTAN21) 에 올려져 있으므로 이를 이용하여 손쉽게 원하는 기능을 활용할 수 있다. 이 패키지를 가져다 자신의 문서에서 쓰도록 하는 선언이 \usepackage{} 이다. 그런데 이 선언은 현재 자신의 TEX 시스템에 해당 스타일 패키지가 설치되어 있어야만 정상적으로 작동한다. 웬만한 스타일 패키지는 배포판에 거의 포함되어 있으나, 그렇지 않은 것도 있을 수 있다. 사실 TEXLive 가 엄청난 규모의 크기를 자랑하는 배포판이기는 하지만 모든 패키지가 완비되어 실려 있다고 말하기는 어렵다. 거기에도 빠진 것이 있는 것이며, 새로이 추가된 패키지는 실리지 못하기도 하는 것이다. KC2007/mpm 은 이와 같은 스타일 패키지를 MiKTEX Package Manager 를 빌어서 관리한다.22) 또한, MiKTEX 최대의 장점이라 일컬어지는 소위 패키지 자동 설치 를 대부분 지원한다. KCmenu 의 경우, [자동 패키지 설치 (kclogmpm)] 이라는 단추가 그 기능을 한다. 컴파일할 때마다 이 단추를 쓸 필요는 없다. 패키지가 설치되지 않았 다는 메시지를 만났을 때만 누르면 된다. 명령행에서 kclogmpm foo 와 같이 실행하는 것과 동일하다. 다만, 이 자동 패키지 설치가 만능은 아니다. 일부 패키지 호출 방식이 복잡한 경우에는 직접 설치해야 하는 경우도 있는데, 이 때는 패키지의 이름을 알아야 한다. 예를 들면 musixps 라는 패키지를 설치하려면 KCmenu 의 [TeX System 관리] 탭에서 패키지 관리의 열람, 갱신, 설치, 제거 버튼을 이용하거나, 명령행에서 다음과 같이 kcmpm 명령을 쓰면 될 것이다. #> kcmpm --install=musixps 21) Comprehensive TEX Archive Network. http://ctan.tug.org 22) KC2007/mpm 이 빌어온 것은 MiKTEX 이 아니라 MiKTEX Package Manager 와 그 Repository 임을 분명히 해둔다. 즉, MiKTEX 이 사용하고 있는 Package Manager 용 파일 저장소에서 동일한 파일을 가져와서 설치하거나 사용하는 것이다. 그러나 KC2007 은 MiKTEX 이 아니다. 20
패키지는한번시스템에설치되면계속설치된상태로유지되므로시간이갈수록새로이설치해야할패키지의수가줄어들것이틀림없다. 이것은 dviout이시간이갈수록페이지뷰어시간이적게걸리게되는것과유사하다. TEX 은초기의진입장벽만잘넘으면그후부터는눈에띄게편리해지는특징을가지고있다. 에러가발견되었을때의처치법어떤이유에서든작성한문서가성공적으로컴파일종료되지않고에러를발생시킨다면, 무언가잘못된것이다. 23) 에러의종류에는수십가지가있지만, 컴파일시에러가발생하는이유는다음두유형중하나이다. 24) 1. 무슨의미인지모르면서다른사람의코드를베껴왔기때문. 2. 자신이작성한코드라면, 오타이거나착각. 다 른 이 유 는 없 다. TEX 에서, TEX 시스템의오류때문에에러가발생할가능성은전무하다고할수있다. 에러발생의경우해결책은다음두가지중의하나이다. 1. 자신의오타나착각을발견했으면수정한다. 2. 자신의오타나착각은전혀없다고생각하거나찾을수없는경우에는 KTUG 게시판에질문한다. 이두가지처방으로모든문제가해결되기를바란다. 다만게시판에질문할때는다음조건을충족시키는것이좋을것이다. ㄱ ) 적절한게시판에질문한다. 예컨대그림관련질문은설치운영게시판에한다든가하는것이다. ㄴ ) 최소한의코드를제공한다. 최소한의코드이어도되지만 \documentclass, \begin{document}, \end {document} 를모두포함하는완전한, 컴파일가능한예제가아니면, 한참동안또는계속답을얻기어려울수있다. ㄷ ) 그림이문제라면문제가된그림을첨부한다. ㄹ ) log 파일을함께제공한다. 23) 컴파일은성공적으로종료되지만메시지를남기는 경고 (Warning) 라는것도있다. 예를들어 Overfull, Underfull 등은경고이다. 경고는오류 ( 에러 ) 가아니므로, 그경중을잘판단하여필요한것은고치고아니면그냥두어도상관없다. log 파일을잘읽는것은이런의미에서도아주중요하다. 24) dviout 에서한글이안보인다든가, 그림이보이지않는다든가하는것은전부컴파일시에러가아니라시스템설정에러일뿐이다. 시스템설정에러는설치를다시하거나설정을올바르게만들거나재부팅하면거의대부분해결된다. 컴파일시에러란, 컴파일이성공적으로종료되지않는에러를말한다. 컴파일은되었다면... 그후부터는 TEX 의소관이아닌것이다. 21
ㅁ ) 자신의상황을가급적자세하게설명하고자신이원하는 ( 또는생각하는 ) 정상 적인상태에대한정보를제공한다. 이규칙을지키는것이질문자나답변자나시간과노력을절약하는방법인것이다. 6.4 인버스서치는언제필요한가? 인버스서치 (Inverse Search) 란, dvi 디스플레이창의특정위치에서거기에대응하는소스의위치로편집기를열어주는, dvi previewer와에디터의동시화기능을말한다. 더구체적으로말하자면, dviout 화면상에서특정위치를더블클릭하면에디터 ( 예로, EmEditor) 가해당파일의해당소스의위치에서열리는것이다. 25) 인버스서치는소스수정시에매우요긴하게쓸수있다. WYSIWYG 출력화면에서소스로바로이동하여수정이가능하다는것은생각만해도즐거운일이다. Windows 시스템에서는 pdf의동시화가불가능하여 26) 부득이인버스서치용으로 dviout을쓰게되어있다. Mac OS X와같은경우, TEXShop이나 Emacs로 pdf Viewer에서인버스서치가가능하지만, 이것은아직까지는 Mac에한정된기능이라고보인다. 27) 인버스서치가제대로동작하게하기위해서는다음두가지조건이충족되어야한다. 1. dviout 에서에디터를호출하는설정을제대로해두어야한다. 2. L A TEX 을돌려서 dvi 를얻을때 source special 이라는기능을활성화해두어야한다. 이것은 latex -src 와같이 -src 또는 -src-specials 옵션을주어서 L A TEX 을부르면된다. 다행히 KCmenu의 L A TEX 실행버튼은 2번의옵션을활성화하도록기본값으로정해두었다. 또한 EmEditor를위한설정이미리된상태로설치된다. 그러므로 KCmenu의 L A TEX 실행버튼으로 dvi를만들면 EmEditor에대해서인버스서치가동작한다. 다른에디터라면거기에맞게 dviout의설정을직접변경해야하는데, 이에대해서는 Faq 를참고하라. 28) 인버스서치에대응하는것으로포워드서치 (Forward Search) 라는기능도있다. 이것은에디터의현재편집중인위치로 dvi viewer를열어주는기능이다. 인버스 25) dviout 의경우, 문단시작위치에가깝게마우스를두고더블클릭하는것이좋다. 26) vpe 패키지를쓰면부분적으로 pdf 동시화가가능하다. 그러나이패키지가아주안정적으로동작하지않고특히 array 나 tabular 와약간충돌이있기때문에일반적목적에사용하기에는 ( 아직은 ) 좀어려워보인다. 27) Mac 에서는 -src 옵션대신 pdfsync 라는패키지를이용해야한다. 28) http://faq.ktug.or.kr/faq/inversesearch 22
서치만큼중요한역할을하는것은아니더라도제법요긴하게사용할때가있다. 포워드서치는편집기에서 dvi viewer를부르는외부프로그램실행옵션을잘설정하면되는데, 몇가지편집기에서의설정값에관한정보가 Faq에있다. 29) 다만 dviout은프로그램의특성때문에현재편집기위치에서한페이지정도전후의출입이있으므로열린위치가꼭편집기커서가있는바로그위치가아니더라도실망하지말고한페이지정도앞뒤로이동해보도록하라. 6.5 유틸리티 KC2007을더효율적으로사용하기위해서는몇가지추가프로그램을설치하는것이편리할수있다. 아래소개하는것은 없어서는안되는 것은아니므로꼭필요해지면자신의판단으로설치하면되는것들이다. 언어 KC2007은 TEX 의운영에필요한거의모든프로그램을포함하고있지만, Perl이나 ruby와같은프로그래밍언어자체를탑재하고있지는않다. 그러나일반적인 L A TEX 문서의작성등에는 KC2007 기본설치만으로도큰문제를겪지않을것이다. 다만, ConTEXt와같은패키지를활용하기위해서는특히 ruby는필수이며, Perl 도있으면좋다. ruby 설치프로그램은편의를위하여 HOME/UPDATES 폴더에넣어둔것이있으므로이를이용한다. 반면 Perl은 Active Perl이좋은평가를받고있는데, 이것은 Active State 사사이트에접속하여내려받아설치할수있다. Active Perl은 ACL(ActiveState Community License) 로배포되는프로그램으로서 language distribution은무료로설치사용할수있다. 그림관련유틸리티 KC2007에는몇가지그림관련유틸리티가포함되어있다. sam2p, bmeps, bmp2png, png2bmp, jbig2, fig2dev, potrace, ebb, xbb, jpeg2ps 등이그런유틸리티들이다. KC2007에있는유틸리티의종류를모두소개하는것은이글에서는벅차다. 그러나직접그림을그리거나편집하는도구는별도로제공하지않는데, 이것은자신의손에익은것을사용하면될것이다. tex4ht를사용하기위해서는 netpbm이라는유틸리티가필요한데, 이것은 GNU- Win32에포함되어있는것을추천한다. 한편, LYX 을위해서는 ImageMagick라는유틸리티가있어야한다. 이것은 LYX 을설치하면서함께설치하도록할수있다. 29) http://faq.ktug.or.kr/faq/forwardsearch 23
7 도움말을얻을수있는곳 7.1 필수문서 KCmenu의 Help 탭에 도움문서읽기 라는버튼이있다. 오른쪽의텍스트필드에적당한파일이름을써넣고이버튼을누르면해당문서를찾아서뷰어로열어준다. 이기능을사용하여읽어볼만한필수적인문서를별도의 kcupdate로제공하고있다. KC2007/UPDATES#s-4.1 30) 의 KCmenu 필수문서 항목을보라. 7.2 그밖의도움말 KTUG의 FAQ 사이트 (http://faq.ktug.or.kr/faq) 는방대한 TEX/L A TEX 관련정보를자랑하고있다. 거기에다가한글로되어있는것이다! 거의대부분의필요한정보를여기에서얻을수있다. L A TEX 을처음시작하는사람이반드시읽어야할입문용문헌으로 lshort-kr을많이추천한다. http://faq.ktug.or.kr/faq/lshort-kr 페이지를찾아보면다운로드받을수있다. L A TEX 에서한글을사용하는문제에대한자세한사항은한국어텍 (ko.tex) 사용설명서를 31) 보면된다. 즐텍! 30) http://faq.ktug.or.kr/faq/kc2007/updates#s-4.1 31) http://people.ktug.or.kr/~karnes/files/kotexguide.pdf 24