【问题标题】:Xtext: Run features like validation on demandXtext:按需运行验证等功能
【发布时间】:2016-09-23 23:10:16
【问题描述】:

一些介绍: 我正在编写一个使用 Xtext 的插件。这个插件打开了 Xtext 的 Eclipse,当用户点击这个 Eclipse 上的一个按钮时,我的插件会在 INode-s 上计算一些东西。 然后,给定一些 INode 列表,我想突出显示(下划线 + 标记)对应于 INode 的行无需重新运行 eclipse

我认为最好的方法是按需调用特定的验证器(如果不可能,重新运行所有验证器也可以)。 我如何告诉 Xtext 在它已经启动后运行验证器?

我想到的另一种方法是对给定的 INode 列表使用 SemanticHighlight。但这可能和上面的问题一样。

谢谢。

【问题讨论】:

  • “不重新运行 Eclipse”是什么意思?每次更改文件时都重新启动整个 Eclipse 工作台吗?
  • 不,我不会重新启动。我的意思是我想从插件代码重新运行验证器(例如),而不需要客户端的任何特殊操作(关闭和打开文件的选项卡,重新启动 eclipse 等)

标签: validation highlight xtext markers


【解决方案1】:

Xtext 验证通常集成在 Eclipse 构建过程中,因此只要启用了自动构建,就不需要用户进行任何操作。请参考http://www.eclipse.org/Xtext/documentation/303_runtime_concepts.html#custom-validation

如果您真的需要访问节点模型(即 INode),您可以使用 NodeModelUtils.findActualNodeFor(EObject) 访问它

【讨论】:

    猜你喜欢
    • 2020-04-24
    • 1970-01-01
    • 2012-10-04
    • 1970-01-01
    • 2014-11-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多