* typo: Fix typos and rename functions across multiple files This commit addresses several minor issues: - Corrected spelling of function names (e.g., `update_ui_lastest_msg` to `update_ui_latest_msg`) - Fixed typos in comments and variable names - Corrected capitalization in some strings (e.g., "ArXiv" instead of "Arixv") - Renamed some variables for consistency - Corrected some console-related parameter names (e.g., `console_slience` to `console_silence`) The changes span multiple files across the project, including request LLM bridges, crazy functions, and utility modules. * fix: f-string expression part cannot include a backslash (#2139) * raise error when the uploaded tar contain hard/soft link (#2136) * minor bug fix * fine tune reasoning css * upgrade internet gpt plugin * Update README.md * fix GHSA-gqp5-wm97-qxcv * typo fix * update readme --------- Co-authored-by: binary-husky <96192199+binary-husky@users.noreply.github.com> Co-authored-by: binary-husky <qingxu.fu@outlook.com>
25 lines
820 B
Python
25 lines
820 B
Python
def is_full_width_char(ch):
|
|
"""判断给定的单个字符是否是全角字符"""
|
|
if '\u4e00' <= ch <= '\u9fff':
|
|
return True # 中文字符
|
|
if '\uff01' <= ch <= '\uff5e':
|
|
return True # 全角符号
|
|
if '\u3000' <= ch <= '\u303f':
|
|
return True # CJK标点符号
|
|
return False
|
|
|
|
def scrolling_visual_effect(text, scroller_max_len):
|
|
text = text.\
|
|
replace('\n', '').replace('`', '.').replace(' ', '.').replace('<br/>', '.....').replace('$', '.')
|
|
place_take_cnt = 0
|
|
pointer = len(text) - 1
|
|
|
|
if len(text) < scroller_max_len:
|
|
return text
|
|
|
|
while place_take_cnt < scroller_max_len and pointer > 0:
|
|
if is_full_width_char(text[pointer]): place_take_cnt += 2
|
|
else: place_take_cnt += 1
|
|
pointer -= 1
|
|
|
|
return text[pointer:] |