Keybindings

Geany supports the default keyboard shortcuts for the Scintilla editing widget. For a list of these commands, see Appendix A, Scintilla keyboard commands. The Scintilla keyboard shortcuts will be overridden by any custom keybindings with the same keyboard shortcut.

For all actions listed below you can define your own keybindings. Open the Preferences dialog, select the desired action and click on change. In the opening dialog you can press any key combination you want and it will be saved when you press OK. You can define only one key combination for one action.

Some of the default key combinations cannot be changed, e.g. menu_new or menu_open. These are set by GTK and should be kept, but you can still add other key combinations for these actions. For example to execute menu_open by default Ctrl-O is set, but you can also define Alt-O, so that the file open dialog is shown by pressing either Ctrl-O or Alt-O.

The following table lists all customizable keyboard shortcuts.

Table 3.4. Keybindings action table

ActionDescription
Menu items
NewCreates a new file.
OpenOpens a file.
SaveSaves the current file.
Save allSaves all open files.
Close allCloses all open files.
CloseCloses the current file.
Reload fileReloads the current file. All unsaved changes will be lost.
PrintPrints the current file.
UndoUndoes the last action.
RedoRedoes the last action.
Select allMakes a selection of all text in the current document.
PreferencesOpens preferences dialog.
Find NextFinds next result.
Find PreviousFinds previous result.
ReplaceOpens the Replace dialog.
Find in filesOpens the Find in files dialog.
Go to lineOpens the Go to line dialog.
Show Colour ChooserOpens the Colour Chooser dialog.
FullscreenSwitches to fullscreen mode.
Toggle Messages WindowToggles the message window (status and compiler messages) on and off.
Toggle SidebarShows or hides the sidebar.
Zoom InZooms in the text
Zoom OutZooms out the text
Replace tabs by spaceReplaces all tabs with the right amount of spaces.
Fold allFolds all contractible code blocks.
Unfold allUnfolds all contracted code blocks.
Build options
CompileCompiles the current file.
BuildBuilds (compiles if necessary and links) the current file.
Make allBuilds the current file with the Make tool.
Make custom targetBuilds the current file with the Make tool and a given target.
Make objectCompiles the current file with the Make tool.
RunExecutes the current file in a terminal emulation.
Run (alternative command)Executes the current file in a terminal emulation.
Build optionsOpens the build options dialog.
Miscellaneous
Reload symbol listReloads the tag/symbol list.
Switch to EditorSwitches to editor widget.
Switch to ScribbleSwitches to scribble widget.
Switch to VTESwitches to VTE widget.
Switch to left documentSwitches to the previous open document.
Switch to right documentSwitches to the next open document.
Editing operations
Duplicate line or selectionDuplicates the current line or selection.
Comment lineComments current line or selection.
Uncomment lineUncomments current line or selection.
Toggle line commentationComments a line if it is not commented or removes a comment if the line is commented.
Increase indentIndents the current line or selection by one tabulator.
Decrease indentRemoves one tabulator from the indentation of the current line or selection.
Goto matching braceIf the cursor is ahead or behind a brace, then it is moved to the brace which belongs to the current one. If this keyboard shortcut is pressed again, the cursor is moved back to the first brace.
Complete wordShows auto completion list.
Show calltipShows call tips for the current function or method.
Show macro listShows a list of available macros and variables in the workspace.
Suppress auto completionIf you type something like if or for and press this key, it will not be auto completed.
Find UsageFinds all occurrences of the current word (near the keyboard cursor) and displays them in the messages window.
Go to tag definitionJump to the definition of the current word (near the keyboard cursor). If the definition cannot be found (e.g. the relevant file is not open) Geany will beep and do nothing. Used for function definitions.
Go to tag declarationJump to the declaration of the current word (near the keyboard cursor). If the declaration cannot be found (e.g. the relevant file is not open) Geany will beep and do nothing. Used for function prototypes.