Commit 2e37a802 authored by Dom Sekotill's avatar Dom Sekotill
Browse files

Add a debug toggle-term to Vim

Toggles a new term with <F5> that runs g:ToggleTermDebug if set.

This is really a temporary arrangement until proper debugger
integration is achieved.
parent eb1ae08c
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
let g:TermToggleOpenNewWindow = 1
let g:TermToggleDebug = [ &shell ]
let s:hot_terms = {}
let s:debugger_term = {}

function s:toggle_debug()
	if get(s:debugger_term, 'closed', v:true)
		let s:debugger_term = kodo#toggleterm#Terminal(v:false, g:TermToggleDebug)
	endif
	call s:debugger_term.toggle()
endfunction

function s:toggle(num)
	if !has_key(s:hot_terms, a:num)
@@ -10,8 +19,12 @@ function s:toggle(num)
	" command! -nargs=0 TermToggle :call <SID>:global_term_list[<SID>:global_term_cur].toggle(g:TermToggleOpenNewWindow)
endfunction

command        DebuggerTerm :call s:toggle_debug()
command -nargs=1 TermToggle :call s:toggle(<args>)

nnoremap <silent> <F5> <Esc>:DebuggerTerm<CR>
tnoremap <silent> <F5> <C-\><C-n>:DebuggerTerm<CR>

nnoremap <silent> <F6> <Esc>:TermToggle 0<CR>
tnoremap <silent> <F6> <C-\><C-n>:TermToggle 0<CR>