All Projects → oberblastmeister → lua-analyzer

oberblastmeister / lua-analyzer

Licence: other
A language server for lua written in rust

Programming Languages

rust
11053 projects
lua
6591 projects

Labels

Projects that are alternatives of or similar to lua-analyzer

coc-svelte
svelte support for (Neo)Vim
Stars: ✭ 156 (+178.57%)
Mutual labels:  lsp
coc-elixir
Elixir language server extension based on elixir-ls for coc.nvim
Stars: ✭ 150 (+167.86%)
Mutual labels:  lsp
vim-lamp
💡Language Server Protocol client for Vim.
Stars: ✭ 34 (-39.29%)
Mutual labels:  lsp
dotfiles
Current dotfiles and scripts
Stars: ✭ 35 (-37.5%)
Mutual labels:  lsp
vis-lspc
language server protocol client for the vis editor
Stars: ✭ 24 (-57.14%)
Mutual labels:  lsp
lsp-ltex
lsp-mode ❤️ LTEX
Stars: ✭ 30 (-46.43%)
Mutual labels:  lsp
tower-lsp
Language Server Protocol implementation written in Rust
Stars: ✭ 455 (+712.5%)
Mutual labels:  lsp
lsp-metals
lsp-mode ❤️ metals
Stars: ✭ 49 (-12.5%)
Mutual labels:  lsp
glsp-server
Java-based server framework of the graphical language server platform
Stars: ✭ 25 (-55.36%)
Mutual labels:  lsp
merlin-language-server
Minimal cross-platform LSP wrapper for merlin
Stars: ✭ 28 (-50%)
Mutual labels:  lsp
spacemacs.d
rich Clojure & LSP config for Spacemacs
Stars: ✭ 102 (+82.14%)
Mutual labels:  lsp
Spyglass
Development tools for vanilla Minecraft: Java Edition data pack developers.
Stars: ✭ 163 (+191.07%)
Mutual labels:  lsp
navigator.lua
Source code analysis & navigation plugin for Neovim. Navigate codes like a breeze🎐. Exploring LSP and 🌲Treesitter symbols a piece of 🍰. Take control like a boss 🦍.
Stars: ✭ 781 (+1294.64%)
Mutual labels:  lsp
nvim-metals
A Metals plugin for Neovim
Stars: ✭ 265 (+373.21%)
Mutual labels:  lsp
atom-ide-scala
Scala & Dotty support for Atom IDE (🧟‍♂️ zombie repo)
Stars: ✭ 47 (-16.07%)
Mutual labels:  lsp
typescript-language-server
TypeScript & JavaScript Language Server
Stars: ✭ 1,118 (+1896.43%)
Mutual labels:  lsp
neovimfiles
My Neovim configuration written in Lua
Stars: ✭ 52 (-7.14%)
Mutual labels:  lsp
easy-hls-nix
Easy Haskell Language Server tooling with Nix!
Stars: ✭ 56 (+0%)
Mutual labels:  lsp
aerial.nvim
Neovim plugin for a code outline window
Stars: ✭ 485 (+766.07%)
Mutual labels:  lsp
lxtk
Language Client/Server Toolkit
Stars: ✭ 22 (-60.71%)
Mutual labels:  lsp

lua-analyzer

lua-analyzer is a lsp server for lua. This is mostly for me to learn the lsp protocol and language analysis so suggestions are helpful. This server is highly inspired by rust-analyzer and has a lot of code that is similar or copied from it. Currently only the parser is (partially) implemented. Please don't use this yet.

Installation

git clone https://github.com/oberblastmeister/lua-analyzer
cd lua-analyzer
cargo install --path ./crates/lua-analyzer

neovim lspconfig

First add it to your configurations

local configs = require("lspconfig/configs")
configs.lua_analyzer = {
  default_config = {
    cmd = { "lua-analyzer" },
      filetypes = {"lua"},
      root_dir = util.root_pattern("*.lua", vim.fn.getcwd()),
      docs = {
        description = [[]],
        default_config = {root_dir = [[root_pattern(".git", vim.fn.getcwd())]]},
    },
  }
}

Then you can just set it up as usual

lspconfig.lua_analyzer.setup { ... }

Lsp features

  • simple syntax diagnostics
  • completion
  • symbols
  • workspace symbols
  • renaming
  • goto definition
  • hover
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].