대규모 LaTeX 프로젝트의 구조, 장 미리보기, 명명 규칙

블로그EasyLaTeX Official게시일

큰 프로젝트는 수정 위치가 불명확하고 컴파일이 느리며 패키지 설정이 흩어질 때 관리 비용이 커집니다. 파일 역할을 나누고 서문을 모으며 이름을 일관되게 사용하세요.

역할별 폴더

Plain text
project/├── main.tex              % 클래스와 장 순서├── preamble.tex          % 패키지와 프로젝트 명령├── chapters/│   ├── intro.tex│   ├── method.tex│   └── results.tex├── tables/               % \input으로 읽는 표 소스└── figures/

아래 메인 파일은 지정한 위치의 preamble.tex와 세 장 파일이 필요합니다.

LaTeX
% main.tex\documentclass[11pt]{article}\usepackage{kotex}\input{preamble}​% 장 미리보기에만 주석 해제, 최종에는 주석 유지% \includeonly{chapters/method}​\begin{document}\include{chapters/intro}\include{chapters/method}\include{chapters/results}\end{document}

클래스, 공통 설정, 장 순서는 메인이 맡고 장 수정은 보통 chapters/의 한 파일에서 합니다.

패키지 로딩은 한곳에서

여러 곳에서 다른 옵션으로 불러오면 Option clash for package ...가 날 수 있습니다.

LaTeX
% preamble.tex: 프로젝트 패키지를 여기서 로딩\usepackage{amsmath,amssymb}\usepackage{graphicx}\usepackage{booktabs}\usepackage[hidelinks]{hyperref}

본문 전에 \input으로 읽고 hyperref 등 순서를 확인하세요. 장에서 같은 패키지를 다시 불러오지 않습니다.

\includeonly로 부분 확인

출력할 장을 줄이지만 제외 장의 번호와 참조는 작업 사이에 보장되지 않는 보조 정보에 의존합니다. \include에만 적용되며 \input은 제한하지 않습니다.

LaTeX
% 방법 장만 미리보기\includeonly{chapters/method}

보조 정보가 없으면 ??가 나오고 장 길이가 바뀌면 제외 페이지 번호가 오래될 수 있습니다. 제출 전 제한을 제거하고 전체를 컴파일하세요.

라벨 접두어

개체접두어예
절sec:\label{sec:method}
그림fig:\label{fig:pipeline}
표tab:\label{tab:ablation}
수식eq:\label{eq:update}

중복 라벨은 컴파일을 멈추지 않아도 잘못된 참조를 만들 수 있습니다. 검색용 접두어와 별개로 이름은 고유해야 합니다. 플로트의 라벨은 캡션 뒤에 두세요. 반대면 오류 없이 이전 카운터를 참조할 수 있습니다.

경로·라벨·전체 컴파일 확인

수정 후 파일 트리와 포함 목록, 참조 대상을 비교하고 전체 컴파일 필요성을 판단합니다.

메시지원인조치
There were multiply-defined labels.중복 이름검색·변경 후 전체 갱신
Reference 'fig:x' undefined라벨 누락·제외 장전체 컴파일과 위치 확인
Label(s) may have changed.참조 변경반복 처리 대기, 계속되면 조사
Option clash for package hyperref.옵션 충돌서문 한곳에 통합
\include cannot be nested.장 안에서 다시 포함내부는 \input 사용

코드 재사용, 오류 해결, 안전한 AI 수정을 참고하세요.

정리

메인 구조, 장, 표 소스, 이미지를 나누고 패키지는 한곳에서 관리합니다. 부분 미리보기 후 제출 전 전체를 컴파일하고 검색 가능한 고유 라벨을 사용하세요.

전체 폴더를 EasyLaTeX에 가져와 main.tex를 선택합니다.