Existe uma maneira de t{char}
e f{char}
continuará a funcionar nas próximas linhas, se {char}
não estiver presente em uma determinada linha?
Eu gostaria de evitar o uso /{char}<CR>
para salvar 1 pressionamento de tecla e para não ter destaque na pesquisa, especialmente quando eu preciso disso em combinação com verbos (por exemplo dfa
, ct.
).
cursor-motions
cbaumhardt
fonte
fonte
d/a
para excluir para o próximoa
ec/.
excluir para o próximo.
. Se você o usarhlsearch
e não desejar ao executar esta operação, poderá criar um mapeamento que faça suad/
operação e desabilitar o realce (termina com:nohlsearch
).g:clever_f_across_no_line
definido como 0 e outras opções ativadas / desativadas à vontade).Respostas:
Eu também estava usando dahu / vim-fanfingtastic por algum tempo e achei muito útil. Ele suporta repetições semânticas
.
graças à biblioteca tpope / repeat.vim, que você também deve instalar.Uma alternativa é chrisbra / betterft, que faz mais ou menos a mesma coisa.
O rhysd / clever-f.vim tem uma opção para ativar a busca em várias linhas, embora sua principal característica seja permitir
f
repetir a busca atual, como;
já acontece.Todos esses identificadores
;
e,
chaves, conforme o esperado.A desvantagem com multi-linha
f
et
é que se você bater na tecla errada, você será levado para fora da linha atual para algum lugar inesperado no arquivo. Ctrl-Opode ajudar nesses momentos. (Isso pode ser perigoso com umac
mudança, se você não perceber que acabou de engolir algumas linhas, mas esses foram apenas problemas iniciais para mim.)Existem outros plugins relacionados, com abordagens ligeiramente diferentes, como justinmk / vim-sneak e goldfeld / vim-seek que solicitam dois caracteres , facilitando (mas ainda não garantido) atingir o local de destino.
E depois há easymotion / vim-easymotion . Isso oferece várias teclas de movimento poderosas , algumas das quais exigem um pressionamento de tecla extra ou duas para confirmar o caractere de destino quando há muitos candidatos.
Mas atualmente estou usando uma solução caseira. Eu trabalhei com o autor de EasyMotion para fazer
f
et
piscar marcadores de contagem sobre todos os personagens correspondentes à sua frente.Isso atua como um assistente de contagem natural para movimentos de baunilha vim. Quando você tenta se mover para algum lugar com,
fx
mas descobre que há maisx
obstáculos no caminho do que imaginava, pode ler o número que piscou sobre o personagem que estava buscando e depois[count];
pular para lá.Você pode encontrar a agência aqui . Não deixe de ler a seção Adicionar dicas úteis para configurar os mapeamentos de teclas.
No entanto, para
c
operações de alteração, ainda é preferível acertar na primeira vez . Nesses casos, recomendo que você pressione uma tecla extra nov
modo Visual ou use um dos saltos garantidos do EasyMotion.fonte
existe um plugin que faz o que você parece querer, como afirma VanLaser.
https://github.com/dahu/vim-fanfingtastic
Agora, ele requer que o plug-in de repetição funcione corretamente, então você também precisará disso:
https://github.com/tpope/vim-repeat
fonte