.vimrc использует имя файла, который в данный момент редактируется

У меня есть плагин для VIM который в основном обеспечивает интерфейс для моего SVN ( vcscommand.vim). И я нанес на карту :VCSUpdate а также :VCSCommit Команды плагина vcscommand в моем .vimrc, Все идеально, кроме одного:

После звонка:VCSCommit вы обычно пишете комментарий так:

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

В системе развертывания нашей компании не указано, какой файл был зафиксирован, поэтому мы обычно пишем наши комментарии так:

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

В системе развертывания мы видим все эти коммиты, поэтому мы можем сказать, какой файл должен быть загружен на рабочий сервер после нажатия кнопки "Синхронизация".

Итак, мне интересно, как мне сопоставить:VCSCommit, чтобы добавить имя файла в качестве комментария. Мое отображение пока:

map <C-q> :VCSCommit

Таким образом, после нажатия Ctrl+Q, он показывает :VCSCommit в нижней панели, но я бы хотел увидеть :VCSCOmmit my_file_name_that_i_m_editing_now,

Как я могу это сделать?

2 ответа

Решение

Это должно сделать это.

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

Для получения дополнительной информации см.

:help c_CTRL-R

РЕДАКТИРОВАТЬ

Чтобы вставить только имя файла, когда % содержит путь, используйте это:

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

:p расширяет предыдущее имя файла, чтобы включить полный путь и :t берет хвост этого пути. Увидеть

:help expand()

Просто, к вашему сведению, svn log -v покажет вам, какие файлы были изменены коммитом, поэтому добавление имени файла в сообщении коммита на самом деле не нужно

Сначала без -v:

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

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

Теперь та же ревизия с -v:

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

change
------------------------------------------------------------------------
% 
Другие вопросы по тегам