diff --git a/strix/interface/tui/renderers/agent_message_renderer.py b/strix/interface/tui/renderers/agent_message_renderer.py index a7085208c..6207d26f0 100644 --- a/strix/interface/tui/renderers/agent_message_renderer.py +++ b/strix/interface/tui/renderers/agent_message_renderer.py @@ -104,7 +104,7 @@ def _apply_markdown_styles(text: str) -> Text: # noqa: PLR0912 result.append_text(_process_inline_formatting(line[2:])) elif len(line) > 2 and line[0].isdigit() and line[1:3] in (". ", ") "): result.append(line[0] + ". ", style="#22c55e") - result.append_text(_process_inline_formatting(line[2:])) + result.append_text(_process_inline_formatting(line[3:])) elif line.strip() in ("---", "***", "___"): result.append("─" * 40, style="#22c55e") else: diff --git a/tests/test_agent_message_renderer.py b/tests/test_agent_message_renderer.py new file mode 100644 index 000000000..17521b1a2 --- /dev/null +++ b/tests/test_agent_message_renderer.py @@ -0,0 +1,23 @@ +"""Tests for markdown styling in the agent-message TUI renderer.""" + +from __future__ import annotations + +from strix.interface.tui.renderers.agent_message_renderer import _apply_markdown_styles + + +def test_numbered_list_has_single_space_after_marker() -> None: + result = _apply_markdown_styles("1. Hello").plain + + assert result == "1. Hello" + assert "1. Hello" not in result + + +def test_numbered_list_paren_marker_normalized_single_space() -> None: + result = _apply_markdown_styles("2) World").plain + + assert result == "2. World" + assert "2. World" not in result + + +def test_bullet_list_marker_unaffected() -> None: + assert _apply_markdown_styles("- Item").plain == "• Item"