LINUX.ORG.RU

Vim при работе с сессиями не создаёт persistent undo на Debian

 , , ,


0

1

Vim 8.0.550 on Debian x64 Stretch w Xfce.

Почитав гугол, положил в .vimrc следующее:

set undodir=/home/zz/.vim/undo
set undofile

Однако, оно не работает с многофайловыми сессиями.

vim -S ~/88/etc/lOff/web.vim

Если открывать каждый файл отдельно, то undo всё помнит. Если открыть тот же файл в составе сессии, то в первый раз он помнит все изменения, которые были сделаны с файлом отдельно, вне сессии, а сделанные во время сессии изменения не помнит. Как и любым другим файлом в её составе.

Папку 'undo' сделал. Перезагрузка не помогла. Гугол тоже.

Ответ на: комментарий от xaizek

Вывод:

undodir=~/.vim/undo
noundofile

Кстати, при этом все undo того файла, который я пробно менял отдельно, он помнит даже в этой сессии с noundofile. После сессии не помнит изменения при отдельном запуске.

ssadfaf
() автор топика
Ответ на: комментарий от ssadfaf

Странно, что только одна из опций имеет неправильное значение. Можно в файле сесии посмотреть на все строки с undofile.

Ещё забыл, надо было сделать с verbose:

:verbose set undofile?
Оно покажет, где опция менялась последний раз.

xaizek ★★★★★
()
Ответ на: комментарий от xaizek

Вывод verbose set undofile?

noundofile
        Last set from ~/88/etc/lOff/web.vim

Сессия web.vim

42 set undofile
181 setlocal noundofile

В общем, я удалил строку 181, при следующей загрузке он всё помнил. НО! Как только я сохранил состояние сессии

:mks! ~/88/etc/lOff/web.vim
 
он опять ничего не помнит, а строка
180 setlocal undofile
опять появилась.

Как сохранять сессию без перезаписи этих опций?

ssadfaf
() автор топика
Ответ на: комментарий от xaizek

Нет в .vimrc почти ничего. Но, думаю, я разобрался. Тут всё дело в том, что я создал сессию до того, как начал ковыряться с persistent undo. После того, как я удалил все строчки с setlocal undofile в файле сессии для каждого файла из сессии, всё начало работать прекрасно. Вроде. Пока что... ))

Спасибо огромное, xaizek!

ssadfaf
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.