Eu uso o gvim com
set number
no meu .vimrc
modo ele mostra o número da roupa, mais um espaço, antes de cada linha.
Se o documento tiver menos de 10 linhas, serão necessárias 2 colunas, se tiver mais de 10, 3 colunas e assim por diante.
Se eu colocar
set lines=40 columns=80
em .gvimrc
, mostrará 78 colunas de código e 2 para o número da roupa mais o ritmo, ou 77 + 3 e assim por diante.
Gostaria que a largura da janela fosse definida como 80 colunas + qualquer número de colunas necessário para mostrar o número da roupa.
Não precisa ser dinâmico, mas eu gostaria de poder ler o número de linhas de um determinado arquivo e definir de columns
acordo. (Obviamente, uma solução dinâmica seria realmente legal, mas não essencial)
:help autocommand-events
. Entre eles estáTabEnter
, por isso, você pode tentar substituirBufRead
porBufRead,TabEnter
no exemplo acima e ver se isso lhe dá o comportamento desejado. Eu não testei o exemplo com esse evento.'numberwidth'
cresce apenas logaritmicamente com o número de linhas no arquivo; portanto, se você puder permitir que o espaço horizontal seja'number'
ativado, não acho que você se preocupe em limitá-lo.:help expr1
) ou com um if / endif (por exemplo,:help options-in-terminal
). O problema está mudando & colunas quando'number'
é alterado. Pensei em usar o evento de comando automático OptionSet, mas:help OptionSet
diz que é uma má idéia redefinir uma opção durante o processamento desse evento.eu uso
no meu $ HOME / .gvimrc, o que me dá o que você deseja. Raramente (se alguma vez) tenho arquivos com mais de 999 linhas, portanto, funciona para mim.
fonte
Defino a largura do número como, digamos, 5 e depois as colunas para 85 (80 + 5). Isso deve ser bom para arquivos de 0 a um milhão de linhas.
Aqui está o que você pode colocar no arquivo ~ / .vimrc (padrão)
Você verá que o número da linha está formatado com '% 5d' (5 é a largura do número acima) em vez do formato padrão '% d', desperdiçando um pouco de espaço antes dos números da linha, mas mantendo a consistência.
fonte