fix: parse_mode используется когда мы внутри блока кода
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
This commit is contained in:
parent
359d203c41
commit
40ce40f218
|
|
@ -175,7 +175,11 @@ async def send_long_message(update: Update, text: str, parse_mode: str = None, p
|
||||||
|
|
||||||
for i, (part, has_code, code_opened, code_closed) in enumerate(parts):
|
for i, (part, has_code, code_opened, code_closed) in enumerate(parts):
|
||||||
# Определяем parse_mode для этого сообщения
|
# Определяем parse_mode для этого сообщения
|
||||||
actual_parse_mode = parse_mode if parse_mode and has_code else None
|
# Используем parse_mode если сообщение имеет код ИЛИ если мы внутри блока кода
|
||||||
|
# Мы внутри блока кода если: предыдущее не закрыло ИЛИ (текущее открыто и не закрыто)
|
||||||
|
prev_closed = parts[i-1][3] if i > 0 else True
|
||||||
|
in_code_block = not prev_closed or (code_opened and not code_closed)
|
||||||
|
actual_parse_mode = parse_mode if parse_mode and (has_code or in_code_block) else None
|
||||||
|
|
||||||
# Логика работы с блоками кода между сообщениями:
|
# Логика работы с блоками кода между сообщениями:
|
||||||
# Если предыдущее сообщение не закрыло блок — нужно открыть в этом
|
# Если предыдущее сообщение не закрыло блок — нужно открыть в этом
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue