Advertisement
tarruda

Neovim job control demo

Apr 18th, 2014
1,385
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
VIM 0.68 KB | None | 0 0
  1. :let srv1_id = jobstart('netcat-server-1', 'nc', ['-l', '9991'])
  2. :let srv2_id = jobstart('netcat-server-2', 'nc', ['-l', '9991'])
  3.  
  4. function JobEvent()
  5.   " v:job_data[0] = the job id
  6.   " v:job_data[1] = the event type, one of "stdout", "stderr" or "exit"
  7.   " v:job_data[2] = data read from stdout or stderr
  8.   if v:job_data[1] == 'stdout'
  9.     let str = 'Message from job '.v:job_data[0].': '.v:job_data[2]
  10.   elseif v:job_data[1] == 'stderr'
  11.     let str = 'Error message from job '.v:job_data[0].': '.v:job_data[2]
  12.   else
  13.     " Exit
  14.     let str = 'Job '.v:job_data[0].' exited'
  15.   endif
  16.  
  17.   call append(line('$'), str)
  18. endfunction
  19.  
  20. au JobActivity netcat-server-* call JobEvent()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement