@@ -93,6 +93,7 @@ class RobotSemTokenTypes(Enum):
9393 NAMESPACE = "namespace"
9494 ERROR = "error"
9595 CONFIG = "config"
96+ NAMED_ARGUMENT = "namedArgument"
9697
9798
9899class RobotSemTokenModifiers (Enum ):
@@ -178,7 +179,7 @@ def generate_mapping(cls) -> Dict[str, Tuple[Enum, Optional[Set[Enum]]]]:
178179 frozenset ({RobotToken .VARIABLE , RobotToken .ASSIGN }): (RobotSemTokenTypes .VARIABLE , None ),
179180 frozenset ({RobotToken .KEYWORD }): (RobotSemTokenTypes .KEYWORD , None ),
180181 frozenset ({ROBOT_KEYWORD_INNER }): (RobotSemTokenTypes .KEYWORD_INNER , None ),
181- frozenset ({ROBOT_NAMED_ARGUMENT }): (RobotSemTokenTypes .VARIABLE , None ),
182+ frozenset ({ROBOT_NAMED_ARGUMENT }): (RobotSemTokenTypes .NAMED_ARGUMENT , None ),
182183 frozenset ({ROBOT_OPERATOR }): (SemanticTokenTypes .OPERATOR , None ),
183184 frozenset ({RobotToken .NAME }): (RobotSemTokenTypes .NAME , None ),
184185 frozenset ({RobotToken .CONTINUATION }): (RobotSemTokenTypes .CONTINUATION , None ),
@@ -254,6 +255,7 @@ async def generate_sem_sub_tokens(
254255 ) -> AsyncGenerator [SemTokenInfo , None ]:
255256 from robot .parsing .lexer .tokens import Token as RobotToken
256257 from robot .parsing .model .statements import (
258+ Arguments ,
257259 Documentation ,
258260 Fixture ,
259261 LibraryImport ,
@@ -283,7 +285,13 @@ async def generate_sem_sub_tokens(
283285 if last_index >= 0 :
284286 yield SemTokenInfo (token .lineno , col_offset , 2 , RobotSemTokenTypes .VARIABLE_BEGIN , sem_mod )
285287
286- yield SemTokenInfo .from_token (token , sem_type , sem_mod , col_offset + 2 , last_index - 2 )
288+ yield SemTokenInfo .from_token (
289+ token ,
290+ SemanticTokenTypes .PARAMETER if isinstance (node , Arguments ) else sem_type ,
291+ sem_mod ,
292+ col_offset + 2 ,
293+ last_index - 2 ,
294+ )
287295
288296 yield SemTokenInfo (
289297 token .lineno , col_offset + last_index , 1 , RobotSemTokenTypes .VARIABLE_END , sem_mod
0 commit comments