https://github.com/idanarye/nvim-buffls
Add LSP functionality to specific Neovim buffers
https://github.com/idanarye/nvim-buffls
editing-support lsp-server lua neovim
Last synced: about 1 month ago
JSON representation
Add LSP functionality to specific Neovim buffers
- Host: GitHub
- URL: https://github.com/idanarye/nvim-buffls
- Owner: idanarye
- License: mit
- Created: 2022-11-18T17:19:32.000Z (over 2 years ago)
- Default Branch: develop
- Last Pushed: 2025-01-14T21:05:37.000Z (3 months ago)
- Last Synced: 2025-02-28T08:45:00.132Z (about 2 months ago)
- Topics: editing-support, lsp-server, lua, neovim
- Language: Lua
- Homepage:
- Size: 53.7 KB
- Stars: 9
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
- awesome-neovim - idanarye/nvim-buffls - Add LSP functionality to specific Neovim buffers. (LSP / (requires Neovim 0.5))
- awesome-neovim-sorted - idanarye/nvim-buffls
- awesome-neovim-sorted - idanarye/nvim-buffls
README
[](https://github.com/idanarye/buffls/actions)
INTRODUCTION
============BuffLS is a [none-ls](https://github.com/nvimtools/none-ls.nvim) source for adding LSP-like functionality for a specific buffer. This is useful for small scripts that use Neovim buffers for input, and want to enhance their UX with things like custom completion or code actions. Writing a separate none-ls source for each such script is too cumbersome, so BuffLS acts as a single source that redirects the LSP requests to objects stored in a buffer variable.
BuffLS was created as a supplemental plugin for [Moonicipal](https://github.com/idanarye/nvim-moonicipal), but can be used independent of it.
For a more through explanation, please to this section in a blog post about Moonicipal: https://dev.to/idanarye/moonicipal-explained-4h02#data-cells-and-buffls
SETUP
=====Install BuffLS with your plugin manager of choice, and register the BuffLS source in none-ls:
```lua
require'null-ls'.setup {
sources = {
require'buffls',
};
}
```CONTRIBUTION GUIDELINES
=======================* If your contribution can be reasonably tested with automation tests, add tests. The tests run with [a specific branch in a fork of Plenary](https://github.com/idanarye/plenary.nvim/tree/async-testing) that allows async testing ([there is a PR to include it in the main repo](https://github.com/nvim-lua/plenary.nvim/pull/426))
* Documentation comments must be compatible with both [Sumneko Language Server](https://github.com/sumneko/lua-language-server/wiki/Annotations) and [lemmy-help](https://github.com/numToStr/lemmy-help/blob/master/emmylua.md). If you do something that changes the documentation, please run `make docs` to update the vimdoc.
* Update the changelog according to the [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) format.