Key
Action Context | Mods+Key | Menu → Path
The action may only be available in the given context. ❖ indicates the context menu, i.e., right-click. The Ctrl key is replaced by the command ⌘ key on Macintosh.

Load Project/Program
New Project | Ctrl+N | File → New Project
Open Project | Ctrl+O | File → Open Project
Close Project1 | Ctrl+W | File → Close Project
Save Project1 | Ctrl+S | File → Save Project
Import File1 | I | File → Import File
Export Program | O | File → Export Program
Open File System1 | Ctrl+I | File → Open File System
1 These actions are only available if there is an active project. Create or open a project first.

Help/Customize/Info
Ghidra Help Hover on action | F1 | Help → Contents
About Ghidra | Help → About Ghidra
About Program | Help → About program name
Preferences | Edit → Tool Options
Set Key Binding Hover on action | F4 |
Key Bindings | Edit → Tool Options → Key Bindings
Processor Manual | ❖ → Processor Manual

Markup
Undo | Ctrl+Z | Edit → Undo
Redo | Ctrl+Shift+Z | Edit → Redo
Save Program | Ctrl+S | File → Save program name
Disassemble | D | ❖ → Disassemble
Clear Code/Data | C | ❖ → Clear Code Bytes
Add Label Address field | L | ❖ → Add Label
Edit Label Label field | L | ❖ → Edit Label
Rename Function Function name field | L | ❖ → Function → Rename Function
Remove Label Label field | Del | ❖ → Remove Label
Remove Function Function name field | Del | ❖ → Function → Delete Function
Define Data | T | ❖ → Data → Choose Data Type
❖ → Data → type
Repeat Define Data | Y | ❖ → Data → Last Used: type
Rename Variable Variable in decompiler | L | ❖ → Rename Variable
Retype Variable Variable in decompiler | Ctrl+L | ❖ → Retype Variable

Cycle Integer Types | B | ❖ → Data → Cycle → byte, word, dword, qword
Cycle String Types | ' | ❖ → Data → Cycle → char, string, unicode
Cycle Float Types | F | ❖ → Data → Cycle → float, double
Create Array2 | [ | ❖ → Data → Create Array
Create Pointer2 | P | ❖ → Data → pointer
Create Structure Selection of data | Shift+[ | ❖ → Data → Create Structure
New Structure Data type container | ❖ → New → Structure
Import C Header | File → Parse C Source
Cross References | ❖ → References → Show References to context
2 When possible, arrays and pointers are created of the data type currently applied.

Miscellaneous
Select | Select → what
Program Differences | 2 | Tools → Program Differences
Rerun Script | Ctrl+Shift+R |
Assemble | Ctrl+Shift+G | ❖ → Patch Instruction

Navigation
Go To | G | Navigation → Go To
Back | Alt+← |
Forward | Alt+→ |
Toggle Direction | Ctrl+Alt+T | Navigation → Toggle Code Unit Search Direction
Next Instruction | Ctrl+Alt+I | Navigation → Next Instruction
Next Data | Ctrl+Alt+D | Navigation → Next Data
Next Undefined | Ctrl+Alt+U | Navigation → Next Undefined
Next Label | Ctrl+Alt+L | Navigation → Next Label
Next Function | Ctrl+Alt+F | Navigation → Next Function
Ctrl+↓ | Navigation → Go To Next Function
Previous Function | Ctrl+↑ | Navigation → Go To Previous Function
Next Non-function Instruction | Ctrl+Alt+N | Navigation → Next Instruction Not In a Function
Next Different Byte Value | Ctrl+Alt+V | Navigation → Next Different Byte Value
Next Bookmark | Ctrl+Alt+B | Navigation → Next Bookmark

Windows
Bookmarks | Ctrl+B | Window → Bookmarks
Byte Viewer | Window → Bytes: program name
Function Call Trees
Data Types | Window → Data Type Manager
Decompiler | Ctrl+E | Window → Decompile: function name
Function Graph | Window → Function Graph
Script Manager | Window → Script Manager
Memory Map | Window → Memory Map
Register Values | V | Window → Register Manager
Symbol Table | Window → Symbol Table
Symbol References | Window → Symbol References
Symbol Tree | Window → Symbol Tree

Search
Search Memory | S | Search → Memory
Search Program Text | Ctrl+Shift+E | Search → Program Text
Search For ... Matching Instructions Address Tables Direct References Instruction Patterns Scalars Strings | Search → For what

# Ghidra Cheat Sheet

Ghidra is licensed under the Apache License, Version 2.0 (the "License"); Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.