-
Notifications
You must be signed in to change notification settings - Fork 1
/
manual.tex
596 lines (527 loc) · 25.3 KB
/
manual.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
\documentclass[a4paper,10pt]{article}
\usepackage{woosung_hw}
\usepackage{woosung_korean}
\usepackage{woosung_math}
\newcommand{\bs}{\textbackslash}
\title{Vim 에서의 LaTeX 환경 설정 및 사용법}
\author{}
\date{}
\begin{document}
\maketitle
\section{들어가며}
제가 사용하는 LaTeX 환경설정에 대한 파일입니다. 엄청 간단하고 미니멀합니다.
그런데 작업은 무지 빨라지고 편해집니다. 공유를 하면 참 좋겠다고 평소에 생각을 많이
했었습니다. \texttt{.vimrc} 설정이나, \texttt{.sty} 파일 등이 너무 배배 꼬여서 보여주기
부끄러운 상태라 여태껏 공개를 안 했습니다. 이번 여유가 있을 때 정리를 해서 메뉴얼까지
배포하려고 합니다. 부족한 글 솜씨지만 넓은 아량으로 이해해주시면 감사하겠습니다.
\subsection*{제작자 컴퓨터 환경}
저는 \textbf{Ubuntu 16.04 LTS (Gnome)} 환경에서 작업을 합니다. 컴파일은
\texttt{pdflatex} 명령어를 통하여 합니다. \textbf{메뉴얼의 모든 작업은 리눅스 환경에서
이루어집니다.} LaTeX은 터미널에 다음과 같은 명령어를 입력함으로써 설치하였습니다.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
$ sudo apt-get update
$ sudo apt-get install texlive-full
\end{Verbatim}
\textbf{윈도우}에서는 운영체제에 호환되는 Vim과 texlive의 설치보다는 리눅스 에뮬레이터인
\textbf{cygwin}를 이용해 설치를 하시기를 권장드립니다. \textbf{cygwin}의 설치 방법은
이 메뉴얼에서 다루지 않겠습니다. 다만, 에뮬레이터 터미널에서 위와 같은 코드를 통해
\texttt{texlive-full} 을 설치하고 사용하시는 것을 추천드립니다.
\section{Vim 설정}
설치는 간단하게 넘어가도록 하겠습니다. Ubuntu 및 윈도우 \texttt{cygwin} 환경에서는
다음과 같이 설치할 수 있습니다. 다음 코드를 터미널에 입력하시면 됩니다.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
$ sudo apt-get update
$ sudo apt-get install vim
\end{Verbatim}
우분투의 경우 \texttt{vim}이 아닌 \texttt{vim-tiny} 버전으로 이미 설치가 되어있을 가능성이
있습니다. 이러할 경우
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
$ sudo apt-get purge vim-tiny
$ sudo apt-get install vim
\end{Verbatim}
으로 재설치를 하시길 바랍니다.
터미널에서 \texttt{vim} 이라고 입력하신 뒤 엔터를 누르시면 바로 실행시킬 수 있습니다.
Vim 에서는 여러 가지 플러그인들을 깔면 매우 편합니다. LaTeX 문서를 작업할 때는 특히
\begin{itemize}
\item YouCompleteMe (리눅스, OS X 환경에서만 설치 권장)
\end{itemize}
를 추천드립니다. Latex-Suite 등 다른 유명한 플러그인들도 있다만, 한글로
문서를 작업할 때는 영 좋지 못한 것 같습니다. 그래서 LaTeX에 직접적으로 연관된
플러그인들의 설치는 지양하도록 합시다.
플러그인 설치 및 \texttt{.vimrc} 파일 설정 방법은
\href{https://github.com/lego0901/My-Vim-Settings}{Github 포스팅}을 참고하시길 바랍니다.
\subsection*{.latexrc 설정}
Vim으로 LaTeX을 쓰는데 편리한 단축키 소스들을 \texttt{.latexrc} 으로 작성하여 첨부하였습니다.
이를 \\ \texttt{\$HOME/.vim/.latexrc} 위치에 집어넣고 아래 코드를 \texttt{.vimrc} 파일의
맨 아래쪽에 집어넣어 줍시다.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
source $HOME/.vim/.latexrc
au BufRead *.latexrc set filetype=vim
\end{Verbatim}
\texttt{.latexrc} 파일에 있는 내용은 메뉴얼의 뒷 부분에서 다 설명드리도록 하겠습니다.
모두 다 결국 \texttt{nmap}과 \texttt{imap}으로만 이루어진 간단한 코드임을 확인하실
수 있을 것입니다. 각자 자주 사용하는 방식대로 임의로 수정하셔도 괜찮습니다.
\section{스타일 파일 설정}
LaTeX에서 \texttt{sty} 파일은 C의 헤더파일, 자바나 파이썬의 다른 클래스 파일과 비슷하다고
보시면 됩니다. 예를 들어 보겠습니다. \texttt{woosung.sty} 파일에 다음과 같이 입력하여
저장했다고 합시다.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
\usepackage{setspace}
\usepackage{kotex}
\newcommand{\hw}{Hello World!}
\end{Verbatim}
같은 폴더 안에 \texttt{tex} 파일을 만들어 다음과 같이 입력하고 컴파일하면
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
\documentclass{article}
\usepackage{woosung}
\begin{document}
\setstretch{1.25}
안녕하세요! 한글이 입력이 되네! \hw
\end{document}
\end{Verbatim}
아마 다음과 같은 내용의 \texttt{pdf} 문서가 나올 것입니다.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
안녕하세요! 한글이 입력이 되네! Hello World!
\end{Verbatim}
원래 \Verb+\setstretch+ 명령어를 사용하거나, 한글 문서를 조판하려면 \texttt{setspace},
\texttt{kotex} 패키지를 각각 추가해줘야합니다. \Verb+\hw+ 명령어로 \texttt{Hello World!}
를 표현하기 위해서는 \Verb+\newcommand{\hw}{Hello World!}+ 코드가 필요하고 말이죠.
스타일 파일에 이 패키지를 불러오는 코드를 적고, 이 스타일 파일을 \Verb+\usepackage+
명령어로 불러옴으로써 함께 로드가 된 것입니다. 이와 같이 자주 사용하게될 긴 명령어들은
\texttt{sty} 파일로 만들어 미리 저장해두는 것을 권장합니다.
\subsection*{전역적으로 접근할 수 있게 만들기}
매우 자주 쓰는 \texttt{sty} 파일들은 어디에서나 접근할 수 있도록 따로 처리해줄 수
있습니다. 터미널에서 다음과 같은 명령어를 입력하세요.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
$ cd $HOME && mkdir .texmf && mkdir .texmf/tex && mkdir .texmf/tex/latex
$ kpsewhich texmf.cnf
\end{Verbatim}
두 번째 줄의 명령어로 나온 경로에 있는 파일을 아래 명령어로 여세요.
가령 \Verb+/etc/texmf/web2c/texmf.cnf+ 로 나왔다고 하면, 이렇게 입력하시면 됩니다.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
$ vim /etc/texmf/web2c/texmf.cnf
\end{Verbatim}
파일이 열리면 \Verb+TEXMFHOME+ 이라는 항목을 찾아서 이렇게 바꿔줍니다.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
$ TEXMFHOME = ~/.texmf
\end{Verbatim}
이제 \texttt{\$HOME/.texmf/tex/latex} 폴더 안에 자주 쓰는 \texttt{sty} 파일을 집어넣으세요.
그런 뒤, 다시 터미널로 돌아와서 아래와 같은 명령어를 실행시켜주세요.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
$ sudo texhash
\end{Verbatim}
이제부터 따로 해당 \texttt{sty} 파일을 같은 디렉토리에 넣을 필요 없이 어디서든 접근
가능하게 됩니다.
\subsection*{Woosung LaTeX 스타일 파일}
첨부된 \texttt{woosung\_hw.sty}, \texttt{woosung\_korean.sty}, \texttt{woosung\_math.sty}
파일은 제가 유용하게 사용하는 스타일 파일들입니다. 이것도 매우 미니멀합니다.
\begin{itemize}
\item \texttt{woosung\_hw.sty}: 숙제 파일을 만들 때 주로 사용하던 양식인데,
실험 리포트를 비롯한 대부분의 문서에서 이 스타일을 불러와 사용합니다.
\item \texttt{woosung\_korean.sty}: 한글로 문서를 조판할 때 불러와 사용합니다.
\Verb+\setstretch+ 로 문장간 간격에 대한 조정이 되어있습니다.
\item \texttt{woosung\_math.sty}: 수식을 입력할 때 매우 편하게 사용하기 위해
만들었습니다. Theorem, Definition 등을 입력해야할 경우 유용합니다.
\end{itemize}
특히, \texttt{woosung\_math.sty} 파일에 있는 command들이 매우 편리합니다.
파일을 열어보면 다음과 같은 코드가 있습니다.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
...
\newcommand{\R}{\mathbb R}
\newcommand{\N}{\mathbb N}
\newcommand{\Z}{\mathbb Z}
% Analysis
\newcommand{\ep}{\epsilon}
\newcommand{\dt}{\delta}
\renewcommand{\liminf}[1]{\lim_{#1 \ra \infty}} % Excluded when using liminf
\newcommand{\limninf}[1]{\lim_{#1 \ra -\infty}}
...
\end{Verbatim}
만약 어떤 문서에서 \Verb+\usepackage{woosung_math}+ 를 한 다음 아래와 같은 수식을
입력하면
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
\forall n \in \N, \liminf{c} cn = \infty
\end{Verbatim}
아래와 동일한 효과를 얻습니다.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
\forall n \in \mathbb N, \lim_{n \rightarrow \infty} cn = \infty
\end{Verbatim}
즉, 이런 내용의 수식이 입력됩니다.
\begin{align*}
\forall n \in \N, \liminf{c} cn = \infty
\end{align*}
이와 같이 좀 더 단순하게 수학 기호를 입력할 수 있습니다. 대표적인 것들을 몇 개 꼽자면,
\begin{itemize}
\item \Verb+\ra+: \Verb+\rightarrow+ ($\ra$)
\item \Verb+\la+: \Verb+\leftarrow+ ($\la$)
\item \Verb+\Ra+: \Verb+\rightarrow+ ($\Ra$)
\item \Verb+\La+: \Verb+\leftarrow+ ($\La$)
\item \Verb+\R, \N, \Z+: ($\R, \N, \Z$)
\item \Verb+\ep, \dt+: ($\ep, \dt$)
\item \Verb+\inv+: \Verb+^{-1}+ ($\inv$)
\item \Verb+\ie+: (\ie)
\item \Verb+\eg+: (\eg)
\end{itemize}
가 있습니다. 또한, \Verb+\numberthis+ 라는 명령어도 있습니다. 이는
\Verb+\begin{align*} ... \end{align*}+ 환경 내에서 일부 수식에만 번호를 매길 때 사용합니다.
예를 들어 아래와 같이 입력하면
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
\begin{align*}
\sum_{i=1}^{n} i &= 1 + 2 + 3 + \cdots + n \\
&= \frac{n(n+1)}{2} \numberthis
\end{align*}
\end{Verbatim}
이와 같은 수식이 나옵니다.
\begin{align*}
\sum_{i=1}^{n} i &= 1 + 2 + 3 + \cdots + n \\
&= \frac{n(n+1)}{2} \numberthis
\end{align*}
오직 두 번째 줄에서만 \Verb+\numberthis+ 처리를 해줬기 때문에 수식 번호가 매겨진 것입니다.
이는 \\ \Verb+\usepackage{woosung_math}+ 를 넣어줘야 사용할 수 있습니다.
\section{.latexrc 단축키 설명}
우선, Vim에서 새로 파일을 만들었을 경우 다음과 같은 명령어로 파일 타입이 \texttt{tex} 임을
명기해야합니다.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
: set filetype=tex
\end{Verbatim}
자주 사용하는 명령어는 \textbf{볼드체}로 강조해놓았습니다.
\subsection*{컴파일 및 pdf 파일 열기}
\subsubsection*{리눅스 설정}
\begin{itemize}
\item \textbf{[F3] 버튼}: \texttt{pdflatex} 컴파일러로 해당 \texttt{tex} 파일을
컴파일합니다. 컴파일 로그는 \texttt{/tmp/.o.out} 위치에 저장합니다.
\item \textbf{[F4] 버튼}: 컴파일된 \texttt{pdf} 파일을 default 뷰어로 엽니다.
\item \textit{[Ctrl+F3] 버튼}: gnome-terminal 에서 컴파일 로그를 출력하면서 컴파일합니다.
[F3]으로 컴파일해서 오류가 생겼을 때 사용하기를 권장드립니다.
\item \textit{[F5] 버튼}: 오류 로그를 화면 오른쪽에 탭으로 띄웁니다.
\end{itemize}
\subsubsection*{윈도우 Bash 설정}
윈도우 Bash 에서는 리눅스와 같은 명령어로는 GUI 프로그램을 열 수 없습니다.
몇 가지 추가적인 작업이 필요합니다. 우선, 터미널 화면에서 다음과 같이
입력하세요.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
$ cd $HOME
$ vim .bashrc
\end{Verbatim}
이제 홈 디렉토리에 있는 \texttt{.bashrc} 가 열렸을 것입니다. 맨 마지막 줄로 이동한 후,
아래와 같은 내용을 추가하세요.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
alias gopen="/cygdrive/c/Program\ Files\ \(x86\)/Adobe/Acrobat\ Reader\ DC/Reader/AcroRd32.exe"
\end{Verbatim}
이제 저장을 한 후 나옵니다. 만약 Adobe Acrobat Reader를 사용하지 않는다면 뷰어에 해당하는
\texttt{exe} 파일 경로를 대신 \Verb+/cygdrive/..+ 다음에 입력해주시면 됩니다.
다시 터미널에서 다음과 같은 명령어를 입력해주세요.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
$ source .bashrc
\end{Verbatim}
이렇게 설정하시면 [F4] 버튼으로 \texttt{pdf} 파일을 열 수 있습니다.
\subsection*{커서의 이동}
`\Verb+<<-->>+' 무늬를 찾고 다음 위치로 이동하는 작업으로 편리하게 커서를 이동시킬 수
있습니다. 예를 들어 작업하고 있는 \texttt{tex} 파일이 다음과 같다고 가정해봅시다.
커서의 위치는 `\Verb+|+' 표시로 나타내겠습니다.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
$$ sum_{i=0|}^{<<-->>} <<-->> $$
\end{Verbatim}
여기서 [Ctrl+j] 버튼을 누르면 다음과 같이 커서가 이동합니다.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
$$ sum_{i=0}^{|} <<-->> $$
\end{Verbatim}
`\texttt{n}'을 입력한 뒤 [Ctrl+j] 버튼을 누르면 커서가 다음과 같이 이동합니다.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
$$ sum_{i=0}^{n} | $$
\end{Verbatim}
이와 같은 기능으로 키보드만으로도 정말 빠르고 편리하게 조판작업을 할 수 있습니다.
\begin{itemize}
\item \textbf{[Ctrl+j] 버튼}: 다음 `\Verb+<<-->>+' 표시로 이동하고 그 문양을 지웁니다.
\item \textbf{[Ctrl+k] 버튼}: 커서의 위치에 `\Verb+<<-->>+' 문양을 새로 입력합니다.
\end{itemize}
\subsection*{문서 정보 입력}
\begin{itemize}
\item \textbf{\bs Document 입력}: \Verb+\begin{document} ... \end{document}+ 텍스트를
입력합니다.
\item \textbf{\bs Info 입력}: \Verb+\title{} \author{} \date{}+ 텍스트를 입력합니다.
\item \textit{\bs MoreInfo 입력}: \Verb+\title{} \subtitle \author{} \date{} \institute+
텍스트를 입력합니다. 오직 \texttt{beamer} 클래스에서만 적용됩니다.
\end{itemize}
\subsection*{패키지 불러오기 및 기타}
\begin{itemize}
\item \textbf{\bs Package 입력}: \Verb+\usepackage{}+ 텍스트를 입력합니다.
패키지를 불러올 때 사용합니다. 사용 예시:
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
\usepackage{kotex} % Hangul
\usepackage{woosung_hw} % Woosung's style file
\end{Verbatim}
\item \textit{\bs Newcomm 입력}: \Verb+\newcommand{}{<<-->>}+ 텍스트를 입력합니다.
\item \textit{\bs Renewcomm 입력}: \Verb+\renewcommand{}{<<-->>}+ 텍스트를 입력합니다.
\item[] \textit{(environment는 .sty 파일에서 미리 처리해놓는 경우가 많기 때문에
따로 단축키로 넣지 않았습니다.)}
\end{itemize}
\subsection*{챕터와 섹션}
\begin{itemize}
\item \textbf{\bs Chap 입력}: \Verb+\chapter{}+ 텍스트를 입력합니다.
\item \textbf{\bs Sec 입력}: \Verb+\section{}+ 텍스트를 입력합니다.
\item \textit{\bs SSec 입력}: \Verb+\subsection{}+ 텍스트를 입력합니다.
\item \textit{\bs SSSec 입력}: \Verb+\subsubsection{}+ 텍스트를 입력합니다.
\item \textbf{\bs Sec* 입력}: \Verb+\section*{}+ 텍스트를 입력합니다.
\begin{itemize}
\item \bs Chap*, \bs SSec*, \bs SSSec* 도 유사합니다.
\item 챕터 및 섹션에 번호매김을 하지 않습니다.
\end{itemize}
\end{itemize}
\subsection*{텍스트 강조}
\begin{itemize}
\item \textbf{\bs tbf 입력}: 볼드체 텍스트 입력 레이아웃을 적습니다. \textbf{(Text)}
\item \textbf{\bs tit 입력}: 기울임 텍스트 입력 레이아웃을 적습니다. \textit{(Text)}
\item \textbf{\bs ttt 입력}: 모노스페이스 텍스트 입력 레이아웃을 적습니다. \texttt{(Text)}
\item \textit{\bs tsc 입력}: Scientific 텍스트 입력 레이아웃을 적습니다. \textsc{(Text)}
\item \textit{\bs txt 입력}: 플레인 텍스트 입력 레이아웃을 적습니다. 수식 모드에서
플레인 텍스트로 적을 때 주로 사용됩니다. (\Verb+\text{<<-->>}<<-->>+)
\end{itemize}
\subsection*{번호 매김}
\begin{itemize}
\item \textbf{\bs Enumerate 입력}: 1) 2) 3) ... 순의 번호매김 레이아웃을 적습니다.
\begin{itemize}
\item \textit{\bs Enumeratei 입력}: i) ii) iii) ... 순
\item \textit{\bs Enumeratea 입력}: a) b) c) ... 순
\item \textit{\bs EnumerateI 입력}: \textbf{i) ii) iii)} ... 순 (볼드체)
\item \textit{\bs EnumerateA 입력}: \textbf{a) b) c)} ... 순 (볼드체)
\end{itemize}
\item \textbf{\bs Itemize 입력}: 번호 없이 리스팅하는 레이아웃을 적습니다.
\end{itemize}
\subsection*{그림, 표, 가운데 정렬}
\begin{itemize}
\item \textbf{\bs Figure 입력}: 그림을 넣는 레이아웃을 적습니다.
\begin{itemize}
\item 아래와 같이 입력이 됩니다.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
\begin{figure}[!htb]
\centering
\includegraphics[width=.|\textwidth]{<<-->>}
\caption{<<-->>}
\end{figure}<<-->>
\end{Verbatim}
\item[] 올바른 입력 예시는 다음과 같습니다.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
\begin{figure}[!htb]
\centering
\includegraphics[width=.8\textwidth]{src/woosung.png}
\caption{Photo of Woosung Song}
\end{figure}
\end{Verbatim}
\item 커서 이동인 [Ctrl+j] 버튼을 이용하여 차례대로 채우시면 됩니다.
\end{itemize}
\item \textbf{\bs Tabular 입력}: 표를 넣는 레이아웃을 적습니다.
\item \textit{\bs Table 입력}: 표와 함께 캡션을 정의할 수 있는 레이아웃을 적습니다.
라벨링이 가능합니다.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
\begin{table}[h]
\centering
\begin{tabular}{r|c|l}
표의 & 구분은 & \&표시로 합니다. \\ \hline
줄의 & 구분은 & \\표시로 합니다. \\
\end{tabular}
\caption{표의 부연 설명}
\end{table}
\end{Verbatim}
\begin{table}[h]
\centering
\begin{tabular}{r|c|l}
표의 & 구분은 & \Verb+&+ 표시로 합니다. \\ \hline
줄의 & 구분은 & \Verb+\\+ 표시로 합니다. \\
\end{tabular}
\caption{표의 부연 설명}
\end{table}
\end{itemize}
\subsection*{수학 관련 단축키}
\subsubsection*{Align 및 Array}
\begin{itemize}
\item \textbf{\bs Align 입력}: \Verb+\begin{align*} ... \end{align*}+ 를 입력합니다.
한 번에 여러 줄의 수식을 입력할 때 사용합니다. 대부분의 가운데 정렬 수식을
적을때 이 코드를 사용합니다.
\begin{itemize}
\item Align 을 이용해 한 줄만 입력하면 \Verb+$$ .. $$+와 거의 동일한 효과를 냅니다.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
\begin{align*}
\sum_{i=1}^{n} i = \frac{n(n+1)}{2}
\end{align*}
\end{Verbatim}
\begin{align*}
\sum_{i=1}^{n} i = \frac{n(n+1)}{2}
\end{align*}
\item 여러 줄을 줄맞춤하고 싶은 경우 \& 기호를 이용하면 됩니다. 줄구분은
\Verb+\\+ 를 이용하세요.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
\begin{align*}
\sum_{i=1}^{n} i &= 1 + 2 + 3 + \cdots + n \\
&= \frac{n(n+1)}{2}
\end{align*}
\end{Verbatim}
\begin{align*}
\sum_{i=1}^{n} i &= 1 + 2 + 3 + \cdots + n \\
&= \frac{n(n+1)}{2}
\end{align*}
\item 오른쪽에 주석을 달고 싶은 경우 \& 기호를 같은 줄에 하나 더 추가하면 됩니다.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
\begin{align*}
\sum_{i=1}^{n} i &= 1 + 2 + 3 + \cdots + n \\
&= \frac{n(n+1)}{2} & \text{By the mathematical induction}
\end{align*}
\end{Verbatim}
\begin{align*}
\sum_{i=1}^{n} i &= 1 + 2 + 3 + \cdots + n \\
&= \frac{n(n+1)}{2} & \text{By the mathematical induction}
\end{align*}
\item 수식에 번호를 달고 싶으면 그 줄 끝에 \Verb+\numberthis+ 를 다세요.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
\begin{align*}
\sum_{i=1}^{n} i &= 1 + 2 + 3 + \cdots + n \numberthis \\
&= \frac{n(n+1)}{2} & \text{By the mathematical induction}
\end{align*}
\end{Verbatim}
\begin{align*}
\sum_{i=1}^{n} i &= 1 + 2 + 3 + \cdots + n \numberthis \\
&= \frac{n(n+1)}{2} & \text{By the mathematical induction}
\end{align*}
\end{itemize}
\item \textit{\bs Array 입력}: 수식 모드 내에서 표 모양 데이터를 입력할 때
사용합니다.
\end{itemize}
\subsubsection*{정의, 정리 선언 (woosung\_hw.sty 파일 불러올 때만 유효)}
\begin{itemize}
\item \textbf{\bs Thm 입력}: \Verb+\begin{theorem} ... \end{theorem}+ 을 입력합니다.
\item \textbf{\bs Def 입력}: \Verb+\begin{definition} ... \end{definition}+ 을 입력합니다.
\item \textbf{\bs Proof 입력}: \Verb+\begin{proof} ... \end{proof}+ 을 입력합니다.
\begin{itemize}
\item 기타 \textit{\bs Lem, \bs Prop, \bs Coro, \bs Ex, \bs Prob, \bs Remark 입력}:
각각 lemma, proposition, corollary, example, problem, remark를 의미합니다.
\item 문서 작성 예시:
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
\begin{theorem}
Let $X$ be a metrizable space and $A \subset X$.
If $x \in \Cl A$, then there is a sequence $x_n$ on $A$ converges to $x$.
\end{theorem}
\begin{proof}
Assume $x \in \Cl A$.
Note that $B(x, 1 / n)$ is an open neighborhood of $x$
for any $n \in \N$, and it intersects $A$.
\end{proof}
\end{Verbatim}
\begin{theorem}
Let $X$ be a metrizable space and $A \subset X$.
If $x \in \Cl A$, then there is a sequence $x_n$ on $A$ converges to $x$.
\end{theorem}
\begin{proof}
Assume $x \in \Cl A$.
Note that $B(x, 1 / n)$ is an open neighborhood of $x$
for any $n \in \N$, and it intersects $A$.
\end{proof}
\end{itemize}
\end{itemize}
\subsubsection*{괄호 입력}
\begin{itemize}
\item \textbf{\bs Brace$($ 입력}: 소괄호를 좌 우 입력해주고 커서로 쉽게 이동할 수 있도록
레이아웃을 구성해줍니다.
\item \textbf{\bs Brace$\{$ 입력}: 중괄호 입력, 레이아웃 구성해줍니다. 단, \Verb+\{ .. \}+
형태로 구성합니다.
\item \textbf{\bs Brace$[$ 입력}: 대괄호 입력, 레이아웃 구성해줍니다.
\item \textit{\bs Brace$.$ 입력}: 왼쪽은 중괄호를, 오른쪽은 온점을 입력합니다.
아래와 같은 수식을 만들 때 array와 함께 주로 사용됩니다.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
\begin{align*}
h(x) &= \left\{
\begin{array}{ll}
f(x) & \text{if $x \geq 0$} \\
g(x) & \text{otherwise}
\end{array}
\right.
\end{align*}
\end{Verbatim}
\begin{align*}
h(x) &= \left\{
\begin{array}{ll}
f(x) & \text{if $x \geq 0$} \\
g(x) & \text{otherwise}
\end{array}
\right.
\end{align*}
\item \textit{\bs Brace$|$ 입력}: 절대값 괄호 입력, 레이아웃 구성해줍니다.
\item \textit{\bs Bracec 입력}: ceil 함수 기호에 대응되는 괄호를 양 옆에 입력합니다.
\item \textit{\bs Bracef 입력}: floor 함수 기호에 대응되는 괄호를 양 옆에 입력합니다.
\end{itemize}
\subsubsection*{기타 수학기호 단축키}
\begin{itemize}
\item \textbf{\bs frac$\{$ 입력}: 분수 입력 레이아웃을 완성합니다.
\Verb+\frac{|}{<<-->>} <<-->>+
\item \textbf{\bs sum\_ 입력}: 합 입력 레이아웃을 완성합니다.
\Verb+\sum_{|}^{<<-->>} <<-->>+
\item \textbf{\bs prod\_ 입력}: 곱 입력 레이아웃을 완성합니다.
\Verb+\prod_{|}^{<<-->>} <<-->>+
\item \textbf{\bs lim\_ 입력}: 극한 입력 레이아웃을 완성합니다.
\Verb+\lim_{|} <<-->>+
\item \textit{\bs bigcup\_ 입력}: 합집합 입력 레이아웃을 완성합니다.
\Verb+\bigcup_{|} <<-->>+
\item \textit{\bs bigcap\_ 입력}: 교집합 입력 레이아웃을 완성합니다.
\Verb+\bigcap_{|} <<-->>+
\item \textit{\bs bigcup\char`\^ 입력}: 합집합 입력 레이아웃을 완성합니다.
\Verb+\bigcup_{|}^{<<-->>} <<-->>+
\item \textit{\bs bigcap\char`\^ 입력}: 교집합 입력 레이아웃을 완성합니다.
\Verb+\bigcap_{|}^{<<-->>} <<-->>+
\end{itemize}
\subsection*{코드 입력 (모노스페이스)}
\begin{itemize}
\item \textbf{\bs Verbatim 입력}: 코드 입력 레이아웃을 완성합니다.
\begin{itemize}
\item 예를 들어 다음과 같이 코드를 채우면 (백슬래시가 띄어진건 컴파일이 안
돼서 그런거라 이해해주세요..)
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
def woosung():
print("Hello World!")
print("I like you");
\ end{Verbatim}
\end{Verbatim}
\item[] 이런 결과가 나옵니다.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
def woosung():
print("Hello World!")
print("I like you");
\end{Verbatim}
\end{itemize}
\item \textit{\bs NVerbatim 입력}: 줄 번호도 나오는 코드 입력 레이아웃을 완성합니다.
\begin{Verbatim}[numbers=left,tabsize=4,xleftmargin=2em]
def woosung():
print("Hello World!")
print("I like you");
\end{Verbatim}
\end{itemize}
\subsection*{Beamer 설정}
LaTeX으로 강의 슬라이드를 만들거나 학회용 포스터를 사용할 때 주로 사용하는 클래스가
\texttt{beamer} 입니다. 관련 세팅에 대한 메뉴얼은 추후 추가하도록 하겠습니다.
\subsection*{Base 파일 불러오기}
자주 쓰는 양식을 쉽게 불러올 수 있도록 설정해놓았습니다. 첨부된 \texttt{latexbase.tex}
파일을 살펴보면 다음과 같은 코드를 볼 수 있습니다.
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
\documentclass[a4paper,10pt]{article}
\usepackage{woosung_hw}
%\usepackage{woosung_korean}
%\usepackage{woosung_math}
\title{<<-->>}
\author{<<-->>}
\date{<<-->>}
\begin{document}
%\maketitle
\end{document}
\end{Verbatim}
어느 문서를 작업하든 이 양식은 계속 쓰게 됩니다. 이 파일을 \texttt{\$HOME/.vim/latexbase.tex}
위치에 집어 넣으세요. 리눅스 명령어로는
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
$ cp (원래 latexbase.tex 위치) $HOME/.vim/latexbase.tex
\end{Verbatim}
명령어로 옮길 수 있습니다.
이제, 확장자가 \Verb+.tex+ 인 파일을 연 상태에서
\begin{Verbatim}[tabsize=4,xleftmargin=2em]
:call Base()
\end{Verbatim}
를 입력하시면 베이스 파일이 성공적으로 로드 됩니다.
\textit{(주의. 잘못 사용하시면 작업하던 파일이 덮어쓰기 되어 사라질 수도 있습니다.)}
\end{document}