LaTeX/Giới thiệu
TeX là gì?
[sửa]TeX là một ngôn ngữ do Donald Knuth tạo ra để sắp xếp các tài liệu một cách hấp dẫn và đồng nhất. Vào năm 1977, Knuth đã bắt đầu viết cơ chế sắp chữ TeX để khám phá tiềm năng của thiết bị in kỹ thuật số đang bắt đầu thâm nhập vào ngành xuất bản tại thời điểm đó, với hy vọng rằng ông có thể đảo ngược xu hướng chất lượng in xấu đi mà ông thấy ảnh hưởng đến sách và bài viết của mình. Mặc dù TeX là một ngôn ngữ lập trình theo nghĩa Turing hoàn chỉnh, công việc chính của nó là đóng vai trò như một ngôn ngữ đánh dấu để mô tả tài liệu của bạn trông như thế nào. Khả năng kiểm soát tốt mà TeX cung cấp đối với cấu trúc và định dạng tài liệu khiến nó trở thành một công cụ mạnh mẽ và đáng gờm. TeX nổi tiếng là cực kỳ ổn định, chạy trên nhiều loại máy tính khác nhau và hầu như không có lỗi. Số phiên bản của TeX đang hội tụ về hằng số toán học , với phiên bản hiện tại là 3.1415926.
Nhà phát triển dự định tên gọi TeX sẽ là /'tɛx/, trong đó /x/ là âm xát ngạc mềm (velar fricative), phụ âm cuối của loch và Bach. (Donald E. Knuth, The TeXbook) Các chữ cái của TeX có nghĩa đại diện cho các chữ cái Hy Lạp viết hoa tau, epsilon và chi, vì TeX là chữ viết tắt của τέχνη (ΤΕΧΝΗ - technē), tiếng Hy Lạp có nghĩa "nghệ thuật" lẫn "thủ công", và cũng là từ gốc của kỹ thuật. Người nói tiếng Anh thường phát âm nó /'tɛk/, giống như âm tiết đầu tiên của kỹ thuật.
Các công cụ mà TeX cung cấp "ăn liền" tương đối thô sơ và việc học cách thực hiện các tác vụ thông thường có thể yêu cầu đầu tư thời gian đáng kể. May mắn là các hệ thống chuẩn bị tài liệu dựa trên TeX, bao gồm các tập hợp các lệnh và macro được tạo sẵn, vẫn tồn tại. Các hệ thống này tiết kiệm thời gian bằng cách tự động hóa các tác vụ lặp đi lặp lại nhất định; tuy nhiên, sự tiện lợi này đi kèm với cái giá phải trả là sự linh hoạt trong thiết kế. Một trong những gói macro phổ biến nhất được gọi là LaTeX.
LaTeX là gì?
[sửa]LaTeX (phát âm là "Lah-tech" hoặc "Lay-tech") là một tập hợp các macro cho TeX được tạo bởi Leslie Lamport. LaTex có mục đích đơn giản hóa việc sắp chữ TeX, đặc biệt là đối với các tài liệu chứa công thức toán học. Trong hệ thống sắp chữ, tên của nó được định dạng là LaTeX.
TeX vừa là ngôn ngữ đánh máy vừa là ngôn ngữ đánh dấu logic, và người ta phải tính đến cả hai vấn đề khi viết một tài liệu TeX. Mặt khác, mục đích của Lamport khi tạo ra LaTeX là tách biệt hai khía cạnh đó ra. Một người sắp chữ có thể tạo một bản mẫu và sau đó người viết có thể chỉ cần tập trung vào đánh dấu logic LaTeX. Họ có thể không biết gì về cách sắp chữ.
Ngoài các lệnh và tùy chọn mà LaTeX cung cấp, nhiều tác giả khác đã đóng góp các phần mở rộng, được gọi là gói hoặc kiểu, mà bạn có thể sử dụng cho tài liệu của mình. Nhiều trong số này được đóng gói với hầu hết các bản phân phối phần mềm TeX/LaTeX; có thể tìm thấy nhiều hơn trong Mạng Lưu trữ TeX Toàn diện (CTAN).
Tạo sao tôi nên dùng LaTeX?
[sửa]Đa số độc giả đều quen thuộc với các hệ thống sắp chữ WYSIWYG (What You See Is What You Get, tạm dịch là Những Gì Bạn Thấy Là Những Gì Bạn Nhận Được) như LibreOffice Writer, Microsoft Word, hay Google Docs. Cách sử dụng LaTeX về cơ bản khác với việc sử dụng các chương trình khác này—thay vì xem tài liệu của bạn khi nó kết hợp với nhau, bạn mô tả cách bạn muốn tài liệu đó trông như thế nào bằng cách sử dụng các lệnh trong tập văn bản, sau đó chạy tập đó thông qua chương trình LaTeX để tạo kết quả. Mặc dù điều này có nhược điểm là bạn cần tạm dừng công việc và thực hiện nhiều bước để xem tài liệu của mình trông như thế nào, nhưng có nhiều lợi thế khi sử dụng LaTeX:
- Bạn có thể hoàn toàn tập trung vào cấu trúc và nội dung của tài liệu. LaTeX sẽ tự động đảm bảo rằng typography trong tài liệu của bạn—phông chữ, cỡ chữ, độ cao của dòng và các cân nhắc về bố cục khác—nhất quán theo các quy tắc bạn đặt ra.
- Trong LaTeX, cấu trúc tài liệu hiển thị cho người dùng và có thể dễ dàng sao chép sang tài liệu khác. Trong các ứng dụng WYSIWYG, một định dạng nhất định được tạo ra thường không rõ ràng và có thể không thể sao chép trực tiếp định dạng đó để sử dụng trong tài liệu khác.
- Chỉ mục, chú thích, trích dẫn và tài liệu tham khảo được tạo dễ dàng và tự động.
- Các công thức toán học có thể dễ dàng sắp chữ. (Toán học có chất lượng là một trong những động lực ban đầu của TeX.)
- Do nguồn tài liệu là văn bản thuần túy,
- Các nguồn tài liệu có thể được đọc và hiểu bằng bất kỳ trình soạn thảo văn bản nào, không giống như định dạng nhị phân và XML phức tạp được sử dụng với các chương trình WYSIWYG.
- Bảng, hình, phương trình, v.v. có thể được lập trình bằng bất kỳ ngôn ngữ nào.
- Có thể dễ dàng theo dõi các thay đổi bằng phần mềm kiểm soát phiên bản.
- Một số tạp chí học thuật chỉ chấp nhận hoặc đặc biệt khuyến cáo các bài nộp dưới dạng tài liệu LaTeX. Các nhà xuất bản cung cấp các mẫu LaTeX.
Khi tập tin nguồn được xử lý bởi chương trình LaTeX hoặc công cụ, nó có thể tạo tài liệu ở một số định dạng. LaTeX vốn hỗ trợ DVI và PDF, nhưng bằng cách sử dụng phần mềm khác, bạn có thể dễ dàng tạo ra các định dạng PostScript, PNG, JPEG, v.v.
Các thuật ngữ liên quan đến TeX
[sửa]- Các hệ thống chuẩn bị tài liệu
LaTeX là một hệ thống chuẩn bị tài liệu dựa trên TeX. Vì vậy, hệ thống là sự kết hợp của ngôn ngữ và các macro.
- Các bản phân phối
Các bản phân phối TeX là tập hợp các gói và chương trình (trình biên dịch, phông chữ và gói macro) cho phép bạn sắp chữ mà không cần phải tìm nạp tập tin theo cách thủ công và cấu hình mọi thứ.
- Các cơ chế (engine)
Một cơ chế là một tập tin thực thi có thể biến mã nguồn thành định dạng đầu ra có thể in được. Bản thân cơ chế chỉ xử lý cú pháp. Nó cũng cần tải phông chữ và macro để hiểu đầy đủ mã nguồn và tạo đầu ra đúng cách. Cơ chế sẽ xác định loại mã nguồn có thể đọc và định dạng có thể xuất ra (thường là DVI hoặc PDF).
Nói chung, các bản phân phối là một cách dễ dàng để cài đặt những gì bạn cần để sử dụng các cơ chế và hệ thống mà bạn muốn. Các bản phân phối thường hướng đến mục tiêu các hệ điều hành cụ thể. Bạn có thể sử dụng các hệ thống khác nhau trên các cơ chế khác nhau, nhưng đôi khi có những hạn chế. Mã được viết cho TeX, LaTeX hoặc ConTeXt (hầu hết) không tương thích. Ngoài ra, mã dành riêng cho công cụ (như phông chữ cho XeTeX) có thể không được biên dịch bởi mọi cơ chế.
Khi tìm kiếm thông tin trên LaTeX, bạn cũng có thể bắt gặp XeTeX, ConTeXt, LuaTeX hoặc các tên khác có hậu tố -TeX. Bảng sau liệt kê các tóm tắt hầu hết các thuật ngữ.
Hệ thống | Mô tả |
---|---|
AMSTeX | Một hệ thống chuẩn bị tài liệu dựa trên macro TeX cũ được Hiệp hội Toán học Hoa Kỳ (AMS) sử dụng từ năm 1982 đến năm 1985. Hệ thống này đã phát triển thành bộ sưu tập AMS-LaTeX bao gồm gói amsmath được sử dụng trong hầu hết mọi tài liệu LaTeX cũng như nhiều tiêu chuẩn bố cục ấn phẩm AMS (các lớp tài liệu). |
ConTeXt | Vào khoảng năm 1991, một hệ thống chuẩn bị tài liệu dựa trên macro TeX do Hans Hagen và Ton Otten của Pragma ADE thiết kế ở Hà Lan. Hệ thống này tương thích với các công cụ pdfTeX, XeTeX và LuaTeX.
ConTeXt giả định tác giả nội dung (người viết văn bản của tài liệu) và tác giả phong cách (người thiết kế bố cục và hình thức của tài liệu) là giống nhau. Nó có một cú pháp nhất quán và dễ hiểu, cung cấp cho tác giả các công cụ và sự tự do cần thiết để tạo ra một tài liệu với bất kỳ bố cục mong muốn nào. Trong trường hợp không có tiêu chuẩn để tuân theo, ConTeXt mang lại sự tự do sáng tạo với chi phí nỗ lực bổ sung cần thiết. ConTeXt xuất sắc trong việc tạo ra các tác phẩm chất lượng cao với sự tinh tế sáng tạo, chẳng hạn như sách giáo khoa và văn học với bố cục nghệ thuật đặc biệt. |
LaTeX | Một hệ thống chuẩn bị tài liệu dựa trên macro TeX được thiết kế bởi Leslie Lamport.
LaTeX giả định tác giả nội dung và tác giả phong cách là những người khác nhau. Điều này cho phép các tác giả (nhà nghiên cứu, sinh viên, v.v.) tập trung vào nội dung và quên đi thiết kế trong khi cho phép các nhà xuất bản (tạp chí, khoa sau đại học, v.v.) thực thi các tiêu chuẩn tổ chức. Việc tách nội dung và thiết kế đi kèm với chi phí quản lý gói, cú pháp ít nhất quán hơn và độ phức tạp tăng thêm (so với ConTeXt) nếu tác giả muốn đi chệch khỏi đặc điểm kỹ thuật của nhà thiết kế bố cục (lớp tài liệu). LaTeX vượt trội trong việc tạo ra các tài liệu học thuật chất lượng cao phù hợp với các yêu cầu xuất bản, chẳng hạn như các bài báo và luận văn. |
MetaFont | Một hệ thống phông chữ chất lượng cao được thiết kế bởi Donald Knuth cùng với TeX. |
MetaPost | Một ngôn ngữ đồ hoạ vector mô tả dựa trên MetaFont. |
TeX | Ngôn ngữ gốc do Donald Knuth thiết kế. |
Texinfo | Một hệ thống chuẩn bị tài liệu dựa trên macro TeX được thiết kế bởi Richard Stallman, chuyên sản xuất tài liệu kỹ thuật (sổ tay phần mềm). |
Cơ chế | Mô tả |
---|---|
xetex, xelatex | Một công cụ TeX hỗ trợ đầu vào Unicode và các phông chữ .ttf và .otf. Xem Phông chữ. |
luatex, lualatex | Một công cụ TeX có hỗ trợ Lua nhúng, nhằm làm cho các phần bên trong TeX trở nên linh hoạt hơn. Giống như XeTeX, hỗ trợ đầu vào Unicode và các tập tin phông chữ hiện đại. |
pdftex, pdflatex | Tạo đầu ra PDF. |
tex, latex | Cơ chế TeX "nguyên bản". Tạo đầu ra DVI. |
Phân phối TeX | Mô tả |
---|---|
MacTeX | Một phân phối dựa trên TeX Live nhắm mục tiêu Mac OS X. |
MiKTeX | Một bản phân phối TeX cho Windows. |
TeX Live | Một bản phân phối TeX nền tảng chéo. |
Tiếp theo là gì?
[sửa]Trong chương tiếp theo, chúng ta sẽ thảo luận về cách cài đặt LaTeX trên hệ thống của bạn. Sau đó, chúng ta sẽ tạo một tập tin LaTeX đầu tiên.
Học thêm
[sửa]Một trong những điều khó chịu nhất mà người mới bắt đầu và thậm chí người dùng nâng cao có thể gặp phải khi sử dụng LaTeX là khó thay đổi giao diện tài liệu. Trong khi các chương trình WYSIWYG cho phép thay đổi phông chữ và bố cục khá đơn giản, LaTeX yêu cầu bạn học các lệnh và các gói mới để làm như vậy. Các chương tiếp theo sẽ đề cập đến nhiều trường hợp sử dụng phổ biến, nhưng hãy nhớ rằng cuốn sách này mới chỉ là bề nổi, không thể đề cập hết toàn bộ kiến thức lẫn thủ thuật hay về LaTeX.
Đến từ một cộng đồng những người đam mê kiểu chữ, hầu hết các gói LaTeX đều chứa các hướng dẫn tuyệt vời. Đây là bước đầu tiên nếu bạn có thắc mắc — nếu hướng dẫn của một gói chưa được cài đặt sẵn trên máy kèm theo bản phân phối TeX, bạn có thể tìm thấy nó ở CTAN.
Các nguồn hữu ích khác bao gồm:
- Hỏi đáp trao đổi về TeX
- Kênh IRC trên Freenode #latex
- Câu hỏi thường gặp The TeX
- Diễn đàn LaTeX.org
- Hướng dẫn gốc của Donald Knuth về TeX, The TeXbook
- Hướng dẫn gốc của Leslie Lamport về LaTeX, LaTeX: A document preparation system