winheight()
và winwidth()
trả về số lượng cột / dòng trong cửa sổ hiện tại. Những gì tôi đang tìm kiếm là một cái gì đó gần hơn với chiều cao và chiều rộng thực tế của khu vực chỉnh sửa hoặc khu vực được hiển thị nếu chạy trong một thiết bị đầu cuối. Vấn đề với winheight()
và winwidth()
là tỷ lệ khung hình được tính từ các giá trị này không phù hợp với tỷ lệ khung hình thực tế.
:echo winwidth('%') winheight('%') winwidth('%') * 1.0 / winheight('%')
104 51 2.039216
Ảnh chụp màn hình của vùng đệm có kích thước 936x918 pixel, cho tỷ lệ khung hình hiển thị là 1.019608
. Tôi nghĩ rằng tôi có thể nhận được giá trị thực tế bằng cách sử dụng kích thước của phông chữ, nhưng làm thế nào?
Đây là phần tiếp theo Làm thế nào tôi có thể giúp Vim mở trợ giúp trong phân chia theo chiều dọc? . Tôi đang cố gắng thích nghi với giải pháp của Nobe4 .
==#
toán tử :h
giúp làm sáng tỏ tôi thực sự hiểu toàn bộ mệnh lệnh kỳ dị. Điều đó làm cho tôi một chuyên gia Vim? Phải là một cái gì đó như thế. Cần phải ra ngoài nhiều hơn.
cnoreabbrev h <C-r>=(&columns >= 160 && getcmdtype() ==# ':' && getcmdpos() == 1 ? 'vertical botright help' : 'h')<CR>
.