LuaTeX 1ms로 대형 문서 실시간 재컴파일: texlode

Real-Time LuaTeX: Recompiling Large Documents in 1ms [pdf]

TUGboat 논문에서 Clemens Lode는 LuaTeX의 노드 구조에서 직접 디스플레이 리스트를 추출하여 PDF 생성을 우회함으로써, 단일 문단을 약 1ms 만에 재컴파일할 수 있음을 보여줍니다. 이는 엔진 수정 없이 표준 TeX Live와 microtype 지원을 유지합니다. texlode는 이 방식을 활용한 브라우저 기반 북 저작 도구로, 출력은 표준 LuaLaTeX과 동일합니다. 벤치마크에 따르면 문단 단위 재컴파일은 문서 크기와 무관하게 O(1) 지연 시간을 보이는 반면, Typst의 증분 컴파일은 문서 크기에 선형적으로 비례합니다. 이러한 접근 방식은 사용자가 보지 않는 페이지의 일시적 불일치를 감수하지만, 이는 수십 년간 워드 프로세서가 사용해 온 패턴입니다.

인간-컴퓨터 상호작용 연구에 따르면 100ms가 반응이 즉각적으로 느껴지는 임계값이며, 60Hz에서 한 프레임(16ms)이 연속적인 시각적 피드백을 위한 예산입니다. 문단당 0.1–2ms의 LuaLaTeX은 프레임 예산 안에 들어와서, 레이아웃이 재생성해야 할 산출물이 아니라 조작할 수 있는 연속적인 양이 됩니다.

이 날의 다른 글

2026-07-18