Spaces:
Sleeping
Sleeping
Keldos
commited on
Commit
·
83c8410
1
Parent(s):
e91da60
fix: 修复用户消息特殊符号被重复escape的问题
Browse files- assets/custom.css +4 -0
- modules/overwrites.py +2 -2
- modules/utils.py +7 -1
assets/custom.css
CHANGED
@@ -294,6 +294,10 @@ ol:not(.options), ul:not(.options) {
|
|
294 |
.message.user p {
|
295 |
white-space: pre-wrap;
|
296 |
}
|
|
|
|
|
|
|
|
|
297 |
|
298 |
.message .md-message p {
|
299 |
margin-top: 0.6em !important;
|
|
|
294 |
.message.user p {
|
295 |
white-space: pre-wrap;
|
296 |
}
|
297 |
+
.message .user-message {
|
298 |
+
display: block;
|
299 |
+
padding: 0 !important;
|
300 |
+
}
|
301 |
|
302 |
.message .md-message p {
|
303 |
margin-top: 0.6em !important;
|
modules/overwrites.py
CHANGED
@@ -65,9 +65,9 @@ def postprocess_chat_messages(
|
|
65 |
# escape html spaces
|
66 |
# chat_message = chat_message.replace(" ", " ")
|
67 |
if role == "bot":
|
68 |
-
chat_message =
|
69 |
elif role == "user":
|
70 |
-
chat_message =
|
71 |
return chat_message
|
72 |
else:
|
73 |
raise ValueError(f"Invalid message for Chatbot component: {chat_message}")
|
|
|
65 |
# escape html spaces
|
66 |
# chat_message = chat_message.replace(" ", " ")
|
67 |
if role == "bot":
|
68 |
+
chat_message = convert_bot_before_marked(chat_message)
|
69 |
elif role == "user":
|
70 |
+
chat_message = convert_user_before_marked(chat_message)
|
71 |
return chat_message
|
72 |
else:
|
73 |
raise ValueError(f"Invalid message for Chatbot component: {chat_message}")
|
modules/utils.py
CHANGED
@@ -203,7 +203,7 @@ def convert_mdtext(md_text): # deprecated
|
|
203 |
output += ALREADY_CONVERTED_MARK
|
204 |
return output
|
205 |
|
206 |
-
def
|
207 |
"""
|
208 |
注意不能给输出加缩进, 否则会被marked解析成代码块
|
209 |
"""
|
@@ -226,6 +226,12 @@ def convert_before_marked(chat_message):
|
|
226 |
md = f'<div class="md-message">{result}\n</div>'
|
227 |
return raw + md
|
228 |
|
|
|
|
|
|
|
|
|
|
|
|
|
229 |
def escape_markdown(text):
|
230 |
"""
|
231 |
Escape Markdown special characters to HTML-safe equivalents.
|
|
|
203 |
output += ALREADY_CONVERTED_MARK
|
204 |
return output
|
205 |
|
206 |
+
def convert_bot_before_marked(chat_message):
|
207 |
"""
|
208 |
注意不能给输出加缩进, 否则会被marked解析成代码块
|
209 |
"""
|
|
|
226 |
md = f'<div class="md-message">{result}\n</div>'
|
227 |
return raw + md
|
228 |
|
229 |
+
def convert_user_before_marked(chat_message):
|
230 |
+
if '<div class="user-message">' in chat_message:
|
231 |
+
return chat_message
|
232 |
+
else:
|
233 |
+
return f'<div class="user-message">{escape_markdown(chat_message)}</div>'
|
234 |
+
|
235 |
def escape_markdown(text):
|
236 |
"""
|
237 |
Escape Markdown special characters to HTML-safe equivalents.
|