автосохранение по таймеру

и другие vi-подобные редакторы

Модератор: /dev/random

Аватара пользователя
NekoExMachina
Сообщения: 485
ОС: Кошерная.

автосохранение по таймеру

Сообщение NekoExMachina »

Может быть, вопрос уже был, но я его незаметил(тему просмотрел по диагонали)
Возможно ли сделать как-либо, чтобы vim/gvim при открытии файла раз в n минут записывал его в /home/backups/vim/"`date`".filename, если файл уже сохранялся на диск/был открыт старый файл для редактирования, и "`date`", если файл еще не сохранялся?
Или же, сделать как-либо, чтобы при закрытии через :q vim/gvim сохранял файл в /home/backups/vm/"`date`".filename, но при закрытии через :wq - не сохранял..
На форуме больше не появляюсь.
Высокопарность и надменность довела.
OpenBSD-current+scrotwm*1 (acer aspire one 531h)
FreeBSD 8.1+kde3*1 (desktop)
FreeBSD 8.1+scrotwm*1 (hp530)
FreeBSD 9.0+dwm*1 (old toshiba satellite)

Спасибо сказали:
Аватара пользователя
Luinnar
Сообщения: 246
ОС: Solaris, Debian, Ubuntu

Re: автосохранение по таймеру

Сообщение Luinnar »

NekoExMachina писал(а):
20.10.2008 14:23
Может быть, вопрос уже был, но я его незаметил(тему просмотрел по диагонали)
Возможно ли сделать как-либо, чтобы vim/gvim при открытии файла раз в n минут записывал его в /home/backups/vim/"`date`".filename, если файл уже сохранялся на диск/был открыт старый файл для редактирования, и "`date`", если файл еще не сохранялся?
Или же, сделать как-либо, чтобы при закрытии через :q vim/gvim сохранял файл в /home/backups/vm/"`date`".filename, но при закрытии через :wq - не сохранял..

По поводу последнего, вот пример сохранения сессии при выходе:
autocmd VimLeavePre * silent mksession ~/.vim/lastSession.vim
Спасибо сказали:
Аватара пользователя
NekoExMachina
Сообщения: 485
ОС: Кошерная.

Re: автосохранение по таймеру

Сообщение NekoExMachina »

Это да, а возможно ли тогда сохранять с каким-то номером, например количество уже сохраненных сессий + 1?
В принципе, невозможно - ну и ладно -- но если возможно, было бы приятно..
На форуме больше не появляюсь.
Высокопарность и надменность довела.
OpenBSD-current+scrotwm*1 (acer aspire one 531h)
FreeBSD 8.1+kde3*1 (desktop)
FreeBSD 8.1+scrotwm*1 (hp530)
FreeBSD 9.0+dwm*1 (old toshiba satellite)

Спасибо сказали:
Аватара пользователя
ZyX
Сообщения: 355
ОС: Gentoo

Re: автосохранение по таймеру

Сообщение ZyX »

NekoExMachina писал(а):
21.10.2008 18:41
Это да, а возможно ли тогда сохранять с каким-то номером, например количество уже сохраненных сессий + 1?
В принципе, невозможно - ну и ладно -- но если возможно, было бы приятно..
Возможно. Смотреть здесь:
:h :while
:h expr-.
:h filereadable()
:h :let
:h :let+=

Что-то типа:

Код: Выделить всё

execute "let b:i=0\nwhile filereadable(\"~/.vimsessions/\".b:i.\".vim\")\nlet b:i+=1\nendwhile\nexecute \"mksession ~/.vimsessions/\".b:i.\".vim\""
Спасибо сказали:
Аватара пользователя
NekoExMachina
Сообщения: 485
ОС: Кошерная.

Re: автосохранение по таймеру

Сообщение NekoExMachina »

Возможно. Смотреть здесь:
:h :while
:h expr-.
:h filereadable()
:h :let
:h :let+=

спасибо! будем изучать..
На форуме больше не появляюсь.
Высокопарность и надменность довела.
OpenBSD-current+scrotwm*1 (acer aspire one 531h)
FreeBSD 8.1+kde3*1 (desktop)
FreeBSD 8.1+scrotwm*1 (hp530)
FreeBSD 9.0+dwm*1 (old toshiba satellite)

Спасибо сказали: