온라인에서 사용해 보기(Overleaf 등)

LaTeX을 시험해 보는 데 설치는 필요 없습니다. 브라우저로 온라인 편집기를 열고, 계정을 만들고, 열몇 줄짜리 원고를 붙여 넣고 “Recompile”을 누르면 됩니다. 여기까지 오 분이면 충분합니다. 게다가 그 순간 돌아가는 것은 수천 개의 패키지가 실린 완전한 TeX 환경입니다. 이 페이지는 그 처음 오 분만을 다룹니다. 브라우저 너머에서 무슨 일이 벌어지는지, 첫 세션은 실제로 어떻게 흘러가는지, 그리고 누구나 곧바로 부딪히는 세 가지 — 컴파일 제한 시간, 쓸 수 있는 패키지의 범위, 원고가 어디에 저장되는가 — 를 미리 알아 두기 위한 안내입니다. 서비스 비교와, 클라우드에 남을지 자기 기계로 옮길지에 대한 판단은 다른 페이지에 맡깁니다.

“Recompile”을 눌렀을 때 브라우저는 무엇을 하고 있는가

거의 아무것도 하지 않습니다. 조판은 서버 쪽에서 돌아갑니다. 브라우저가 올려 보내는 것은 소스 문자열뿐이고, 저편에는 TeX Live가 통째로 들어간 기계가 있어 그곳에서 pdflatex이나 lualatex이 실행되며, 만들어진 PDF가 돌아와 화면 오른쪽 절반을 채웁니다. 구조는 그게 전부입니다. 그러니 온라인 편집기는 “TeX의 간이판”이 아닙니다. 로컬 설치와 같은 엔진, 같은 패키지, 같은 출력입니다. 배운 것은 그대로 자기 기계로 옮길 수 있고, 반대로 로컬에서 도는 원고는 대개 그곳에서도 그대로 통과합니다.

이 단계에서 어떤 서비스를 여는지는 생각만큼 중요하지 않습니다. 가장 널리 쓰이는 것이 Overleaf, 일본어가 초기 설정 그대로 통하는 것이 Cloud LaTeX, 공개 프로젝트를 무제한으로 만들 수 있는 무료 등급을 가진 것이 Papeeria입니다. 그 밖에도 편집기를 과학 계산 작업 공간에 통합한 CoCalc, 그리고 TeXpage, Authorea 등이 있습니다. 어느 것을 고르든 “소스를 쓰고 버튼을 누르면 PDF가 나온다”는 경험은 같습니다. 일단 하나를 열고 오 분만 만져 보세요. 비교는 그다음이면 충분합니다.

latex
% paste this in, press Recompile, and you have used LaTeX
\documentclass{article}
\begin{document}
Hello from the browser. Here is an equation:
\[ \int_0^1 x^2 \, dx = \frac{1}{3} \]
\end{document}

첫 세션은 실제로 어떻게 흘러가는가

빈 페이지에서 정교한 설정을 쌓아 올리지 말 것. 처음 삼십 분에 가장 효과가 큰 습관입니다. 템플릿이나 위의 최소 예제를 열고, 본문 한 단락만 자기 문장으로 바꾸고, 컴파일이 통과하는 상태를 일단 저장합니다. 그다음 제목, 수식, 그림, 참고문헌 순으로 한 번에 하나씩 더해 갑니다. 이 방식의 장점은 무언가 깨졌을 때 범인이 이미 정해져 있다는 것입니다. 직전에 더한 한 수를 되돌리면 반드시 고쳐지므로 추리할 필요가 없습니다. 반대로 처음부터 \usepackage를 열 줄 늘어놓고 시작하면, 첫 오류가 그중 어느 것 때문인지 알 수 없습니다.

첫 오류는 대개 둘 중 하나입니다. 명령의 철자를 틀리면 ! Undefined control sequence., 본문에 _^를 쓰면 ! Missing $ inserted.가 납니다. 뒤엣것은 “아래첨자는 수식의 것”이라는 TeX의 주장으로, \_라고 쓰거나 $x_1$처럼 수식으로 들어가면 해결됩니다. 온라인 편집기는 이 오류들을 PDF가 있어야 할 자리에 목록으로 보여 주는데, 반드시 맨 위 오류부터 고치세요. TeX의 오류는 연쇄합니다. 아래쪽에 늘어선 것들은 대개 첫 건의 여파여서, 맨 앞을 고치면 함께 사라집니다. 그래도 PDF가 옛것 그대로라면, 캐시된 보조 파일을 버리고 전체를 다시 짜는 “Recompile from scratch”에 해당하는 메뉴를 찾습니다.

처음 부딪히는 벽 — 컴파일 제한 시간

서버가 한 사람의 원고에 무한정 시간을 내줄 수는 없으므로 무료 등급에는 컴파일 제한 시간이 있습니다. Overleaf의 공식 문서에 따르면 2026년 시점에 무료 플랜은 10초, 유료 플랜은 240초입니다. 열몇 줄짜리 연습으로는 결코 닿지 않지만, TikZ로 그린 무거운 그림, 수십 장의 고해상도 이미지, pgfplots로 수만 점을 찍는 그래프, 그리고 긴 학위논문에서는 실제로 넘어갑니다. 넘으면 PDF는 나오지 않고 시간이 초과되었다는 안내가 뜹니다.

