Chapter 4: Visual mode

The visual mode is a user-friendlier interface for the commandline prompt of radare which accepts HJKL movement keys, a cursor for selecting bytes and some keybindings to ease the use of the debugger.

In this mode you can change the configuration in a easy way using the 'e' (eval) key. Or just track the flags and walk thru the flagspaces pressing 't'.

To get a help of all the keybindings hooked in visual mode you can press '?':

Visual keybindings:
:<cmd>     radare command (vi like)
;          edit or add comment
,.         ',' marks an offset, '.' seeks to mark or eip if no mark
g,G        seek to beggining or end of file
+-*/       +1, -1, +width, -width -> block size
<>         seek block aligned (cursor mode = folder code)
[]         adjust screen width
a,A,=      insert patch assembly, rsc asm or !hack
i          insert mode (tab to switch btw hex,asm,ascii, 'q' to normal)
f,F        seek between flag list (f = forward, F = backward)
t          visual track/browse flagspaces and flags
e          visual eval configuration variables
c          toggle cursor mode
C          toggle scr.color
d          convert cursor selected bytes to ascii, code or hex
m          applies rfile magic on this block
I          invert block (same as pIx or so)
y,Y        yank and Yankee aliases for copy and paste
f,F        go next, previous flag (cursor mode to add/remove)
h,j,k,l    scroll view to left, down, up, right.
J,K        up down scroll one block.
H,L        scroll left, right by 2 bytes (16 bits).
p,P        switch between hex, bin and string formats
x          show xrefs of the current offset
q          exits visual mode

Debugger keybindings:
!          show debugger commands help
F1         commands help
F2         set breakpoint (execute)
F3         set watchpoint (read)
F4         continue until here (!contuh)
F6         continue until syscall (!contsc)
F7         step in debugger user code (!step)
F8         step over in debugger (!stepo)
F9         continue execution (!cont)
F10        continue until user code (!contu)

From the visual mode you can toggle the insert and cursor modes with the 'i' and 'c' keys.