O que o sinalizador de pesquisa 'z' faz no VIM?

4

Eu estava procurando uma maneira de mostrar um pouco do contexto das minhas pesquisas ao fazer

g/mysearchtext/p

Quando eu tropecei nessa página Procure-um-padrão-e-fornecer-um contexto-poucas-linhas-acima-e-abaixo onde alguém menciona o misterioso (para mim) sinalizador de pesquisa 'z'. Como em

g/cat/z#.3

Minha pesquisa inicial sugere algum tipo de 'número total de linhas retornadas por resultado', mas defini-lo como z#.2 mostra apenas uma linha por resultado de pesquisa. Então, estou confuso e estou com dificuldades para encontrar os documentos em :help pattern .

Então, aqui estão minhas perguntas:

  • O que o z flag faz?
  • Como o #.3 o modifica?
  • Onde nos documentos posso encontrar essa informação?
por jmathew 11.02.2014 / 16:53

1 resposta

5
g/cat/z#.3

Vamos dissecar isso. :help :g informa que a última coisa é um comando , não um sinalizador (como os de :substitute ):

:[range]g[lobal]/{pattern}/[cmd]

Vamos tentar :help :z ; voilà:

:{range}z[+-^.=]{count} Display several lines of text surrounding the line
                            specified with {range}, or around the current line
                            if there is no {range}.
:{range}z#[+-^.=]{count}
                            Like ":z", but number the lines.

Assim, você obterá uma impressão numerada ( # ) de 3 linhas ao redor ( . ) da linha atual (que corresponde a cat ).

    
por 11.02.2014 / 17:35

Tags