luacheck
lua-language-server
Our great sponsors
luacheck | lua-language-server | |
---|---|---|
14 | 79 | |
1,864 | 2,988 | |
- | 4.1% | |
0.0 | 9.4 | |
over 1 year ago | 3 days ago | |
Lua | Lua | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
luacheck
-
strict.lua
Not directly related, but luacheck can also help with this.
-
Lua is eye candy
Yeah. While you're at it, make a habit of running luacheck on your files as it helps catch a lot of these issues that can sneak in by mistake: https://github.com/mpeterv/luacheck
-
Help me reload my lua config! :)
Using something like https://github.com/mpeterv/luacheck might be helpful too. Will check all the files in a directory and will let you know which one might be problematic.
-
Lsp: Execute callback after server initialized
I'm trying to setup luacheck (via null-ls) to run alongside sumneko-lua (via nvim-lspconfig).
-
A History of Lua
Most of the time nothing is used. The thing is that iterating is so quick, that you find the problems really fast.
Although, I've been using luacheck https://github.com/mpeterv/luacheck. It is quite nice, but you have to write down the global variables by hand on the config file.
-
Writing a neovim plugin. Please send criticisms to make the code better
Check out luacheck. It can help spot typos or mistakes you've made and warn against anti-patterns. I'd honestly only look into setting it up locally because there's no benefit to putting it in a CI pipeline unless you have one for another reason IMO. This should be all the config you need:
- Modding Help - Error Diagnosis
-
GitHub Successors
Sadly the scenario that the successor feature is intended to alleviate has very much become reality. The creator of Luacheck (Peter Melnichenko) passed away a couple of years ago, and ever since then the GitHub repository has been in a state of limbo. Multiple unofficial forks have come and gone, but Peter's is still the first result on Google if you search "luacheck". It isn't even possible to change the README or pin an issue to get people's attention about the fork; to this day people are still posting issues to the old repo.
And Luacheck is "the" Lua static analysis tool that pretty much everyone uses, so it's a very significant issue.
https://github.com/mpeterv/luacheck/issues/198
-
Kind of define in lua
You are probably right, but luacheck is well aware of which global variables are built-in and it has special comments, such as -- no global or --ignore in case you very want to overwrite them.
-
Is it ok to name a function for example "function self:Example() end" or is it a big mistake? And how to find (directory) location of a function?
Calling your function self is as much bad practice as calling it print. Use luacheck to avoid such mistakes.
lua-language-server
-
Some questions about code formatting with lsp-zero and mason
Check the documentation of lua_ls
-
Beginner question: is there any coding standard for documenting Lua functions or tables emulating OOP?
You can use LLS extension for VSCode. Documentation: https://github.com/LuaLS/lua-language-server/wiki/Annotations
-
Lua: The Little Language That Could
There's lua-language-server which works with types defined in definition files and/or annotations in comments.
-
Documentation Comment highlighting with TreeSitter
Lastly, neovim now supports semantic token highlighting which uses semantic tokens from LSP servers to provide even better, language specific highlighting. Some LSP servers support semantic tokens for doc comments. The lua language server is a good example. Unfortunately, if you're using a language like C or C++, the language servers do not provide semantic tokens for comments because doxygen style comments are not specific to those languages so you might be out of luck for semantic token highlighting.
-
This little thing bugs me: in lua LSP popup content, the closing paren is always highlighted red
I think it is because the language server send a different type for the first line: https://github.com/LuaLS/lua-language-server/blob/eeffd1462b892fda5d01282acf840ba0e154e467/script/core/hover/label.lua (might be one of the other files here, not label)
-
How to add lua-language-server to $PATH
And I was reading this installation guide and after "./bin/lua-language-server " I get this in terminal
-
New to lua
Not sure about typescript but there is a jsdoc equivalent: https://github.com/LuaLS/lua-language-server/wiki/Annotations
-
How complex can I make games in Lua?
Lua with lua-language-server and annotated types is a much nicer experience.
-
mini.nvim - release of version 0.8.0
For it to be language-aware (like provide suggestions for module/table/class methods/fields) you also need language server (like lua_ls for Lua). But even without it you should see suggestions from fallback method. If you don't, then 'mini.completion' is not installed and/or activated.
-
PSA: Changes to the mason.nvim registry
I also want to thank current & past GitHub sponsors who help finance costs associated with the plugin. I regularly pay the surplus forward to other devs whose tooling I heavily rely on (huge shout-out to sumneko for working on the Lua language server, without it a plugin of the complexity of mason.nvim would be impossible, go sponsor them here).
What are some alternatives?
StyLua - An opinionated Lua code formatter
lua-lsp - A Lua language server
LuaFormatter - Code formatter for Lua
coc.nvim - Nodejs extension host for vim & neovim, load extensions like VSCode and host language servers.
luau - A fast, small, safe, gradually typed embeddable scripting language derived from Lua
lsp-mode - Emacs client/library for the Language Server Protocol
NvChad - Blazing fast Neovim config providing solid defaults and a beautiful UI, enhancing your neovim experience.
lsp-zero.nvim - A starting point to setup some lsp related features in neovim.
NvChad - An attempt to make neovim cli as functional as an IDE while being very beautiful , blazing fast. [Moved to: https://github.com/NvChad/NvChad]
nvim-cmp - A completion plugin for neovim coded in Lua.
lua-enumerable - A port of ruby's Enumerable module to Lua
love-api - The whole LÖVE wiki in a Lua table.