【发布时间】:2021-04-05 04:36:23
【问题描述】:
使用 VSCode 1.52.1 / LSP 3.16 进行测试
我启用了点来触发完成,例如:
'completionProvider': {
'triggerCharacters': [
'.', '@',
]
},
但似乎textDocument/didChange 是在完成请求之前发送的,通过插入点,它会使整个源的语法无效,所以我丢失了 AST 来计算所需的完成响应。
这是常态吗?其他实现如何处理这种情况?他们都实现了一个部分解析器来获取部分 AST,其中无效点站在那里?还是其他解决方法?
【问题讨论】: