jodosha / vim-godebug

Go debugging for Vim

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

nevim Not enough arguments for function

peterwillcn opened this issue · comments

Error detected while processing function godebug#debug:
line 2:
E119: Not enough arguments for function: go#term#new
E15: Invalid expression: go#term#new(a:bang, ["dlv", "debug", "--init=" . g:godebug_breakpoints_file])

Same issue here.

Apparently, vim-go change the parameters for go#term#new.

This plugin calls it as this:

go#term#new(a:bang, ["dlv", "debug", "--init=" . g:godebug_breakpoints_file])

But look at this function on vim-go code:

function! go#term#new(bang, cmd, errorformat) abort
  return go#term#newmode(a:bang, a:cmd, a:errorformat, go#config#TermMode())
endfunction

I fixed it by add this parm on godebug.vim:

function! godebug#debug(bang, ...) abort
  call godebug#writeBreakpointsFile()
  return go#term#new(a:bang, ["dlv", "debug", "--init=" . g:godebug_breakpoints_file], "%-G#\ %.%#")
endfunction

function! godebug#debugtest(bang, ...) abort
  call godebug#writeBreakpointsFile()
  return go#term#new(a:bang, ["dlv", "test", "--init=" . g:godebug_breakpoints_file], "%-G#\ %.%#")
endfunction

Need to check better this errorformat parm though (http://vimdoc.sourceforge.net/htmldoc/quickfix.html#errorformat).

Fixed by #18