mirror of
https://github.com/SpaceVim/SpaceVim.git
synced 2025-03-24 18:52:22 +08:00
pref(terminal): improve terminal support
This commit is contained in:
parent
d5cf952778
commit
3678bf51f6
@ -434,6 +434,8 @@ function! SpaceVim#layers#core#statusline#get(...) abort
|
||||
\ . s:winnr(1) . '%#SpaceVim_statusline_ia_SpaceVim_statusline_b#'
|
||||
\ . s:lsep
|
||||
\ . '%#SpaceVim_statusline_b# Terminal %#SpaceVim_statusline_b_SpaceVim_statusline_c#' . s:lsep
|
||||
\ . '%#SpaceVim_statusline_c# '
|
||||
\ . matchstr(bufname(), '\d\+:\zs.*')
|
||||
if !empty(get(b:, '_spacevim_shell', ''))
|
||||
let st .= '%#SpaceVim_statusline_c# %{b:_spacevim_shell} %#SpaceVim_statusline_c_SpaceVim_statusline_z#' . s:lsep
|
||||
endif
|
||||
|
@ -111,6 +111,8 @@ function! s:tabname(bufnr) abort
|
||||
let name = bufname(a:bufnr)
|
||||
if name ==# '\[Vader\]'
|
||||
let fn = '[Vader]'
|
||||
elseif name =~# 'term://.*'
|
||||
let fn = 'Terminal'
|
||||
else
|
||||
let fn = fnamemodify(name, ':t')
|
||||
endif
|
||||
|
@ -26,6 +26,7 @@
|
||||
|
||||
let s:SYSTEM = SpaceVim#api#import('system')
|
||||
let s:FLOAT = SpaceVim#api#import('neovim#floating')
|
||||
let s:WIN = SpaceVim#api#import('vim#window')
|
||||
|
||||
function! SpaceVim#layers#shell#plugins() abort
|
||||
let plugins = []
|
||||
@ -78,6 +79,7 @@ function! SpaceVim#layers#shell#config() abort
|
||||
augroup spacevim_layer_shell
|
||||
au!
|
||||
au WinEnter,BufWinEnter term://* startinsert
|
||||
au TermOpen * call s:on_term_open()
|
||||
if has('timers')
|
||||
au TermClose * let g:_spacevim_termclose_abuf = expand('<abuf>') | call timer_start(5, 'SpaceVim#mapping#close_term_buffer')
|
||||
else
|
||||
@ -88,6 +90,12 @@ function! SpaceVim#layers#shell#config() abort
|
||||
|
||||
endfunction
|
||||
|
||||
|
||||
function! s:on_term_open() abort
|
||||
startinsert
|
||||
let &l:statusline = SpaceVim#layers#core#statusline#get(1)
|
||||
endfunction
|
||||
|
||||
" FIXME:
|
||||
func! SpaceVim#layers#shell#terminal() abort
|
||||
let line = getline('.')
|
||||
|
Loading…
x
Reference in New Issue
Block a user