2011-05-14 103 views
10

我写了一个应用程序,在HTML代码里面我有自定义标记(当然这些标记在服务器端解析,最终用户将它们作为有效的HTML代码)。自定义标签使用示例:Eclipse - 如何扩展HTML编辑器以添加自定义标签?

<html> 
<body> 
... 
    <Gallery type="grid" title="My Gallery" /> 
... 
</body> 
</html> 

1)如何我已经日食认识我的自定义标签的HTML代码中添加语法高亮给他们?
2.)如何将自动建议添加到我的自定义标签?例如,如果我输入“<图库”按“Ctrl +空格” - 在可用属性列表中显示我“类型”和“标题”,如果我输入“< Gallery type =”按“Ctrl +空格”我会仅查看标记“Gallery”及其属性“type”的可用值列表。

在此先感谢!

回答

4

不幸的是,有没有简单的方法:你必须为此编译自己的解析器,然后添加额外的元素和基本语法(HTML)。如果你有你的解析器,你可以用它来做语法高亮(严格来说,对于简单的lexing来说就足够了);并且一个好的解析器可以支持内容辅助(在您的术语中使用自动建议)。

注意事项:

  • 创建HTML的解析器并不是一件容易的事。也许通过瞄准更经常使用的子集是可行的。
  • 如果存在解析器,编辑器部分仍然很难变好。

,另一方面一些帮助:你可以使用一些文本编辑器,发电机,以方便您的工作:

  • Eclipse的IMP http://www.eclipse.org/imp/理论上可以处理任何类型的解析器,但目前它是最优化LPG。文档很少,但开发人员在论坛中很有帮助。
  • Xtext http://www.eclipse.org/Xtext/因为为DSL创建文本编辑器而颇受欢迎。生成的编辑器开箱即用,但不是大文件的最佳解决方案。有一个非常有用的开发者社区。
  • EMFText http://www.emftext.org/index.php/EMFText是一个鲜为人知的实体 - 我不知道它的细节,但我想,它与Xtext类似。
5

不是真的你想要什么,但也许它可以帮助你:

  1. 你可以尝试Aptana Plug-in的Eclipse插件。它允许为HTML验证编写自己的正则表达式,因此验证程序将忽略自定义标记。 例如:

    画廊。

  2. Eclipse允许您通过模板添加简单的自动建议。关于 Eclipse 3.7.1(Indigo)+ PHP开发工具(PDT)3.0。0:窗口>首选项>网络> HTML文件>编辑>模板

+0

这样的作品,感谢 – Green 2013-03-06 18:05:06

+0

Aptana插件终于找到了日食更好的HTML编辑器。很棒。 – TinusSky 2014-08-04 13:39:48

0

我知道自从问了这个问题很久以后, ,但我希望这可以帮助像我这样的人寻求解决方案。因此,当使用Eclipse(Mars.1 Release(4.5.1) - 可能更早 - 我没有检查)。

转到Window - Prefrences
然后在打开去Web对话框 - HTML Files - Editor - Validation
在右侧:

  1. Ignore specified element names in validation下,输入您使用自定义元素的列表。 (如Gallery,tab,tabset,my-element-directives-*
  2. 你可能还喜欢Ignore specified attribute names in validation下,去为你的自定义属性做同样的(例如,ng-*,my-attr-directives-*

有两点需要注意:

  1. 让后日食做了充分的验证您还必须关闭该文件并重新打开它,以从源代码中删除警告。
  2. 使用此方法将忽略任何元素下的这些属性。我不认为有一个简单的方法可以让它忽略some-attribute,只有当其子女some-element
0

您需要添加一个新的HTML模板。要添加一个新的模板,完成以下步骤:

1)从窗口菜单中,选择首选项。

2)在Preferences页面中,选择Web and XML> HTML Files> HTML Templates。

3)单击新建。

4)输入新的模板名称和模板的简要说明。

5)使用上下文下拉列表,指定模板可用的上下文。

6)在模式字段中,输入要由内容帮助插入的相应标签,属性或属性值(模板的内容)。

7)如果你想插入一个变量,点击Variable按钮并选择要插入的变量。例如,word_selection变量表示在模板插入开始时选择的单词,并且该游标变量确定将模板插入HTML文档后光标所在的位置。

8)点击确定保存新模板。

您可以使用相同的“首选项”页面编辑,删除,导入或导出模板。

参考:http://help.eclipse.org/kepler/index.jsp?topic=%2Forg.eclipse.wst.sse.doc.user%2Ftopics%2Ftsrcedt024.html

相关问题