Pertanyaan Bagaimana cara mengatur pengaturan khusus sintaks di VIMRC saya?


Saya bekerja dengan beberapa bahasa dan markup di vim setiap hari (ruby, python, javascript, CSS, HTML, dll), dan ingin memiliki pengaturan yang berbeda untuk setiap buffer ketika saya menjalankan editor saya. Bagaimana saya bisa mendeteksi sintaks yang dimuat di buffer saat ini?

Secara khusus, saya benar-benar lebih memilih python indent menjadi 4 spasi, sementara bahasa lain ditemukan dengan 2. Saya membayangkan sesuatu seperti ini di saya .vimrc mengajukan:

if syntax == 'python'
  set softtabstop=4
  set shiftwidth=4
else if syntax == 'html'
  " ...
endif

Ada yang seperti itu di vim? Terima kasih.


4
2017-12-01 09:01


asal




Jawaban:


Menggunakan FileType acara autocommand. Lihat :h autocmd.txt untuk detailnya.

au Filetype python source ~/.vim/scripts/python.vim

7
2017-12-01 09:30



Mengapa membuat direktori yang tidak standar? -> ~ / .vim / ftplugin! - Luc Hermitte
Terima kasih - yang akhirnya saya lakukan adalah menggunakan ide Anda dengan beberapa modifikasi: au FileType python set softtabstop=4 | set shiftwidth=4 - sa125


ft-plugins adalah apa yang Anda cari.

Lihat jawaban berikut:


2
2017-12-01 10:14