Pergunta

Potencialmente 2 perguntas em um. Eu gostaria de saber como fazer referência a um registo em modo Ex.

Por exemplo, eu estou editando um arquivo e eu quero salvar o arquivo com um timestamp (ou apenas datestamp realmente) anexado a ele.

Eu sei que posso configurar o registro para o valor de um shell comandos de saída usando:

:let @a = system("date +\"%Y-%m-%d\"")

Existe alguma excluir a referência este registo e inserir o seu valor em um comando Ex? Algo como:

:w testfile.<value of "a register>

Copiar para a área de transferência e colar seria bom, mas fazê-lo de uma forma mais genérica / programitic para a construção de outros comandos no futuro seria bom.

Foi útil?

Solução

Existem duas abordagens para fazer isso, mas provavelmente não são exatamente o que você quer.

  1. Use <CTRL-R>a para inserir o conteúdo na linha de comando atual. Veja :help c_CTRL-R para mais informações.

  2. Use exe para permitir a inserção de variáveis ??na expressão. Veja :help :exe e :help 41.3.

    :exe 'w testfile.' . @a
    

Outras dicas

Assumindo registo "a", você pode digitar:

<CTRL-R>a que irá introduzir o valor de registrar uma linha naquele ponto. Isso pode ser usado no modo de inserção também.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top