Membedah anatomi file .tex dari preamble hingga body, mengenal document class (article, report, book, beamer), alur kompilasi dari .tex ke .pdf beserta file pendamping (.aux, .log, .toc), system package, dan file pendukung seperti .cls, .sty, dan .bib yang membentuk ekosistem LaTeX.

Setelah di episode 1 kita memahami sejarah dan filosofi — bahwa LaTeX memisahkan isi dari tampilan (WYSIWYM) — pada episode ini kita turun ke level struktural: bagaimana sebuah dokumen LaTeX diorganisasi. Ini fondasi penting karena semua episode berikutnya (dari Hello World sampai tagged PDF) berdiri di atas konsep yang kita bahas sekarang: anatomi file .tex, document class, package, dan alur kompilasi.
Mengapa penting memahami arsitektur? Karena error LaTeX yang paling umum muncul justru karena struktur yang salah — package hilang, class tidak cocok, atau urutan kompilasi yang tidak disadari. Dengan memahami arsitektur dokumen, kalian tidak hanya menulis LaTeX, tetapi juga mendiagnosis masalahnya.
Setiap dokumen LaTeX terdiri dari dua bagian besar: preamble dan body.
Preamble adalah bagian di atas perintah \begin{document}. Di sinilah kalian mendeklarasikan class dan memuat package. Bayangkan preamble sebagai "spesifikasi" dokumen: apa jenisnya, package apa yang dipakai, margin, bahasa, dan konfigurasi global.
\documentclass[12pt,a4paper]{article}
\usepackage[bahasa]{babel}
\usepackage{amsmath}
\usepackage[margin=2.5cm]{geometry}Aturan penting: perintah \documentclass harus muncul pertama kali, dan bisa diikuti opsi dalam kurung siku []. Semua package dimuat dengan \usepackage di preamble — setelah itu dianggap bagian body.
Body dimulai dengan \begin{document} dan berakhir dengan \end{document}. Di sinilah isi dokumen ditulis: teks, heading, tabel, gambar, matematika, dan lainnya.
\begin{document}
\section{Pendahuluan}
Ini adalah isi dokumen.
\begin{equation}
E = mc^2
\end{equation}
\end{document}Note
Tidak ada aturan baku untuk jumlah package yang dimuat, tetapi jangan muat package yang tidak dipakai — setiap package menambah beban kompilasi dan berpotensi konflik. Pegang prinsip: muat yang dibutuhkan saja.
Document class ditentukan lewat \documentclass{...} dan menentukan struktur keseluruhan dokumen. Class yang paling umum:
| Class | Kegunaan | Fitur |
|---|---|---|
article | Paper, laporan pendek | Section/subsection, tanpa chapter |
report | Laporan, tesis | Punya \chapter |
book | Buku, tesis panjang | Front/main/backmatter |
beamer | Slide presentasi | Frame, overlay |
letter | Surat resmi | Format surat |
IEEEtran | Paper IEEE | Template jurnal (episode 23) |
elsarticle | Paper Elsevier | Template jurnal |
Opsi dalam kurung siku bisa menyesuaikan tampilan global, misalnya ukuran font atau ukuran kertas:
\documentclass[11pt,twoside]{article}11pt memilih ukuran font dasar, twoside menyiapkan tata letak dua muka (seperti buku). Class book dan report akan kita bedah lebih dalam di episode 12.
Saat kalian mengkompilasi, LaTeX menjalankan serangkaian proses dan menghasilkan beberapa file. Alur dasarnya:
.pdf — hasil akhir..aux — file bantu untuk referensi silang & penomoran (dibaca ulang pada pass berikutnya)..log — catatan lengkap proses kompilasi; tempat mencari error..toc — daftar isi (generated saat ada \tableofcontents).LaTeX adalah sistem multi-pass. Pada pass pertama, ia menulis label, referensi, dan daftar isi ke .aux/.toc. Pada pass kedua, ia membaca file tersebut untuk mengisi angka yang benar. Karena itu, untuk dokumen dengan cross-reference atau daftar isi, kalian perlu mengompilasi dua kali (dan terkadang tiga kali). latexmk melakukan ini otomatis (episode 18).
pdflatex dokumen.tex
pdflatex dokumen.texPackage adalah perpustakaan fitur tambahan. Ribuan package tersedia di CTAN, dan yang terpenting untuk seri ini:
amsmath — fondasi penulisan matematika (episode 7-8).graphicx — menyisipkan gambar (episode 6, 14).hyperref — link & PDF metadata (episode 10).geometry — margin & layout (episode 20).babel — dukungan bahasa, termasuk bahasa Indonesia (episode 13).fontspec — font sistem OpenType (khusus Xe/LuaLaTeX, episode 13).tcolorbox, tikz — diagram & kotak berwarna.Pakai dengan \usepackage{nama}; beberapa menerima opsi:
\usepackage[top=2cm,bottom=2cm]{geometry}
\usepackage[bahasa]{babel}Warning
Urutan pemuatan package kadang penting. Misalnya hyperref sebaiknya dimuat hampir terakhir di preamble untuk menghindari konflik — episode 10 akan menjelaskan detailnya. Aturan umum: muat package inti dulu, package yang mengubah global terakhir.
Ekosistem LaTeX terdiri dari beberapa jenis file teks:
| Ekstensi | Jenis | Fungsi |
|---|---|---|
.cls | Class | Definisi document class (article.cls) |
.sty | Style/Package | Definisi package (amsmath.sty) |
.bib | Bibliografi | Basis data referensi (episode 9) |
.bst | BibTeX style | Aturan format bibliografi (ieeetr.bst) |
.tex | Dokumen | Source utama |
.toc / .aux | Generated | Dibuat otomatis saat kompilasi |
\usepackage{amsmath} mencari amsmath.sty; \documentclass{article} mencari article.cls — keduanya pada direktori TeX yang terdaftar. Kalian biasanya tidak perlu melihat isinya, tetapi memahami perannya membantu saat troubleshooting "file not found" (episode 26).
Pada episode 2 ini, kalian telah memahami kerangka tempat seluruh LaTeX berjalan.
Inti yang harus dibawa pulang:
.tex = preamble (class + package + konfigurasi) + body (\begin{document}...\end{document}).article, report, book, beamer, letter, plus kelas khusus jurnal..tex → engine → .pdf, dengan file bantu .aux, .log, .toc.latexmk) agar referensi & daftar isi benar.\usepackage) dan file pendamping (.cls, .sty, .bib, .bst) membentuk ekosistem.Di episode 3 selanjutnya, kita akan langsung praktik: menulis Hello World pertama, menjalankan kompilasi, dan mengenal struktur bagian (\section, daftar isi, label/ref) sejak awal. Pastikan environment kalian siap, karena mulai sekarang kita menulis kode LaTeX yang nyata!