Saat mengkode dalam bahasa yang berbeda, saya cenderung perlu membatasi baris saya ke panjang tertentu (biasanya 79 atau 80 karakter).
Saya telah melihat ini dilakukan di editor lain melalui penggunaan penggaris (garis padat ditampilkan di kolom) atau dengan mengubah warna teks untuk menunjukkan bahwa itu sudah berakhir.
Bagaimana saya bisa memiliki Vim menunjukkan kepada saya ketika saya mendekati atau melampaui 79 karakter dalam satu baris?
sumber
execute "set colorcolumn=" . join(range(81,335), ',')
Sebagai tambahan untuk jawaban Kevin, Anda dapat memiliki beberapa kolom warna. Ketika saya kode, saya kadang-kadang memiliki batas "lunak" pada 80 kolom dan batas "keras" pada 120 kolom. Jadi saya ingin garis di 80, dan kemudian setiap kolom setelah 120 diwarnai.
Saya melakukan ini dengan
Tentu saja, ini dapat dengan mudah dimodifikasi ke preferensi lain.
sumber
Vim 7.3 membawa
colorcolumn
opsi, sebagaimana dirinci dengan sangat baik dalam jawaban lain.Namun, jika Anda tidak memiliki versi 7.3 karena alasan apa pun, Anda masih dapat mencapai indikasi visual bahwa Anda melebihi jumlah kolom tertentu menggunakan
match
fungsionalitas vim (lihat:help match
detailnya).Pada dasarnya, perintah-perintah pencocokan memungkinkan Anda untuk membuat highlight tetap untuk teks yang cocok dengan ekspresi reguler yang diberikan.
:match ColorColumn "\%80v."
akan menyorot teks dalam kolom 80 dengan grup "ColorColumn". Tentu saja Anda dapat mengganti grup sorotan mana pun, dan nilai kolom apa pun. Jika Anda ingin indikasi visual yang kuat, ekspresi"\%>79v.\+"
akan menyoroti kolom 80 dan seterusnya.(
\%80v
Berarti "laga di kolom maya 80," dan\%>79v
berarti "match setelah kolom maya 79; lihat:help /\%c
. Untuk lebih)Pendekatan ini hanya akan menyoroti ketika ada karakter aktual yang ada di kolom yang ditentukan, yang membuatnya kurang konsisten secara visual
colorcolumn
.sumber
match
es yang kurang konsisten lebih baik, karena menyoroti hanya garis-garis di mana saya melebihi batas 80-kolom, daripada menunjukkan garis merah besar (kepada saya) yang mengganggu di kanan layar. Oleh karena itu dalam vimrc saya untuk Python saya gunakancall matchadd('ColorColumn', '\(\%80v\|\%100v\)')
(80 dan 100 adalah panjang yang disarankan dalam PEP 8)