SSD Nodes Learn 🎉 VPS mulai $5.50/bln
Panduan Matt ConnorOleh Matt Connor · Diperbarui 2026-08-13

Cara Mengganti ke Colemak di Linux

Pelajari pengaturan Colemak di konsol Linux, X11, dan Wayland, alasan SSH tidak memerlukan tata letak, serta dampaknya pada Vim, hjkl, dan tombol Ctrl.

Lokasi tata letak Colemak di Linux

Colemak di Linux bukan satu pengaturan yang berlaku di seluruh sistem. Tata letak diterapkan oleh komponen yang sedang membaca input keyboard pada saat itu. Karena itu, pengaturannya berada di salah satu dari tiga tempat: konsol teks, server X11, atau compositor Wayland. Jika Anda mengaturnya di tempat yang salah, tidak akan terjadi apa pun.

Ada opsi keempat yang sepenuhnya melewati sistem operasi. Keyboard yang melakukan remapping melalui firmware-nya sendiri, seperti keyboard yang menjalankan QMK atau VIA, mengirimkan kode untuk huruf yang Anda inginkan. Dengan demikian, setiap mesin yang Anda sambungkan akan mengetik dalam tata letak Colemak tanpa konfigurasi apa pun, termasuk konsol server dan mesin yang bukan milik Anda. Kekurangannya, keyboard laptop Anda tetap mengetik dalam tata letak QWERTY.

Bagian selanjutnya membahas tiga lapisan perangkat lunak tersebut, alasan server remote hampir tidak pernah memerlukan lapisan mana pun, serta dampak perubahan ini terhadap Vim dan shortcut terminal Anda.

Periksa yang sudah tersedia pada sistem

Jalankan perintah berikut sebelum mengubah apa pun. Perintah tersebut menampilkan pengaturan saat ini dan daftar varian Colemak yang tersedia pada basis data keyboard X.

localectl status
setxkbmap -query
localectl list-x11-keymap-variants us | grep colemak

Perintah terakhir seharusnya menampilkan colemak dan colemak_dh. Colemak sudah tersedia di xkeyboard-config selama bertahun-tahun. Colemak-DH ditambahkan pada versi 2.34, sehingga hanya rilis lama yang tidak menyediakannya. Per Agustus 2026, Ubuntu 24.04 dan Debian 13 sama-sama menyediakan versi yang lebih baru daripada versi tersebut.

Jika setxkbmap -query melaporkan bahwa display tidak dapat dibuka, Anda berada dalam sesi Wayland dan compositor mengelola tata letak keyboard. Skenario tersebut memiliki bagian tersendiri di bawah.

Colemak atau Colemak-DH

Colemak memindahkan tujuh belas tombol dari posisi QWERTY dan membiarkan sepuluh tombol tetap pada posisinya, termasuk Z, X, C, dan V. Karena itu, pintasan undo, cut, copy, dan paste tetap berada di tempat yang diharapkan tangan kiri Anda. Kompatibilitas tersebut menjadi alasan utama tata letak ini memiliki bentuk seperti itu.

Colemak-DH adalah modifikasi Colemak. Tata letak ini memindahkan D, B, dan G, serta menukar posisi H dengan M, karena Colemak standar mengharuskan jari telunjuk mengetik D dan H dengan menjangkau kolom tengah keyboard. Modifikasi resmi ini mempertahankan setiap huruf pada jari yang sama seperti dalam Colemak. Karena itu, pengguna Colemak yang beralih ke DH hanya perlu menyesuaikan diri dengan perubahan kecil, bukan mempelajari tata letak baru. Varian XKB adalah colemak_dh, dengan colemak_dh_iso untuk keyboard yang memiliki tombol tambahan di sebelah Shift kiri.

Jika Anda beralih dari QWERTY, keduanya sama-sama memerlukan proses belajar ulang. Jadi, pilih berdasarkan kenyamanan lalu gunakan pilihan tersebut. Beralih ke tata letak lain untuk kedua kalinya memerlukan usaha yang kurang lebih sama seperti pertama kali, karena yang dibangun ulang adalah memori motorik yang terikat pada posisi tombol.

Mengatur Colemak di X11 dengan setxkbmap dan localectl

setxkbmap us -variant colemak
setxkbmap -query

setxkbmap -query sekarang seharusnya melaporkan variant: colemak, dan pengetikan di jendela mana pun seharusnya menghasilkan huruf Colemak. Perubahan ini berlaku selama sesi X dan tidak menulis apa pun ke disk, sehingga aman digunakan untuk mencoba tata letak tersebut selama satu jam.

Agar tetap berlaku setelah reboot:

