현대적레이텍활용 Modern Coding Conventions Nova De Hi KTUG/ 공주대학교문서작성워크숍 Fall/2014
입력 \usepackage[utf8]{inputenc} pdftex 에서유니코드를처리하기위해서쓰던코드 LuaTEX 이나 X TEX 에서는불필요 E \'{a} á ã \'{a} 와같이입력할필요없음 유니코드문자를직접입력한다. 기호문자도마찬가지. 현대적레이텍활용 ModernCodingConventions Nova De Hi 2/20
입력 \\ \par 문단을구분하기위해서 \\ 를쓰지말것. \def\r{$\mathbb{r}$} 한두글자, 보편적단어 (begin, end, if, let...) 로된사용자명령을정의하지말것 사용자명령을정의할때 \def 을쓰지말것 현대적레이텍활용 ModernCodingConventions Nova De Hi 3/20
입력 \rm, \sf, \bf, \it \textbf, \mathbf LATEX 2.09 폰트선택명령 (OFSS) 을사용하지말것 \rmfamily, \bfseries, \itshape 와같이 NFSS 선언형을쓰거나 \text... 또는 \math... 명령을일관되게사용한다 memoir 에 [oldfontcommands] 옵션이있지만 $f(x)$ 가함수라고하자. 조사를띄어쓰지않도록입력한다. 현대적레이텍활용 ModernCodingConventions Nova De Hi 4/20
클래스 article, report, book memoir slides beamer memoir 는표준 LATEX 클래스의누누이반복된문제점을대부분해결 memoir 는디자인사용자화에탁월 ( 예 : chapterstyle) beamer 는발표자료작성의사실상표준 memoir 가이미가지고있는기능을중첩해서로드하지말것 ( 예 : sectsty, titlesec, chngcntr, chngpage, geometry, fancyhdr, verse, tocloft, setspace, etc.) 현대적레이텍활용 ModernCodingConventions Nova De Hi 5/20
그림 EPS JPEG, PNG, PDF, SVG(?) EPS 그림은 repstopdf 를통하여 PDF 로변환된다 X TEX 은 PSTricks를그럭저럭처리한다 E SVG 는 inkscape 를이용하여 pdf 로변환한다. 다른포맷의그림은 PNG/JPG/PDF 로변환할수있으면포함할수있다. METAPOST, Tikz, Asymptote,... 페이지장식을위한목적으로는 TikZ 가적절. 현대적레이텍활용 ModernCodingConventions Nova De Hi 6/20
프레임 fbox efbox framed mdframed, tcolorbox, tikz fancybox mdframed, tikz http: //prezi.com/zc355i9tcsgz/talk-kts-2012-mdframed/ breakable shadowed box example \usepackage[framemethod=tikz]{mdframed} \usetikzlibrary{shadows} \newmdenv[shadow=true,shadowcolor=black, font=\sffamily,rightmargin=8pt]{shadedbox} 현대적레이텍활용 ModernCodingConventions Nova De Hi 7/20
페이지스타일, 용지 \def\ps@mypage \makepagestyle (memoir) fancyhdr \makeoddhead... (memoir) geometry (not using memoir), fapa- \hoffset, \voffset... persize (memoir) 현대적레이텍활용 ModernCodingConventions Nova De Hi 8/20
slashbox slashbox diagbox slashbox 패키지는 TEX Live 에없음 diagbox 에 \backslashbox 와같은호환성명령이있음 diagbox 의대각선이 slashbox 보다정교함 현대적레이텍활용 ModernCodingConventions Nova De Hi 9/20
AMSMath, eqnarray NEVER use eqnarray! DO NOT use $$ use mathtools package i=1 b a 1 i f(x) when... when... 현대적레이텍활용 ModernCodingConventions Nova De Hi 10/20
floats, subfloats, caption subfigure subfig subfigure 패키지에약간의호환성문제가있음 subcaption 이붙지않는다면 subfig 도사용하지말것 [H] (float), \captionof (caption, capt-of) [H] 는 [!h] 와거의같다. 그러나더강한명령임 float 밖의그림이나표에 caption 을붙이려면 \captionof 현대적레이텍활용 ModernCodingConventions Nova De Hi 11/20
한글이탤릭 \usepackage{embrac} 한글과영문이혼재된 sentences( 문장 ) 을작성할때, 괄호류가기울어지는것을막아준다. 현대적레이텍활용 ModernCodingConventions Nova De Hi 12/20
각주와미주 endnotes mbenotes 현재까지 의주석을한꺼번에출력하는기능이있다. 장별 endnotes 를구현하기쉬움. table notes, image notes, mathnotes 등의확장기능. sidenotes snotez marginpar 대신쓰는것도가능하다. 현대적레이텍활용 ModernCodingConventions Nova De Hi 13/20
각주와미주 \usepackage{bigfoot} 다중각주, 각주내 verbatim, 각주내수식, 각주내 list, 페이지별각주, 정렬각주 긴각주의페이지분할, 문단형각주 현대적레이텍활용 ModernCodingConventions Nova De Hi 14/20
정리류문단 boiboites thmtools, mdframed thmtools 는확장성이대단히높지만 amsthm 의전통적인방법과약간다르다 정리류문단을꾸미는것이목적이라면 mdframed 로충분 tcolorbox 패키지를이용하는방법도있다. 한때유행했던 boiboites 패키지는사용하지말것. 현대적레이텍활용 ModernCodingConventions Nova De Hi 15/20
표 tabular, longtable tabu tabu 는기존 tabular 의대부분의문제를해결한다. longtable 도 longtabu 로대체. 꼭필요하지않다면 table 의남용은항상재고할것. http://conf.ktug.org/2011/program_files/ KTS2011-progress.pdf tabbing tabto tabbing 환경의정렬방식보다 tabto 가직관적 ( 흥미있다면 ) kslinematters 의 \vobeytabs 명령도참조. 현대적레이텍활용 ModernCodingConventions Nova De Hi 16/20
Stack Engine & coffins \usepackage{stackengine} \usepackage{xcoffins} 겹쳐쌓기. 간단한인터페이스를통하여세로로, 심지어그림위에그림을겹쳐쌓을수있다 baseline 에대하여겹쳐쌓을것들의정렬을세밀하게조정한다. 결합가능한박스 (coffin) 을연결 (joining) 하는방법으로개체를배열한다. 현대적레이텍활용 ModernCodingConventions Nova De Hi 17/20
Math Fonts mathptmx, mathpazo newtx, newpx 일반적으로수학폰트는 legacy TEX 에서쓰던것을그대로쓸수있다. (CM-math, Euler...) unicode-math 를사용해보자. 본문의라틴폰트와수식폰트가일치하거나어울리는것을골라야한다. 본문의라틴폰트는 X LATEX 에서 lm-modern, 그러면 unicode-math에의한 \setmathfont는 lm-math(latinmodern-math.otf) 를사용하는것이좋다. E 현대적레이텍활용 ModernCodingConventions Nova De Hi 18/20
wallpaper 와 watermark draftcopy, draftmark, watermark xwatermark, wallpaper xwatermark 은 wallpaper 용으로쓸수있다. 사용법은 xwatermark 이복잡하지만설정이상세하다. 표지의배경그림등에는간단한 wallpaper 현대적레이텍활용 ModernCodingConventions Nova De Hi 19/20
연산과조건문 \newcount\test \test=1 \advance\test by 1 or calc \numexpr\test+1\relax ε-tex 명령인 \numexpr, \dimexpr 를활용 아주큰수에대해서 bnumexpr ifthen etoolbox, xstring expl3 etoolbox 에는수많은조건문이정의되어있다. etoolbox 나 xstring 을쓰거나아니면 expl3 문법을사용 현대적레이텍활용 ModernCodingConventions Nova De Hi 20/20