{"action":"created","issue":{"url":"https://api.github.com/repos/idanarye/vim-vebugger/issues/66","repository_url":"https://api.github.com/repos/idanarye/vim-vebugger","labels_url":"https://api.github.com/repos/idanarye/vim-vebugger/issues/66/labels{/name}","comments_url":"https://api.github.com/repos/idanarye/vim-vebugger/issues/66/comments","events_url":"https://api.github.com/repos/idanarye/vim-vebugger/issues/66/events","html_url":"https://github.com/idanarye/vim-vebugger/issues/66","id":352665132,"node_id":"MDU6SXNzdWUzNTI2NjUxMzI=","number":66,"title":"Debug Adapter Protocol Support","user":{"login":"tbo","id":264745,"node_id":"MDQ6VXNlcjI2NDc0NQ==","avatar_url":"https://avatars2.githubusercontent.com/u/264745?v=4","gravatar_id":"","url":"https://api.github.com/users/tbo","html_url":"https://github.com/tbo","followers_url":"https://api.github.com/users/tbo/followers","following_url":"https://api.github.com/users/tbo/following{/other_user}","gists_url":"https://api.github.com/users/tbo/gists{/gist_id}","starred_url":"https://api.github.com/users/tbo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tbo/subscriptions","organizations_url":"https://api.github.com/users/tbo/orgs","repos_url":"https://api.github.com/users/tbo/repos","events_url":"https://api.github.com/users/tbo/events{/privacy}","received_events_url":"https://api.github.com/users/tbo/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2018-08-21T18:49:59Z","updated_at":"2018-08-22T11:50:52Z","closed_at":null,"author_association":"NONE","body":"I think support for the Debug Adapter Protocol would be an nice addition to this plugin and extend its usage to more languages. It might even eliminate the necessity to maintain support for most, if not all, wrappers.\r\n\r\nhttps://microsoft.github.io/debug-adapter-protocol/"},"comment":{"url":"https://api.github.com/repos/idanarye/vim-vebugger/issues/comments/415005637","html_url":"https://github.com/idanarye/vim-vebugger/issues/66#issuecomment-415005637","issue_url":"https://api.github.com/repos/idanarye/vim-vebugger/issues/66","id":415005637,"node_id":"MDEyOklzc3VlQ29tbWVudDQxNTAwNTYzNw==","user":{"login":"tbo","id":264745,"node_id":"MDQ6VXNlcjI2NDc0NQ==","avatar_url":"https://avatars2.githubusercontent.com/u/264745?v=4","gravatar_id":"","url":"https://api.github.com/users/tbo","html_url":"https://github.com/tbo","followers_url":"https://api.github.com/users/tbo/followers","following_url":"https://api.github.com/users/tbo/following{/other_user}","gists_url":"https://api.github.com/users/tbo/gists{/gist_id}","starred_url":"https://api.github.com/users/tbo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tbo/subscriptions","organizations_url":"https://api.github.com/users/tbo/orgs","repos_url":"https://api.github.com/users/tbo/repos","events_url":"https://api.github.com/users/tbo/events{/privacy}","received_events_url":"https://api.github.com/users/tbo/received_events","type":"User","site_admin":false},"created_at":"2018-08-22T11:50:52Z","updated_at":"2018-08-22T11:50:52Z","author_association":"NONE","body":"I think, that a lot of debug adapters interact with command line adapters as well (e.g. https://marketplace.visualstudio.com/items?itemName=webfreak.debug). They just expose the functionality via a high level API. I would expect, that most vebugger write actions can directly be mapped to DAP Requests. I created a (very) high-level mapping of vebugger commands to DAP Requests: \r\n\r\n```\r\nVBGstepOver -> Next\r\nVBGstepIn -> StepIn\r\nVBGstepOut -> StepOut\r\nVBGcontinue -> Continue\r\n\r\nVBGtoggleBreakpoint -> SetBreakPoints\r\nVBGtoggleBreakpointThisLine -> SetBreakPoints\r\nVBGclearBreakpoints -> SetBreakPoints\r\n\r\nVBGeval -> Evaluate\r\nVBGevalSelectedText -> Evaluate\r\nVBGevalWordUnderCursor -> Evaluate\r\n\r\nVBGexecute -> ? (maybe Evaluate)\r\nVBGexecuteSelectedText -> ? (maybe Evaluate)\r\n\r\nVBGkill -> Disconnect or Terminate\r\n\r\nVBGtoggleTerminalBuffer <- RunInTerminal\r\nVBGrawWrite -> ?\r\nVBGrawWriteSelectedText -> ?\r\n```\r\n\r\nThe part, that would likely differ the most is the debugger feedback. I don't know how well DAP's event model would fit into vebugger'a read handler model. There are probably a lot of things, that I'm missing here.\r\n@idanarye Would you say, that it makes sense to implement this in vebugger? I would otherwise checkout a NodeJs based solution, since there already is a complete SDK for it (https://github.com/Microsoft/vscode-debugadapter-node). "}}
{"actor":{"display_login":"tbo"}}