Apakah ada .vimrc
pengaturan untuk secara otomatis menghapus spasi spasi saat menyimpan file?
Idealnya (agar aman) Saya hanya ingin memiliki fungsi ini untuk file tertentu, misalnya *.rb
Apakah ada .vimrc
pengaturan untuk secara otomatis menghapus spasi spasi saat menyimpan file?
Idealnya (agar aman) Saya hanya ingin memiliki fungsi ini untuk file tertentu, misalnya *.rb
Jawaban:
Ini berfungsi (dalam file .vimrc) untuk semua file:
autocmd BufWritePre * :%s/\s\+$//e
Ini berfungsi (dalam file .vimrc) hanya untuk file ruby (.rb):
autocmd BufWritePre *.rb :%s/\s\+$//e
e
digunakan lastet ?
Untuk menjaga posisi kursor, gunakan sesuatu seperti:
function! <SID>StripTrailingWhitespaces()
let l = line(".")
let c = col(".")
%s/\s\+$//e
call cursor(l, c)
endfun
jika tidak, kursor akan berakhir di awal baris penggantian terakhir setelah save.
Contoh : Anda memiliki ruang di ujung baris 122
, Anda sedang on line 982
dan masuk :w
. Tidak mengembalikan posisi, akan menghasilkan kursor berakhir di awal garis 122
sehingga mematikan aliran kerja.
Atur panggilan ke fungsi menggunakan autocmd
, beberapa contoh:
" Using file extension
autocmd BufWritePre *.h,*.c,*.java :call <SID>StripTrailingWhitespaces()
" Often files are not necessarily identified by extension, if so use e.g.:
autocmd BufWritePre * if &ft =~ 'sh\|perl\|python' | :call <SID>StripTrailingWhitespaces() | endif
" Or if you want it to be called when file-type i set
autocmd FileType sh,perl,python :call <SID>StripTrailingWhitespaces()
" etc.
Satu juga dapat menggunakan, tetapi tidak diperlukan dalam hal ini, getpos () oleh:
let save_cursor = getpos(".")
" Some replace command
call setpos('.', save_cursor)
" To list values to variables use:
let [bufnum, lnum, col, off] = getpos(".")
Plugin DeleteTrailingWhitespace saya melakukan hal ini dan, berbeda dengan berbagai :autocmds
floating sederhana , juga menangani kasus-kasus khusus, dapat meminta pengguna, atau membatalkan menulis dengan trailing whitespace.
Halaman plugin berisi tautan ke alternatif; ada juga diskusi besar tentang Vim Tips Wiki .