De qualquer forma para navegar percentualmente no vim?

21

Freqüentemente, abro arquivos grandes, procurando por registros para encontrar informações. Como todas as linhas têm timestamp no meu caso e tenho a certeza de em que parte do arquivo inteiro a informação está presente que eu estou interessado em. Por exemplo,

  • na metade inferior do conteúdo do arquivo (50% ou mais) ou
  • cerca de 10% a mais no final do arquivo ou
  • role para baixo mais 20% do arquivo original.

Assim, para navegar rapidamente dessa maneira, ou seja, com porcentagem - Há alguma funcionalidade existente já disponível em vim ?

    
por mtk 19.02.2014 / 12:45

2 respostas

32

Desculpe por uma resposta curta, mas

apenas digite 50%

                                                        *N%*
{count}%                Go to {count} percentage in the file, on the first
                        non-blank in the line |linewise|.  To compute the new 
                        line number this formula is used:
                            ({count} * number-of-lines + 99) / 100
                        See also 'startofline' option.  {not in Vi}
    
por 19.02.2014 / 12:59
2

Existe o comando [count]% (como intuitivo!) para navegação absoluta. Para navegação relativa, você precisa calcular o valor sozinho. Por exemplo. para rolar para baixo 33%:

:exe 'normal!' 33 * line('$') / 100 . 'j'

(Você provavelmente deseja criar mapeamentos que usem v:count para esses.)

    
por 19.02.2014 / 14:31

Tags