Por que não consigo ir para a próxima entrada correspondente no vim pressionando n?

1

vimtutor diz isso em lesson 4.2 : The search command

  1. In Normal mode type the / character. Notice that it and the cursor appear at the bottom of the screen as with the : command.

    1. Now type 'errroor' . This is the word you want to search for.

    2. To search for the same phrase again, simply type n . To search for the same phrase in the opposite direction, type N .

Isso funciona perfeitamente enquanto pratico com o tutor vim, mas não consigo fazer com que ele funcione com um arquivo. Basicamente, quando digito o caractere / e, em seguida, digito o padrão para pesquisar, ele está indo para o primeiro jogo como esperado. Mas abaixo do conteúdo do arquivo, ainda vejo meu padrão de pesquisa com um cursor piscando. Por exemplo, se meu padrão for a string foo , vejo /foo e o cursor continua piscando. Em seguida, pressionar n apenas acrescenta o caractere pressionado à string de pesquisa e o padrão de pesquisa agora se torna /foon , que não é o que eu quero.

Por que estou vendo esse problema e como posso corrigir isso?

    
por Geek 28.01.2013 / 16:22

2 respostas

5

Você precisa concluir a pesquisa pressionando Enter . Você está de volta no modo normal, onde os comandos n / N se aplicam. Como você deve ter notado, o Vim é um editor modal (o melhor é que você precisa pressionar i para inserir caracteres).

Vim aparece para pular para o padrão de pesquisa enquanto você o digita, mas isso é apenas uma prévia do recurso 'incsearch' .

    
por 28.01.2013 / 17:16
0

pressing n just appends the the pressed character to the search string and the search pattern now becomes /foon

vim é modal, tem modo de comando (onde n significa próxima correspondência) e tem modo de inserção (onde n significa inserir o caracter "n".)

Pode ser que você esteja usando uma configuração especial do vim, como o creme, que tenta fazer com que o vim funcione como um simples editor não-modal.

Se você estiver usando um vim não modificado sem plugins ou configurações incomuns, pressione Esc para sair do modo de inserção. A linha de status geralmente exibe "INSERT" quando no modo de inserção (mas você pode configurá-lo para não - então verifique isso)

Atualize aqui o que você pode esperar em duas versões diferentes do Vim em duas plataformas diferentes

A informaçà £ o de status da plataforma 1 - note está invertida e inclui flilename e um indicador de que uma alteraçà £ o foi feita ( [+] )

1) Depois de abrir um arquivo e digitar /hath

2)Depoisdepressionari

Plataforma 2 - observe que todas as correspondências na tela são destacadas.

1) Depois de abrir um arquivo e digitar /hath

2)Depoisdepressionari

Alguns aspectos da aparência do Vim dependem da versão e configuração.

use :ve para exibir a versão do vim. Isso pode ajudar os possíveis respondentes a corrigir sua pergunta e incluir essas informações juntamente com o nome e a versão do sistema operacional.

    
por 28.01.2013 / 16:28

Tags