Template Curriculum Vitae untuk LaTeX

Beberapa waktu lalu saya penasaran dengan tampilan Curriculum Vitae / CV/ Resume yang baik. Di internet ada banyak tampilan dengan beragam format, tapi kali ini saya tertarik untuk membuat CV dengan LaTeX.

Pilihan pertama saya jatuh pada CV buatan Thomas Jansson. Templatenya (file `resume.cls`) bisa didownload langsung di halaman aslinya atau di daftar template Sharelatex.

Tampilan akhir CV dengan template oleh Thomas Jansson

Jika kalian perhatikan, desainnya sudah sangat baik, elegan, dan terkesan profesional. Cocok untuk CV para profesional yang panjang ataupun para freshgraduate yang belum banyak pengalaman. Hanya saja ada yang kurang menurut saya, yakni warna. Template aslinya hanya menghasilkan CV berwarna hitam putih. Artikel ini mendokumentasikan bagaimana saya memberi warna pada template tersebut.

Download Template

Bagian selanjutnya dari artikel ini akan menjelaskan pengalaman saya mengedit warna template LaTeX tersebut. Jika ingin langsung menggunakan template yang telah saya edit sehingga dapat custom warna, silakan download file resume.cls di repository berikut.

Note: Jika ingin mengganti warna template CV, ubah MidnightBlue pada bagian \colorlet menjadi warna lain sesuai selera

Mengedit LaTeX template

Berdasarkan tips-tips di internet dalam mendesain CV yang baik, saya berusaha untuk tidak terlalu banyak mewarnai area CV. Saya hanya akan meng-highlight bagian-bagian yang saya rasa penting untuk diberi warna, yakni teks judul dan teks subjudul pada sisi samping.

1. Kita akan mengedit file resume.cls yang tadi telah kita download di web aslinya.

2. Langkah selanjutnya tambahkan package yang menyediakan pewarnaan teks pada bagian akhir:

\usepackage[dvipsnames]{xcolor}

Saya berikan parameter tambahan dvipsnames sehingga kita memperoleh lebih banyak pilihan warna yang memiliki “nama” (jadi tidak perlu menginputkan kode heksadesimal).

3. Untuk mempermudah penggunaan warna, saya membuat variabel yang menyimpan warna menggunakan perintah \colorlet:

\colorlet{themecolor}{MidnightBlue}

Variabel themecolor adalah variabel yang akan kita gunakan untuk menyimpan warna template yang akan kita gunakan. Sedangkan MidnightBlue adalah warna tema yang saya gunakan untuk CV tersebut.

Note: Jika ingin mengganti warna template CV, ubah MidnightBlue pada bagian \colorlet menjadi warna lain sesuai selera

4. Selanjutnya saya sisipkan variable warna template ke bagian yang ingin kita beri warna, yakni judul dan subjudul di sisi samping. Di template, untuk mengedit kedua bagian tersebut kita dapat mengedit style yang digunakan, yakni mysidestyle dan mytitle.

