Saya tertarik menemukan cara untuk menunjukkan garis vertikal pada kolom 80 di Vim (bukan GVim).
Saya sudah pernah menggunakannya set wrap
, tapi saya hanya ingin menunjukkan garis vertikal sehingga saya bisa membungkus garis panjang itu sendiri.
Saya tertarik menemukan cara untuk menunjukkan garis vertikal pada kolom 80 di Vim (bukan GVim).
Saya sudah pernah menggunakannya set wrap
, tapi saya hanya ingin menunjukkan garis vertikal sehingga saya bisa membungkus garis panjang itu sendiri.
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
):
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>H
untuk mengubah kolom lebih dari 80 yang disorot.
Baru di Vim 7.3:
'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
Anda juga dapat menggunakan angka absolut:
:set colorcolumn=80
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.
sorot OverLength ctermbg = merah ctermfg = white guibg = # 592929
cocok dengan OverLength /\%81v.*/
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 /.
Beberapa jawaban di sini http://vim.wikia.com/wiki/Highlight_long_lines simple autocommand
:au BufWinEnter * let w:m1=matchadd('Search', '\%<81v.\%>77v', -1)
:au BufWinEnter * let w:m2=matchadd('ErrorMsg', '\%>80v.\+', -1)