xiaoxx970 / chatgpt-in-terminal

Use ChatGPT in terminal
MIT License
201 stars 27 forks source link

FEAT: 清屏功能 #29

Closed Ace-Radom closed 1 year ago

Ace-Radom commented 1 year ago

~C写破防了来提个小建议~

慢慢发现如果聊天过多中间又delete过的话 翻聊天记录真的很烦 如果加一个清屏的命令可能会更好 比如加一个类似于 /clear 之类的命令

实现方法也很简单 在各个平台上都有原生的清屏命令 win下是 cls linux下是 clear mac下应该也是 但我不知道这样清屏是不是会对prompt_toolkit产生影响 可能要测试一下

xiaoxx970 commented 1 year ago

不知道是prompt_toolkit还是rich自带了,你在聊天的时候按 Ctrl+L 就可以清空屏幕,我也是某次偶然才发现的,可以考虑写进文档

Ace-Radom commented 1 year ago

啊我明白了 最好写进文档里吧 毕竟也是一个已经有的功能

Ace-Radom commented 1 year ago

顺便借楼问个问题:stream mode的请求和普通请求的差别只有在request data里多了一个 "stream": 1 吗?然后之后的解析都是靠requests的stream mode和特殊的输出函数嘛 因为我在尝试用libcurl实现流式传输但那段代码其实没怎么看懂

xiaoxx970 commented 1 year ago

顺便借楼问个问题:stream mode的请求和普通请求的差别只有在request data里多了一个 "stream": 1 吗?然后之后的解析都是靠requests的stream mode和特殊的输出函数嘛 因为我在尝试用libcurl实现流式传输但那段代码其实没怎么看懂

有两个地方设置了stream=1,一个是request data里,另一个就是requests.post的参数里,这两个地方设置了stream后,用SSEClient处理回复。你还要找找在c里是用什么来处理SSE event的

Ace-Radom commented 1 year ago

有两个地方设置了stream=1,一个是request data里,另一个就是requests.post的参数里,这两个地方设置了stream后,用SSEClient处理回复。你还要找找在c里是用什么来处理SSE event的

原来如此啊是SSE……麻烦了我记得curl本身不支持得用一些奇妙的方法绕行 这个还是慢点弄吧

image

害这东西虽然现在看上去还像点样子但实则问题一堆:innocent: 连中文退格都退不清楚 也不知道是终端的问题还是程序的问题

xiaoxx970 commented 1 year ago

很好呀能实现聊天了呀,后面就是堆代码堆功能了,加油吧

Ace-Radom commented 1 year ago

很好呀能实现聊天了呀,后面就是堆代码堆功能了,加油吧

嗯嗯 就看我后面会不会把代码堆成千层面了(雾 慢慢来吧总之