Сделайте что-нибудь, если: обновление на самом деле пишет что-нибудь - PullRequest
2 голосов
/ 13 января 2012

У меня есть функция в vim, которая вызывает update, и я хотел бы вызвать execute, чтобы запустить что-то, если буфер был действительно изменен и записан на диск.Мне интересно, есть ли какое-нибудь возвращаемое значение из update, чтобы указать это, или какой-то другой способ узнать (BufWritePost, кажется, срабатывает только при вызове :w).

1 Ответ

2 голосов
/ 13 января 2012

BufWritePost и BufWriteCmd сработали очень хорошо, когда я выдал

:update

на моем gVim 7.3 (WinXP). Автокоманда сработала, когда буфер был фактически изменен, и не сработал, если он не был изменен.

Протестировано с

:au!
:au BufWriteCmd *.cpp echo "bufwriteCmd called"

и

:au!
:au BufWritePost *.cpp echo "bufwritePost called"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...