27 Star 306 Fork 18

tuchg / ChinesePinyin-CodeCompletionHelper

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
Bugs解决思路.md 960 Bytes
一键复制 编辑 原始数据 按行查看 历史
tuchg 提交于 2021-02-04 21:46 . :pencil2:整理文档,修改不妥之处

目前已测试补全失效平台

go

问题解决思路

  • 在执行贡献器流程中前缀匹配器PrfixMatcher 执行到go.jar!\com\goide\completion\GoReferenceCompletionProvider.class

  • 后被强行修改为驼峰前缀匹配,导致功能失效

    执行函数被修饰为protected且似乎未开放EPs(ExtensionsPoints)

    另jetbrains明令说明未来将封禁反射,故无法直接在此处修改

  • 通过静态工具类go.jar!\com\goide\completion\GoCompletionUtil.class对传入匹配器进行修改

    无法修改

解决方法

  1. 费大力气对各语言psi作一次解析,经调查同类插件均以此法实现
  2. 请求jetbrains对自家各语言前缀匹配器做出修改
  3. 暴力覆盖驼峰前缀适配器

kotlin

与上类似,在CompletionSession被修改

rider (c#)

可按上述思路展开,但就目前所知,因C#平台特殊性,intellij与C#有前后端之分,恐难以实现

Kotlin
1
https://gitee.com/tuchg/ChinesePinyin-CodeCompletionHelper.git
git@gitee.com:tuchg/ChinesePinyin-CodeCompletionHelper.git
tuchg
ChinesePinyin-CodeCompletionHelper
ChinesePinyin-CodeCompletionHelper
master

搜索帮助