Вы можете использовать это выражение для генерации имени файла:
"/tmp/vimSessions/".substitute(expand("%:p:h"),"/","_","g")
Конечно, вы можете изменить первую строку, чтобы она содержала любой каталог, который вы хотите.
UPDATE:
Добавьте это в ваш vimrc
файл:
function GetSessionName(useFileName)
if a:useFileName
let l:dir=expand("%:p:h")
else
let l:dir=getcwd()
endif
return fnameescape("/tmp/vimSessions/".substitute(l:dir,"/","_","g"))
endfunction
if !isdirectory("/tmp/vimSessions")
call mkdir("/tmp/vimSessions")
endif
autocmd VimEnter * if filereadable(GetSessionName(0))|exe "source ".GetSessionName(0)|endif
autocmd BufWritePost * exe "mksession! ".GetSessionName(1)