winheight()
e winwidth()
retorne o número de colunas / linhas na janela atual. O que estou procurando é algo mais próximo da altura e largura reais da área de edição ou da área exibida, se executada em um terminal. O problema com winheight()
e winwidth()
é que a proporção calculada a partir desses valores está fora de sintonia com a proporção real.
:echo winwidth('%') winheight('%') winwidth('%') * 1.0 / winheight('%')
104 51 2.039216
Uma captura de tela da área do buffer tem o tamanho de 936x918 pixels, fornecendo uma proporção de 1.019608
. Acho que posso obter o valor real usando o tamanho da fonte, mas como?
Este é um acompanhamento de Como posso fazer com que o Vim abra a ajuda em uma divisão vertical? . Estou tentando adaptar a solução do Nobe4 .
==#
operador que :h
ajudou a esclarecer, eu realmente entendi todo o maldito comando. Isso faz de mim um especialista em Vim? Tem que ser algo assim. Precisa sair mais.
cnoreabbrev h <C-r>=(&columns >= 160 && getcmdtype() ==# ':' && getcmdpos() == 1 ? 'vertical botright help' : 'h')<CR>
.