{"id":13898372,"url":"https://github.com/dradtke/vim-dap","last_synced_at":"2025-10-19T12:21:04.953Z","repository":{"id":137217924,"uuid":"235489732","full_name":"dradtke/vim-dap","owner":"dradtke","description":"Vim/Neovim debugger plugin providing a terminal interface to the Debug Adapter Protocol","archived":false,"fork":false,"pushed_at":"2022-11-10T23:04:52.000Z","size":44814,"stargazers_count":48,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-08T04:56:49.309Z","etag":null,"topics":["debug-adapter-protocol","debugger","neovim","neovim-plugin","vim","vim-plugin"],"latest_commit_sha":null,"homepage":"","language":"Vim Script","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dradtke.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2020-01-22T03:16:37.000Z","updated_at":"2024-10-02T20:24:50.000Z","dependencies_parsed_at":"2023-07-06T12:00:26.223Z","dependency_job_id":null,"html_url":"https://github.com/dradtke/vim-dap","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/dradtke/vim-dap","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dradtke%2Fvim-dap","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dradtke%2Fvim-dap/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dradtke%2Fvim-dap/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dradtke%2Fvim-dap/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dradtke","download_url":"https://codeload.github.com/dradtke/vim-dap/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dradtke%2Fvim-dap/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262151872,"owners_count":23266935,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["debug-adapter-protocol","debugger","neovim","neovim-plugin","vim","vim-plugin"],"created_at":"2024-08-06T18:04:15.905Z","updated_at":"2025-10-19T12:20:59.870Z","avatar_url":"https://github.com/dradtke.png","language":"Vim Script","readme":"# vim-dap\n\n`vim-dap` is a Vim plugin for integrating with the\n[Debug Adapter Protocol](https://microsoft.github.io/debug-adapter-protocol/).\nto provide full debugger functionality for Vim. Unlike other debugger plugins,\nit doesn't attempt to replicate the user interface of an IDE; instead,\ninteraction with the debugger happens in the terminal, through a fully\nreadline-enabled debugger console:\n\nNeovim's LSP API appears to still be in flux, so if something isn't working, the\nfirst thing to try would be to upgrade to the latest Neovim release.\n\n![demo](misc/demo.gif)\n\n## Supported Languages\n\nThis plugin is intended to be as configuration-free as possible, but this section\nwill detail existing language support and their requirements.\n\n### Java\n\nJava requires you to be running the\n[eclipse.jdt.ls](https://github.com/eclipse/eclipse.jdt.ls) language server with\n[java-debug](https://github.com/microsoft/java-debug) installed.  The\n`dap#run()` method requires you to be using either Neovim with native LSP\nsupport, `vim-lsp` or `LanguageClient-neovim` as your client, but\n`dap#connect()` can be called manually to connect to the debug adapter if it's\nalready running.\n\nIn order to run the language server with debug support, you will need to\ninitialize the server with the path of the debug jar bundle. An example using\n`settings.json`:\n\n```json\n{\n  \"initializationOptions\": {\n    \"bundles\": [\"/path/to/java-debug.jar\"]\n  }\n}\n```\n\nYou will also need to add all of the jars included in the server extension for\n[vscode-java-test](https://github.com/microsoft/vscode-java-test). The easiest\nway to do that is to download it from the VSCode Marketplace:\n\n```\nhttps://vscjava.gallery.vsassets.io/_apis/public/gallery/publisher/vscjava/extension/vscode-java-test/${version}/assetbyname/Microsoft.VisualStudio.Services.VSIXPackage\n```\n\n#### Debugger Settings\n\nThe [debug\nsettings](https://github.com/microsoft/java-debug/blob/master/com.microsoft.java.debug.core/src/main/java/com/microsoft/java/debug/core/DebugSettings.java)\ncan be customized by defining either a `.vim/launch.json` or\n`.vscode/launch.json` file, i.e.\n\n```json\n{\n  \"javaHome\": \"/usr/lib/jvm/java-11-openjdk-amd64\"\n}\n```\n\n#### Tips\n\nTo make it easier to run Java tests, I recommend adding something like this to your `.vimrc`.\nWith this in place, you can use `\\rb` to run all tests in the current file, `\\rf` to only run\nthe test which your cursor is in, and `\\rl` to re-run the most recent test.\n\n```viml\nau filetype java nmap \u003cLeader\u003erb :call dap#lang#java#run_test_class()\u003ccr\u003e\nau filetype java nmap \u003cLeader\u003erf :call dap#lang#java#run_test_method()\u003ccr\u003e\nau filetype java nmap \u003cLeader\u003erl :call dap#run_last()\u003ccr\u003e\n```\n\n### Go\n\nFirst, make sure that you have Delve installed and that `dlv` is available on your PATH.\n\nSecond, the debug adapter for Go is implemented as part of `vscode-go`, so your\nsystem must have Node available in order for it to run (womp womp). It will be\nautomatically downloaded on first use.\n\n\u003c!-- vim: set textwidth=80: --\u003e\n","funding_links":[],"categories":["Vim Script"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdradtke%2Fvim-dap","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdradtke%2Fvim-dap","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdradtke%2Fvim-dap/lists"}