In writing things like grant proposals, I find myself wanting to refer to other files or earlier parts of the same file. So I borrowed Michael Scarpa’s resize script and adapted it to add and remove a window split at the same time. Important to note is that under iTerm2, you have to make sure that under the current profile’s settings, in the Window tab “Disable session-initiated window resizing” must be turned off.

function SizeUpFunc()
	if exists("g:oldColumns")
		return
	endif
	let g:oldColumns = &columns
	au VimLeave * SizeDown
	set columns=160
	vsplit
endfunction
command SizeUp call SizeUpFunc()
 
function SizeDownFunc()
	if !exists("g:oldColumns")
		return
	endif
	only   "Remove window split
	let &columns = g:oldColumns
	unlet g:oldColumns
endfunction
command SizeDown call SizeDownFunc()
 
"Map control-right-arrow to expand and ctrl-left-arrow to contract
map <C-Right> :SizeUp<CR>
map <C-Left> :SizeDown<CR>