# Tool Options Dialog

Each tool has an Options dialog that shows options in a tree format. When you click on the node, the associated options appear in a panel to the right of the tree. At a minimum, the tree has a node for key bindings and tool options . Select the node to show the corresponding options that you can change. Plugins may provide their own options, in which case new nodes in the tree or new options for the tool may show up. Options provide a flexible way for changing plugin behavior or functionality.

> > The Tool Options dialog has a filter text field that can be used to quickly find options relating to a keyword. Any options names or descriptions that contain the keyword text will be displayed.

To display the Options dialog, select EditTool Options... from the tool menu.

## Restoring Default Settings

> You can restore any currently selected options panel to its default settings by pressing the Restore Defaults button at the bottom of the options panel. Use caution when executing this action, as it cannot be undone.

## Key Bindings

> You can create a new "hot key" for a Plugin's action or modify the default key binding. The hot key (or accelerator) that you add can be used to execute the action with a keystroke combination.

> > You can also change key bindings from within Ghidra by pressing F4 while the mouse is over any toolbar icon or menu item. Click here for more info.

> The Key Bindings panel has a table containing the Action Name, Key Binding, and Plugin Name. You can sort the columns in ascending or descending order. (By default, the Action Name column is sorted in ascending order.) The Plugin name is the name of the plugin supplying the action.

> - Click on the category header to change the sort order.
> - Change the order of the columns by dragging the column header to another position in the table.
> - The text field below the table captures keystroke combinations entered.
> - If an action has a description to explain what it does, it will be displayed below the text field.

> The table entries are not editable.

> The display below shows the key bindings panel for the Project Window. Using the Key Bindings Options panel works the same as for a regular Ghidra Tool.

> ### Change a Key Binding

> > To change the Key Binding,

> > 1. Select Edit Tool Options... from the main menu.
> > 2. Select the Key Bindings node in the options tree.
> > 3. Select an action name to either set a key binding or change the existing key binding.
> > 4. Click in the text field and type the key or keystroke combination (e.g., Ctrl x).
> >    - When a key is mapped to multiple actions, the action name is listed below the text field.
> > 5. Click on the OK or Apply button.

> When a key is mapped to multiple actions, and more than one of these actions is valid in the current context (i.e., the action is enabled), then a dialog is displayed for you to choose what action you want to perform.

> To avoid the extra step of choosing the action from the dialog, do not map the same key to actions that are applicable in the same context.

> ### Remove a Key Binding

> > To remove a Key Binding,

> > 1. Select Edit Tool Options... from the main menu.
> > 2. Select the Key Bindings node in the options tree.
> > 3. Select an action name for the key binding that you want to remove.
> > 4. Click in the text field for the key binding.
> > 5. Press the <Enter> or <Backspace> to clear it.
> > 6. Click on the OK or Apply button.

> ### Import Key Bindings

> > To import a Key Binding,

> > 1. Select Edit Tool Options... from the main menu.
> > 2. Select the Key Bindings node in the options tree.
> > 3. Press the Import... button.
> > 4. On the warning dialog, press the Yes button to import key bindings or the No button to cancel the process.
> > 5. On the file chooser dialog, choose a previously exported file from which to import key bindings.
> > 6. Press OK to import the key bindings.

> > Importing key bindings will override your current key bindings settings. It is suggested that you export your key bindings before you import so that you may revert to your previous settings if necessary.

> > After importing you must save your tool (File Save Tool) if you want you changes to persist between tool invocations.

> ### Key Binding Short-Cut

> > A key binding can be applied to any menu item or toolbar icon. For example:

> > > File Close

> > > Data Cycle Cycle: Float, Double

> > Apply key bindings to menu items or icons that are frequently accessed. To do this:

> > 1. Display a menu item.
> > 2. Place the cursor on the menu item or let the mouse hover over an icon on the toolbar.

> > This menu item or icon will be associated with the Key Binding. When the Key Binding key is used, this menu item or action associated with the icon will be applied.

> > 1. Press the <F4> key to display Set Key Binding dialog:

> > 4. Enter a key combination in the Set Key Binding dialog, The panel below the text field that accepts the key input shows the other actions that are mapped to the key. These are potential collisions if these actions are enabled at the same time. Press OK to change the key binding.
> > 5. The key combination that is entered in this dialog will be the key binding for the menu item.

> ### Export Key Bindings

> > To export a Key Binding,

> > 1. Select Edit Options... from the Tool menu.
> > 2. Select the Key Bindings node in the options tree.
> > 3. Press the Export... button.
> > 4. If you have made changes, then you will be promted to apply those changes before continuing.
> > 5. On the file chooser dialog, choose a file to which to export key bindings.
> > 6. Press OK to export the key bindings.

## Tool

> Tool is a default node in the options tree that shows up in each tool's options window. The Tool panel defines the options for the Tool. The table below lists the basic options. Plugins may add their own options to the Tool options. If a tool does not have a plugin that uses an option, the option will not show up on the Tool panel. For example, the Ghidra Project Window does not have plugins that use the Max Go to Entries, Search Limit, or Subroutine Model so these options will not appear on the Tool panel. If an option has a description, it will show up in the description panel below the tree when you pass the mouse pointer over the component in the options panel.

> Tool Options
> Option | Description
> Docking Windows On Top | Selected means to show each undocked window on top of its parent tool window; the undocked window will not get "lost" behind its parent window. Unselected means that the undocked window may go behind other windows once it loses focus. Use the Windows menu to make the undocked window visible.
> Max Goto Entries | Number of past entries to keep in the Go to Address or Label dialog
> Search Limit | Numeric: The maximum number of search hits to allow; for example, when you search for text in the Program, the search is stopped when the number of matches exceeds this limit, or the max number of addresses displayed while doing a Go To for an entry that has multiple matches.
> Subroutine Model | Sets the default subroutine model. This setting is mainly used when creating call graphs. See Block Models for a description of the valid Models.
> Use C-like Numeric Formatting for Addresses | Selected means to attempt to interpret the value entered in the Go To dialog as a number as follows: interpret the value as a hex number if it starts with "0x" interpret the value as an octal number if it starts with "0" interpret the value as a binary number if it ends with a "b"

> To change Tool Options,

> 1. From the tool, select Edit Tool Options...
> 2. Select the Tool node in the options tree.
> 3. Change the value for the option.
> 4. Click on the OK or Apply button.

### Tool

> Some Tool options can only be set from the Front End. Some of those are described below.

> Tool Options
> Option | Description
> Swing Look and Feel | This controls the appearance of the UI widgets for things such as colors and fonts. Each operating system provides a different default Look and Feel. Some of these work better than others.
> Use Inverted Colors | This is a prototype feature that allows the user to invert each color of the UI. Doing this effectively creates a Dark Theme, which some users find less visually straining. As a prototype feature, this feature has many known issues, including: Pre-generated content, such as images, icons and help files will have inverted colors, Some color combinations will be difficult to read

Related Topics:

- Go to Address or Label
- Subroutine Model