Ligações Vim / Sublime Vim movem o cursor para frente / trás por um

0

Sou novo nas ligações do Vim e quero começar a usá-las no Sublime, mas encontrei alguns obstáculos.

Quando eu digito vários tipos de tokens fechados, como "literais de string" ou {blocos de código} ou (parens) desenvolvi o hábito (bom?) de digitar os caracteres de abertura e fechamento, tocar de volta e preencher os caracteres desejados. Eu faço isso para nunca esquecer os personagens finais.

Por exemplo, para produzir "literal", eu digitaria "", em seguida, mova o cursor 1 espaço para trás, em seguida, escreva a palavra literal dentro das aspas e mova o cursor 1 espaço para frente para continuar digitando.

Com as ligações do Vim, pareço ter que sair do modo Insert sempre que eu recuar um espaço e depois encaminhar um espaço. O Sublime tem algumas configurações que digitarão automaticamente () sempre que você digitar (e depois posicionar o cursor no meio, então acho que isso elimina a necessidade do primeiro movimento, mas o problema de mover o cursor para frente depois de digitar minha declaração permanece.

Os usuários do Vim devem ter uma boa abordagem para isso ou todos iriam ficar loucos agora. Vocês simplesmente desistem de digitar os caracteres de abertura e fechamento primeiro? Teclas de fantasia para deixar o modo de inserção, avançar / voltar por 1 e, em seguida, voltar para o modo de inserção (eu gostaria que isso em um pressionamento de tecla)

Por favor, deixe-me saber se estou fazendo tudo errado e também se você tem uma sugestão de título melhor. Não sabia como descrever este problema.

    
por fractalous 20.02.2014 / 09:46

2 respostas

1

No sublime você pode editar os mapeamentos para fazer algo como " shift + espaço " para mover o cursor para frente em um espaço usando o seguinte código como visto aqui: href="https://stackoverflow.com/questions/14800608/sublime-text-2-move-cursor-out-of-parenthesis-quotes-or-brackets"> link

{ "keys": ["shift+space"], "command": "move", "args": {"by": "characters", "forward": true} }

Funciona de forma fantástica para mim.

Editar : Isso fará com que ctrl + deslocamento + espaço mova para trás um espaço.

{"keys": ["ctrl+shift+space"], "command": "move", "args": {"by": "characters", "forward": false} }

A combinação dos dois torna a vida muito mais fácil :)

    
por 08.03.2014 / 07:03
0

O Vim tem vários plug-ins inteligentes de "fechamento automático" e é fácil criar seus próprios mapeamentos simples, como inoremap () ()<Left> .

Mas, tanto no Vim quanto no Sublime, você pode simplesmente digitar () e acessar <Left> . Certamente não é tão embaraçoso quanto sair do modo de inserção apenas para retroceder um personagem.

    
por 20.02.2014 / 10:35