Apa itu plugin Vim?

14

Saya mengerti bahwa kami dapat memperluas kekuatan Vim untuk menambah fitur baru atau memodifikasi yang sudah ada dan meningkatkan pengalaman pengeditan kami.

Walaupun saya sendiri pengguna Vim untuk waktu yang cukup lama, saya sekarang berada di wilayah yang belum dipetakan: apa itu sebenarnya plugin Vim? Apa saja prasyarat untuk menulis plugin, jadi saya bisa menulis plugin sendiri dalam waktu dekat?

Paulo Cereda
sumber

Jawaban:

16

Plugin adalah cara untuk memperluas fungsionalitas vim.

Vim mengkategorikan plugin menjadi plugin "global" (yang memuat dan beroperasi tanpa syarat) dan "filetype" plugins (yang hanya memuat dan beroperasi untuk jenis file tertentu, lihat :help filetype). Vim mencari plugin di lokasi tertentu, dengan asumsi Anda belum mengubah jalur runtime (secara manual atau dengan plugin seperti Pathogen atau Vundle):

  • Pada * nix dan OS X, standarnya adalah ~/.vim/plugin
  • Di Windows, standarnya adalah $HOME/vimfiles/plugin

Plugin filetype digunakan ftpluginsebagai gantinya, dan harus dinamai (atau dalam subdirektori bernama) untuk filetype yang terkait (seperti foo.vimuntuk foofiletype).

Plugin hanyalah skrip vim, jadi Anda dapat menggunakannya untuk mendefinisikan fungsi, pemetaan, dan perintah seperti yang Anda lakukan di .vimrc, meskipun saat menulis sebuah plugin, Anda biasanya ingin menulis skrip vim dengan sedikit lebih umum daripada yang mungkin Anda lakukan jika Anda hanya meretas sendiri .vimrc. Jika vim Anda dikompilasi dengan opsi yang sesuai, Anda juga dapat menulis plugin dalam bahasa lain seperti Python, Ruby atau Lua.

Namun, plugin biasanya lebih dari satu .vimfile yang berada di direktori yang sesuai. Mereka juga sering menyertakan skrip autoload ( :help autoload), skrip sintaks ( :help syntax) dan skrip penanganan indent. Dikemas bersama semua kode dalam skrip ini memberikan kait yang kuat untuk menambah vim.

Bantuan bawaan Vim ( :help plugin) berisi segala macam spesifikasi tambahan. Menulis plugin adalah topik yang cukup luas, tetapi bantuan bawaan vim bisa sangat berguna. Selain itu, ada beberapa sumber yang bagus di internet seperti:


Menggunakan plugin (baik yang Anda tulis atau yang Anda unduh dari internet) adalah masalah sederhana untuk menempatkannya di direktori yang sesuai (atau direktori, jika ada) dan meluncurkan vim. Beberapa plugin mungkin memiliki prosedur instalasi yang lebih kompleks (seperti plugin penyelesaian YouCompleteMe yang populer , yang memiliki komponen yang dikompilasi), tentu saja.

Saat ini, plugin manajemen plugin seperti Pathogen dan Vundle adalah alternatif yang populer untuk menginstal file plugin secara manual, terutama karena plugin biasanya memiliki lebih dari satu file (seperti disebutkan di atas). Lihat pertanyaan ini untuk informasi lebih lanjut.

Komunitas
sumber