From e88463c5a4f119c6d6216d94d9339ff1e1b06302 Mon Sep 17 00:00:00 2001 From: shihao <3127647737@qq.com> Date: Tue, 30 Dec 2025 17:52:53 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E6=88=AA=E6=96=AD=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- plugins/AIChat/main.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/plugins/AIChat/main.py b/plugins/AIChat/main.py index af7664f..311d846 100644 --- a/plugins/AIChat/main.py +++ b/plugins/AIChat/main.py @@ -888,7 +888,16 @@ class AIChat(PluginBase): max_chars = 0 if max_chars and max_chars > 0 and cleaned and len(cleaned) > max_chars: - cleaned = cleaned[:max_chars].rstrip() + trimmed = cleaned[:max_chars].rstrip() + # 尽量在句末截断,避免半句被硬切(仍保证不超过上限) + cut_idx = -1 + for ch in ("。", "!", "?", "!", "?", "\n"): + idx = trimmed.rfind(ch) + if idx > cut_idx: + cut_idx = idx + if cut_idx >= max_chars * 0.5: + trimmed = trimmed[:cut_idx + 1].rstrip() + cleaned = trimmed if cleaned: return cleaned