正在获取通过无效XML的路径

本文关键字:XML 路径 无效 获取 | 更新日期: 2023-09-27 17:58:47

我正在使用ScintillaNet为MSBuild文件创建一个编辑器。该编辑器的一个功能是自动完成。

我的想法是解析MSBuild的XSD架构,以获得允许的元素和属性。这个问题解决了。

我目前的问题是,为了显示上下文敏感的信息,我必须知道用户在模式中的"位置"。我基本上需要解析一个XML文档。听起来很简单,对吧?错误:文档当前正在编辑中,因此它可能不是有效的XML。

因此,我正在寻找一种方法来构建从文档根到当前位置(文本光标)的元素名称路径。我认为我们可以假设,在最后一个元素之前,一切都是有效的。我真的不想要代码,只需要一些步骤就可以开始了。

谢谢。

正在获取通过无效XML的路径

就我个人而言,我会将文本解析到用户的光标,保留一堆遇到的元素——打开时推动它们,关闭时弹出它们。您将能够使用堆栈的状态来为您提供用户当前所在的元素

您需要考虑到用户可能正在编辑节点名称——解析器在过程结束时所处的状态将能够很好地指示用户当前正在编辑的内容。

edit:我知道你不喜欢代码,但如果你需要的话,我可能会很快把一些东西拼凑起来。