From aefcde5b3cbcf51ecf6b082d4a9c9f48f8378d07 Mon Sep 17 00:00:00 2001 From: lonnywong Date: Wed, 23 Jun 2021 23:00:44 +0800 Subject: [PATCH] add columns config for registers view --- pwndbg/commands/context.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pwndbg/commands/context.py b/pwndbg/commands/context.py index f9183c8a6..acb031cb7 100644 --- a/pwndbg/commands/context.py +++ b/pwndbg/commands/context.py @@ -290,6 +290,7 @@ def context(subcontext=None): pwndbg.config.Parameter('show-compact-regs', False, 'whether to show a compact register view') pwndbg.config.Parameter('show-compact-regs-align', 20, 'the number of characters reserved for each register and value') pwndbg.config.Parameter('show-compact-regs-space', 4, 'the minimum number of characters separating each register') +pwndbg.config.Parameter('show-compact-regs-columns', 0, 'the number of columns to show registers (if 0, using the show-compact-regs-align)') def calculate_padding_to_align(length, align): @@ -302,6 +303,12 @@ def calculate_padding_to_align(length, align): def compact_regs(regs, width): align = int(pwndbg.config.show_compact_regs_align) space = int(pwndbg.config.show_compact_regs_space) + columns = int(pwndbg.config.show_compact_regs_columns) + + # reset align while columns is set + if columns > 0: + align = max(align, width // columns) + result = [] line = ''