Cara Menggunakan pandoc untuk Mengonversi File di Baris Perintah Linux
Diterbitkan: 2022-01-29 Anda dapat menggunakan pandoc
di Linux untuk mengonversi lebih dari 40 format file. Anda juga dapat menggunakannya untuk membuat sistem dokumen-sebagai-kode sederhana dengan menulis dalam Markdown, menyimpan di git
, dan menerbitkan dalam format apa pun yang didukungnya.
Konversi Dokumen dan Dokumen-sebagai-Kode
Jika Anda memiliki dokumen dalam salah satu dari banyak format file yang didukung pandoc's
, mengonversinya menjadi yang lain sangatlah mudah. Itu adalah alat yang berguna untuk dimiliki!
Tetapi kekuatan pandoc
yang sebenarnya menjadi jelas ketika Anda menggunakannya sebagai dasar dari sistem docs-as-code yang sederhana. Premis dari docs-as-code adalah untuk mengadopsi beberapa teknik dan prinsip pengembangan perangkat lunak dan menerapkannya untuk menulis dokumentasi, terutama untuk proyek pengembangan perangkat lunak. Anda dapat menerapkannya pada pengembangan segala jenis dokumentasi.
Pengembang perangkat lunak menggunakan editor favorit mereka atau lingkungan pengembangan terintegrasi (IDE) untuk menulis program mereka. Kode yang mereka ketik disimpan dalam file teks. Ini berisi kode sumber untuk program.
Mereka menggunakan sistem kontrol versi, atau VCS (Git adalah yang paling populer), untuk menangkap perubahan pada kode sumber saat dikembangkan dan ditingkatkan. Ini berarti programmer memiliki riwayat lengkap dari semua versi file kode sumber. Dia dapat dengan cepat mengakses versi file sebelumnya. Git menyimpan file dalam repositori. Ada repositori lokal di setiap komputer pengembang dan repositori pusat, bersama, jarak jauh yang sering di-host di cloud.
Ketika mereka siap untuk menghasilkan versi program yang berfungsi, mereka menggunakan kompiler untuk membaca kode sumber dan menghasilkan biner yang dapat dieksekusi.
Dengan menulis dokumen Anda dalam bahasa markup berbasis teks yang ringan, Anda dapat menggunakan VCS untuk mengontrol versi tulisan Anda. Saat Anda siap untuk mendistribusikan atau menerbitkan dokumen, Anda dapat menggunakan pandoc
untuk menghasilkan sebanyak mungkin versi dokumentasi yang Anda butuhkan, termasuk berbasis web (HTML), pengolah kata, atau pengesetan (LibreOffice, Microsoft Word, TeX) , format dokumen portabel (PDF), e-book (ePub), dan sebagainya.
Anda dapat melakukan semua ini dari satu set file teks ringan yang dikontrol versi.
Menginstal pandoc
Untuk menginstal pandoc
di Ubuntu, gunakan perintah ini:
sudo apt-get install pandoc
Di Fedora, perintah yang Anda butuhkan adalah sebagai berikut:
sudo dnf instal pandoc
Di Manjaro, Anda perlu mengetik:
sudo pacman -Syu pandoc
Anda dapat memeriksa versi mana yang telah Anda instal dengan menggunakan opsi --version
:
pandoc --versi
Menggunakan pandoc Tanpa File
Jika Anda menggunakan pandoc
tanpa opsi baris perintah apa pun, pandoc juga menerima input yang diketik. Anda cukup menekan Ctrl+D untuk menandakan bahwa Anda telah selesai mengetik. pandoc
mengharapkan Anda untuk mengetik dalam format penurunan harga, dan itu menghasilkan keluaran HTML.
Mari kita lihat sebuah contoh:
pandoc
Kami telah mengetik beberapa baris Markdown dan akan menekan Ctrl+D.
Segera setelah kami melakukannya, pandoc
menghasilkan output HTML yang setara.
Untuk melakukan sesuatu yang berguna dengan pandoc
, kita benar-benar perlu menggunakan file.
Dasar-dasar Penurunan Harga
Markdown adalah bahasa markup yang ringan, dan makna khusus diberikan untuk karakter tertentu. Anda dapat menggunakan editor teks biasa untuk membuat file penurunan harga.
Penurunan harga dapat dibaca dengan mudah, karena tidak ada tag yang rumit secara visual untuk mengalihkan perhatian dari teks. Pemformatan dalam dokumen penurunan harga menyerupai pemformatan yang diwakilinya. Di bawah ini adalah beberapa dasarnya:
- Untuk menekankan teks dengan huruf miring , bungkus dengan tanda bintang.
*This will be emphasized*
- Untuk teks tebal , gunakan dua tanda bintang.
**This will be in bold**
- Judul diwakili oleh tanda angka/tanda pagar (
#
). Teks dipisahkan dari hash dengan spasi. Gunakan satu hash untuk judul tingkat atas, dua untuk tingkat kedua, dan seterusnya. - Untuk membuat daftar berpoin, awali setiap baris daftar dengan tanda bintang dan sisipkan spasi sebelum teks.
- Untuk membuat daftar bernomor, awali setiap baris dengan angka diikuti dengan titik, lalu sisipkan spasi sebelum teks.
- Untuk membuat hyperlink, lampirkan nama situs dalam tanda kurung siku (
[]
), dan URL dalam tanda kurung [()
] seperti ini:[Link to How to Geek](https://www.howtogeek.com/)
. - Untuk menyisipkan gambar, ketik tanda seru tepat sebelum tanda kurung (
![]
). Ketikkan teks alternatif untuk gambar di dalam tanda kurung. Kemudian, sertakan jalur ke gambar dalam tanda kurung [()
“]. Berikut ini contohnya:![The Geek](HTG.png)
.
Kami akan membahas lebih banyak contoh dari semua ini di bagian berikutnya.
TERKAIT: Apa itu Markdown, dan Bagaimana Anda Menggunakannya?
Mengonversi File
Konversi file sangat mudah. pandoc
biasanya dapat mengetahui format file mana yang sedang Anda kerjakan dari nama filenya. Di sini, kita akan membuat file HTML dari file penurunan harga. Opsi -o
(output) memberi tahu pandoc
nama file yang ingin kita buat:
pandoc -o sample.html sample.md
File sampel penurunan harga kami, sample.md, berisi bagian singkat penurunan harga yang ditunjukkan pada gambar di bawah.
Sebuah file bernama sample.html dibuat. Ketika kami mengklik dua kali file tersebut, browser default kami akan membukanya.
Sekarang, mari buat dokumen teks Open Document Format yang bisa kita buka di LibreOffice Writer:
pandoc -o sample.odt sample.md
File ODT memiliki konten yang sama dengan file HTML.
Sentuhan yang rapi adalah teks alternatif untuk gambar yang juga digunakan untuk menghasilkan keterangan gambar secara otomatis.
Menentukan Format File
Opsi -f
(dari) dan -t
(ke) digunakan untuk memberi tahu pandoc
format file mana yang ingin Anda konversi dari dan ke. Ini dapat berguna jika Anda bekerja dengan format file yang berbagi ekstensi file dengan format terkait lainnya. Misalnya, TeX, dan LaTeX keduanya menggunakan ekstensi ".tex".
Kami juga menggunakan opsi -s
(mandiri) sehingga pandoc
akan menghasilkan semua pembukaan LaTeX yang diperlukan agar dokumen menjadi dokumen LaTeX yang lengkap, mandiri, dan terbentuk dengan baik. Tanpa opsi -s
(mandiri), output akan tetap berupa LaTeX yang terbentuk dengan baik yang dapat dimasukkan ke dalam dokumen LaTeX lain, tidak akan diurai dengan benar sebagai dokumen LaTeX yang berdiri sendiri.
Kami mengetik berikut ini:
pandoc -f penurunan harga -t lateks -s -o sample.tex sample.md
Jika Anda membuka file "sample.tex" di editor teks, Anda akan melihat LaTeX yang dihasilkan. Jika Anda memiliki editor LaTeX, Anda dapat membuka file TEX untuk melihat pratinjau bagaimana perintah pengaturan huruf LaTeX ditafsirkan. Mengecilkan jendela agar sesuai dengan gambar di bawah membuat tampilan terlihat sempit, tetapi, pada kenyataannya, itu baik-baik saja.
Kami menggunakan editor LaTeX yang disebut Texmaker. Jika Anda ingin menginstalnya di Ubuntu, ketikkan yang berikut ini:
sudo apt-get install texmaker
Di Fedora, perintahnya adalah:
sudo dnf install texmaker
Di Manjaro, gunakan:
sudo pacman -Syu texmaker
Mengonversi File dengan Template
Anda mungkin mulai memahami fleksibilitas yang pandoc
. Anda dapat menulis sekali dan menerbitkan dalam hampir semua format. Itu prestasi yang bagus, tetapi dokumennya memang terlihat sedikit vanila.
Dengan template, Anda dapat menentukan gaya mana yang digunakan pandoc
saat membuat dokumen. Misalnya, Anda dapat memberi tahu pandoc
untuk menggunakan gaya yang ditentukan dalam file Cascading Style Sheets (CSS) dengan opsi --css
.
Kami telah membuat file CSS kecil yang berisi teks di bawah ini. Ini mengubah spasi di atas dan di bawah satu gaya header level. Itu juga mengubah warna teks menjadi putih, dan warna latar belakang menjadi warna biru:
h1 { warna: #FFFFFF; warna latar: #3C33FF; margin-atas: 0px; margin-bawah: 1px; }
Perintah lengkapnya ada di bawah—perhatikan bahwa kami juga menggunakan opsi mandiri ( -s
):
pandoc -o sample.html -s --css sample.css sample.md
pandoc
menggunakan gaya tunggal dari file CSS minimalis kami dan menerapkannya ke header level satu.
Pilihan fine-tuning lain yang Anda miliki saat bekerja dengan file HTML adalah dengan memasukkan markup HTML ke dalam file Markdown Anda. Ini akan diteruskan ke file HTML yang dihasilkan sebagai markup HTML standar.
Namun, teknik ini harus dicadangkan ketika Anda hanya menghasilkan keluaran HTML. Jika Anda bekerja dengan beberapa format file, pandoc
akan mengabaikan markup HTML untuk file non-HTML, dan akan diteruskan ke file tersebut sebagai teks.
Kami juga dapat menentukan gaya mana yang digunakan saat file ODT dibuat. Buka dokumen LibreOffice Writer kosong dan sesuaikan judul dan gaya font agar sesuai dengan kebutuhan Anda. Dalam contoh kami, kami juga menambahkan header dan footer. Simpan dokumen Anda sebagai "odt-template.odt."
Kita sekarang dapat menggunakan ini sebagai template dengan opsi --reference-doc
:
pandoc -o sample.odt --reference-doc=odt-template.odt sample.md
Bandingkan ini dengan contoh ODT dari sebelumnya. Dokumen ini menggunakan font yang berbeda, memiliki judul berwarna, dan menyertakan header dan footer. Namun, itu dihasilkan dari file penurunan harga "sample.md" yang sama persis.
Templat dokumen referensi dapat digunakan untuk menunjukkan berbagai tahap produksi dokumen. Misalnya, Anda mungkin memiliki template yang memiliki tanda air “Draf” atau “Untuk Tinjauan”. Templat tanpa tanda air akan digunakan untuk dokumen akhir.
Menghasilkan PDF
Secara default, pandoc
menggunakan mesin PDF LaTeX untuk menghasilkan file PDF. Cara termudah untuk memastikan Anda memiliki dependensi LaTeX yang sesuai adalah dengan menginstal editor LaTeX, seperti Texmaker.
Itu adalah instalasi yang cukup besar, meskipun-Tex dan LaTeX keduanya cukup besar dan kuat. Jika ruang hard drive Anda terbatas, atau Anda tahu Anda tidak akan pernah menggunakan TeX atau LaTeX, Anda mungkin lebih suka membuat file ODT. Kemudian, Anda bisa membukanya di LibreOffice Writer dan menyimpannya sebagai PDF.
Dokumen-sebagai-Kode
Ada beberapa keuntungan menggunakan Markdown sebagai bahasa tulisan Anda, antara lain sebagai berikut:
- Bekerja dalam file teks biasa cepat: Mereka memuat lebih cepat daripada file pengolah kata berukuran sama, dan cenderung bergerak melalui dokumen lebih cepat juga. Banyak editor, termasuk
gedit
,Vim
, danEmacs
, menggunakan penyorotan sintaks dengan teks Penurunan harga. - Anda akan memiliki garis waktu dari semua versi dokumen Anda: Jika Anda menyimpan dokumentasi Anda di VCS, seperti Git, Anda dapat dengan mudah melihat perbedaan antara dua versi dari file yang sama. Namun, ini hanya benar-benar berfungsi ketika file adalah teks biasa, karena itulah yang diharapkan oleh VCS.
- VCS dapat merekam siapa yang membuat perubahan, dan kapan: Ini sangat membantu jika Anda sering berkolaborasi dengan orang lain dalam proyek besar. Ini juga menyediakan repositori pusat untuk dokumen itu sendiri. Banyak layanan Git yang dihosting cloud, seperti GitHub, GitLab, dan BitBucket, memiliki tingkatan gratis dalam model harga mereka.
- Anda dapat membuat dokumen Anda dalam berbagai format: Hanya dengan beberapa skrip shell sederhana, Anda dapat menarik gaya dari CSS dan dokumen referensi. Jika Anda menyimpan dokumen Anda dalam repositori VCS yang terintegrasi dengan platform Continuous Integration and Continuous Deployment (CI/CD), mereka dapat dibuat secara otomatis setiap kali perangkat lunak dibuat.
TERKAIT: Apa Itu GitHub, dan Untuk Apa Digunakan?
Pikiran Akhir
Ada lebih banyak opsi dan fitur dalam pandoc daripada yang telah kami bahas di sini. Proses konversi untuk sebagian besar jenis file dapat diubah dan disesuaikan. Untuk mempelajari lebih lanjut, lihat contoh luar biasa di halaman web pandoc resmi (dan sangat detail).
Perintah Linux | ||
File | tar · pv · cat · tac · chmod · grep · diff · sed · ar · man · pushd · popd · fsck · testdisk · seq · fd · pandoc · cd · $PATH · awk · join · jq · fold · uniq · journalctl · tail · stat · ls · fstab · echo · less · chgrp · chown · rev · look · strings · ketik · ganti nama · zip · unzip · mount · umount · install · fdisk · mkfs · rm · rmdir · rsync · df · gpg · vi · nano · mkdir · du · ln · patch · konversi · rclone · rusak · srm | |
Proses | alias · layar · atas · bagus · renice · kemajuan · strace · systemd · tmux · chsh · sejarah · di · batch · gratis · yang · dmesg · chfn · usermod · ps · chroot · xargs · tty · pinky · lsof · vmstat · batas waktu · dinding · ya · bunuh · tidur · sudo · su · waktu · groupadd · usermod · grup · lshw · shutdown · reboot · hentikan · matikan · passwd · lscpu · crontab · tanggal · bg · fg | |
Jaringan | netstat · ping · traceroute · ip · ss · whois · fail2ban · bmon · dig · finger · nmap · ftp · curl · wget · who · whoami · w · iptables · ssh-keygen · ufw |
TERKAIT: Laptop Linux Terbaik untuk Pengembang dan Penggemar