오늘은 좀 일찍 자고 일찍 인나서 모닝 헬쓰도 해주고 상큼한 주말을 맞아 주려고 했어.. 적어도 저녁 11시 반에 컴퓨터를 켜기 전 까지는.
바르게 살자
Figure 1. 가끔씩은 나도 바르게 살고 싶다.

그러나 자기 직전에 무의식적으로 컴퓨터를 키고 인터넷에 접속을 하니 이제 아침 헬쓰는 말짱 황이네 ㅡ.ㅡ

오늘은 blog에 무얼 쓸까. 고민하다가 갑자기 이 blog의 탄생 배경과 관련된 글을 하나 써야지 하는 생각이 들어서.. 이번에는 \LaTeX을 웹 호스팅 서버에 막무가내로 까는 방법을 끄적거려 보기로 결심했삼. -_-v

주의: 이 글은 UNIX 친화적이면서도 전산적 유희가 듬뿍 가미된 글이니 자신이 nerd이거나 geek이 아니라고 생각한다면 과감히 무시하셔도 됩니다.

참고 1: \LaTeX은 한마디로 “아주 아름답고 체계적인 문서를 만들어내는 조판 시스템”이라고 생각하면 대략 OK. 조금 더 많은 걸 알고 싶다면 wikipedia 사전을 뒤져보면 됩니다.

참고 2: UNIX가 너무 싫다면 다음의 서적을 추천 해 드립니다.. 이름하여 UNIX Haters Handbook
UNIX Haters' Book
Figure 2. 하지만 UNIX 빠돌이 입장에서 이 책은 정말이지 증오스럽다. -_-

자 그럼 달려 볼까?

I. 왜 LaTeX이 필요한데?
그건 미려한 수식을 blog에 직접 입력할 수 있기 때문이지 — 참고로.. 지금부터 나올 \LaTeX 예제의 code를 보고 싶으면 수식 그림에 마우스 포인터를 가만히 올려 놓아봐.. 그럼 code가 popup으로 표시 될 것이야.

다음은 대강 이상한 모양으로 표현된 Spherical Harmonics:

\begin{eqnarray*}\langle l, m | \hat{\mathbf{z}} \rangle \ & = & \  \left.\sqrt{\frac{(2l + 1)}{4\pi}} P_l (\cos \theta) \right|_{\cos \theta = 1} \delta_{m0}\\ \ & = & \ \sqrt{\frac{(2l + 1)}{4\pi}}\delta_{m0}\end{eqnarray*}

이런 지겨운 수식 말고 딴거는 안 되냐고?
왜 안되겠어. 컴퓨터 알고리즘이나 화학식도 집어 넣을 수 있지.

