winheight()
dan winwidth()
kembalikan jumlah kolom / garis di jendela saat ini. Yang saya cari adalah sesuatu yang lebih dekat dengan tinggi dan lebar sebenarnya dari area pengeditan, atau area yang ditampilkan jika dijalankan di terminal. Masalah dengan winheight()
dan winwidth()
apakah rasio aspek yang dihitung dari nilai-nilai ini tidak berhubungan dengan rasio aspek yang sebenarnya.
:echo winwidth('%') winheight('%') winwidth('%') * 1.0 / winheight('%')
104 51 2.039216
Tangkapan layar area buffer berukuran 936x918 piksel, memberikan rasio aspek yang ditampilkan 1.019608
. Saya pikir saya bisa mendapatkan nilai aktual dengan menggunakan ukuran font, tapi bagaimana caranya?
Ini adalah tindak lanjut dari Bagaimana saya bisa membuat Vim membuka bantuan dalam pemisahan vertikal? . Saya mencoba mengadaptasi solusi Nobe4 .
==#
operator yang :h
membantu menjernihkan saya sebenarnya mengerti seluruh perintah panik. Apakah itu membuat saya seorang ahli Vim? Harus seperti itu. Perlu keluar lebih banyak.
cnoreabbrev h <C-r>=(&columns >= 160 && getcmdtype() ==# ':' && getcmdpos() == 1 ? 'vertical botright help' : 'h')<CR>
.