Vim Evite "Pressione a tecla enter ou insira um comando"

1

Eu tenho a seguinte configuração no meu arquivo .vimrc para alternar entre um arquivo .c e o correspondente arquivo .h

function SwitchHeader()
    w
    if(&ft=='cpp')
        e %:r.c
    elseif(&ft=='c')
        e%:r.h
    endif
endfunction

Quando eu digito :call SwitchHeader() na linha de comando do vim A mensagem aparece Bestätigen sie die EINGABETASTE oder geben sie einen Befehl ein , que eu traduziria para Hit the enter key or enter a command

Como posso evitar ter que pressionar enter toda vez que eu chamo a função, quando eu ligo a chave eu posso usar <cr> no final da linha para inserir um Enter, mas como fazer isso na função.

    
por danielr1996 18.02.2015 / 18:24

3 respostas

0

Use

execute ':edit ' . expand('%:r') . '.EXT'

(Nota: substitua .EXT pelo que você quiser em cada ramificação)

Além disso, dê uma olhada no link

    
por 18.02.2015 / 18:47
1

Para todos com o mesmo problema: encontrei este link que parece ter mais opções, como dividir o painel e assim. Eu não tentei, mas você pode tentar.

    
por 18.02.2015 / 20:25
0

Em scripts 'rápidos e sujos', a solução geralmente é inserir o caractere literal no arquivo. Neste caso, você digitaria control + v seguido da tecla return, para inserir um caractere parecido com um ^L , mas você pode dizer que não é caret-ell porque o cursor se move como um caractere.

Os caracteres inseridos no arquivo dessa maneira não tendem a sobreviver a copiar e colar, e vários outros meios de transmissão, no entanto, eles podem executar o trabalho. Às vezes é até necessário envolvê-los em uma chamada para executar o normal. Por exemplo:

execute 'normal (...commands that might generate enter prompt...)^L'
    
por 25.01.2016 / 13:07

Tags