Chapter 2: Configuration

The core reads ~/.radarerc while starting, so you can setup there some 'eval' commands to set it up in your favorite way.

To avoid parsing this file, use '-n' and to get a cleaner output for using radare in batch mode maybe is better to just drop the verbosity with '-v'.

All the configuration of radare is done with the 'eval' command which allows the user to change some variables from an internal hashtable containing string pairs.

The most common configuration looks like this:

$ cat ~/.radarerc
eval scr.color = true
eval dbg.bep   = entry
eval   = true
eval file.flag = true
eval file.analyze = true

These configurations can be also defined using the '-e' flag of radare while loading it, so you can setup different initial configurations from the commandline without having to change to rc file.

$ radare -n -e scr.color=true -e asm.syntax=intel -d /bin/ls

All the configuration is stored in a hash table grouped by different root names ([i]cfg., file., dbg., ..[/i])

To get a list of the configuration variables just type 'eval' or 'e' in the prompt. All the basic commands can be reduced to a single char. You can also list the configuration variables of a single eval configruation group ending the command argument with a dot '.'.

There are two enhaced interfaces to help users to interactively configure this hashtable. One is called 'emenu' and provides a shell for walking through the tree and change variables.

To get a help about this command you can type 'e?':

[0x4A13B8C0]> e?
Usage: e[m] key=value
   > ereset              ; reset configuration
   > emenu               ; opens menu for eval
   > e scr.color = true  ; sets color for terminal

Note the 'e' of emenu, which stands for 'eval'. In radare, all basic commands can be reduced to a single char, and you can just type 'e?' to get the help of all the 'subcommands' for the basic command.

[0xB7EF38C0]> emenu
Menu: (q to quit)
- asm
- cfg
- child
- cmd
- dbg
- dir
- file
- graph
- scr
- search
- trace
- zoom

There is a easier eval interface accessible from the Visual mode, just typing 'e' after entering this mode (type 'Visual' command before).

Most of the eval tree is quite stable, so don't expect hard changes on this area.

I encourage you to experiment a bit on this to fit the interface to your needs.