LaTeX
Thứ Ba, 29/11/2016, 00:11
LaTeX 16 : Viết tài liệu lớn bằng cách chia thành nhiều file latex nhỏ hơn

LaTeX 16 : Viết tài liệu lớn bằng cách chia thành nhiều file latex nhỏ hơn

Khi viết báo cáo, tiểu luận hay luận văn, độ dài của các tài liệu này thường rất lớn dẫn tới việc khó quản lý và chỉnh sửa, điều ấy là chưa kể khi biên dịch sẽ rất lâu. Bài viết này sẽ giúp bạn chia nhỏ các chương trong tài liệu ra, mỗi chương thành một file .tex riêng biệt. Khi ấy sẽ có một file chính tên là main.tex tập hợp tất cả các chương ấy lại với nhau.

Chia nhiều chương thành nhiều file nhỏ

Cấu trúc tài liệu của bạn sẽ có dạng như sau
- main.tex (file chính) + loinoidau.tex + chuong1.tex + chuong2.tex + ketluan.tex
Ở mỗi file lẻ, ví dụ ở đây tôi xét file chuong1.tex, khi ấy nó sẽ có nội dung như sau
\chapter{Tên của chương} \label{chap:chap1} % để sau này gọi lại chương (\ref) Nội dung chương.
Còn ở file chính main.tex, bạn dùng
\documentclass[12pt]{report} \usepackage[utf8]{vietnam} % tất cả các gói lệnh cũng nằm trong đây \begin{document} \input{loinoidau} \input{chuong1} \input{chuong2} \input{ketluan} \end{document}
Để dễ cho quá trình quản lý, bạn có thể đặt các chương trong cùng một thư mục, ví dụ tên chapters. Thư mục này nằm cùng chỗ với file main.tex. khi ấy khi input, sẽ hơi khác chút như sau
\input{chapters/chuong1}
Trong input, bạn có thể để chuong1 hoặc chuong1.tex đều được. Mỗi lần biên dịch, bạn có thể biên dịch ngay trong trình soạn thảo của file chuong1.tex hoặc nếu xuất hiện lỗi, bạn cần quay lại file main.tex để biên dịch.

Thu gọn gói lệnh và để vào 1 file

Nếu bạn sử dụng quá nhiều gói lệnh hay các câu lệnh tự định nghĩa mà lại để chúng trong file main.tex thì quá dài dòng và rườm rà. Khi ấy bạn hãy tạo một file **goilenh.sty **và để tất cả các gói lệnh, các thứ linh tinh đáng lẽ bạn sẽ để trong file main.tex (trước \begin{document} ) vào file goilenh.sty ấy. Còn trong file main.tex, trước \begin{document} , bạn dán vào dòng code
\usepackage{goilenh} % hoặc goilenh.sty
Bạn cũng có thể tạo nhiều file, ví dụ goilenh2.sty và làm tương tự.
Cùng chủ đề