diff options
| author | blasty <blasty@local> | 2026-07-10 16:21:36 +0200 |
|---|---|---|
| committer | blasty <blasty@local> | 2026-07-10 16:21:36 +0200 |
| commit | a03a1e08f65806f8963eeffc5f65c28af40bc949 (patch) | |
| tree | 3a8c6e13294403eee73ab0f4a27231fb3d3aa02c /idatui | |
| parent | drive: ergonomic RE helper over the RPC socket (terse text, auto socket) (diff) | |
| download | ida-tui-a03a1e08f65806f8963eeffc5f65c28af40bc949.tar.gz ida-tui-a03a1e08f65806f8963eeffc5f65c28af40bc949.tar.xz ida-tui-a03a1e08f65806f8963eeffc5f65c28af40bc949.zip | |
drive: add save + retype; point docs/skills at the ergonomic frontend
Round out idatui.drive with 'save' and 'retype <fn> <proto>' so the whole
common RE loop (orient/understand/act/persist) has a terse command. Update
docs/RPC.md and both skills (idatui, idatui-rpc) to recommend idatui.drive
as the day-to-day driving surface, with rpcclient/raw as the fallback for
unwrapped verbs.
Diffstat (limited to 'idatui')
| -rw-r--r-- | idatui/drive.py | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/idatui/drive.py b/idatui/drive.py index 5a36add..35909df 100644 --- a/idatui/drive.py +++ b/idatui/drive.py @@ -167,6 +167,19 @@ def cmd_note(c, args): return f" noted {args[0]}" +def cmd_retype(c, args): + if len(args) < 2: + raise SystemExit("usage: retype <fn> <prototype...>") + c.call("goto", target=args[0], delay_ms=0) + st = c.call("retype", proto=" ".join(args[1:]), word=args[0], delay_ms=0) + return _fmt_where(st) + + +def cmd_save(c, args): + c.call("save") + return " saved" + + def cmd_screen(c, args): return c.call("screen").get("text", "") @@ -184,8 +197,8 @@ def cmd_raw(c, args): COMMANDS = { "where": cmd_where, "go": cmd_go, "pc": cmd_pc, "dis": cmd_dis, "callees": cmd_callees, "callers": cmd_callers, "names": cmd_names, - "rename": cmd_rename, "mv": cmd_mv, "note": cmd_note, - "screen": cmd_screen, "raw": cmd_raw, + "rename": cmd_rename, "mv": cmd_mv, "note": cmd_note, "retype": cmd_retype, + "save": cmd_save, "screen": cmd_screen, "raw": cmd_raw, } |
