Saya sering membolak-balik file Ruby dan Markdown. Apakah ada cara yang dapat saya set spell
atur secara otomatis ketika saya membuka *.md
file, tetapi tidak ketika saya membuka file *.rb
?
Saya sering membolak-balik file Ruby dan Markdown. Apakah ada cara yang dapat saya set spell
atur secara otomatis ketika saya membuka *.md
file, tetapi tidak ketika saya membuka file *.rb
?
Jawaban:
Cara terbaik untuk mengatur opsi untuk tipe file tertentu adalah dengan menggunakan perintah otomatis.
Di sini Anda dapat menambahkan sesuatu seperti itu di .vimrc
:
autocmd FileType markdown setlocal spell
Baris ini akan memicu perintah setlocal spell
ketika tipe file dari buffer ditetapkan sebagai penurunan harga. Anda juga dapat menggunakan perintah otomatis berdasarkan ekstensi file yang Anda edit dengan sesuatu seperti:
autocmd BufRead,BufNewFile *.md setlocal spell
Untuk informasi lebih lanjut, Anda harus membaca :h :autocmd
dan :h autocmd-events
.
EDIT Menggunakan perintah otomatis bukan cara terbaik untuk melakukan itu.
Pertama, jika Anda menggunakan perintah otomatis ingatlah untuk meletakkannya di augroup
:
augroup markdownSpell
autocmd!
autocmd FileType markdown setlocal spell
autocmd BufRead,BufNewFile *.md setlocal spell
augroup END
Dengan cara ini jika Anda sumber vimrc Anda beberapa kali autocommand tidak akan menumpuk dan dieksekusi beberapa kali.
Sekarang solusi yang lebih baik adalah dengan menggunakan ftplugin. Untuk melakukan itu, Anda ingin membuat file ~/.vim/after/ftplugin/markdown.vim
.
File ini akan bersumber ketika tipe file buffer diatur ke markdown
dan setelah ftplugin
yang datang dengan Vim secara default telah bersumber (dengan cara ini Anda tidak kehilangan pengaturan yang sudah ada).
Dalam file ini, Anda cukup menambahkan:
setlocal spell
Di sini Anda perlu menggunakan setlocal
alih-alih set
memastikan bahwa pengaturan hanya akan berlaku untuk buffer saat ini dan tidak untuk semua buffer.
Beberapa topik bantuan terkait yang menarik:
autocmd FileType latex,tex,md,markdown setlocal spell