我希望在Visual Studio中为一种特定语言开发支持。MPF语言服务和MEF编辑器扩展似乎有很多重叠,我无法得到清晰的答案,不知道应该使用哪一个。
我只对在Visual Studio 2012及更高版本中开发此语言支持感兴趣。我正在使用C#并希望仅使用托管API。
MSDN文档指出,语法高亮应该由语言服务完成。但是当你去那里的文档时,有一个注释,认为建议使用MEF。但是当您阅读MEF文档时,它并没有真正指定它是设计用于处理全文件语法高亮;措辞让我感觉它旨在用于夹杂的高亮修饰。
然而,相反的是,Ook!示例演示了我认为是全文件语法高亮,尽管使用这样规模的示例,它并没有明确表明它应该以这种方式使用。
MPF语言服务似乎支持向“另存为”对话框添加过滤器。我没有看到任何像这样的东西适用于仅通过MEF支持的语言,但我可能已经错过了。我没有找到任何迹象表明它们都支持向打开对话框添加文件类型过滤器。这使我认为,MEF编辑器扩展的目的不是要实现全面的语言扩展,而是要扩展现有的语言扩展。
请问您有什么想法吗?
编辑:
我希望您能直接回答以下几个问题:
1.用于高亮的MEF编辑器扩展点是否旨在实现全文件语法高亮,还是仅用于夹杂的修饰?
2.如果我已经注册了FileType和ContentType以进行MEF Export,则需要采取哪些其他步骤(或者是否可能?)才能在各种文件对话框中显示相关的文件过滤器?
3.MEF编辑器扩展点是否旨在替换并潜在地最终淘汰MPF语言服务?
我只对在Visual Studio 2012及更高版本中开发此语言支持感兴趣。我正在使用C#并希望仅使用托管API。
MSDN文档指出,语法高亮应该由语言服务完成。但是当你去那里的文档时,有一个注释,认为建议使用MEF。但是当您阅读MEF文档时,它并没有真正指定它是设计用于处理全文件语法高亮;措辞让我感觉它旨在用于夹杂的高亮修饰。
然而,相反的是,Ook!示例演示了我认为是全文件语法高亮,尽管使用这样规模的示例,它并没有明确表明它应该以这种方式使用。
MPF语言服务似乎支持向“另存为”对话框添加过滤器。我没有看到任何像这样的东西适用于仅通过MEF支持的语言,但我可能已经错过了。我没有找到任何迹象表明它们都支持向打开对话框添加文件类型过滤器。这使我认为,MEF编辑器扩展的目的不是要实现全面的语言扩展,而是要扩展现有的语言扩展。
请问您有什么想法吗?
编辑:
我希望您能直接回答以下几个问题:
1.用于高亮的MEF编辑器扩展点是否旨在实现全文件语法高亮,还是仅用于夹杂的修饰?
2.如果我已经注册了FileType和ContentType以进行MEF Export,则需要采取哪些其他步骤(或者是否可能?)才能在各种文件对话框中显示相关的文件过滤器?
3.MEF编辑器扩展点是否旨在替换并潜在地最终淘汰MPF语言服务?