bog
lua-language-server
bog | lua-language-server | |
---|---|---|
7 | 79 | |
519 | 3,015 | |
- | 2.0% | |
3.2 | 9.4 | |
10 months ago | 8 days ago | |
Zig | 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.
bog
-
Bog – small, strongly typed, embeddable language
Looking at the two of them, both awesome projects, not a competition but here are a few things I noticed. Cyber seems to have pretty good documentation (maybe Bog does too but I didn't find too much from the readme. For example, you can see Bog has a GC and its standard library supports JSON, but memory management and non-scalar data structures aren't mentioned in the Bog readme).
Cyber also seems to be under more active development at the moment.
https://github.com/vexu/bog/graphs/contributors
https://github.com/fubark/cyber/graphs/contributors
- Bog – Small, strongly typed, embeddable language
-
If you made a library in Zig. Could you use that library inside C? (and by extension, almost all programming languages, since most languages support C libraries to some extent)
Check bog for a real life example https://github.com/vexu/bog
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?
gale - Strongly-typed, minimal-ish, stack-based development at storm-force speed.
lua-lsp - A Lua language server
zls - A Zig language server supporting Zig developers with features like autocomplete and goto definition
luacheck - A tool for linting and static analysis of Lua code.
LoLa - LoLa is a small programming language meant to be embedded into games.
coc.nvim - Nodejs extension host for vim & neovim, load extensions like VSCode and host language servers.
zig - General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
lsp-mode - Emacs client/library for the Language Server Protocol
arocc - A C compiler written in Zig.
lsp-zero.nvim - A starting point to setup some lsp related features in neovim.
nelua-lang - Minimal, efficient, statically-typed and meta-programmable systems programming language heavily inspired by Lua, which compiles to C and native code.
nvim-cmp - A completion plugin for neovim coded in Lua.