Open Kaiser-Yang opened 1 week ago
也就是现在对于内容的长度等也有限制?
嗯,在VSCode中测试过,对于解释或者注释代码,限定在一个函数的范围效果比较好。
直接放在chat这个窗口里面
确实这样更符合在Vscode中的风格,但chat本身是只读的,放开编辑的话容易打乱排版,从而失去结构化(跳转、高亮、复制等操作就无法实现了)
可能的实现方法:
如果您有更好的想法也欢迎交流。
- 通过添加一个子窗口绑定在chat上来实现?
对于绑定两个窗口可能需要考虑这两个窗口能不能真正的看成一个整体,例如resize会不会同时resize两个窗口,如果是竖着堆叠的两个窗口,那么我不管光标在哪里执行:resize +5
都应该将整体resize
然后按照之前 的比例计算新的大小(同时需要提供可以设置chat部分占窗口整体的比例参数)
- 通过某种hack让chat部分可编辑?
这个方法我感觉不是很合理,因为不管是看哪一种chat都应该输出的部分是不能编辑的,而且不能编辑也保证了内容不会乱掉。
如果真的能实现的话,应该提供在回答窗口能够快速进入chat部分的接口设计,toggle
隐藏的话也是整体隐藏比较好。
如果问我有什么想法我感觉,floating window也是不错的选择,这样也可以提供floating窗口的位置,例如chat输出窗口的正下方,或者这个屏幕的中间这种。这样的好处是不需要考虑resize对整体的影响。
希望官方能够开放更多的api,让支持上下文成为可能,因为我在网页用fittencode我感觉给的代码和解释的质量不低(前提你得结合上下文对他进行提示)。
我体验了一下copilotchatnvim,他们是把chat窗口变成一个可编辑的, 体验下来还不错(我把i绑定成了Gi):
对一个较长代码(500 lines)进行解释时,会出现如下情况:
没有上下问的支持,例如我先询问:Could you please give me a brief introduction of vim and nvim? 在他回答完成之后我接着询问Could you please give me more information about them, and answer it with Chinese?会出现第二次问题无法回答的情况,结果如下图: