Capture nREPL stack trace
This commit is contained in:
parent
0ff9cd710d
commit
528cb5b01a
@ -129,6 +129,8 @@ function! s:nrepl_process(payload) dict abort
|
||||
if index(combined[key], response[key]) < 0
|
||||
call extend(combined[key], [response[key]])
|
||||
endif
|
||||
elseif key ==# 'out' && response.out =~# '^.*(.*:\d\+)\t.*)$'
|
||||
let combined.stacktrace = split(response.out, "\t")
|
||||
elseif type(response[key]) == type('')
|
||||
let combined[key] = get(combined, key, '') . response[key]
|
||||
else
|
||||
@ -143,7 +145,8 @@ function! s:nrepl_process(payload) dict abort
|
||||
endfunction
|
||||
|
||||
function! s:nrepl_eval(expr, ...) dict abort
|
||||
let payload = {"op": "eval", "code": a:expr}
|
||||
let payload = {"op": "eval"}
|
||||
let payload.code = '(try '.a:expr.' (catch Exception e (print (apply str (interpose "\t" (map str (.getStackTrace e))))) (throw e)))'
|
||||
let options = a:0 ? a:1 : {}
|
||||
if has_key(options, 'ns')
|
||||
let payload.ns = options.ns
|
||||
|
Loading…
Reference in New Issue
Block a user