Notetaking

Vim Binding di Obsidian

oleh Ekky Armandi • 05 Jan 2024

![[images/vim-binding-di-obsidian/obsidian-vim-cover-100-small.jpg|Thumbnail of Vim Binding di Obsidian]]

Updetan terbaru aplikasi Obsidian sudah dilengkapi dengan fitur vim bindings. Pengguna vim pasti takjub dengan adanya vim motion didalam notetaking app. Dalam tulisan ini aku akan menjelaskan cara mengaktifkan vim binding didalam Obsidian.

Vi-Improve (Vim)

Vim merupakan text editor jaman dulu yang dikembangkan ulang oleh Bram Moolenaar pada tahun 1991 dari versi terdahulu bernama Vi (baca, vi ai). Editor ini cukup populer dikalangan programmer atau developer khususnya oleh pengguna Linux OS.

Software vim memungkinkan manipulasi text dilakukan langsung dari terminal / command prompt. Gaya dan cara mengoperasikan vim cukup unik, yaitu menggunakan kombinasi keystroke pada keyboard. Cirikhas vim mengoperasikan software ini kemudian dikenal sebagai vim bindings.

Pengguna Windows OS pasti sulit membayangkan ada text editor didalam terminal. Simpelnya, seperti Command Prompt (cmd) untuk mengedit text. Kalau kamu pernah menggunakan nano, vim hampir sama dengan itu, hanya saja secara teknis vim memiliki keystrokenya sendiri untuk memanipulasi text hingga memungkinkannya untuk melakukan task reptitif menggunakan fitur macro yang tersedia pada Vim. Sebagai perbandingan fungsi untuk keluar dari editr, pada nano diperlukan kombinasi tombol Ctrl+X (^X) lalu Y, sedangkan pada vim memerlukan perintah :q.

Perintah yang diawali dengan colon “:” pada vim disebut sebagai macro. Macro dapat diprogram dan diremap sebagai kombinasi keyboard sehingga penguna hanya cukup menekan kombinasi tertentu untuk menjalankan macro tersebut.

Cara mengaktifasi vim bindings pada Obsidian

Untuk mengaktifkan vim bindings pada Obsidian, kamu bisa pergi ke Preferences > Editor pada Obsidian, kebagian paling bawah, lalu turn on opsi Vim key bindings.

![[images/vim-binding-di-obsidian/image1.png|Editor settings]]

Sedangkan untuk melakukan keyboard remapping. User perlu menginstall .vimrc support terlebih dahulu melalui Community Pluggins.

Menginstal vimrc support

Pergi ke Preferences > Community Plugins > Browse. Kemudian ketik “vimrc” pada kolom pencarian, lalu klik Install.

![[images/vim-binding-di-obsidian/image2.png|Install vimrc support]]

Membuat vimrc dotfiles untuk obsidian

Pada vault/folder utama yang digunakan, buat file baru dengan judul .obsidian.vimrc lalu muat konfigurasi atau remapping keymap yang diinginkan sebagai berikut.

" VAULT_ROOT/.obsidian.vimrc

" Surround
exmap surround_wiki surround [[ ]]
exmap surround_double_quotes surround " "
exmap surround_single_quotes surround ' '
exmap surround_backticks surround ` `
exmap surround_brackets surround ( )
exmap surround_square_brackets surround [ ]
exmap surround_curly_brackets surround { }

" NOTE: must use 'map' and not 'nmap'
map [[ :surround_wiki
nunmap S
vunmap S
map S" :surround_double_quotes
map S' :surround_single_quotes
map S` :surround_backticks
map Sb :surround_brackets
map S( :surround_brackets
map S) :surround_brackets
map S[ :surround_square_brackets
map S[ :surround_square_brackets
map S{ :surround_curly_brackets
map S} :surround_curly_brackets

" Yank to clipboard
set clipboard=unnamed 

" Remap Escape
imap jk <Esc>

Script diatas digunakan untuk menambahkan plugin surround dan remaping escape menjadi jk. Baca dokumentasinya lebih lanjut melalui repository obsidian-vimrc-support.

Reload (optional)

Lakukan reload aplikasi ketika ada perintah yang tak bekerja dengan cara menekan tombol Ctrl+P lalu cari “reload”

![[images/vim-binding-di-obsidian/image3.png|Obsidian command palette]]

Custom Theme (optional)

Kamu juga bisa mengubah tema aplikasi loh, dengan cara pergi ke Preferences > Appearance > Manage lalu apply theme yang kamu inginkan.

![[images/vim-binding-di-obsidian/image4.png|Obsidian Themes Options]]

Follow me on