Cara Membuat Custom Build Iosevka Font

Rian Yulianto W
Kode dan Kodean
Published in
5 min readMar 26, 2020
Computer and laptop
Photo by Blake Connally on Unsplash

Pada artikel ini, penulis akan mencoba melakukan eksperimen sederhana untuk membuat font yang dibangun dengan dasar Iosevka Font. Tujuan dari pembuatan custom build Iosevka Font adalah penulis ingin mendapatkan varian font yang sesuai dengan selera dan keinginan penulis. Iosevka Font sendiri sudah memiliki banyak varian style font yang dimulai dari kode SS01 sampai SS20 , yang dapat dilihat di repository Github mereka disini.

Varian Iosevka baru yang akan dibuat adalah kombinasi antara Iosevka SS04, Iosevka SS09, dan Iosevka SS14 . Hasil yang diharapkan adalah varian font baru dengan kombinasi dari gaya font Menlo, Source Code Pro, dan Jetbrains Mono, lengkap dengan font ligature yang ada di dalamnya. Proses build ini menggunakan sistem operasi Linux distro Ubuntu Linux Mint, dan menggunakan petunjuk yang ada di halaman web dari Adam Kruszews ini .

Bagi yang ingin langsung mengunduh font Iosevka Mayukai ini, bisa langsung scroll ke bawah halaman blog ini untuk akses link unduhannya.

Memasang Dependency dan Build System

Ada beberapa dependency yang perlu dipasang sebelum memulai proses pembuatan font ini, yaitu library ttfautohint, premake5, JavaScript Node JS dan NPM, otfcc, dan file konfigurasi TOML dari repository Iosevka. Langkah berikut ini adalah memasang dependency ttfautohint dan libttfautohint-dev serta Node JS dan NPM-nya. Silahkan ketik perintah ini di Terminal Linux kalian.

sudo apt install nodejs npm ttfautohint libttfautohint-dev

Kemudian install library premake5 dan lakukan proses build untuk dependency siap pakai.

cd ~/Src/opensource/
git clone
https://github.com/premake/premake-core
cd premake-core
make -f Bootstrap.mak linux

Setelah melakukan proses build premake5, lakukan hal yang sama untuk melakukan proses build library otfcc .

cd ~/Src/opensource/git clone https://github.com/caryll/otfcc
cd otfcc
../premake-core/bin/release/premake5 gmake
cd build/gmake
make config=release_x64

Setelah melakukan build otfcc dan premake5, kita lanjutkan melakukan proses clone repository Iosevka.

cd ~/Src/opensource/ 
git clone -b master --depth 1 --single-branch h
ttps://github.com/be5invis/Iosevka -o iosevka

Langkah selanjutnya adalah membuat konfigurasi custom build yang ada di dalam file TOML. File TOML ini sudah ada di dalam folder repository Iosevka. File konfigurasi ini ini bernama private-build-plans.sample.toml . File tersebut adalah template contoh konfigurasi yang bisa kita pakai. Lakukan pembuatan file TOML baru dengan nama private-build-plans.toml dan isi dengan template konfigurasi di atas. Lanjutkan dengan kustomisasi konfigurasi build font Iosevka yang diinginkan.

Beberapa parameter konfigurasi build ini dapat dilihat pada file Readme di repository Iosevka disini https://github.com/be5invis/Iosevka#building-from-source

Contoh konfigurasi untuk Iosevka Custom Build

Di dalam file konfigurasi di atas, ada beberapa tambahan seperti konfigurasi untuk font yang akan dihasilkan. Misalnya, tambahan style dari Iosevka SS09 dan SS14. Tidak lupa pemberian nama custom build plan “iosevka-custom” menjadi “iosevka-mayukai”.

Setelah konfigurasi selesai dilakukan, lanjutkan dengan proses build. Pada proses ini, kita menggunakan library otfcc dan premake5 yang sudah dibuild sebelumnya, dengan mereferensikan file /bin yang ada di hasil build tersebut.

env PATH=”$PATH:../otfcc/bin/release-x64/” npm run build — contents::iosevka-mayukai

Proses build akan berlangsung cukup lama, sekitar 30 menitan , tergantung dari spesifikasi komputer yang dipakai.

Proses build Font Iosevka Custom

Konfigurasi Pemasangan Font

Ketika proses build selesai dan berhasil, lanjutkan memasang font ke dalam sistem operasi Linux dengan perintah di Terminal :

cp build/iosevka-custom/*.ttf ~/.fonts
sudo fc-cache -f -v

Setelah font dipasang, lakukan konfigurasi di text editor atau IDE masing-masing, dengan memasukkan nama font “Iosevka Mayukai” ke dalam file setelan konfigurasinya. Contoh di bawah ini adalah untuk konfigurasi di VS Codium / VS Code.

Konfigurasi font di VS Code/Codium

Lakukan proses restart text editor, untuk melihat hasil konfigurasinya. Bentuk huruf dan angka dari font Iosevka Mayukai dapat dilihat secara detail pada gambar di bawah ini.

Sampel hasil Iosevka Font Custom Build , Iosevka Mayukai Semibold (weight 600) atau Iosevka Medium (weight 500)

Tempat Unduh Font Iosevka Mayukai

Font ini penulis beri nama Iosevka Mayukai, yang merupakan gabungan dari style Menlo, Source Code Pro, dan Jetbrains Mono. Fitur dari hasil kustomisasi pada font Iosevka ini dapat dilihat pada bagian huruf i, u , g, l (huruf el), dan angka nol yang menggunakan “slashed zero style” . Huruf dan angka di dalam font tersebut telah disesuaikan agar nyaman dilihat dan mudah dibaca ketika dipasang di text editor, Terminal, atau di IDE pemrograman milik kalian.

Bagi kalian yang malas melakukan proses build seperti di atas, dan ingin langsung coba font Iosevka Mayukai yang telah dibuat penulis, dapat langsung menuju repository di bawah ini.

Di repository itu, kalian bisa langsung mengunduh font Iosevka Mayukai dengan mengunduh file TTF-nya di halaman Github Release Page yang tersedia. File unduhan berbentuk format kompresi TAR GZ, yang dapat diekstrak langsung setelah diunduh. Di dalam README repository ini terdapat link unduh Iosevka Mayukai dari Google Drive langsung, untuk menambah pilihan link download bagi orang yang ingin mencoba. Petunjuk instalasi font telah disertakan di repository tersebut, atau dapat kalian cari tahu sendiri di Google Search untuk memasang font baru di sistem operasi yang dipakai.

Halaman unduh file TTF di Github Release Page Iosevka Mayukai

Font Iosevka Mayukai cocok untuk disandingkan dengan tema warna text editor VS Code yang bernama Mayukai Theme. Silahkan dicoba disandingkan dengan tema dari VS Code Marketplace berikut ini.

Selamat mencoba dan Happy Coding…

--

--

Rian Yulianto W
Kode dan Kodean

Suka pada yang simpel dan berguna. Suka sama penguin dan apel, tapi ga suka sama jendela.