LuaLS / LuaLS/lua-language-server
Go to Definition not working for class symbols inside inline function parameter types
Personne n'a encore pris cette issue.
- Langage dominant
- Lua
- Étoiles
- 4.4k
- Forks
- 442
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
### How are you using the lua-language-server?
Visual Studio Code Extension (sumneko.lua)
### Which OS are you using?
Windows
### What is the issue affecting?
Hover
### Expected Behaviour
Clicking on MyData inside the function(data: MyData) parameter list should navigate to the ---@class MyData definition, similar to how it works in a standard ---@type MyData
### Actual Behaviour
Hovering over MyData correctly displays the class documentation.
"Go to Definition" (F12) does not trigger any action.
No error is reported in the logs, it simply feels like the text is not "linkified".
### Reproduction steps
```lua
---@class MyData
---@field id number
---@param callback fun(data: MyData)
function Execute(callback)
end
-- Try to "Go to Definition" on `MyData` in the line below:
Execute(function(data)
-- The hover shows "(class) MyData", but F12 does nothing.
end)
```
### Additional Notes
When a function parameter is annotated as a fun(arg: ClassName), the ClassName symbol in the hover tooltip shows the correct class information, but "Go to Definition" (F12 or Ctrl+Click) fails to navigate to the class definition.
Behaviors are normal in EmmyLua.
### Log File
_No response_
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Reproduisez le problème dans la Visual Studio Code Extension à l’aide de l’exemple Lua fourni, puis commencez par le point d’entrée d’accès à la définition avec F12 ou Ctrl+Click pour MyData dans l’annotation fun(data: MyData). Comparez-le au comportement fonctionnel du survol et au cas standard ---@type MyData. C’est terminé lorsque le symbole de classe accède à sa définition ---@class MyData.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- lua
- Domaine
- devtools
- Type d'issue
- Bug
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- Calme
- Clarté
- Plutôt claire
- Accessibilité débutants
- 64/100