TeX64

어떤 LaTeX 편집기든 결국 같은 물음에 답하게 됩니다. 텍스트 편집기와 latexmk의 조합에 무엇을 더하느냐는 물음입니다. TeX64의 답은 수식 바로 옆에 놓인 도구 셋입니다. 표기법을 외우지 않고도 식을 조립하는 시각 편집기 Blocks, 이미지 속 수식을 기기 안에서 LaTeX으로 옮기는 수식 OCR, 그리고 수정을 차이(diff)로 제안하는 AI Axiom. macOS와 Windows에서 도는 로컬 우선 데스크톱 애플리케이션이며, 조판 자체는 하지 않습니다. 덧붙이면 이 레퍼런스를 펴내는 곳도 TeX64를 만드는 Fermion Inc.입니다. 그래서 이 페이지에는 저장소와 공개 문서에서 확인할 수 있는 것만 적고, 광고 문구는 넣지 않습니다.

TeX64는 무엇이고 무엇이 아닌가

먼저, TeX64는 조판 엔진이 아닙니다. 앱 안에 LaTeX 엔진이 들어 있지 않으며, 빌드할 때마다 따로 설치한 TeX 배포판의 latexmk·lualatex·latexindent·synctex를 호출합니다. TeX 환경이 없으면 컴파일할 수 없다는 것이 문서가 분명히 밝히는 바입니다. 즉 TeX64는 편집·빌드·미리보기를 묶는 프런트 엔드이고, 나오는 PDF는 표준 TeX 툴체인이 만든 것입니다. 이는 제약이자 보증이기도 합니다. 독자적인 문서 형식이 없고 원고는 그저 .tex 그대로이므로, 언제든 다른 편집기나 다른 기기로 가져갈 수 있습니다.

둘째, 여기서 로컬 우선이 뜻하는 바입니다. 편집·빌드·PDF 미리보기·SyncTeX·수식 OCR은 모두 기기 안에서 동작합니다. 인터넷이 필요한 것은 Axiom AI, 계정과 결제 기능, 그리고 아래에서 설명할 관리형 TeX Live의 내려받기뿐입니다. 지원 환경은 macOS 12 이상(Apple Silicon / Intel)Windows 10/11(x64)이며, Windows Store 판의 갱신은 Microsoft Store가 관리합니다. Linux 판은 현재 없습니다. 문서가 그렇게 명시합니다. 편집기를 고를 때는 이 세 가지 — 오프라인으로 쓸 수 있는가, 같은 원고를 두 운영체제에서 다룰 수 있는가, Linux가 필요한가 — 가 첫 번째 체가 됩니다.

설치, 그리고 TeX 환경을 찾았는지 확인하기

다운로드 페이지(/download)는 운영체제에 맞는 경로를 제시합니다. Windows 10/11 x64에서는 Microsoft 서명 Store 설치 프로그램을 실행하고, 이후 갱신은 Microsoft Store가 관리합니다. macOS 12 이상에서는 Apple Silicon 또는 Intel DMG를 열어 TeX64.app을 응용 프로그램 폴더로 끌어다 놓습니다. macOS 산출물은 서명·공증되어 있고 릴리스마다 산출물별 SHA-256이 공개되므로, 내려받은 파일을 그 자리에서 대조할 수 있습니다. 어느 Mac 빌드를 받을지 모르겠다면 터미널에서 uname -p를 실행하세요. arm이면 Apple Silicon, i386이면 Intel입니다.

설치 직후 반드시 해야 할 일은 TeX 환경을 찾았는지 확인하는 것입니다. Settings > 환경(Environment)을 열면 lualatex·latexmk·latexindent·synctex 네 가지가 감지되면 녹색 체크로, 감지되지 않으면 빨간색으로 표시됩니다. 이곳이 빨간 채로 원고를 시작하면, 나중에 빌드가 실패했을 때 편집기 탓인지 TeX이 없는 탓인지 가릴 수 없습니다. TeX 환경이 전혀 없다면 사용자가 승인한 뒤 TeX64가 관리하는 TeX Live를 설치할 수도 있습니다. 이 경로는 미러에서 TeX 패키지를 받아 앱이 관리하는 폴더에 설치하며, 개인정보처리방침이 명시하듯 이때 프로젝트는 업로드되지 않습니다.

  • Windows: 기존 TeX Live, 또는 승인 후 설치하는 TeX64 관리형 TeX Live.
  • macOS: MacTeX(약 4 GB, 필요한 것이 모두 들어 있음), BasicTeX(약 100 MB, 모자란 것은 tlmgr로 보충), 또는 TeX64 관리형 TeX Live.
  • 확인: Settings > 환경에서 lualatex, latexmk, latexindent, synctex 네 가지가 모두 녹색인지.
  • PATH: MacTeX은 /Library/TeX/texbin을 추가합니다. Homebrew로 설치했다면 /opt/homebrew/bin입니다. PATH를 바꾼 뒤에는 터미널과 TeX64를 다시 시작합니다.

