Edit: Untuk Vim> = 7.3 lihat jawaban di bawah ini .
Sayangnya vim tidak memiliki mekanisme untuk menampilkan garis vertikal setelah kolom seperti yang Anda inginkan (tidak seperti, katakanlah, TextMate). Namun, ada indikator visual alternatif yang dapat Anda gunakan untuk menunjukkan bahwa garis terlalu panjang.
Inilah yang saya gunakan (Anda dapat memasukkan ini ke dalam Anda .vimrc):
nnoremap <Leader>H :call<SID>LongLineHLToggle()<cr>
hi OverLength ctermbg=none cterm=none
match OverLength /\%>80v/
fun! s:LongLineHLToggle()
if !exists('w:longlinehl')
let w:longlinehl = matchadd('ErrorMsg', '.\%>80v', 0)
echo "Long lines highlighted"
else
call matchdelete(w:longlinehl)
unl w:longlinehl
echo "Long lines unhighlighted"
endif
endfunction
Jadi Anda dapat menggunakan <Leader>Huntuk mengubah kolom lebih dari 80 yang disorot.
'colorcolumn' adalah daftar kolom layar yang dipisahkan koma yang disorot dengan ColorColumn. Berguna untuk meratakan teks. Akan membuat layar menggambar ulang lebih lambat. Kolom layar dapat berupa angka absolut, atau angka yang diawali dengan '+' atau '-', yang ditambahkan atau dikurangi dari 'textwidth'.
Contoh dari dokumen:
:set colorcolumn=+1 " highlight column after 'textwidth'
:set colorcolumn=+1,+2,+3 " highlight three columns after 'textwidth'
:highlight ColorColumn ctermbg=lightgrey guibg=lightgrey
Saya pikir ada baiknya untuk dicatat di sini warna secara otomatis ditentukan oleh warna sorotan Anda kecuali Anda mengaturnya secara manual seperti pada contoh.
Alex Hart
Perhatikan bahwa highlightpengaturan harus disetel setelahcolorscheme perintah apa pun karena itu akan menimpa warna sorotan Anda.
c4urself
7
Saya pergi dengan cerah, bakar-otak-merah ... karena Anda tahu ... panjang garis
Ron Dahlgren
Apakah Anda mengetahui cara untuk memiliki dua warna berbeda untuk kolom warna? Saya ingin memiliki dua: satu karakter biasa dengan 80 karakter untuk kode, dan yang sangat samar dengan 72 karakter untuk teks / komentar mengalir.
Alice
Akan lebih baik untuk menyebutkan bahwa itu textwidthjuga menyebabkan vim membungkus saat Anda mengetik.
anak ayam
12
Ada cara lain untuk memberi tahu tentang antrean panjang.
sorot OverLength ctermbg = merah ctermfg = white guibg = # 592929
cocok dengan OverLength /\%81v.*/
Jawaban:
Edit: Untuk Vim> = 7.3 lihat jawaban di bawah ini .
Sayangnya vim tidak memiliki mekanisme untuk menampilkan garis vertikal setelah kolom seperti yang Anda inginkan (tidak seperti, katakanlah, TextMate). Namun, ada indikator visual alternatif yang dapat Anda gunakan untuk menunjukkan bahwa garis terlalu panjang.
Inilah yang saya gunakan (Anda dapat memasukkan ini ke dalam Anda
.vimrc
):Jadi Anda dapat menggunakan
<Leader>H
untuk mengubah kolom lebih dari 80 yang disorot.sumber
Baru di Vim 7.3:
Contoh dari dokumen:
Anda juga dapat menggunakan angka absolut:
sumber
highlight
pengaturan harus disetel setelahcolorscheme
perintah apa pun karena itu akan menimpa warna sorotan Anda.textwidth
juga menyebabkan vim membungkus saat Anda mengetik.Ada cara lain untuk memberi tahu tentang antrean panjang.
Masalah tata letak kolom Vim 80
sumber
Saya menggunakan
match ErrorMsg '\%>80v.\+'
yang akan menyoroti lebih dari 80 karakter dengan warna merah.Saya meletakkan perintah itu di python.vim dan ruby.vim saya di bawah ~ / .vim / after / ftplugin /.
sumber
Beberapa jawaban di sini http://vim.wikia.com/wiki/Highlight_long_lines simple autocommand
sumber