Keybindings

Geany supports the default keyboard shortcuts for the Scintilla editing widget. For a list of these commands, see Appendix B, 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.3. Keybindings action table

ActionDescription
Menu items
NewCreates a new file.
OpenOpens a file.
SaveSaves the current file.
Save AsSaves the current file under a new name.
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.
Insert dateInserts a customisable date.
PreferencesOpens preferences dialog.
Find NextFinds next result.
Find PreviousFinds previous result.
ReplaceOpens the Replace dialog.
Find in filesOpens the Find in files dialog.
Next messageJumps to the line with the next message from the last call to Find usage.
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.
Toggle all additional widgetsHide and show all additional widgets like the notebook tabs, the toolbar, the messages window and the statusbar.
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.
Next errorJumps to the line with the next error from the last build process.
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 Search BarSwitches to the search bar in the toolbar (if visible).
Switch to left documentSwitches to the previous open document.
Switch to right documentSwitches to the next open document.
Switch to last used documentSwitches to the previously selected open document.
Editing operations
Convert selection to lower caseConverts the current selection to lower case.
Convert selection to upper caseConverts the current selection to upper case.
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.
Toggle markerSet a marker on the current line, or clear the marker if there already is one.
Goto next markerGoto the next marker in the current document.
Goto previous markerGoto the previous marker in the current document.
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.
Complete constructIf you type a construct like if or for and press this key, it will be completed with a matching template.
Suppress construct completionIf you type a construct like if or for and press this key, it will not be completed, and a space or tab will be inserted, depending on what the construct completion keybinding is set to. For example, if you have set the construct completion keybinding to space, then setting this to Shift+space will prevent construct completion and insert a space.
Select current wordSelects the current word under the cursor.
Insert alternative whitespaceInserts a tabulator character when spaces should be used for indentation and inserts space characters of the amount of a tabulator width when tabulators should be used for indentation.
Find UsageFinds all occurrences of the current word (near the keyboard cursor) or selection 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. See the section called “Go to tag definition”.
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. See the section called “Go to tag definition”.
Context ActionExecutes a command and passes the current word (near the cursor postion) or selection as an argument. See the section called “Context actions”.