vimspector/autoload/vimspector.vim
Ben Jackson 920db068c6 Use a prompt buffer for adding watches
This very new feature makes it kind of nice to add new watches in the
place where they will appear, keeping the eye in the same screen
location.
2018-06-09 22:33:22 +01:00

99 lines
2.4 KiB
VimL

" vimspector - A multi-language debugging system for Vim
" Copyright 2018 Ben Jackson
"
" Licensed under the Apache License, Version 2.0 (the "License");
" you may not use this file except in compliance with the License.
" You may obtain a copy of the License at
"
" http://www.apache.org/licenses/LICENSE-2.0
"
" Unless required by applicable law or agreed to in writing, software
" distributed under the License is distributed on an "AS IS" BASIS,
" WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
" See the License for the specific language governing permissions and
" limitations under the License.
" Boilerplate {{{
let s:save_cpo = &cpo
set cpo&vim
" }}}
call vimspector#internal#state#Reset()
" TODO: Test function
function! vimspector#Launch() abort
py3 _vimspector_session.Start()
endfunction
function! vimspector#Reset() abort
py3 _vimspector_session.Reset()
endfunction
function! vimspector#Restart() abort
py3 _vimspector_session.Restart()
endfunction
function! vimspector#ToggleBreakpoint() abort
py3 _vimspector_session.ToggleBreakpoint()
endfunction
function! vimspector#AddFunctionBreakpoint( function ) abort
py3 _vimspector_session.AddFunctionBreakpoint( vim.eval( 'a:function' ) )
endfunction
function! vimspector#StepOver() abort
py3 _vimspector_session.StepOver()
endfunction
function! vimspector#StepInto() abort
py3 _vimspector_session.StepInto()
endfunction
function! vimspector#StepOut() abort
py3 _vimspector_session.StepOut()
endfunction
function! vimspector#Continue() abort
py3 _vimspector_session.Continue()
endfunction
function! vimspector#Pause() abort
py3 _vimspector_session.Pause()
endfunction
function! vimspector#Stop() abort
py3 _vimspector_session.Stop()
endfunction
function! vimspector#ExpandVariable() abort
py3 _vimspector_session.ExpandVariable()
endfunction
function! vimspector#DeleteWatch() abort
py3 _vimspector_session.DeleteWatch()
endfunction
function! vimspector#GoToFrame() abort
py3 _vimspector_session.ExpandFrameOrThread()
endfunction
function! vimspector#AddWatch( expr ) abort
py3 _vimspector_session.AddWatch( vim.eval( 'a:expr' ) )
endfunction
function! vimspector#AddWatchPrompt( expr ) abort
stopinsert
setlocal nomodified
call vimspector#AddWatch( a:expr )
endfunction
function! vimspector#ShowOutput( category ) abort
py3 _vimspector_session.ShowOutput( vim.eval( 'a:category' ) )
endfunction
" Boilerplate {{{
let &cpo=s:save_cpo
unlet s:save_cpo
" }}}