\newcommand{\mysidestyle}[1]{\small\sc\textcolor{themecolor}{#1}}
\newcommand{\mytitle}[1]{{\sc\Large\textcolor{themecolor}{#1}}}

Jika diperhatikan, di sini untuk mewarnai text saya menggunakan perintah textcolor{}. Sebenarnya ada dua cara yang dapat digunakan yakni dengan color{} atau textcolor{}, tetapi cara pertama akan membuat eror pada template (text tidak lagi teralinea dengan rapi)

Setelah selesai, template resume.cls sudah akan dapat memberikan warna pada bagian-bagian yang kita tentukan. Jika sebelumnya sudah pernah menggunakan template dari Thomas Janssen, perubahan ini seharusnya tidak akan mengubah apapun kecuali pemberian warna.

Hasil template CV dengan warna tema MidnightBlue

featured image credit: https://www.philippewiget.com


Menuliskan Huruf Arab di Latex

Catatan: Artikel ini khusus untuk pengguna template Latex MIPA UGM SKRIPSI

Jadi ketika saya menulis skripsi dan tesis beberapa waktu lalu saya perlu menuliskan beberapa huruf Arab di laporan saya. Saya menggunakan template Latex dari MIPA UGM (download di sini).

Template tersebut dibuat awalnya oleh Pak Drs. Pekik Nurwantoro, Ph.D. lalu dimodifikasi oleh teman saya, Yusuf Syaifudin. Dan saya modif lagi di repo github saya. Dan karena menggunakan template ini lah menulis huruf Arab jadi sedikit tricky dari biasanya.

Compiler

Problem pertama adalah selama ini saya meng-compile file Latex saya menggunakan perintah pdflatex yang ternyata bisa dibilang tidak support untuk menampilkan tulisan dengan huruf yang aneh-aneh (unicode). Karenanya salah satu opsi yang saya gunakan adalah pindah menggunakan xelatex.

Compiler ini sebenarnya tidak perlu diinstall lagi bagi pengguna texlive Ubuntu. Dan kalau di online editor, biasanya juga disediakan opsi untuk mengatur compiler yang digunakan.

Package

Masalah lain adalah template dari MIPA UGM sudah tertata rapi, ini membuatnya sulit untuk sekadar menambah pengaturan package agar bisa menuliskan huruf Arab tanpa merusak apapun. Saya sudah mencoba menggunakan babel atau polyglossia tetapi selalu berakhir compiler error 🙁

Lalu bagaimana solusinya? setelah beberapa kali mencoba solusi, saya temukan solusi yang menurut saya paling pas, berikut langkah-langkahnya:

1. Install XeTeX kalau anda belum memiliki xelatex. Di buntu bisa menggunakan perintah:

sudo apt-get install texlive-xetex

2. Download font yang menyediakan tampilan huruf Arab. Misalnya, yang saya gunakan adalah font Scheherazade.

3. Definisikan font tersebut ke dokumen kalian (di template MIPA UGM perinah ini dituliskan di ADDITIONAL_PACKAGE.tex)

 usepackage{fontspec}
 \newfontfamily\arabicfont[Script=Arabic]{Scheherazade}

4. Selanjutnya untuk setiap akan menuliskan huruf Arab, tinggal gunakan perintah \arabicfont:

This is english document {\arabicfont وَهَذِهِ فِقرَةٌ بِالعَرَبِيَة مَعَ كَلِمَة
اِنكلِيزِيَة } and this is also english text.

5. Lalu untuk meng-compile, kita gunakan Xelatex, dengan perintah

xelatex yourdoc.tex

6. Ketika proses compile selesai, maka akan muncul huruf Arab yang di posisi yang diinginkan. Tapi coba perhatikan, ada yang aneh dengan tulisan tersebut, yakni tulisan tidak dalam format RTL (right to left), atau tertulis dari kanan ke kiri, sehingga tulisannya jadi terbaca aneh. Lalu bagaimana caranya membuatnya format RTL?

7. Download file bidi.tex dari texdoc.net/texmf-dist/tex/xelatex/bidi/bidi.tex, jangan gunakan package bidi menggunakan perintah \usepackage{bidi} Saya tidak tahu pasti kenapa, tapi menggunakan package bidi seperti itu akan merusak template MIPA UGM. Dengan menggunakan bidi.tex langsung dari filenya kita memperoleh versi sederhana dari bidi yang lebih aman.

8. Inputkan file bidi tersebut setelah kita definisikan huruf Arab kita:

\usepackage{fontspec}
\newfontfamily\arabicfont[Script=Arabic]{Scheherazade}
\input{bidi.tex}

9. Untuk mengaktifkan RTL gunakan perintah \RL:

This is english document \RL{\arabicfont وَهَذِهِ فِقرَةٌ بِالعَرَبِيَة مَعَ كَلِمَة
اِنكلِيزِيَة } and this is the other english text.

10. Dan coba compile ulang, maka kali ini akan benar-benar berhasil:

Sekian! Semoga bermanfaat, jika ada yang ditanyakan atau ada usulan solusi lain silakan komentar di kolom yang tersedia! 🙂

Sumber:

Membuat Long Table menggunakan Tabularx

Bagi yang pernah menggunakan Latex, pasti kebanyakan akan setuju bahwa bermain tabel di Latex adalah hal yang lumayan menantang. Karenanya saya sendiri ketika membuat tabel di Latex saya paling sering menggunakan package Tabularx. Kenapa? karena menurut saya Tabularx itu punya kelebihan dalam mudahnya mengontrol ukuran kolom dibanding Tabular biasa (fitur yang paling sering saya gunakan). Sayangnya, di balik kelebihan selalu ada kekurangan. Salah satunya adalah belum support untuk membuat long table.

Apa itu Long Table?

Long table adalah istilah untuk membuat tabel yang panjangnya lebih dari satu halaman. Beberapa karakteristik dari long table adalah:

  1. panjangnya lebih dari satu halaman,
  2. nomor tabelnya masih sama,
  3. kontennya masih berlanjut,
  4. bisa punya caption sendiri (biasanya berupa “lanjutan”),
  5. tidak terindeks di daftar isi.

Sebenarnya Long Table sendiri ada Package tersendiri, tapi karena saya tidak mau rumit-rumit mempelajari package baru, saya coba untuk meng-“hack” Tabularx sehingga bisa menjadi long table. Saya sebut ini “hack” karena kita akan tetap menggunakan Tabularx hanya saja kita akan buat agar hasilnya seakan-akan menggunakan long table. Idenya sederhana, kita buat dua tabel dengan bentuk yang mirip, lalu kita atur agar memenuhi kriteria long tabel.

Langkah-langkahnya:

  • Buat terlebih dahulu dua tabel dengan bentuk yang sama. Pastikan tabel kedua pada halaman selanjutnya. Hal ini bisa dengan menggunakan perintah `\newpage`.
\begin{table}[H]
\caption{Table 1}
\begin{tabularx}{6.25in}{}
...
\end{tabularx}
\end{table}

\newpage

\begin{table}[H]
\caption{Table 2}
\begin{tabularx}{6.25in}{}
...
\end{tabularx}
\end{table}
  • Selanjutnya, atur penomoran tabel kedua agar memiliki nomor yang sama dengan tabel pertama. Caranya dengan menambahkan `\addtocounter`  sebelum mendefinsikan tabel kedua, dan beri nilai -1 sehingga penomoran seharusnya dikurang satu.
...
\addtocounter{table}{-1}
\begin{table}[H]
\caption{Table 2}
...
  • Terakhir, pastikan tabel kedua tidak muncul di daftar isi dengan cara memberi kurung siku pada bagian `\caption`
...
\caption[]{Table 2}
...

Dan selesai… Jika dicompile maka akan tampak tabel akan tampil lebih dari satu halaman dengan kriteria long table yang telah disebutkan sebelumnya.

Tentu saja ini tidak sempurna, salah satu kekurangannya adalah kita masih belum bisa memenuhi poin ketiga dari kriteria Long Table, yakni konten tidak dapat berlanjut secara otomatis. Kita harus secara manual memisahkan mana bagian yang masuk tabel pertama, mana yang masuk tabel kedua. Ya setidaknya hasilnya sudah lumayan mirip dengan Long Table kan? 😉

image from: https://www.potterybarn.com/