diff options
Diffstat (limited to 'bundle')
| -rw-r--r-- | bundle/buffer-delete/autoload/buffer_delete.vim | 11 | ||||
| -rw-r--r-- | bundle/buffer-delete/plugin/buffer_delete.vim | 6 | 
2 files changed, 17 insertions, 0 deletions
| diff --git a/bundle/buffer-delete/autoload/buffer_delete.vim b/bundle/buffer-delete/autoload/buffer_delete.vim new file mode 100644 index 0000000..316cfe8 --- /dev/null +++ b/bundle/buffer-delete/autoload/buffer_delete.vim @@ -0,0 +1,11 @@ +" Delete all unloaded buffers. These are buffers that aren't active or hidden. +" Usually they come from a reinitialised session. +function! buffer_delete#Unloaded() +	let all = range(1, bufnr('$')) +	let unloaded = filter(all, {_i, v -> !bufloaded(v)}) + +	for i in unloaded +		" Use silent because some buffer numbers may not exist. +		silent! execute 'bdelete ' . i +	endfor +endfunction diff --git a/bundle/buffer-delete/plugin/buffer_delete.vim b/bundle/buffer-delete/plugin/buffer_delete.vim new file mode 100644 index 0000000..23e7487 --- /dev/null +++ b/bundle/buffer-delete/plugin/buffer_delete.vim @@ -0,0 +1,6 @@ +if exists('g:loaded_buffer_delete') +	finish +endif +let g:loaded_buffer_delete = 1 + +command! BufferDeleteUnloaded call buffer_delete#Unloaded() | 
