Troff adalah prosesor teks dokumen minimal namun kuat untuk sistem Linux. Ini memungkinkan Anda dengan mudah membuat dokumen siap cetak dengan mengkompilasi file sumber dari baris perintah. Tidak seperti LaTeX, Troff sangat ringan dan sudah terinstal di sebagian besar sistem Linux. Tutorial ini menunjukkan cara menggunakan Troff untuk memformat dokumen PDF di Ubuntu.
Apa Itu Troff dan Mengapa Menggunakannya
Pada dasarnya, Troff adalah program pengolah teks yang mengubah skrip seperti kode menjadi dokumen yang dapat dicetak. Tidak seperti pengolah kata, Troff tidak mengandalkan paradigma “WYSIWYG”. Sebagai gantinya, Anda harus menggunakan jenis kode tertentu untuk menangani pemformatan Anda.
Salah satu keuntungan terbesar dari pendekatan ini adalah kesederhanaan. Instalasi dasar Troff akan memiliki semua yang Anda butuhkan untuk membuat dokumen. Lebih lanjut, kurangnya antarmuka pengguna grafis berarti Anda dapat membuat dokumen bahkan melalui SSH.
Kiat: pelajari cara meneruskan aplikasi GUI melalui SSH di Linux.
Memasang Trof
Troff sering dibundel secara default di sebagian besar distribusi Linux. Anda dapat memeriksa apakah Anda memilikinya di sistem Anda dengan menjalankan flag -h -nya. Ini akan menampilkan daftar singkat dari semua bendera yang diterima instalasi Troff Anda.
troff -h
Ada beberapa contoh di mana distribusi tidak membundel Troff secara default. Dalam hal ini, Anda dapat menginstalnya dengan mencari paket “groffâ€.
Ini adalah implementasi ulang program Troff dan Nroff oleh Proyek GNU, yang mencakup sejumlah fitur baru dan modern.
Anda dapat menginstal groff di Ubuntu dengan menggunakan perintah berikut:
sudo tepat instal groff
Membuat Dokumen Troff Pertama Anda
Mirip dengan kode sumber, setiap dokumen Troff adalah file teks yang berisi instruksi tentang cara membuat dokumen. Ini termasuk lebar halaman dan margin serta spasi huruf dan halaman.
Tingkat kontrol ini memungkinkan Anda memanipulasi program untuk membuat dokumen apa pun. Untuk menyederhanakannya, pengembang Troff membuat “makro” yang memadatkan perintah ini menjadi sintaks yang lebih sederhana.
Salah satu makro paling umum yang akan Anda gunakan di Troff adalah “ms”. Ini akan membuat dokumen dengan gaya artikel. Anda dapat membuat dokumen ms dengan menggunakan perintah sentuh :
sentuh my-first-document.ms
Karena semua dokumen Troff adalah teks, Anda dapat membuka dokumen Anda dengan menggunakan editor teks. Dalam kasus saya, saya menggunakan vim. Atau, Anda dapat menggunakan salah satu dari editor teks ini untuk Linux.
vim my-first-document.ms
Memahami Format Troff
Semua dokumen Troff mengikuti struktur yang serupa. Setiap perintah pemformatan yang Anda buat harus berada di baris terpisah dalam konten yang ingin diformat. Dengan demikian, dokumen khas Troff akan terlihat seperti ini:
.COMMAND1 Ini adalah bagian dari konten dalam dokumen Troff. .COMMAND2 Ini adalah konten yang berbeda dalam dokumen Troff.
Dua dari perintah paling dasar yang akan Anda gunakan di ms adalah .TL dan .PP . Yang pertama mengubah teks Anda menjadi judul dan memusatkannya di dokumen Anda, sedangkan yang terakhir memformat teks Anda untuk mengikuti gaya seperti paragraf.
Misalnya, kutipan berikut menggunakan perintah .TL dan .PP :
.TL Dokumen Troff Pertama Saya .PP Ini adalah konten yang ingin saya tampilkan seperti paragraf di dokumen akhir saya. Ini bukan konten yang sangat panjang tetapi ini adalah dokumen Troff pertama saya dan ini adalah sesuatu yang saya banggakan. Panjangnya sekitar tiga kalimat dan harus membungkus dokumen dengan benar.
Dari sini, buat dokumen Anda dengan meneruskan file Anda ke program Troff.
groff -ms -tpdf . / my-first-document.ms > output.pdf
Kiat : jika Anda lebih suka sesuatu yang lebih sederhana, pelajari cara menulis dalam format MLA di Google Documents.
Membuat Teks Tebal, Miring, dan Garis Bawah
Sama seperti pengolah kata biasa, sebagian besar makro Troff menyediakan sejumlah perintah gaya untuk menyesuaikan dokumen Anda. Untuk ms, ini adalah .B , .I , .UL dan .BX .
- Perintah .B mengubah teks menjadi huruf tebal.
- Perintah .I mengubah teks menjadi miring.
- .UL dan .BX masing-masing adalah perintah yang menggambar garis bawah dan kotak di sekitar teks Anda.
Mirip dengan perintah di atas, menggunakan ini di dokumen Anda mengharuskan Anda untuk memisahkan setiap gaya pada barisnya sendiri:
.TL Dokumen Troff Pertama Saya .PP Ini adalah konten .B .R yang ingin saya tampilkan seperti paragraf di dokumen akhir saya. [ … ]
Dalam contoh ini, saya membuat baris baru sebelum kata “konten” dan menambahkan perintah .B untuk mengubahnya menjadi huruf tebal, lalu membuat baris baru dan menambahkan perintah .R . Ini memungkinkan Troff untuk kembali ke gaya sebelumnya.
Penting untuk dicatat bahwa Anda selalu perlu menambahkan perintah .R saat mengubah gaya. Misalnya, kutipan berikut tidak akan mengakhiri perintah .I karena Troff tidak melihat .R setelahnya:
.TL Dokumen Troff Pertama Saya .PP Ini adalah konten .I yang ingin saya tampilkan seperti paragraf di dokumen akhir saya. [ … ]
Membuat Bagian Dokumen Baru
Mirip dengan LaTeX, Troff juga mendukung deteksi bagian dan hierarki, jadi Anda tidak perlu mengatur dan mencocokkan setiap level header saat mengedit.
Untuk membuat bagian baru di dokumen Anda, gunakan perintah .NH diikuti dengan nama heading Anda.
.TL Dokumen Troff Pertama Saya .NH Tajuk Pertama Saya .PP Ini adalah konten yang ingin saya tampilkan seperti paragraf di dokumen akhir saya.
Secara default, setiap tajuk Troff memiliki nilai level yang menentukan bagaimana struktur program dan menampilkan kontennya pada dokumen akhir. Mengetahui hal itu, Anda dapat mengubah nilai ini untuk menyesuaikan level heading.
Misalnya, berikut ini membuat heading level 2 tepat di bawah induknya:
.TL Dokumen Troff Pertama Saya .NH Judul Pertama Saya .NH 2 Subjudul Pertama Saya .PP Ini adalah konten yang ingin saya tampilkan seperti paragraf di dokumen akhir saya.
Selain header bernomor biasa, Troff juga dapat membuat header kosong yang masih mengikuti hierarki level dokumen.
Untuk melakukannya, ganti .NH dengan perintah .SH :
.TL Dokumen Troff Pertama Saya .SH Judul Pertama Saya .SH 2 Subjudul Pertama Saya .PP Ini adalah konten yang ingin saya tampilkan seperti paragraf di dokumen akhir saya.
Kiat : cari tahu cara mengubah margin di Google Docs.
Membuat Daftar di Troff
Kesederhanaan Troff juga memungkinkan Anda membengkokkan perilakunya menjadi apa pun yang Anda inginkan. Misalnya, daftar tidak muncul secara default di makro Troff atau ms. Meskipun demikian, Anda tetap dapat membuat daftar dengan menggabungkan beberapa perintah ms.
Setiap daftar di Troff terdiri dari tiga bagian: indent, bullet, dan konten. Untuk membuat indentasi, gunakan perintah .RS dan .RE . Ini akan memindahkan tingkat indentasi teks apa pun di dalamnya dengan empat spasi.
.RS Ini adalah item pertama saya. .ULANG
Selanjutnya, buat bullet untuk item daftar Anda dengan menggunakan .IP . Ini adalah perintah “paragraf indent” yang memperbaiki margin kiri teks Anda ke lebar tertentu.
Perintah .IP juga memungkinkan Anda untuk mengatur titik peluru khusus dan jarak antara itu dan teks Anda. Dalam hal ini, saya menyetel poin saya ke “[1]†dan akan memberinya empat spasi.
.RS .IP [ 1 ] 4 Ini adalah item pertama saya. .ULANG
Sekarang salin dan tempel perintah .IP Anda untuk membuat item daftar tambahan.
.RS .IP [ 1 ] 4 Ini adalah item pertama saya. .IP [ 2 ] 4 Ini adalah item kedua saya. .IP [ 3 ] 4 Ini adalah item ketiga saya. .ULANG
Terakhir, otomatiskan proses ini dengan membuat makro khusus. Misalnya, kutipan berikut membatasi perintah .IP saya ke .QW :
.de QW .IP [ – ] 4 .. .RS .QW Ini barang pertama saya. .QW Ini adalah item kedua saya. .QW Ini adalah item ketiga saya. .UL
ANG
Membuat Tabel dengan Preprosesor di Troff
Salah satu kekhasan Troff adalah sebagian besar fiturnya ada sebagai “preprosesor”. Sebagian besar, ini adalah binari di luar program yang bekerja dengan membuat “skrip wadah preprosesor” dan mengonversinya menjadi kode Troff tingkat rendah.
Tbl adalah contoh bagus dari preprosesor Troff. Ini adalah program yang mengelola tabel dalam dokumen. Wadah Tbl dasar terlihat seperti ini:
.TS semua kotak ; cc c. item1 < Tab > item2 < Tab > item3 item4 < Tab > item5 < Tab > item6 .TE
- Perintah .TS dan .TE memberi tahu Tbl bahwa ini adalah lingkungan yang dapat dibaca.
- Baris kedua memberi tahu program cara memformat tabel ini.
- Baris ketiga adalah bidang yang dipisahkan oleh spasi yang menentukan jumlah kolom dan perataannya di tabel Anda.
- Baris keempat dan kelima adalah bidang yang dipisahkan tab yang berisi konten tabel Anda.
Mengkompilasi dokumen dengan Tbl sedikit berbeda dari file Troff biasa. Pertama, muat file Anda:
tbl my-first-document.ms > preprocessed.ms
Selanjutnya, masukkan output program ke Troff:
groff -ms -tpdf . / preprocessed.ms > output.pdf
Terakhir, otomatiskan proses ini dengan menggunakan pipa UNIX:
tbl my-first-document.ms | groff -ms -tpdf > output.pdf
Baik untuk diketahui: pelajari lebih lanjut tentang pipa UNIX dan pengalihan file dengan sed.
Pertanyaan yang Sering Diajukan
Apakah mungkin menggunakan Troff di Windows?
Secara default, baik Troff maupun Groff tidak secara resmi dipindahkan ke Windows. Meskipun demikian, Anda masih dapat menggunakan Groff bersama utilitas GNU lainnya dengan menginstal Subsistem Windows untuk Linux.
Apakah Troff memiliki fitur pelacakan bibliografi?
Ya. Refer adalah preprosesor sederhana yang menggunakan file bibliografi eksternal untuk secara otomatis melacak referensi dalam dokumen Troff. Anda dapat mempelajari lebih lanjut tentang cara kerjanya dengan mengunjungi halaman manualnya dengan menjalankan man refer .
Bagaimana cara memperbaiki kesalahan “DESC yang hilang” saat mengkompilasi Troff?
Masalah ini kemungkinan besar disebabkan oleh ketergantungan yang hilang di sistem Anda atau file versi yang tidak cocok. Untuk memperbaikinya, instal paket groff yang sesuai dari repositori distribusi Anda.
Kredit gambar: Simon Hattinga Verscheure melalui Unsplash. Semua perubahan dan tangkapan layar oleh Ramces Red.