작업 공간 — 긴 원고 안을 이동하는 도구

TeX64는 폴더를 작업 공간으로 엽니다. 왼쪽에 파일 트리, 가운데에 세로·가로로 나눌 수 있는 탭 방식 편집기, 오른쪽에 PDF 뷰어가 놓입니다. 뷰어는 별도 창으로 떼어 낼 수 있어, 모니터가 둘이면 한쪽에 소스를 다른 쪽에 PDF를 둘 수 있습니다. 긴 원고에서 값을 하는 것은 아웃라인 패널로, 장·절·그림·표·레이블·인용·TODO를 계층으로 늘어놓고 입력에 따라 갱신됩니다. 항목을 누르면 그 자리로 이동하므로 300쪽짜리 논문에서도 구조를 놓치지 않습니다. Cmd+Shift+O(Windows는 Ctrl+Shift+O)로 여닫습니다.

검색은 두 층입니다. Cmd+F는 현재 파일 안을, Cmd+Shift+F는 작업 공간 전체를 대상으로 하는 전체 텍스트 검색(ripgrep이 담당)으로, 줄 번호가 붙은 목록에서 해당 위치로 이동할 수 있습니다. 이 패널에는 프로젝트 전체 일괄 치환도 있어 \mycommand\mynewcommand로 바꾸는 작업이 한 번에 끝납니다. 치환 전에 결과를 확인하는 습관을 들이십시오. 그리고 눈에 잘 띄지 않지만 사고를 크게 줄이는 기능이 파일 이름 변경입니다. 파일 트리에서 이름을 바꾸면 프로젝트 안의 \input·\include·\graphicspath 참조가 자동으로 따라옵니다. 장 파일을 정리할 때마다 참조를 손으로 고쳐 온 사람에게는 이 한 가지만으로도 옮길 이유가 됩니다.

terminal
thesis/                 # open this folder as the workspace
  main.tex              # \documentclass + preamble + \begin{document}
  chapters/
    intro.tex           # pulled in with \input{chapters/intro}
    methods.tex
  figures/
    setup.pdf           # ASCII names, hyphens, no spaces
  refs.bib
  • \documentclass·패키지·\begin{document}main.tex에 모으고, 장은 \input{chapters/intro}로 불러옵니다. 프로젝트에 \documentclass가 하나뿐이면 루트 파일 자동 감지는 어긋나지 않습니다.
  • 그림 파일 이름은 영문자·숫자에 하이픈이나 밑줄을 쓰고 공백은 피합니다. 나중에 이름을 바꿀 때는 파일 트리의 “이름 바꾸기”를 쓰면 참조가 따라옵니다.
  • 장이나 그림을 더하기 전에 짧은 문서를 Cmd+Enter한 번 통과시켜 둡니다. 여기서 실패하면 원인은 원고가 아니라 TeX 환경 쪽으로 확정됩니다.
  • Axiom에 큰 수정을 맡기기 전에 빌드가 통과하는 상태로 만들고, 제안된 차이와 다시 조판한 PDF를 마지막으로 정상 빌드된 판과 견주어 판단합니다.
  • 여러 파일로 나뉜 프로젝트에서 SyncTeX이 듣지 않으면, 먼저 루트 파일 설정을, 다음으로 빌드 뒤 .synctex.gz가 생성되었는지를 봅니다.

빌드는 어떻게 도는가, 그리고 Cmd+B가 빌드가 아닌 이유

빌드는 latexmk가 맡습니다. 즉 상호 참조를 풀기 위한 반복 실행, BibTeX·Biber, makeindexxindy, 그리고 바뀐 것이 없으면 다시 조판하지 않는 판정까지 모두 latexmk의 방식이 그대로 적용됩니다. 루트 파일(\documentclass가 들어 있는 파일)은 프로젝트를 훑어 자동으로 판별되며, \documentclass가 여럿인 구성에서는 수동으로 지정할 수 있습니다. 빌드 프로파일을 여러 개 두고 각각에 pdflatex·xelatex·lualatex 같은 엔진과 추가 플래그를 배정할 수도 있습니다. 중간 파일을 버리려면 Settings > 빌드 프로파일의 Clean을, 생성된 출력까지 지우려면 Clean -C를 씁니다. 로그는 컴파일 중에 흐르므로 latexmk가 몇 회차를 돌고 있는지 그대로 보입니다.

