j178 / chatgpt

An elegant interactive CLI for ChatGPT
728 stars 54 forks source link

在命令行中粘贴部分文字时,应用存在自动退出的问题。 #32

Closed lw396 closed 9 months ago

lw396 commented 1 year ago

当在命令行中粘贴如:我要你扮演一个侏儒。你会为我提供可以在任何地方进行的活动和爱好的有趣、独特的想法。例如,我可能会向您询问有趣的院子设计建议或在天气不佳时在室内消磨时间的创造性方法。此外,如有必要,您可以建议与我的要求相符的其他相关活动或项目。我的第一个请求是“我正在寻找我所在地区的新户外活动”。 的问题应用闪退。

image
j178 commented 1 year ago

调试了一下,应该是 bubbletea 的 bug,粘贴字节长度超过 256 个的字符程序就会 exit:https://github.com/charmbracelet/bubbletea/issues/668

他们应该是已知这个问题,暂时我这边没有很好的解决办法。

yaocccc commented 1 year ago

或许可以直接监听ctrl+shift+v,然后绑定对应的事件,然后代码侧从clipboard里面拿内容填充

yaocccc commented 1 year ago

或许可以直接监听ctrl+shift+v,然后绑定对应的事件,然后代码侧从clipboard里面拿内容填充

而非让终端处理该事件

j178 commented 1 year ago

或许可以直接监听ctrl+shift+v,然后绑定对应的事件,然后代码侧从clipboard里面拿内容填充

确实是个好方法,不过对于 bubbletea 应用,ctrl+vctrl+shift+v 按键对应的事件是一样的,所以实际上现在用 ctrl+v 就可以避免这个问题。(即,在 macOS 下用 ctrl+v,而不是 cmd+v)。

另外,我还在 #46 中增加了 alt+v 作为粘贴快捷键,以便在某些系统上 ctrl+v 的行为不一致的问题。

j178 commented 9 months ago

bubbletea v0.25.0 修复了这个问题,我发布了 v1.3.2 ,应该修复了这个问题。