LuaLS / LuaLS/lua-language-server
How to apply different libraries to different files?
- Dominant language
- Lua
- Stars
- 4.4k
- Forks
- 442
- PR merge metrics
- No merged PRs in 30d
Description
### How are you using the lua-language-server?
Visual Studio Code Extension (sumneko.lua)
### Which OS are you using?
MacOS
### What is the issue affecting?
Libraries
### Expected Behaviour
Same variables refer to different definitions, depending on file
### Actual Behaviour
Same variables do not refer to different definitions, depending on file
### Reproduction steps
Create several libraries with different definitions for some global
### Additional Notes
Hi!
This is a question and not a bug report. Imagine, that I have several lua files with global variable named SomeVar:
file1.lua
```
print(SomeVar.X)
```
file2.lua
```
print(SomeVar.Y)
```
and there are two different files with annotations:
addon1/library/annotations1.lua
```
---@class TSomeVar1
---@field X integer
SomeVar = {}
```
addon2/library/annotations2.lua
```
---@class TSomeVar2
---@field Y integer
SomeVar = {}
```
Is there any way to specify that for file "file1.lua" first library should be used, and for "file2.lua" second library should be used?
I think that similar question was referred in this issue https://github.com/LuaLS/lua-language-server/issues/119
But I cannot run many language servers, because number of files can grow very large
### Log File
_No response_
Contributor guide
Research direction
Start by reading the related issue #119 and comparing its discussion with the examples in file1.lua, file2.lua, addon1/library/annotations1.lua, and addon2/library/annotations2.lua. Determine whether the language server supports selecting different libraries per file and identify the configuration or implementation area involved. Done means the per-file behavior is either supported and documented or its limitation is clearly explained.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- lua
- Domain
- devtools
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100