.vimrc usa o nome do arquivo que está editando no momento

2

Eu tenho um plugin para VIM , que basicamente fornece uma interface para meu SVN ( vcscommand .vim ). E mapeei os comandos :VCSUpdate e :VCSCommit do plug-in vcscommand no meu .vimrc . Tudo é perfeito, exceto uma coisa:

Depois de ligar: VCSCommit você costuma escrever um comentário assim:

:VCSCommit I've made some minor changes to this file

No sistema de implantação de nossa empresa, não é destacado qual arquivo foi enviado. Por isso, geralmente escrevemos nossos comentários da seguinte forma:

:VCSCommit I've made some minor changes to file .vimrc

No sistema de implantação, vemos tudo isso confirmado, para que possamos informar qual arquivo deve ser carregado para o servidor de produção depois que o botão "Sincronizar" for pressionado.

Então, eu me pergunto como eu mapear para: VCSCommit assim que iria adicionar o nome do arquivo como um comentário. Meu mapeamento até agora é:

map <C-q> :VCSCommit

Então, depois de pressionar Ctrl + Q, ele mostra :VCSCommit na barra inferior, mas eu gostaria de ver :VCSCOmmit my_file_name_that_i_m_editing_now .

Como faço isso?

    
por Nemoden 26.05.2011 / 04:17

2 respostas

2

Isso deve ser feito.

map <C-q> :VCSCommit <C-R>%

Para mais, veja

:help c_CTRL-R

EDITAR

Para inserir apenas o nome do arquivo quando % contiver um caminho, use:

map <C-q> :VCSCommit <C-R>=expand("%:p:t")<CR>

O :p expande o nome do arquivo anterior para incluir o caminho completo e o :t assume a cauda desse caminho. Veja

:help expand()
    
por 26.05.2011 / 04:38
0

Assim como um fyi, svn log -v mostrará quais arquivos foram modificados por um commit, então adicionar o nome do arquivo na mensagem de commit não deve ser realmente necessário.

Primeiro sem -v :

% svn log -r2                                      
------------------------------------------------------------------------
r2 | mkomitee | 2011-05-27 08:56:02 -0400 (Fri, 27 May 2011) | 1 line

change
------------------------------------------------------------------------

Agora, a mesma revisão com -v :

% svn log -vr2                                      
------------------------------------------------------------------------
r2 | mkomitee | 2011-05-27 08:56:02 -0400 (Fri, 27 May 2011) | 1 line
Changed paths:
   M /baz

change
------------------------------------------------------------------------
% 
    
por 27.05.2011 / 15:00

Tags