{"id":13476402,"url":"https://github.com/Alloyed/lua-lsp","last_synced_at":"2025-03-27T02:32:48.796Z","repository":{"id":37336347,"uuid":"102163149","full_name":"Alloyed/lua-lsp","owner":"Alloyed","description":"A Lua language server","archived":false,"fork":false,"pushed_at":"2023-03-09T19:11:35.000Z","size":778,"stargazers_count":286,"open_issues_count":16,"forks_count":21,"subscribers_count":17,"default_branch":"master","last_synced_at":"2024-08-01T16:45:04.424Z","etag":null,"topics":["autocomplete","language-server","language-server-protocol","lua"],"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/Alloyed.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","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":"2017-09-02T00:45:26.000Z","updated_at":"2024-07-01T07:39:53.000Z","dependencies_parsed_at":"2024-01-16T06:14:51.304Z","dependency_job_id":"5fd9a36f-503d-43da-8295-07e55a5cfa1b","html_url":"https://github.com/Alloyed/lua-lsp","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Alloyed%2Flua-lsp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Alloyed%2Flua-lsp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Alloyed%2Flua-lsp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Alloyed%2Flua-lsp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Alloyed","download_url":"https://codeload.github.com/Alloyed/lua-lsp/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245769526,"owners_count":20669195,"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":["autocomplete","language-server","language-server-protocol","lua"],"created_at":"2024-07-31T16:01:29.870Z","updated_at":"2025-03-27T02:32:48.491Z","avatar_url":"https://github.com/Alloyed.png","language":"Lua","readme":"# lua-lsp\n[![Build Status](https://travis-ci.org/Alloyed/lua-lsp.svg)](https://travis-ci.org/Alloyed/lua-lsp)\n\nA [Language Server][lsp] for Lua code, written in Lua.\n\n[lsp]: https://github.com/Microsoft/language-server-protocol\n\nIt's still a work in progress, but it's usable for day-to-day. It currently\nsupports:\n\n* Limited autocompletion\n* Goto definition\n* As you type linting and syntax checking\n* Code formatting\n* Supports Lua 5.1-5.3 and Luajit\n\n### Installation/Usage\n\nlua-lsp can be installed using luarocks:\n```\n$ luarocks install --server=http://luarocks.org/dev lua-lsp\n```\nThis will install the `lua-lsp` command. Language clients can then communicate\nwith this process using stdio as a transport. See [editors.md](editors.md) for\nmore instructions specific to your editor of choice.\n\n### Plugins\n\nlua-lsp automatically integrates with common lua packages, when they are\ninstalled. For linting, install luacheck:\n```\n$ luarocks install luacheck\n```\nFor code formatting, we currently support Formatter and LCF. Formatter is 5.1\nonly, whereas lcf is 5.3 only.\n5.1:\n```\n$ luarocks-5.1 install Formatter\n$ luarocks-5.3 install lcf\n```\nIf you have another package you'd like to see integrated, feel free to leave an\nissue/PR. Other plugins are always welcome, especially if they provide\nmaterially different results.\n\nif lua-cjson is installed, we will optionally use it for a speed boost. It is\nunfortunately not supported by all versions of lua at the moment, but as soon\nas it is we will switch to making it mandatory.\n```\n$ luarocks install lua-cjson\n```\n\n### Configuration\n\nlua-lsp reads a few project-level configuration files to do its work.\n\nTo configure linting, we read your standard [.luacheckrc][check] file.\n\nFor autocomplete support, we reimplement the [.luacompleterc][complete] format\ncreated by atom-autocomplete-lua. In particular, we need `luaVersion` to\nproperly understand your code.\n\nMore LSP-specific configuration flags will hopefully be provided through your\neditor's configuration support.\n\n[complete]: https://github.com/dapetcu21/atom-autocomplete-lua#configuration\n[check]: http://luacheck.readthedocs.io/en/stable/config.html\n\n### TODO\n\nThe LSP spec is big, and we don't implement all of it. here's a\nquick wishlist ordered by roughly by priority/feasibility.\n\n* List references (`textDocument/references`)\n* Find symbols (`workspace/symbol`)\n* Function signature help (`textDocument/signatureHelp`)\n* Code links (`textDocument/documentLink`)\n* File events (`workspace/didChangeWatchedFiles`)\n","funding_links":[],"categories":["Lua"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FAlloyed%2Flua-lsp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FAlloyed%2Flua-lsp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FAlloyed%2Flua-lsp/lists"}