From 73e8b6ca967c2f32b5586e0614727bcf4959272a Mon Sep 17 00:00:00 2001 From: blasty Date: Thu, 23 Jul 2026 20:22:01 +0200 Subject: listing: two-level indent, address on headers, drop 'near', opcode cap+cycle Polish per feedback: proc header drops the meaningless 'near' ('name proc'); the function-name/proc header now shows the address like every line; two-level indent (function names at depth 0, opcode bytes + instruction text one level deeper, matching IDA's label/instruction columns); 'o' now CYCLES the opcode column off->limited->full and is shown in the footer; 'limited' mode caps long runs at the first 8 bytes + ellipsis so 15-byte x86-64 insns don't blow out the column (width capped to match). _line_plain/render_line share the layout so cursor/search stay aligned. Verified func_banners+disasm_nav/mouse/region_define/listing_view/ listing_struct_expand/listing_name_addr/search/continuous_view green. Needs a supervisor restart. --- tests/test_scenarios.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'tests') diff --git a/tests/test_scenarios.py b/tests/test_scenarios.py index 73fc50b..f72e340 100644 --- a/tests/test_scenarios.py +++ b/tests/test_scenarios.py @@ -1634,13 +1634,13 @@ async def s_func_banners(c: Ctx): f"kind={c.lst.model.get(ci).kind if ci >= 0 else None}") c.check("a SUBROUTINE separator banner is present", any(h.kind == "sep" and "S U B R O U T I N E" in h.text for h in heads)) - c.check("a 'name proc near' header is present", - any(h.kind == "funchdr" and h.text.endswith("proc near") for h in heads)) + c.check("a 'name proc' header is present", + any(h.kind == "funchdr" and h.text.endswith(" proc") for h in heads)) c.check("a 'name endp' footer is present", any(h.kind == "funchdr" and h.text.endswith("endp") for h in heads)) # the proc header for the origin function carries its name hdr = next((h for h in heads if h.kind == "funchdr" - and h.text == f"{fn.name} proc near"), None) + and h.text == f"{fn.name} proc"), None) c.check("the proc header names the function", hdr is not None, f"fn={fn.name}") -- cgit v1.3.1-sl0p