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' сделал. Перезагрузка не помогла. Гугол тоже.