我想在我的编辑器中添加一个仅适用于给定范围的叠加层(例如,从第 3 行第 44 列到第 8 行第 5 列)。
问题是我无法想出任何方法来找到我的token()
方法中的当前行,因为覆盖是无状态的,所以我无法将当前行存储在状态中。
multiplex.js
我仔细研究了and中的扩展overlay.js
,并试图了解嵌套模式是如何工作的,但我无法找到一种方法来使用这些工具中的任何一个来帮助我。请记住,我仍然希望它表现得像一个叠加层,因此不会干扰基本模式。
我的替代方法是扫描元素以查找添加的类并手动修改它们,使用element.getBoundingClientRect()
并cm.coorsChar()
检查它们的位置。但这很丑陋,需要手动刷新,并且当标记的元素跨越我的范围边界时会导致错误。关于如何正确解决这个问题的任何想法?