여기에 다른 편집기에서 온 사람들이 가장 먼저 놀라는 배정이 있습니다. Cmd+B는 빌드가 아닙니다. TeX64에서 Cmd+B\textbf{} 삽입, Cmd+I\textit{} 삽입에 배정되어 있고, 빌드는 Cmd+Enter 또는 툴바의 재생 버튼입니다. 별나 보이지만 근거는 사용 빈도에 있습니다. LaTeX을 쓰는 한 시간 동안 \textbf{}를 치는 횟수와 빌드를 돌리는 횟수를 견주어 보면, 어느 쪽이 가장 짧은 키를 차지해야 하는지는 저절로 정해집니다. 워드프로세서에서 Cmd+B를 굵게로 익힌 손가락이 그대로 통한다는 부수 효과도 있습니다. Windows에서는 CmdCtrl, OptionAlt에 대응합니다.

키(macOS)하는 일
Cmd+Enter빌드. latexmk를 실행하고 PDF 미리보기를 갱신합니다
Cmd+B\textbf{} 삽입. 선택 범위가 있으면 감쌉니다. 빌드가 아닙니다
Cmd+ClickPDF에서 클릭해 해당 소스 줄로 돌아갑니다(역방향 SyncTeX)
Cmd+Shift+EBlocks(시각 수식 편집기)를 엽니다
Cmd+Shift+AAxiom의 AI 채팅 패널을 엽니다
Cmd+Shift+F작업 공간 전체를 전문 검색합니다(일괄 치환도 여기)
Cmd+P파일 이름의 일부만으로 파일을 엽니다
Cmd+D같은 단어의 다음 출현을 선택합니다. 반복하면 다중 커서가 됩니다

표기법을 몰라도 수식을 조립하기(Blocks)

Blocks는 LaTeX 표기법을 외우지 않고도 수식을 조립할 수 있는 시각 편집기입니다. 내부에서는 대화형 수식 빌더 MathLive를 쓰며, 그리스 문자·연산자·관계 기호·화살표·집합 기호·분수와 근호 같은 구조·악센트류를 팔레트에서 골라 식을 만듭니다. 입력하는 동안 조판 결과가 실시간으로 그려지고, 확정하면 대응하는 LaTeX 코드가 소스에 자동으로 삽입됩니다. 바로 이 점이 핵심입니다. Blocks는 자체 형식을 만들지 않습니다. 나오는 것은 손으로 썼을 때와 똑같은 .tex 조각입니다.

여는 방법은 셋입니다. 수식 환경에 커서를 두고 오른쪽 클릭 > “Edit in Block”, 메뉴의 Math > Block Editor, 또는 Cmd+Shift+E(Windows는 Ctrl+Shift+E). TeX64가 수식 환경을 자동으로 감지해 블록을 띄웁니다. 대상은 별행 환경인 equation·align·gather·multline·split·cases, matrix 계열 행렬 환경, 그리고 $...$\(...\)로 쓴 인라인 수식입니다. 쓰임새는 분명합니다. 아직 명령을 모르는 기호가 든 식이나 괄호의 짝을 놓쳐 버린 긴 식을 다시 짤 때 강하고, 반대로 익숙한 \frac{a}{b}를 치는 정도라면 키보드가 여전히 빠릅니다.

이미지 속 수식을 LaTeX으로 — 기기 안에서 도는 OCR

수식 OCR은 이미지 속 수식을 LaTeX 코드로 옮깁니다. 메뉴의 Math > OCR에서 화면 영역을 고르면 번들된 ONNX / Tesseract 구성 요소가 기기 안에서 해석한 뒤 결과를 편집기에 삽입합니다. 여기는 사실관계를 정확히 적을 값어치가 있는 대목입니다. 개인정보처리방침과 이용약관이 모두 명시하듯 선택한 화면·이미지 캡처는 OpenAI로 전송되지 않습니다. OCR은 오프라인에서 동작하며 무료 플랜에 포함됩니다. 손으로 쓴 노트 사진, PDF 안의 수식, 교과서 스크린샷이 모두 대상이 됩니다.

실무상 주의가 셋 있습니다. 첫째, 화면 영역을 가져오려면 운영체제의 화면 캡처 권한이 필요할 수 있으며, macOS에서는 요청받을 때 “화면 기록”을 허용합니다. 둘째는 정확도로, 대비가 높은 이미지를 쓰고 수식 부분만 잘라낼수록 결과가 안정됩니다. 셋째는 검증입니다. OCR은 보조이지 정서(淨書)가 아니므로 삽입된 코드는 반드시 한 번 빌드해 PDF와 견주어 보세요. 아래 첨자와 위 첨자, 1l, \timesx 같은 혼동은 소스를 다시 읽는 것보다 조판해 보는 편이 훨씬 빨리 드러납니다. 둘의 갈림은 이렇습니다. 처음부터 새 식을 만들면 Blocks, 종이나 PDF에 이미 있는 식을 옮겨 오면 OCR.

Axiom — 차이로 제안하는 AI, 그리고 그 경계

