@@ -255,8 +255,8 @@ def parse_xtext_grammar(self, xtext_source_paths: List[str]):
255255 logging .info (f"{ var :{max_name_len }s} = { keywords_dict [var ]} " )
256256 if var .endswith ("DefKeyword" ):
257257 def_keyword_var = keywords_dict [var ][0 ].split ()[0 ]
258- def_keyword_value = [x for x in keywords_dict [def_keyword_var ] if x .isalpha ()][0 ]
259- def_keywords_set .add (def_keyword_value )
258+ def_keyword_value = [x for x in keywords_dict [def_keyword_var ] if x .replace ( " " , "" ). isalpha ()][0 ]
259+ def_keywords_set .add (def_keyword_value . split ()[ - 1 ] )
260260
261261 # Remove interpunction terminals that should not be highlighted
262262 operators_set .remove ("." )
@@ -344,6 +344,7 @@ def export_jupyter_syntax_highlighting_files(
344344 additional_def_keywords .add (keyword )
345345 logging .info (f"additional_def_keywords={ sorted (additional_def_keywords )} " )
346346
347+ logging .info (f"keywords = { self .keywords } " )
347348 keywords_minus_atoms = list (self .keywords )
348349 keywords_minus_atoms .remove ("false" )
349350 keywords_minus_atoms .remove ("true" )
@@ -353,7 +354,7 @@ def export_jupyter_syntax_highlighting_files(
353354 def_keywords_set .update (additional_def_keywords )
354355 self .def_keywords = sorted (def_keywords_set )
355356 for def_keyword in self .def_keywords :
356- if def_keyword not in keywords_minus_atoms :
357+ if any ([ x not in keywords_minus_atoms for x in def_keyword . split ()]) :
357358 logging .error (f"def keyword '{ def_keyword } ' "
358359 f"is not in the list of keywords obtained from the xtext grammar" )
359360
0 commit comments