sudo localectl set-x11-keymap us pc105 colemak
localectl status

Urutan argumennya adalah layout, kemudian model, lalu variant. localectl status sekarang seharusnya menampilkan X11 Layout: us dan X11 Variant: colemak. localectl juga mengonversi pilihan tersebut menjadi keymap console yang paling sesuai, kecuali Anda menambahkan --no-convert. Dengan demikian, pada banyak sistem, satu perintah ini juga mengatur tty. Pada Debian dan Ubuntu, periksa /etc/default/keyboard setelahnya karena console-setup membaca file tersebut saat boot.

Atur Colemak di Wayland

Sesi Wayland tidak memiliki X server yang dapat dikonfigurasi. Compositor memuat keymap dan meneruskannya ke setiap aplikasi. Karena itu, layout merupakan pengaturan compositor. Inilah alasan setxkbmap tampak tidak berfungsi di Wayland: perintah tersebut gagal menemukan display, atau hanya mengubah XWayland, sedangkan aplikasi Wayland native mengabaikan perubahan itu.

Di GNOME, pengaturan tersebut merupakan gsettings key:

gsettings set org.gnome.desktop.input-sources sources "[('xkb', 'us+colemak')]"

Pengaturan langsung diterapkan tanpa logout. String us+colemak berisi layout dan variant yang digabungkan dengan tanda plus.

Di sway, masukkan pengaturan tersebut ke ~/.config/sway/config:

input type:keyboard {
    xkb_layout us
    xkb_variant colemak_dh
}

Muat ulang dengan swaymsg reload. swaymsg -t get_inputs menampilkan setiap perangkat input beserta layout yang digunakannya. Jalankan pemeriksaan ini jika hanya satu keyboard yang bermasalah.

Di KDE Plasma, buka System Settings, lalu Keyboard, kemudian Layouts, dan tambahkan English (US) dengan variant Colemak.

Atur Colemak pada konsol teks

Konsol adalah tty teks biasa yang Anda akses dengan Ctrl+Alt+F3, dan konsol ini memiliki keymap sendiri. Pengaturan apa pun yang Anda terapkan di X11 atau compositor tidak berlaku di konsol tersebut. Hal ini penting jika Anda bekerja pada meja kerja terminal pada konsol virtual tanpa lingkungan grafis.

Pada Debian dan Ubuntu, edit /etc/default/keyboard:

XKBMODEL="pc105"
XKBLAYOUT="us"
XKBVARIANT="colemak"
XKBOPTIONS=""

Kemudian terapkan pengaturan tersebut:

sudo setupcon

Ketik pada konsol untuk melakukan konfirmasi. console-setup mengonversi deskripsi XKB tersebut menjadi keymap konsol dengan ckbcomp. Dengan demikian, konsol dan X menggunakan satu deskripsi yang sama pada sistem ini.

Pada distribusi yang menggunakan keymap kbd secara langsung, tampilkan namanya terlebih dahulu:

localectl list-keymaps | grep -i -e colemak -e latin9
sudo localectl set-keymap en-latin9

Paket kbd menyediakan peta konsol Colemak sebagai i386/colemak/en-latin9. Karena itu, nama yang biasanya Anda teruskan adalah en-latin9, bukan colemak. Teruskan nama yang muncul dalam daftar. Nama yang tidak ada akan ditolak.

sudo loadkeys en-latin9 langsung mengubah konsol saat ini, sedangkan sudo loadkeys us mengembalikannya. Perlakukan loadkeys sebagai pengujian, bukan konfigurasi. Pengaturan ini hanya berlaku sampai reboot. Pada Debian dan Ubuntu, proses setupcon saat boot akan memulihkan pengaturan yang ditentukan oleh /etc/default/keyboard.

Apakah VPS tanpa antarmuka grafis memerlukan layout Colemak?

Hampir tidak pernah, dan alasannya penting untuk dipahami. SSH membawa karakter, bukan posisi tombol. Emulator terminal menerima penekanan tombol, layout lokal mengubahnya menjadi karakter, lalu hanya karakter tersebut yang dikirim melalui koneksi. Server menerima n tanpa mengetahui tombol fisik mana yang menghasilkan karakter tersebut. Jadi, layout yang Anda atur pada laptop akan tetap digunakan dalam setiap sesi SSH, di dalam tmux, dan pada setiap editor yang Anda jalankan dari jarak jauh. Mesin jarak jauh sama sekali tidak memerlukan konfigurasi keyboard.