Axiom은 TeX64에 내장된 AI 집필 보조 기능이며, 창구가 둘입니다. 자연어로 주고받는 AI 채팅(Cmd+Shift+A)과, 편집기 안에서 다음 줄·수식·문단을 제안하는 인라인 완성입니다. 특징은 그저 대화하는 데 그치지 않고 프로젝트 안에서 직접 작업한다는 점입니다. 문서에 따르면 Axiom은 프로젝트 파일과 파일 트리를 읽고, 편집을 차이(diff)로 제안하며, 프로젝트를 컴파일해 빌드 로그를 읽고, arXiv를 검색해 BibTeX 항목을 가져옵니다(arxiv_search, arxiv_bibtex). 이 기능들은 AI를 쓸 수 있는 모든 플랜에서 제공됩니다.

AI가 소스에 손대는 도구에서는 할 수 있는 일보다 경계가 더 중요합니다. 첫째, 제안된 차이는 사용자가 확인하고 승인하기 전에는 적용되지 않습니다. 둘째, Axiom은 작업 공간 밖의 파일에 접근할 수 없고 임의의 시스템 명령을 실행할 수 없습니다. 쓸 수 있는 도구가 제한되어 있습니다. 셋째, API 키와 토큰은 자동으로 가려집니다. 데이터의 흐름에 대해서는 개인정보처리방침과 이용약관이 같은 말을 합니다. Axiom을 실행했을 때만 그 요청에 필요한 프롬프트와 문맥(선택한 텍스트나 관련 프로젝트 내용을 포함할 수 있습니다)이 설정된 AI 서비스(현재는 OpenAI API)로 전송됩니다. 수식 OCR의 캡처는 전송되지 않습니다. 또한 사이트의 FAQ는 논문 데이터가 AI 학습에 쓰이지 않는다고 명시합니다. 기밀이 든 원고를 다룬다면 보내기 전에 개인정보처리방침을 직접 확인하세요.

플랜 구성을 알아 두면 헤매지 않습니다. 편집기, 빌드 시스템, PDF 미리보기, SyncTeX, Blocks, 기기 내 수식 OCR은 무료 플랜에 포함됩니다. AI에 대해서는 모든 플랜에 월간 Axiom 사용량이 있고, 현재 값은 앱 안에 표시됩니다. 유료인 Basic과 Pro는 그 사용량을 넓히며, Pro는 나아가 우선 처리와 장문용 넓은 문맥, 그리고 가장 성능이 좋은 Axiom 모델을 제공합니다. 사용량을 다 써도 로컬의 OCR·편집·빌드·PDF 미리보기는 그대로 동작합니다. 마지막으로 운용의 요령 하나. Axiom에 큰 수정을 맡기기 전에 빌드가 통과하는 상태를 만들어 두십시오. 그러면 제안된 차이와 적용 후 다시 조판한 PDF를, 마지막으로 정상 빌드된 판과 견주기만 하면 판단할 수 있습니다.

SyncTeX — 소스와 PDF를 오가기

SyncTeX은 소스와 PDF의 대응 위치를 양방향으로 잇는 구조이며, TeX64의 PDF 뷰어에 내장되어 있습니다. 정방향(소스 → PDF)에서는 편집기 커서 위치에 대응하는 PDF 영역이 강조되고 뷰어가 그리로 저절로 스크롤합니다. 역방향(PDF → 소스)에서는 PDF를 Cmd+클릭하면 대응하는 소스 줄로 곧장 이동해 그 줄을 강조합니다(문단이나 figure 같은 여러 줄 블록이면 블록 첫머리로). 전제는 딱 둘입니다. synctex를 쓸 수 있을 것, 그리고 빌드가 .synctex.gz를 생성할 것. TeX64의 빌드는 이 생성을 기본으로 켜 둡니다.

여러 파일로 나뉜 구성에서도 동작합니다. \input이나 \include로 분리한 파일 안의 요소를 클릭하면 알맞은 외부 파일이 열리고 해당 줄로 이동합니다. 다만 이는 루트 파일(\begin{document}가 든 본체 파일)이 올바르게 설정되어 있어야 하며, 루트가 어긋나면 SyncTeX은 아예 작동하지 않습니다. TeX64는 자동 감지를 시도하고, 필요하면 메뉴의 “Set Root File”로 명시할 수 있습니다. 이동 정밀도에 대해서도 현실적인 기대치를 가지는 편이 좋습니다. 대개는 문단 수준의 정확도로 알맞은 줄에 닿지만, tikzpgfplots처럼 매크로로 많은 내용을 생성하는 패키지가 끼면 대응이 어려워져 쪽 단위 같은 거친 정밀도가 되기도 합니다. 빌드 뒤 프로젝트에 .synctex.gz가 있는지 확인하는 일이 그 모든 진단의 첫걸음입니다.