대처법은 정해져 있습니다. 먼저 이미지를 줄이세요. 투고용 300 dpi 그림을 원본 크기 그대로 수십 장 놓는 것이 초과의 최대 원인입니다. 다음으로 \documentclass[draft]{article}이나 각 서비스의 draft·fast 모드로 이미지 그리기를 건너뜁니다. 그림 자체가 무겁다면 TikZ 그림을 한 번만 컴파일해 PDF로 써 두고, 이후로는 \includegraphics로 읽어 들입니다(external 라이브러리가 바로 이 일을 자동화합니다). 그래도 모자라면 장별로 파일을 나누고 \includeonly로 작업 중인 장만 조판합니다. 그리고 이 벽에 본격적으로 부딪힐 무렵이면, 대개 로컬에 설치할 시기가 온 것입니다.

패키지는 어디까지 쓸 수 있는가

거의 전부입니다. 주요 서비스는 TeX Live를 통째로 얹고 있으므로, CTAN에 있는 것은 \usepackage라고 쓰면 대개 통합니다. 로컬 설치에서 흔한 “패키지가 없다”는 식의 막힘은 온라인에서는 사실상 일어나지 않습니다. 걸리는 곳은 다른 셋입니다. 하나는 외부 프로그램을 부르는 패키지입니다. minted는 구문 강조를 위해 파이썬의 Pygments를 띄우므로 -shell-escape를 켜야 하는데, 가능 여부와 방법이 서비스마다 다릅니다. 둘은 자기 글꼴입니다. OTF나 TTF를 직접 올리고 fontspec으로 읽어야 하며, 당연히 컴파일러도 XeLaTeX이나 LuaLaTeX으로 바꿔야 합니다. 셋은 TeX Live의 연도판입니다. 서비스 쪽 판이 낡았다면 새 패키지의 새 기능은 쓸 수 없습니다.

서버를 전혀 쓰지 않는 길도 지금은 실재합니다. WebAssembly로 컴파일러째 브라우저에 들여오는 방식이며, 대표 예가 SwiftLaTeX입니다. pdfTeX과 XeTeX을 WebAssembly로 이식해 단말 안에서 돌리고, 필요한 패키지만 CTAN 미러에서 가져옵니다. 서버 왕복이 없으니 제한 시간이라는 개념이 사라지고, 원고가 기기 밖으로 나가지 않는다는 이점도 있습니다. 다만 패키지 망라도와 실적은 아직 완전한 TeX Live에 미치지 못하므로, 일단 시험해 보는 단계에서는 서버형을 고르는 편이 빠릅니다.

쓴 원고는 어디에 놓여 있는가

자기 PC가 아니라 서비스 제공자의 서버 위입니다. 당연해 보이지만 처음 오 분 동안은 의식하기 어려운 사실이고, 실무적으로 세 가지 함의가 있습니다. 첫째, 미발표 연구나 기밀을 담은 원고를 어디에 둘지는 소속 기관의 규정에 비추어 판단해야 할 문제가 됩니다. 둘째, 소스를 꺼내는 수단을 이른 단계에 확인해 둘 것. PDF 내려받기는 어디에나 있지만, .tex와 이미지를 포함한 일습을 ZIP·Git·Dropbox로 가지고 나갈 수 있는지는 서비스마다 다릅니다. 시험 삼아 쓰기 시작한 원고가 실제 결과물이 되는 일은 흔하고, 그때 출구가 없으면 곤란합니다. 셋째, 계정을 잃으면 원고도 잃으므로 고비마다 손안으로 내려받아 두는 편이 안전합니다.

하나 더, 일본어로 쓸 생각이라면 처음 오 분 안에 확인해 둘 설정이 있습니다. 많은 서비스의 기본 컴파일러는 pdfLaTeX인데, 이것은 일본어를 조판하지 못합니다. 아무 설정 없이 일본어를 치면 오류가 나거나 글자가 사라진 PDF가 나옵니다. 메뉴에서 컴파일러를 LuaLaTeX으로 바꾸고 ltjsarticle이나 jlreq를 쓰면 통과합니다. Cloud LaTeX처럼 처음부터 일본어가 통하는 서비스도 있으니, 일본어가 주라면 선택의 기준이 됩니다. 일본 학회지에서 흔한 pLaTeX 경로를 써야 한다면 platexdvipdfmx를 차례로 부르는 latexmkrc를 프로젝트에 두어야 하는데, 이는 오 분에 끝나는 일이 아닙니다(절차는 Overleaf 페이지에 있습니다). 어느 쪽이든 본문을 쓰기 시작하기 전에 짧은 일본어 한 문장으로 컴파일을 통과시켜 두세요.

latex
% first set the compiler to LuaLaTeX in the service menu
\documentclass{ltjsarticle}
\begin{document}
こんにちは、\LaTeX。数式も書けます: $e^{i\pi}+1=0$
\end{document}
  • 투고처가 정해져 있다면 서비스의 템플릿 갤러리에서 공식 템플릿을 찾아 두고 시작하세요. IEEE, ACM(acmart 클래스), Springer Nature의 LNCS는 모두 공식판이 올라와 있어 백지보다 확실히 빠릅니다. 학회에서 .sty를 받았다면 .tex 옆에 올려 두면 읽힙니다.
  • 일본어라면 본문을 쓰기 전에 짧은 한 문장으로 컴파일을 통과시킵니다. 기본값인 pdfLaTeX으로는 조판되지 않습니다.
  • PDF뿐 아니라 .tex와 이미지를 포함한 일습을 ZIP·Git·Dropbox로 내보낼 수 있는지 초기에 확인해 둡니다.
  • 오류는 맨 위부터 고칩니다. TeX의 오류는 연쇄하므로 아래쪽 것들은 첫 건을 고치면 사라지는 경우가 많습니다.
  • 연습 파일이 제한 시간에 닿는 일은 없지만, 이미지를 많이 붙이기 시작했다면 먼저 해상도와 치수를 의심하세요.