Saya mengedit kode Python dengan Vim.
Dengan tabkunci, saya mendapatkan empat spasi yang dimasukkan untuk lekukan. Bagaimana saya bisa menghapus spasi itu dengan satu stroke "Backspace" (?) - bukan empat?
Harus ada beberapa opsi "set" untuk itu ...
Inilah .vimrc saya:
set autoindent
set ts=4
set sw=4
set et
tl; dr:
set tabstop=4 softtabstop=-1 shiftwidth=0 expandtab
bentuk pendek:
set ts=4 sts=-1 sw=0 et
Penjelasan
Jika Anda mengatur
softtabstop
(atausts
) untuk-1
itu secara otomatis akan berperilaku sama dengantabstop
(ts
), yang akan menghemat beberapa kerumitan jika Anda sering mengubah tab. Pengaturanshiftwidth
(sw
)0
harus secara efektif membuat hal yang samatabstop
juga.Secara terperinci
shiftwidth
sw
tabstop
ts
softtabstop
sts
expandtab
et
sumber
Saya menulis GreedyBackspace.vim untuk seseorang yang menginginkan sesuatu seperti ini. Saya pribadi tidak menggunakannya jadi sudah lama sejak saya memperbaruinya. Saya belum menerima laporan bug apa pun tentang itu akhir-akhir ini.
sumber
Beberapa pilihan:
sumber
Cara termudah adalah
<<
, ulangi dengan a.
sumber
Sudahkah Anda memeriksa menggunakan pengaturan tab memperluas di VIM Anda?
Saya biasanya lebih suka menjaga tab saat bekerja pada file.
Saat diperlukan, saya mengganti tab menjadi 4 spasi atau sebanyak yang diperlukan.
Sebagai bonus kecil, file sumber Anda lebih pendek 3 chars per tab
:-)
sumber
Saya pikir tidak ada jalan. Setelah tombol tab diperluas ke empat spasi, vim tidak memiliki cara untuk mengetahui bahwa mereka pernah menjadi tab.
sumber