Ingat hal ini sebelum mulai mengedit berkas keyboard pada server produksi. Jika Anda mengelola banyak server Linux, layout tersebut berlaku pada mesin di depan Anda, bukan pada seluruh fleet, sehingga tidak perlu dimasukkan ke dalam provisioning. Sepuluh menit pertama pada VPS baru memberikan pekerjaan yang lebih bermanfaat daripada hal ini.

Ada dua pengecualian yang perlu direncanakan. Pengecualian pertama adalah konsol yang terhubung langsung ke mesin. Konsol browser pada panel provider biasanya dikenali oleh mesin virtual sebagai keyboard. Karena itu, penekanan tombol diterima sebagai scancode, lalu keymap konsol milik server menentukan karakter yang muncul. Hanya pada tempat inilah layout yang diatur pada server berlaku. Konsol ini juga merupakan jalur pemulihan ketika SSH tidak lagi berfungsi. Karena itu, keymap konsol yang belum selesai dikonfigurasi dapat menjadi risiko nyata.

Konsol serial berperilaku berbeda karena membawa karakter, dan layout lokal Anda yang berlaku. Pengecualian kedua adalah mesin bersama. Keymap konsol berlaku untuk seluruh sistem. Jadi, menetapkan Colemak pada mesin yang juga digunakan orang lain akan mengubah layout mereka, dan mereka tidak akan mengetahui alasannya.

Apa yang terjadi pada tombol hjkl di Vim

Pada Colemak, h tidak menggerakkan kursor. Tiga tombol lainnya tetap berfungsi. j berada di bawah tombol Y pada QWERTY, k berada di bawah tombol N pada QWERTY, dan l berada di bawah tombol U pada QWERTY. Karena itu, tombol kursor tersebar pada tiga baris, bukan berada di bawah empat jari.

Ada dua pilihan yang dapat digunakan, dan keduanya memiliki pengguna nyata.

Pertahankan pengaturan default dan pelajari kembali posisinya. Tidak ada bagian lain dalam setup Anda yang rusak, semua plugin tetap berfungsi, dan setiap tips Vim yang ditulis orang lain tetap berlaku persis seperti yang dijelaskan.

Atau, lakukan remap pada empat tombol yang berada di bawah tangan kanan Anda, di posisi tempat hjkl sebelumnya berada. Pada Colemak, tombol fisik tersebut menghasilkan h, n, e, dan i. Pada Colemak-DH, empat tombol fisik yang sama menghasilkan m, n, e, dan i karena DH menukar H dengan M.

noremap n j
noremap e k
noremap i l
noremap l i
noremap k n

n sekarang menggerakkan kursor ke bawah, e menggerakkannya ke atas, i menggerakkannya ke kanan, dan h memang sudah menggerakkannya ke kiri. Dua baris terakhir mengembalikan perintah yang Anda gantikan: l memulai insert mode, dan k mengulangi pencarian terakhir. Terapkan pengaturan yang sama pada huruf kapital. Jika tidak, menekan Shift bersama tombol kursor dapat menghasilkan perilaku yang tidak terduga.

Opsi langmap pada Vim menjalankan tugas serupa dengan baris yang lebih sedikit:

set langmap=nj,ek,il,li,kn

Setiap pasangan dibaca sebagai karakter yang Anda ketik, lalu karakter yang harus diproses oleh Vim. Pengaturan ini hanya berlaku pada normal mode, sehingga insert mode tetap memasukkan teks Colemak secara normal. Dokumentasi bantuan Vim menjelaskan dua batasan: langmap tidak berlaku pada kombinasi Ctrl atau Alt, dan mapping plugin yang dibuat berdasarkan tombol default dapat berperilaku tidak semestinya saat opsi ini digunakan.

Apa pun pilihan Anda, tetapkan satu pilihan dan gunakan secara konsisten. Remap yang Anda tinggalkan setelah satu bulan akan membuat Anda perlu beradaptasi lagi selama satu bulan.

Apa yang terjadi pada pintasan terminal

Kode kontrol terminal berasal dari karakter, bukan dari tombol fisik. Karena itu, setiap pintasan Ctrl berpindah mengikuti layout. Ctrl+C, Ctrl+Z, Ctrl+X, dan Ctrl+V tetap berada pada posisi yang sama karena Colemak sengaja mempertahankan posisi Z, X, C, dan V seperti pada QWERTY.

Empat pintasan yang digunakan setiap hari berpindah. Ctrl+D, yang mengakhiri input, kini berada pada posisi G di QWERTY. Ctrl+R, yang digunakan untuk mencari riwayat, berada pada posisi S di QWERTY. Ctrl+E, yang berpindah ke akhir baris, berada pada posisi K di QWERTY. Ctrl+U, yang menghapus isi baris, berada pada posisi I di QWERTY.

