Vim - запускать действие \ скрипт при сохранении \ записи?


14

Это может быть лучше для суперпользователя, но я считаю, что как инструмент торговли это может быть лучшей темой для здесь. При редактировании в vim я часто нахожу выход, запускаю какой-то сценарий, который тестирую, и затем возвращаюсь в vim (да, я понимаю, что могу использовать команду! Для запуска вещей из vim). Мне просто было интересно, есть ли способ подключить что-то, чтобы запустить, когда файл сохранен (: W)?

Ответы:



19

Увидеть :he :autocmdи:he BufWritePost

Линия будет выглядеть так:

:autocmd BufWritePost /path/to/file/or/pattern !command <afile>

Если <afile>вещь не работает, используйте %:p.


1

Я получил часть «Возвращение к vim», но я не уверен, как нажать на саму команду «: w» (это было бы очень удобно, так как это довольно рефлексивно для меня)

w | silent execute "! myscript" | redraw!

Я думаю, что это может быть лучше и для суперпользователя.


1

Это явное самореклама, но я написал плагин Vim, который будет запускать определенные сценарии оболочки после определенных autocmdсобытий Vim . Например, названный скрипт .bufwritepost.vimhook.shбудет запускаться (синхронно) каждый раз при запуске BufWritePostкоманды. Затем вы можете легко включить любую произвольную логику, которую вы хотите для выполнения вещей внутри этого скрипта. Плагин предполагает определенные соглашения об именах этих сценариев, а также поддерживает сценарии «ловушки», которые запускаются только для файлов, соответствующих определенным именам или имеющих определенные расширения. И, конечно же, вы можете выбрать любое autocmdсобытие, которое пожелаете, хотя я нашел BufWritePostподходящий для большинства моих вариантов использования.

Полная информация: https://github.com/ahw/vim-hooks

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.