我非常喜欢Visual Studio html编辑器如何更新匹配标记。例如:
<h2>Header</h2>
如果我们将<h2>
开头标记替换为<h3>
,则结束标记应自动更改为</h3>
。这应该在我们输入时发生。
我正在努力实现这一点,但到目前为止还没有运气。我认为matchtags addon将是一个很好的起点,但如果标签名称不匹配,它就会停止工作。 此外,我注意到xml模式标记关闭标记为标记名称不匹配时的错误,但我不知道如何使用它来更新结束标记。
我希望得到更有经验的CodeMirror用户的帮助。
由于
答案 0 :(得分:3)
因此,一旦完成编辑,您就不再拥有查找匹配标记所需的信息(这就是为了匹配标签插件无法提供帮助的原因)。一个好的解决方案可能是使用CodeMirror.findMatchingTag
文件导出的addon/fold/xml-fold.js
函数在编辑开始时(当光标位于标记名称时)跟踪当前匹配标记。然后,在标记名称内看起来像本地编辑的"change"
事件(即它们的开始和结束位于标记名称内),立即修改匹配标记。