Firefox com Vimperator: como alternar a barra Localizar?

Firefox com Vimperator: como alternar a barra Localizar?

Estou usando o Firefox comVimperadorPlug-in do emulador Vim, mas em vez de usar sua /chave para pesquisar, prefiro usar a barra Find integrada regular, invocada por Ctrl-F.

O problema é que, se o Vimperator estiver ativado, quando eu clicar Escna barra Find depois de terminar a pesquisa, a barra Find não desaparecerá (como aconteceria se o Vimperator tivesse sido desativado) porque o Vimperator intercepta Esco mapeamento.

Então, minha pergunta é: como posso fazer a barra Localizar desaparecer como faria normalmente, quando eu pressiono Esca tecla?

Responder1

Com o vimperator ativado, digitar i+CTRL+fabrirá a barra de localização. E também é fácil fechá-lo.

Experimente este comando:

:js document.getElementById("FindToolbar").close();

Ou crie um mapa: (Adicione as linhas abaixo em '~/.vimperatorrc')

noremap <c-s-f> :js document.getElementById("FindToolbar").close();<cr>

inoremap <c-s-f> <esc>:js document.getElementById("FindToolbar").close();<cr>

Assim, a digitação CTRF+SHIFT+ffunciona perfeitamente!

Uma nota extra:

CTRL+fno modo de comando abrirá a barra de localização. Embora CTRL-babra a barra lateral de favoritos. Essa é a razão pela qual encontro esse problema. Portanto, alguns outros mapeamentos podem ser úteis:

cnoremap <c-f> <right>

cnoremap <c-b> <left>

Atualizações:
A partir do Gecko 1.9 (Firefox 25), use este comando:
:js getBrowser().getFindBar().close()

Responder2

Adicione o seguinte mapeamento ao ~/.vimperatorrcarquivo de configuração do Vimperator:

inoremap <Esc> <S-Esc><Esc><S-Esc>

E certifique-se de reiniciar o Firefox para receber as alterações.

Nos bastidores, ele faz o seguinte: desativa a interceptação de chave do Vimperator, propaga Esca chave para o Firefox (que fecha a barra Localizar), ativa a interceptação de chave do Vimperator de volta, nessa ordem. Observe que esse mapeamento não é específico apenas para a barra Localizar, ele se aplica a todos insert modeos formulários (qualquer área de texto onde você possa digitar alguma entrada), mas provavelmente é isso que você deseja.

informação relacionada