fig补全规范-筛选高亮

使用fig时随着不断的输入数据,suggestion是会不断的筛选命中和高亮的。实际测试分析发现了高亮的logic

逻辑

  1. 补全list生成的同时计算当前输入命令光标到开始匹配的N个字符,定义为charactersToDrop=N
  2. N个字符split变成字符数组,每个字符进行match高亮,采用懒惰匹配
  3. 当用户回车时,终端先删除N个字符,write进命中补全-值
  4. 用户回车选中suggestion

举例

输入cd ar,charactersToDrop=2

每个字符进行命中,a命中后,r继续匹配命中,但是r一定要是在a以后进行匹配

https://static.1991421.cn/2024/2024-01-15-211931.jpeg