代码完成的Xtext问题

时间:2017-01-21 20:44:49

标签: xtext

基于以下Xtext(2.10)代码段:

期待" CRT + L"

问题:

如果" CRT + L"是在" BEGSR"令牌,"姓名 - ID"选项缺失。

按下Enter键并且标记错误" BEGSR * PSSR"被建造。规则应该是" BEGSR"总是跟着一个空格。但它不是!

请帮助我,

  1. 在" BEGSR"
  2. 之后自动添加空格
  3. 拥有"姓名 - ID"选项" CRL + L"在" BEGSR"令牌
  4. 有" ENDSR"自动添加像" {}"和"()"括号

1 个答案:

答案 0 :(得分:0)

Xtext有两个扩展点用于此类事情

  • 有一个提案提供程序,可让您调整现有提案。它包含完成位置的方法,例如complete_<Rulename>complete<Rulename>_<featurename>以及一些特殊规则,例如completeKeyword,您可以覆盖和自定义。
  • 键入时自动插入称为自动编辑策略,由DefaultAutoEditStrategy
  • 实施