tmux tetap menggunakan prefix default karena B tidak berpindah pada Colemak. Pada Colemak-DH, B berpindah ke baris atas dan prefix ikut berpindah. Hal ini akan menjadi hal pertama yang Anda sadari jika tetap menjalankan sesi tmux yang berjalan lama pada VPS. Mengikat ulang prefix ke tombol yang Anda sukai hanya memerlukan perubahan satu baris. Cara ini lebih mudah daripada melatih ulang refleks yang sama dua kali.

Pintasan desktop mengikuti aturan yang sama. Binding pada Super+E berpindah mengikuti layout karena ditentukan oleh karakter. Binding pada Super+F1 tetap pada posisinya karena tombol fungsi tidak dipetakan ulang oleh layout.

Berapa lama peralihan ini memengaruhi produktivitas Anda

Tidak ada yang dapat memberikan angka pasti untuk setiap orang. Mengetik tanpa melihat keyboard bergantung pada memori motorik. Anda tidak sedang mempelajari posisi huruf, tetapi membangun ulang refleks yang mengubah sebuah kata menjadi rangkaian gerakan jari. Karena itu, satu-satunya hal yang membantu adalah waktu yang dihabiskan untuk mengetik.

Laporan yang tersedia berasal dari catatan latihan yang dibuat sendiri, bukan dari pengukuran terkontrol. Umumnya, pada minggu pertama kecepatan mengetik jauh di bawah setengah kecepatan sebelumnya. Kecepatan lama biasanya kembali dalam rentang satu hingga tiga bulan dengan penggunaan setiap hari. Perbedaannya lebar antara satu orang dan lainnya. Jadi, anggap angka tersebut sebagai gambaran umum, bukan jadwal pasti.

Dua kebiasaan dapat memperlambat prosesnya. Bergantian antara QWERTY dan Colemak sepanjang hari membuat kedua refleks tetap lemah. Karena itu, kebanyakan orang yang menyelesaikan peralihan ini menggunakan satu layout secara penuh pada komputer utama mereka. Memulainya pada minggu yang sibuk berarti Anda akan mengetik dengan buruk saat berada di bawah tekanan waktu. Hal ini melatih Anda untuk melihat tombol keyboard.

Siapkan cara untuk kembali ke layout sebelumnya sebelum Anda membutuhkannya. Saat Anda kembali menginginkan QWERTY, biasanya ada sesuatu yang rusak dan seseorang sedang menunggu.

Cara beralih kembali ke QWERTY dengan cepat

Di X11, setxkbmap us segera memulihkan QWERTY. Pada konsol, sudo loadkeys us melakukan hal yang sama. Untuk membatalkan pengaturan persisten, jalankan sudo localectl set-x11-keymap us.

Toggle lebih baik daripada perintah yang harus Anda ketik menggunakan layout yang belum dapat Anda gunakan:

setxkbmap -layout us,us -variant colemak, -option grp:win_space_toggle

Perintah ini memuat Colemak sebagai layout pertama dan US standar sebagai layout kedua. Super+Space beralih di antara keduanya. Tanda koma di akhir colemak, bukan kesalahan ketik. Tanda tersebut menetapkan varian colemak untuk layout pertama dan tidak menetapkan varian untuk layout kedua. Di GNOME, tambahkan kedua sumber input melalui Settings. Super+Space sudah dapat digunakan untuk beralih di antaranya.

Dua prompt kata sandi berada di luar sesi desktop Anda dan memerlukan perhatian terpisah. Layar login dimulai sebelum pengaturan sesi Anda diterapkan. Karena itu, uji pengaturan tersebut dengan logout, bukan dengan mengandalkan pengaturan itu. Jika disk dienkripsi, prompt passphrase dijalankan dari initramfs. initramfs memiliki salinan keymap sendiri. Di Debian dan Ubuntu, bangun ulang initramfs dengan sudo update-initramfs -u setelah Anda mengubah /etc/default/keyboard. Kemudian reboot sekali untuk menguji perubahan tersebut selagi Anda masih memiliki cara lain untuk mengakses mesin.

Apakah saya dapat mempertahankan satu program menggunakan QWERTY?

Layout diterapkan sebelum aplikasi menerima input tombol. X server atau compositor mengubah scancode menjadi karakter lalu menyerahkan karakter tersebut kepada aplikasi. Karena itu, aplikasi tidak dapat meminta layout yang berbeda. Aplikasi hanya dapat memetakan ulang karakter yang diterimanya. Itulah sebabnya solusi untuk Vim berada di konfigurasi Vim, dan tidak ada pengalih layout umum per jendela yang dapat digunakan.

