LyX(릭스)는 1995년 마티아스 에트리히가 대학 과제로 쓰기 시작한 문서 프로세서입니다. 처음 이름은 Lyrix였는데 Santa Cruz Operation의 워드프로세서와 이름이 겹쳐 LyX로 바뀌었습니다. 더 재미있는 것은 그다음입니다. 주 무대가 리눅스였던 그는 LyX의 화면을 그럴듯하게 만들 도구를 찾아 나섰고, 이듬해인 1996년 KDE를 세웁니다. 리눅스를 대표하는 데스크톱 환경이 LaTeX 프런트엔드를 보기 좋게 하려는 동기에서 태어난 셈입니다. 이 페이지에서는 LyX가 “LaTeX 편집기”가 아니라 뒤에서 LaTeX을 돌리는 문서 프로세서라는 말의 뜻, .lyx라는 고유 형식의 속, 생 LaTeX을 끼워 넣는 TeX 코드(ERT), 그리고 누구에게 배울 값어치가 있는지를 다룹니다.
LyX란 무엇인가——LaTeX 편집기가 아니라 문서 프로세서
LyX는 스스로 조판을 전혀 하지 않습니다. 화면에서 문서를 짜 놓고, 내보낼 때가 되면 따로 설치한 TeX 배포판을 불러 PDF를 만들게 합니다. 그래서 TeXstudio나 VS Code 같은 “LaTeX을 쓰기 위한 편집기”와는 종류가 다르며, 워드프로세서 쪽에서 LaTeX으로 손을 뻗은 도구라 할 수 있습니다. LyX는 TeX Live에 포함되어 있지도 않습니다. 이 컴퓨터의 TeX Live 2024 bin 디렉터리에는 lyx도 tex2lyx도 하나 없었습니다. 설치 순서는 TeX 배포판(TeX Live·MiKTeX·MacTeX)이 먼저, LyX가 나중입니다. 이 순서를 지키지 않으면 설치 프로그램이 LaTeX을 찾지 못해 출력을 만들 수 없다고 알려 옵니다.
라이선스는 GPL이고 Windows·macOS·Linux에서 돌아갑니다. 2.5 계열은 2026년 2월에 나온 줄기이며 이후로도 보수판이 이어지고 있습니다. 지원 언어가 많아 일본어는 물론 아랍어·히브리어처럼 오른쪽에서 왼쪽으로 쓰는 문자도 다룹니다. 기능 가운데 특히 평이 좋은 것은 수식 편집기입니다. 분수·행렬·총합 같은 구조를 팔레트와 자판으로 쌓아 올릴 수 있고, 완성된 수식의 품질은 LaTeX 그 자체입니다. 뒤집어 말하면 LyX가 파는 것은 “LaTeX의 표기를 익히지 않고 LaTeX의 결과를 얻는다”는 한 가지뿐이며, 그 한 가지가 얼마나 값진지에 따라 평가가 거의 결정됩니다.
WYSIWYM——“보이는 것이 곧 의도한 것”이라는 설계
WYSIWYM은 What You See Is What You Mean의 머리글자로, 워드프로세서의 표어 WYSIWYG(What You See Is What You Get)를 비틀어 만든 말이며, LyX는 이 깃발을 든 최초의 문서 프로세서였습니다. 차이는 마지막 낱말 하나에 있습니다. WYSIWYG에서는 “12포인트·굵게·가운데”처럼 겉모습을 직접 움직이고, 생 LaTeX에서는 \section{...}처럼 명령을 손으로 씁니다. LyX는 그 어느 쪽도 아닙니다. 어떤 문단에 “이것은 절 제목이다”, “이것은 각주다”, “이것은 정리다” 하고 역할을 시각적으로 붙여 두고, 글자 크기와 앞뒤 여백은 클래스 파일에 맡깁니다. 그래서 스페이스 키를 몇 번을 두드려도 자간은 벌어지지 않습니다. 여백은 의미에서 정해지는 것이지 누른 횟수에서 정해지는 것이 아니기 때문입니다.
| 방식 | 손으로 움직이는 것 | 화면에 보이는 것 |
|---|---|---|
WYSIWYG | 겉모습 자체(서체·자간·들여쓰기) | 거의 최종 형태. 다만 구조는 남지 않음 |
LyX | 역할(제목·정리·수식 구조) | 최종 형태의 근사. 역할은 서식으로 드러남 |
LaTeX | 명령 자체(마크업을 손으로) | 텍스트뿐. 조판하기 전에는 결과가 보이지 않음 |
.lyx 파일의 속과 lyx2lyx라는 관문
LyX가 저장하는 것은 .tex가 아니라 고유 형식인 .lyx입니다. 이진 파일이 아닙니다. 내용은 사람이 읽을 수 있는 줄 단위 텍스트로, 맨 앞에 어느 판의 LyX가 만들었는지를 적은 줄, 이어서 정수인 \lyxformat, \textclass article 같은 클래스 지정, 그리고 \begin_header … \begin_body … \begin_layout으로 중첩된 본문이 놓입니다. LaTeX 명령을 늘어놓은 것이 아니므로 .lyx를 그대로 TeX 엔진에 넘겨 조판할 수는 없습니다.
이 \lyxformat 정수는 실무에서 은근히 힘을 씁니다. LyX는 형식이 바뀔 때마다 이 번호를 올리고, 오래된 문서를 열 때는 lyx2lyx라는 파이썬 변환기를 통해 현행 형식으로 끌어올립니다(반대로 옛 형식으로 낮출 수도 있습니다). 그래서 0.10 시절 문서도 열립니다. 뒤집어 말하면 새 LyX로 저장한 파일은 옛 LyX가 거부합니다. “file is from a newer version of LyX and the lyx2lyx script failed to convert it”라는 오류가 그것으로, 공저자와 판이 맞지 않을 때 나옵니다. 텍스트인 만큼 Git에 넣을 수는 있지만 GUI 조작의 부산물로 줄이 움직여 차이가 읽기 어렵고, 공동 편집의 창구로는 .tex만큼 솔직하지 않습니다.
메뉴에 없는 지정은 TeX 코드(ERT)로 빠져나갑니다
LyX에 해당하는 UI가 없는 지정은 Insert ▸ TeX Code로 생 LaTeX을 그대로 묻어 넣습니다. 이 영역은 ERT라고 불립니다. Evil Red Text(사악한 붉은 글자)의 줄임말로, 예전 LyX가 생 LaTeX을 붉은 글자로 보여 주던 데서 온 별명입니다. LyX 공식 사이트에는 2000년 3월 자 “A Brief History of ERT”라는 글이 아직 남아 있어, 이름의 유래와 생 LaTeX을 접히는 인셋에 감춘다는 발상이 어디서 왔는지를 기록하고 있습니다. 농담 섞인 별명이 공식 용어로 승격한 드문 예입니다.
% Typical ERT: things LyX has no dialog for.
\setlength{\parindent}{0pt}
\renewcommand{\thefootnote}{\fnsymbol{footnote}}
\textcolor{red}{\rule{\linewidth}{0.4pt}}ERT 말고도 Document ▸ Settings ▸ LaTeX Preamble에 생 프리앰블을 통째로 붙여 넣는 창구가 있습니다. 실은 여기가 갈림길입니다. 학회나 출판사가 건넨 .cls를 써야 한다면, LyX가 그 클래스의 환경을 “역할”로 메뉴에 내놓으려면 클래스에 대응하는 레이아웃 파일(.layout)이 있어야 합니다. 있으면 쾌적하지만, 없으면 그 클래스의 고유 환경을 전부 ERT로 쓰게 되어 화면이 점점 붉어지고 WYSIWYM의 이점이 사라집니다. LyX가 맞는지 아닌지는 대개 “써야 하는 클래스에 레이아웃 파일이 있는가”로 갈립니다.
.tex로 내보내기와 tex2lyx로 들여오기
출력할 때가 되면 LyX는 .lyx를 뒤에서 LaTeX으로 바꾼 뒤 조판합니다. 엔진은 LaTeX(DVI 경유)·pdfLaTeX·XeTeX·LuaTeX 중에서 고를 수 있고, File ▸ Export ▸ PDF로 PDF를, File ▸ Export ▸ LaTeX으로 .tex를 얻습니다. 같은 메뉴에 XHTML·DocBook·EPUB·평문도 있습니다. LyX는 생성한 LaTeX을 숨기지 않는다는 점을 “LaTeX 투명성”이라며 내세우고, 내보낸 .tex를 다른 편집기에서 마무리하는 것은 편법이 아니라 정식 경로입니다.
다만 이 길은 편도라고 여기는 편이 안전합니다. 반대 방향, 곧 기존 .tex를 LyX로 들여올 때는 tex2lyx를 쓰지만, 복잡한 매크로나 LyX가 모르는 패키지는 해석되지 않고 통째로 ERT로 들어오거나 손질이 필요합니다. 그 결과, 내보내서 손으로 고친 .tex를 LyX로 되돌리면 고친 부분이 구조로 이해되지 못한 채 붉은 덩어리가 되어 돌아옵니다. 왕복은 성립하지 않습니다. LyX를 쓴다면 LyX에서 끝내고, .tex로 내보냈다면 그 뒤로는 .tex의 세계에서 사십시오. 이 일방통행을 처음에 정해 두면 마감 앞에서 허둥대지 않습니다.
일본어로 쓸 때 필요한 설정
일본어는 다룰 수 있지만 초기 상태로는 부족하고 몇 가지 설정이 필요합니다. 기본은 Document ▸ Settings에서 일본어용 문서 클래스(예컨대 jsarticle)를 고르고 출력 엔진을 그 클래스에 맞추는 것입니다. 문자 인코딩에는 utf8-platex 같은 pLaTeX용 일본어 인코딩 계열이 있고, CJK 패키지 계열과 japanese 패키지 계열은 inputenc와의 궁합이 달라 조합을 맞추는 것이 관건입니다. 헷갈릴 때 확실한 자료는 일본어 공동체의 TeX Wiki에 있는 LyX 설정 문서로, 운영 체제별 절차가 정리되어 있습니다.
결국 일본어 PDF를 내려면 뒤에서 pLaTeX 계열이나 LuaLaTeX 계열을 돌리게 되므로, LaTeX을 직접 쓸 때의 사정이 그대로 들어옵니다. 화면 층이 하나 늘어난 대가로, 잘 안 될 때 “어느 층이 망가졌는지” 보이지 않는다는 부담도 따라옵니다. 일본어로 쓸 생각이라면 먼저 한 장을 시험 삼아 만들고 PDF와 .tex를 모두 내보내 확인해 보기를 권합니다.
LyX 사용법을 익힐 값어치가 있는 사람은 누구인가
솔직히 말해 LyX 사용법을 익혀 이득을 보는 쪽은 구조가 있는 긴 문서를 쓰면서 LaTeX 표기를 익힐 생각이 없는 사람입니다. 박사 논문, 기술 문서, 장 구성이 정해진 보고서처럼 제목·정리·도표·상호 참조가 반복되는 문서에서는 “역할을 붙이면 체재가 정해진다”는 구조가 깔끔하게 먹힙니다. 수식이 대단히 많은 원고를 표기가 아니라 팔레트로 쌓고 싶은 사람에게도 맞습니다. 반대로 조판을 구석구석 스스로 정하고 싶은 사람, 기존 생 LaTeX 자산을 그대로 편집하고 싶은 사람, 최신 패키지의 세세한 기능을 많이 쓰는 사람에게는 머지않아 ERT의 바다가 기다립니다.
- 맞는 경우: 마크업을 쓰지 않고 구조 있는 문서를 만들고 싶다. 수식을 가리키고 두드려 조립하고 싶다. 워드프로세서에서 LaTeX 품질로 다리를 놓고 싶다. 써야 하는 클래스의 레이아웃 파일이 마련되어 있다.
- 맞지 않는 경우: 조판을 구석구석 스스로 제어하고 싶다. 기존 생 LaTeX 자산을 그대로 편집·재사용하고 싶다. 최신 패키지의 세세한 기능을 많이 쓴다. 공저자가
.tex를 직접 편집한다. - 공동 집필 전에 정할 것: LyX로 끝까지 갈 것인가, 중간에
.tex로 내보내 보통의 LaTeX 프로젝트로 옮길 것인가. 옮긴다면 내보낸.tex를 한 번 손으로 조판해, 클래스·패키지·일본어 엔진이 제출처에서 통하는지 확인해 둡니다.
처음 만져 본다면 완성 원고가 아니라 한 장 분량의 틀을 먼저 만드는 편이 확실합니다. 문서 클래스를 고르고, 제목·절·본문·수식·도표를 하나씩 놓고, PDF를 내보낸 뒤 마지막으로 LaTeX도 내보내 읽어 봅니다. 그 작업 어딘가에서 “LyX의 역할 지정으로 되는 부분”과 “ERT로 빠져나가야 하는 부분”의 경계가 드러납니다. 경계가 어디인지 알고 나서 본문을 쓰기 시작하면, 마감이 가까워져 조판의 세부를 매듭지을 때가 되어도 허둥대지 않습니다.