Pb \emph{or} Fe $\stackrel{\star}{\longrightarrow}$ Au (where $\star$ is the Philosopher's stone)

시험 공부에 지친/지칠 그대에게는 다음과 같은 비명을 선사해 드립니다.

\Huge\bf Argh\raisebox{-0.05cm}{h}\raisebox{-0.2cm}{h}\raisebox{-0.45cm}{h}\raisebox{-0.8cm}{h}\raisebox{-1.25cm}{h}\raisebox{-1.8cm}{h}\raisebox{-2.45cm}{\it !}

II. 그럼 아무 웹 호스팅 서버에나 LaTeX 깔 수 있는거야?
확실치는 않지만 login 가능한 계정을 주는 서버에는 아마 대부분 깔 수 있을걸. 어거지로 \LaTeX을 깔기 위해 필요한 library는 별로 없는 듯. 대신 웹 호스팅 업체에서 cgi를 지원 해야 해. 지금 내가 쓰고 있는 cafe24 같은 경우 cgi 기본 지원일 뿐만 아니라 gcc와 여러 유용한 library도 같이 제공 하더군.

그리고 \LaTeX과 blog를 연결시키기 위해 LaTeXRenderer라는 녀석을 깔아 주어야 해. 이 녀석은 \LaTeX 결과 얻어진 고품위 문서를 blog에 연결 시켜줘. (참고로 LaTeXRenderer는 지금 내가 사용하고 있는 blog tool인 WordPress 말고도 다른 blog tool에서도 사용할 수 있다고 함)

그럼 이제 본격적으로 설치에 대한 가이드를..

III. LaTeX 야매로 설치하기

  1. 준비물: 최신 TeXLive CD image, 웹호스팅 서버와 최대한 비슷한 환경으로 꾸며진 노예 컴퓨터.
  2. 노예 컴퓨터에 TeXLive 깔 준비 하기: 웹 서버에서의 계정을 foo라고 하고 www root directory가 /home/foo/www/에 있다고 하자. 그럼 역시 노예 컴퓨터에 foo라는 계정을 만들고 owner가 foo로 되어 있는 /home/foo/www/ directory를 만든다. 그리고 \LaTeX이 깔릴 위치를 결정한다. 예를들어 /home/foo/www/latex/에 깔고 싶으면 그 디렉토리를 서버와 노예컴퓨터 두 군데에 모두 만드삼.
  3. 노예 컴퓨터에 TeXLive 깔기: TeXLive CD image를 받아서 다음과 같이 적당히 마운트를 함.
    # mount -t iso9660 -o ro,loop texlive-inst.iso /mnt/texlive
    Mount된 디렉토리에 foo계정으로 들어가서
    $ sh install-tl.sh
    그럼 뭐라뭐라 뜨는데 일단 플랫폼 잘 맞는지 확인하고 ‘d’ 키를 눌러 installation directory를 /home/foo/www/latex/여기로 변경하삼. 그리고 옵션들 다 맞나 확인한 후 ‘i’를 누르면 설치 시작. 권장 설치를 할 수도 있고 최소 설치를 할 수도 있는데 본인은 용량의 압박 때문에 최소 설치를 하였음. 그래도 아직 쓰는데 불편하지는 않음. 더 자세한 내용은 여기에
  4. 노예 컴퓨터에 설치된 LaTeX를 웹 서버로 copy: 우선 노예 컴퓨터에서 \LaTeX이 잘 되나 다음의 sample.tex 파일을 컴파일 해 보셈 (latex은 path에 들어 있어야 하긋제?):
    $ latex sample.tex
    그래서 sample.dvi가 군소리 없이 잘 나오면 일단은 성공.
    이제.. 웹 서버로 /home/foo/www/latex/ 디렉토리를 통째로 copy하는 부분은 정말 설명이 필요 없음. 그냥 무식하게 copy 하면 됨. 갠적으론 tar + bzip2 방법을 추천하는 바요.
  5. LaTeXRenderer 설치: 아.. 귀차니즘의 압박. 매뉴얼 보고 따라 해 보세효.
  6. LaTeXRenderer 만져주기: 원래 LaTeXRenderer는 tex ―[latex]→ dvi ―[dvips]→ ps ―[Imagemagik]→ png 의 순서로 변환하도록 만들어져 있는데 이렇게 되면 너무 복잡하고.. 무엇보다도 root 권한 없이 Imagemagik을 웹서버에 깔기가 어려워서 gg (Imagemagik은 gs와 기타 잡다한 이미지 라이브러리가 있어야 하는데 이걸 보통 유저 권한으로 깔기란 참으로 즐스러움). 대신 LaTeXRenderer를 살짝 고쳐서 tex ―[latex] → dvi ―[dvipng]→ png와 같이 되도록 하면 매우 nice하다고 할 수 있겠지? 게다가 dvipng는 최소설치해도 TeXLive에 기본적으로 딸려나온다오. 여기에서 RedRiver edition LaTeXRenderer를 받을 수 있는데 받은 다음 확장자를 php로 고치고 적당히 execution 퍼미션 준 다음 class.latexrender.php를 덮어 쓰면 됨. 아참! text 에디터로 $_latex_path, $_dvips_path, $_dvipng_path에 적절한 절대경로 넣어주는 거 잊지 말고!
  7. WordPress에서 LaTeXRenderer plugin activate 하기: 하세효 -_)y=~~~~

그러면 이제 WordPress에서 \LaTeX을 쓸 수 있어. 물론 조금만 머리 굴리면 다른 곳에서도 LaTeXRenderer를 쓸 수 있을 듯. 이제 \LaTeX이 잘 깔렸나 시험을 해 볼까? 그 유명한 Hello world의 LaTeXRenderer 버젼!

Posting 할 때 다음의 내용을 넣어 보셈 (tex 다음에 있는 space는 당근 없어야):
[tex ]Hello \LaTeX{} world![/tex ]

그럼 다음과 같은 가슴 훈훈해지는 문구가 튀어나오며 오늘의 삽질은 여기에서 대단원의 막을 내리게 됩니다.

Hello \LaTeX{}  world!

IV. LaTeX 배우려면 어케 해야 해?
아 마지막으로 이 쯤 되니 ㅅㅂ 글 쓰기 조낸 귀찮아지네 성심껏 답변하자면..
\LaTeX과 관련된 궁금증은 한국 TeX user group같은 곳에서 풀 수 있습니다.

그럼 enjoy \LaTeX life!!