{"id":13761214,"url":"https://github.com/weilbith/nvim-lsp-bacomp","last_synced_at":"2026-01-18T00:53:21.207Z","repository":{"id":103105820,"uuid":"262979664","full_name":"weilbith/nvim-lsp-bacomp","owner":"weilbith","description":"A NeoVim plugin for using language server capabilites with backward compatibility in mind","archived":false,"fork":false,"pushed_at":"2020-08-19T21:50:14.000Z","size":12,"stargazers_count":13,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-05-05T02:49:53.694Z","etag":null,"topics":["neovim","neovim-lsp","neovim-plugin"],"latest_commit_sha":null,"homepage":"","language":"Lua","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/weilbith.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2020-05-11T08:10:29.000Z","updated_at":"2024-07-01T07:21:15.000Z","dependencies_parsed_at":null,"dependency_job_id":"c9a8f17c-0293-453c-9fbb-197d7037f5f5","html_url":"https://github.com/weilbith/nvim-lsp-bacomp","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/weilbith%2Fnvim-lsp-bacomp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/weilbith%2Fnvim-lsp-bacomp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/weilbith%2Fnvim-lsp-bacomp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/weilbith%2Fnvim-lsp-bacomp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/weilbith","download_url":"https://codeload.github.com/weilbith/nvim-lsp-bacomp/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253415416,"owners_count":21904850,"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":["neovim","neovim-lsp","neovim-plugin"],"created_at":"2024-08-03T13:01:43.854Z","updated_at":"2026-01-18T00:53:16.179Z","avatar_url":"https://github.com/weilbith.png","language":"Lua","funding_links":[],"categories":["Lua"],"sub_categories":[],"readme":"# NeoVim Language Server Backwards Compatibility\n\nThis plugin provides the convenience to run LSP related commands with capability\nchecks to the language server and allow to fall back to alternative \"old school\"\nsolutions.\n\n## Installation\n\nInstall the plugin with your favorite manager tool. Here is an example using\n[dein.vim](https://github.com/Shougo/dein.vim):\n\n```vim\ncall dein#add('weilbith/nvim-lsp-backomp', {'on_cmd': 'LspBacomp'})\n```\n\nIt is recommended to use the [nvim-lsp](https://github.com/neovim/nvim-lsp)\nplugin to attach language client to your buffers.\n\n## Usage\n\nThe following are examples by using the `:LspBacomp` command directly. Checkout\nthe docs for further functionality and more details. There are a bunch of\nfunctions to simplify your own _Lua_ scripts.\n\nEstablish an auto-command to leverage LSP document highlighting if available:\n\n```vim\nautocmd! CursorHold * silent! LspBacomp documentHighlightProvider\n      \\ lua\\ vim.lsp.buf.document_highlight()\nautocmd CursorMoved * lua vim.lsp.buf.clear_references()\n```\n\nDefine a mapping to jump to the definition of the word under the cursor. Either\nby the language server if possible, else fall back to the tag file.\n\n```vim\nnnoremap gd \u003ccmd\u003eLspBacomp definitionProvider lua\\ vim.lsp.buf.definition()\n      \\ execute\\ 'tjump\\ '.expand('\u003ccword\u003e')\u003cCR\u003e\n```\n\n---\n\n**Note:**\nPlease mind that _NeoVim_ is not fully consistent at the current state. This\nmeans that some methods for language servers are exposed via the `lsp-buf` API,\nbut are not covered by the server compatibilities. Thereby this plugin can't\ncheck for them. Such are for example the `declarationProvider`. It is planned to\nopen a PR to add them. The [`lsp_provider_names.lua`\nmodule](./lua/lsp_bacomp/lsp_provider_names.lua) includes a list of all missing\nproviders according to the official LSP specification.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fweilbith%2Fnvim-lsp-bacomp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fweilbith%2Fnvim-lsp-bacomp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fweilbith%2Fnvim-lsp-bacomp/lists"}