Hentikan vim dari mengacaukan indentasi saya pada komentar
12
Untuk beberapa alasan Vim berpikir semua komentar saya harus menghapus semua indentasi. Jika saya menambahkan #awal baris, tiba-tiba semua spasi putih utama dihapus. Bagaimana saya bisa menghentikan ini?
Saya telah menginstal Janus dan NERDtree, jika itu relevan, bersama dengan konfigurasi pribadi lainnya yang banyak di saya .vimrc, tetapi tidak ada yang (sejauh yang saya tahu) akan menyebabkan perilaku seperti itu.
Saya tidak pernah puas dengan jawaban "atur semua hal ini untuk berjaga-jaga". Saya bersikeras mengetahui yang mana dari hal-hal itu yang salah dan bagaimana hal itu terjadi. Berikut adalah perintah yang akan menunjukkan kepada Anda nilai-nilai semua pengaturan yang relevan yang disebutkan di sini, serta di mana pengaturan terakhir ditetapkan. Jika tidak ada Last set fromgaris yang mengikuti, itu adalah nilai default. Tidak ada gunanya setmenolak nilai default yang benar.
:verbose set autoindent? smartindent? cindent? cinkeys? indentexpr?
noautoindent
nosmartindent
cindent
Last set from ~/.vim/vimrc
cinkeys=0{,0},0),:,!^F,o,O,e
Last set from ~/.vim/vimrc
indentexpr=
Press ENTER or type command to continue
Wow! OP mengubah jawaban yang mereka pilih. Saya merasa terhormat.
Bruno Bronosky
6
Ini adalah pertempuran yang aku lawan juga, dan kupikir aku akhirnya menang. Masalahnya adalah bahwa ada selusin cara perilaku yang dapat ditimpa (oleh plugin / sintaksis).
Inilah semua pengaturan yang harus saya gunakan untuk memenangkan pertempuran:
set nosmartindent
set cindent
filetype plugin indent on
set cinkeys-=0#
set indentkeys-=0#
autocmd FileType * set cindent "some file types override it
Dengan autocmd, yang pertama set cindentseharusnya tidak perlu, tapi ini adalah salah satu hal di mana saya terus menambahkan garis sampai perilaku itu hilang.
Saya dapat melewati dua baris terakhir dan masih menyelesaikan masalah
iconoclast
1
@iconoclast mencatat bahwa Anda mungkin masih memiliki masalah dengan beberapa jenis file. Baris terakhir adalah karena beberapa file sintaks mengesampingkan pengaturan indentasi.
Patrick
1
OH TUHAN!!! set indentkeys-=0#!! AKHIRNYA PENDERITAAN SAYA LEBIH !!!!!!!!
Kasapo
2
Anda mungkin ingin memeriksa halaman kode sumber Vim Wiki indenting dan memeriksa bagaimana 'autoindent' bekerja.
Ini adalah pertempuran yang aku lawan juga, dan kupikir aku akhirnya menang. Masalahnya adalah bahwa ada selusin cara perilaku yang dapat ditimpa (oleh plugin / sintaksis).
Inilah semua pengaturan yang harus saya gunakan untuk memenangkan pertempuran:
Dengan
autocmd
, yang pertamaset cindent
seharusnya tidak perlu, tapi ini adalah salah satu hal di mana saya terus menambahkan garis sampai perilaku itu hilang.sumber
set indentkeys-=0#
!! AKHIRNYA PENDERITAAN SAYA LEBIH !!!!!!!!Anda mungkin ingin memeriksa halaman kode sumber Vim Wiki indenting dan memeriksa bagaimana 'autoindent' bekerja.
sumber
ref jawaban ini:
http://vim.wikia.com/wiki/Restoring_indent_after_typing_hash
ubah ke:
atau:
sumber
Saya telah memecahkan masalah dengan berkomentar
set smartindent
.sumber