Ada dua pendekatan yang dapat digunakan. Pendekatan pertama berlaku per perangkat. Jika pengetikan QWERTY dilakukan pada keyboard terpisah, tetapkan layout pada perangkat tersebut, bukan pada sistem:

xinput list
setxkbmap -device 12 -layout us

Ambil id dari xinput list, lalu pastikan dengan mengetik pada setiap keyboard secara bergantian. sway menerima pengaturan yang sama untuk setiap pengenal input dari swaymsg -t get_inputs, dan pemilih yang lebih spesifik mengesampingkan type:keyboard.

Pendekatan kedua adalah melakukan pemetaan ulang di dalam aplikasi, seperti yang dilakukan Vim melalui langmap. Game hampir selalu memiliki layar pengaturan key binding. Memetakan ulang tombol gerakan di sana lebih cepat daripada mencoba mengendalikan layout dari luar. Untuk aplikasi yang tidak memiliki pengaturan tersebut, tetapkan tombol pengalih layout di atas dan tekan tombol itu sebelum menjalankan aplikasi.

FAQ

Apakah saya perlu mengatur Colemak pada VPS?

Tidak, jika Anda mengaksesnya melalui SSH. SSH mengirimkan karakter, sehingga layout ditentukan pada laptop Anda sebelum apa pun dikirim, dan server menerima byte yang sama seperti yang akan diterima dari pengguna dengan layout QWERTY. Pengecualiannya adalah konsol browser pada panel provider Anda, yang terhubung ke mesin virtual sebagai keyboard dan menggunakan keymap konsol milik server. Konsol tersebut adalah jalur pemulihan Anda ketika SSH gagal. Karena itu, ubah pengaturannya hanya jika Anda yakin, lalu uji saat SSH masih berfungsi.

Sebaiknya saya mempelajari Colemak atau Colemak-DH?

Keduanya sama-sama memerlukan proses belajar ulang dari QWERTY. Karena itu, pilih berdasarkan kenyamanan, bukan biaya migrasi. Colemak-DH memindahkan D, B, dan G serta menukar posisi H dengan M, karena Colemak standar menggunakan regangan jari telunjuk ke kolom tengah untuk mengetik D dan H. Nama varian XKB adalah colemak dan colemak_dh, sedangkan colemak_dh_iso digunakan untuk keyboard yang memiliki tombol tambahan di sebelah shift kiri. Jalankan localectl list-x11-keymap-variants us | grep colemak untuk melihat varian yang tersedia pada sistem Anda.

Apa yang terjadi pada tombol hjkl Vim jika menggunakan Colemak?

h tetap berada di posisinya. j berpindah ke posisi Y pada QWERTY, k ke posisi N pada QWERTY, dan l ke posisi U pada QWERTY, sehingga tombol navigasi kursor tersebar di tiga baris. Anda dapat mempelajarinya kembali di posisi baru. Dengan cara ini, semua plugin dan tutorial tetap berlaku. Alternatifnya, petakan ulang empat tombol di bawah tangan kanan Anda: h, n, e, dan i pada Colemak, serta m, n, e, dan i pada Colemak-DH. Opsi langmap pada Vim memiliki fungsi yang sama untuk normal mode, tetapi tidak berlaku untuk kombinasi Ctrl dan dapat membingungkan pemetaan plugin.

Berapa lama sampai kecepatan mengetik saya kembali seperti sebelumnya?

Perkirakan waktu dalam hitungan minggu, bukan hari, karena ini merupakan memori motorik dan satu-satunya cara untuk meningkatkannya adalah berlatih. Catatan latihan yang dilaporkan pengguna umumnya menunjukkan bahwa kecepatan pada minggu pertama jauh di bawah setengah kecepatan sebelumnya, lalu kembali ke tingkat tersebut setelah satu hingga tiga bulan penggunaan setiap hari. Berganti-ganti antara QWERTY dan Colemak setiap hari akan memperpanjang prosesnya karena tidak ada refleks yang sempat terbentuk secara stabil.

Mengapa setxkbmap tidak melakukan apa pun pada desktop saya?

Hampir pasti karena session tersebut menggunakan Wayland. Pada Wayland, compositor mengelola keymap dan menerapkannya ke setiap aplikasi. Akibatnya, setxkbmap mungkin tidak dapat menemukan display atau hanya mengubah XWayland, sedangkan aplikasi native mengabaikannya. Atur layout pada compositor. Gunakan key gsettings org.gnome.desktop.input-sources pada GNOME, xkb_variant pada konfigurasi sway, atau halaman Layouts di System Settings KDE Plasma.