CodeMirror代码完成分析光标位置

我想将代码完成功能集成到基于CodeMirror的xml编辑器中。它基本上解析xml文件的模式,并根据模式及其结构提供代码完成。但有些事我无法做到。例如,当光标移动到内部和xml标记的位置时,代码完成必须相应地表现。它应该知道光标在标签内等。我该怎么做? 我认为代码镜像的XML解析器可以给出关于光标位置的语义位置的线索,并进行一些改动。那可能吗? 或者是否有任何通用的方法来分析光标位置并相应地表现? 提前致谢。     
已邀请:
如果使用CodeMirror 2,则可以使用getTokenAt方法分析给定位置的解析器状态。您可以在http://codemirror.net/2/demo/complete.html中看到这用于自动填充本地JavaScript变量。对于XML解析器,您可以检查状态的上下文属性,该属性是对象的链接列表,每个对象包含一个tagName属性和一个链接到其上方上下文的prev属性。     

要回复问题请先登录注册