Skip to content

Commit

Permalink
Skip "save changes?" prompt when reopening sessions
Browse files Browse the repository at this point in the history
Pull request #34: #34
  • Loading branch information
xolox committed Apr 20, 2013
1 parent d9ecc6a commit 2f22b53
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 8 deletions.
16 changes: 10 additions & 6 deletions autoload/xolox/session.vim
Expand Up @@ -3,7 +3,7 @@
" Last Change: April 20, 2013
" URL: http://peterodding.com/code/vim/session/

let g:xolox#session#version = '1.5.5'
let g:xolox#session#version = '1.5.6'

" Public API for session persistence. {{{1

Expand Down Expand Up @@ -319,7 +319,7 @@ function! xolox#session#open_cmd(name, bang) abort " {{{2
call xolox#misc#msg#warn(msg, g:xolox#session#version, string(name), fnamemodify(path, ':~'))
elseif a:bang == '!' || !s:session_is_locked(path, 'OpenSession')
let oldcwd = s:nerdtree_persist()
call xolox#session#close_cmd(a:bang, 1)
call xolox#session#close_cmd(a:bang, 1, name != s:get_name('', 0))
let s:oldcwd = oldcwd
call s:lock_session(path)
execute 'source' fnameescape(path)
Expand Down Expand Up @@ -388,12 +388,16 @@ function! xolox#session#delete_cmd(name, bang) " {{{2
endif
endfunction

function! xolox#session#close_cmd(bang, silent) abort " {{{2
function! xolox#session#close_cmd(bang, silent, save_allowed) abort " {{{2
let name = s:get_name('', 0)
if name != ''
let msg = "Do you want to save your current editing session before closing it?"
if s:prompt(msg, 'g:session_autosave')
SaveSession
if a:save_allowed
let msg = "Do you want to save your current editing session before closing it?"
if s:prompt(msg, 'g:session_autosave')
SaveSession
endif
else
call xolox#misc#msg#debug("session.vim %s: Session reset requested, not saving changes to session ..", g:xolox#session#version)
endif
call s:unlock_session(xolox#session#name_to_path(name))
endif
Expand Down
4 changes: 2 additions & 2 deletions plugin/session.vim
Expand Up @@ -86,7 +86,7 @@ command! -bar -bang -nargs=? -complete=customlist,xolox#session#complete_names O
command! -bar -nargs=? -complete=customlist,xolox#session#complete_names ViewSession call xolox#session#view_cmd(<q-args>)
command! -bar -bang -nargs=? -complete=customlist,xolox#session#complete_names SaveSession call xolox#session#save_cmd(<q-args>, <q-bang>)
command! -bar -bang -nargs=? -complete=customlist,xolox#session#complete_names DeleteSession call xolox#session#delete_cmd(<q-args>, <q-bang>)
command! -bar -bang CloseSession call xolox#session#close_cmd(<q-bang>, 0)
command! -bar -bang CloseSession call xolox#session#close_cmd(<q-bang>, 0, 1)
command! -bang -nargs=* -complete=command RestartVim call xolox#session#restart_cmd(<q-bang>, <q-args>)

if g:session_command_aliases
Expand All @@ -96,7 +96,7 @@ if g:session_command_aliases
command! -bar -nargs=? -complete=customlist,xolox#session#complete_names SessionView call xolox#session#view_cmd(<q-args>)
command! -bar -bang -nargs=? -complete=customlist,xolox#session#complete_names SessionSave call xolox#session#save_cmd(<q-args>, <q-bang>)
command! -bar -bang -nargs=? -complete=customlist,xolox#session#complete_names SessionDelete call xolox#session#delete_cmd(<q-args>, <q-bang>)
command! -bar -bang SessionClose call xolox#session#close_cmd(<q-bang>, 0)
command! -bar -bang SessionClose call xolox#session#close_cmd(<q-bang>, 0, 1)
endif

" Don't reload the plug-in once it has loaded successfully.
Expand Down

0 comments on commit 2f22b53

Please sign in to comment.