Don't change the value of equalalways

We were trying to avoid equalalways from changing the UI layout by
unsetting it and resetting it after changes. However, re-setting
equalalways actually resizes all the windows, so this never worked.

Instead we judiciously use rightbelow, leftabove, etc. and specify the
exact window sizes we want.

As a side-effect we make the terminal sizing a little more pleasant by
default, ensuring that it is no wider than 80 chars, and tries to use
any remianing vertical space after reserving 80 chars for the code
window.
This commit is contained in:
Ben Jackson 2020-07-16 15:25:28 +01:00
commit 7a9f75a06e
4 changed files with 49 additions and 40 deletions

View file

@ -48,7 +48,7 @@ endfunction
function! vimspector#internal#neoterm#Start( cmd, opts ) abort
" Prepare current buffer to be turned into a term if curwin is not set
if ! get( a:opts, 'curwin', 0 )
let mods = ''
let mods = 'rightbelow '
if get( a:opts, 'vertical', 0 )
let mods .= 'vertical '
let mods .= get( a:opts, 'term_cols', '' )

View file

@ -20,7 +20,7 @@ set cpoptions&vim
" }}}
function! vimspector#internal#term#Start( cmd, opts ) abort
return term_start( a:cmd, a:opts )
rightbelow return term_start( a:cmd, a:opts )
endfunction
function! vimspector#internal#term#IsFinished( bufno ) abort