Zhengqbbb / cz-git

cz-git | czg 🛠️ DX first and more engineered, lightweight, customizable, standard output format Commitizen adapter and CLI
https://cz-git.qbb.sh
MIT License
1.13k stars 41 forks source link

[Feature Request] 非英文字符的自动折行 #150

Closed violin0622 closed 11 months ago

violin0622 commented 11 months ago

💭 Describe the feature

我使用 czg 作为提交工具。 看起来在处理 body 内容输入时, czg 能够进行英文的自动折行,可能是识别了空格? 但是对于汉字内容,没有自动折行,必须在确认提交之前进行二次编辑。

💡 Proposed Solution

考虑到在任意两个汉字字符之间折行都不会影响阅读,是否识别汉字的 utf8 编码范围, 直接按行宽折行,而不再寻找空格呢?

Zhengqbbb commented 11 months ago

Hi. 处理 body 内容的自动折行是通过 breaklineNumber 控制,默认为为 100 的字符长度与英文单词识别实现

https://cz-git.qbb.sh/zh/config/engineer#breaklinenumber

CleanShot 2023-12-12 at 15 12 46@2x


任意两个汉字字符之间折行

英文字符的判断单词不换行通过空格识别是比较容易实现的,但是中文两个组词词语不换行这个我没想到有什么好的方法,相同的其他语种我是不是要一一支持。


所以当时我参考了 cz-customizable 的设计我引入一个标识( breaklineChar 默认为 |), 提供给用户手动处理换行

image

当然如果这个中文处理是开放性的,如果你有好的想法,我们可以一起讨论实现