Delphi Programming
No edit summary
No edit summary
Line 247: Line 247:
 
|Ctrl+J
 
|Ctrl+J
 
|Invoke code templates also called code snippets
 
|Invoke code templates also called code snippets
 
|Delphi 5+
 
|-
  +
|Ctrl+K B
  +
|Sets start of selection (Ctrl+K K sets the end)
 
|Delphi 5+
 
|Delphi 5+
 
|-
 
|-
Line 267: Line 271:
 
|Ctrl+K I
 
|Ctrl+K I
 
|Indent the current selected block or current line in case of no selection (Ctrl+K U unindents)
 
|Indent the current selected block or current line in case of no selection (Ctrl+K U unindents)
 
|Delphi 5+
 
|-
  +
|Ctrl+K K
  +
|Sets end of selection (Ctrl+K B sets the start)
 
|Delphi 5+
 
|Delphi 5+
 
|-
 
|-
Line 420: Line 428:
 
|Undo
 
|Undo
 
|
 
|
 
|-
 
|Shift+Tab
 
|Moves the cursor to the left one tab position
 
|
 
|-
 
|Shift+Enter
 
|Inserts a new line with a carriage return
 
|
 
|-
 
|Shift+Del
 
|Cut to clipboard
 
|
 
|-
 
|Shift+Ins
  +
|Paste from clipboard
 
|
 
|-
 
|Shift+Home
 
|Selects from the cursor position to the start of the current line
 
|
 
|-
 
|Shift+End
 
|Selects from the cursor position to the end of the current line
 
|
 
|-
 
|Shift+PgUp
 
|Moves the cursor up one screen and selects from the left of the starting cursor position
 
|
 
|-
 
|Shift+PgDn
 
|Moves the cursor down one line and selects from the right of the starting cursor position
 
|
 
|-
 
|Shift+LeftArrow
 
|Selects the character to the left of the cursor
 
|
 
|-
 
|Shift+RightArrow
 
|Selects the character to the right of the cursor
 
|
 
|-
 
|Shift+UpArrow
 
|Moves the cursor up one line and selects from the left of the starting cursor position
 
|
 
|-
 
|Shift+DownArrow
 
|Moves the cursor down one line and selects from the right of the starting cursor position.
 
|
  +
|-
 
|Shift+F7
 
|Trace into next source line
 
|Delphi 5+
  +
|-
 
|Shift+F8
 
|Run until return
 
|Delphi 5+
  +
|-
 
|Shift+F9
 
|Build Project
  +
|Delphi 2005+
  +
|-
  +
|Shift+F11
 
|Invoke Add to project window
  +
|Delphi 5+
 
|-
 
|-
 
|Ctrl+Shift+G
 
|Ctrl+Shift+G
Line 442: Line 514:
 
|Ctrl+Shift+Y
 
|Ctrl+Shift+Y
 
|Delete to the end of line
 
|Delete to the end of line
|Delphi 5+
 
|-
 
|Shift+F7
 
|Trace into next source line
 
|Delphi 5+
 
|-
 
|Shift+F8
 
|Run until return
 
 
|Delphi 5+
 
|Delphi 5+
 
|-
 
|-
Line 583: Line 647:
 
|Invoke Project Options window
 
|Invoke Project Options window
 
|Delphi 2005+
 
|Delphi 2005+
|-
 
|Shift+F9
 
|Build Project
 
|Delphi 2005+
 
|-
 
|Shift+F11
 
|Invoke Add to project window
 
|Delphi 5+
 
 
|-
 
|-
 
|Shift+Ctrl+F9
 
|Shift+Ctrl+F9
Line 710: Line 766:
 
|Ctrl+Shift+Z
 
|Ctrl+Shift+Z
 
| Edit |Redo
 
| Edit |Redo
|
 
|-
 
|Shift+DownArrow
 
|Moves the cursor down one line and selects from the right of the starting cursor position.
 
|
 
|-
 
|Shift+End
 
|Selects from the cursor position to the end of the current line
 
|
 
|-
 
|Shift+Enter
 
|Inserts a new line with a carriage return
 
|
 
|-
 
|Shift+Home
 
|Selects from the cursor position to the start of the current line
 
|
 
|-
 
|Shift+Ins
 
|Paste from clipboard
 
|
 
|-
 
|Shift+LeftArrow
 
|Selects the character to the left of the cursor
 
|
 
|-
 
|Shift+PgDn
 
|Moves the cursor down one line and selects from the right of the starting cursor position
 
|
 
|-
 
|Shift+PgUp
 
|Moves the cursor up one screen and selects from the left of the starting cursor position
 
|
 
|-
 
|Shift+RightArrow
 
|Selects the character to the right of the cursor
 
|
 
|-
 
|Shift+Tab
 
|Moves the cursor to the left one tab position
 
|
 
|-
 
|Shift+UpArrow
 
|Moves the cursor up one line and selects from the left of the starting cursor position
 
 
|
 
|
 
|-
 
|-
Line 793: Line 805:
 
You can add your own shortcuts with a free tool called [[AutoHotKey]], see there for some ideas.
 
You can add your own shortcuts with a free tool called [[AutoHotKey]], see there for some ideas.
   
Some of ancient shortcuts, such as Ctrl+K+K (marks start of a [persistent] block), which are still working, can be found [http://www.advdelphisys.com/help/ads_keys.html here]
+
Some ancient shortcuts some of which are still working, can be found [http://www.advdelphisys.com/help/ads_keys.html here]
   
 
For recent versions, Embarcadero has documented the [http://docwiki.embarcadero.com/RADStudio/Seattle/en/Default_Keyboard_Shortcuts default keyboard shortcuts] in their DocWiki.
 
For recent versions, Embarcadero has documented the [http://docwiki.embarcadero.com/RADStudio/Seattle/en/Default_Keyboard_Shortcuts default keyboard shortcuts] in their DocWiki.

Revision as of 16:40, 14 December 2020

Shortcut Description IDE Version
Shift+Click After selecting control in form designer, click on it with Shift again to select top most parent Form Delphi 5+
Escape Selects parent control in design mode. Left mouse click + Escape drags the parent control Delphi 2+
Ins Insert Mode on / off
Tab In Object Inspector activates incremental search for properties. Press again Tab to move focus to property value Delphi 5+
F1 Display Help
F3 Find again
F4 Run program to current cursor position Delphi 2+
F5 Toggle breakpoint Delphi 2+
F6 or Ctrl+. (Period) IDE Insight at least since Delphi 10.2
F7 Debugger step into Delphi 2+
F8 Debugger step over Delphi 2+
F9 Run program under debugger Delphi 2+
F11 Invoke Object Inspector window Delphi 5+
F12 Toggle between code view and design view Delphi 5+
Alt+Backspace Undo
Alt+RightArrow Browse forward (hotlink history) Delphi 6+
Alt+LeftArrow Browse backward (hotlink history) Delphi 6+
Alt+UpArrow Browse to symbol under editor cursor (invoke a hotlink and add it to the hotlink history) Delphi 7+
Alt+F7/F8 Previous/next result (for Find in Files and Build Error Messages) Delphi 7+
Alt+F10 Display Popup menu
Alt+F11 Invoke Use unit dialog Delphi 5+
Alt+F12 Toggle between Form as text mode or design mode Delphi 5+
Alt+[ Match pair forward Delphi 5+
Alt+] Match pair backward Delphi 5+
Alt+0 Invoke Window list Delphi 2005+
Alt+G Goto line number in editor Delphi 2+
Alt+X Cut word under cursor / current selected block
Ctrl+Backspace Delete the word to the beginning
Ctrl+Spacebar Invoke code completion Delphi 5+
Ctrl+Tab Switch to the next open file in the editor Delphi 2006+
Ctrl+Enter Open file at cursor Delphi 2+
Ctrl+INS Copy selected Block
Ctrl+LeftArrow Moves one word left
Ctrl+RightArrow Moves one word right
Ctrl+UpArrow Scrolls up one line
Ctrl+DownArrow Scrolls down one line
Ctrl+PgDn Moves to the bottom of a screen
Ctrl+PgUp Moves to the top of a screen
Ctrl+Home Moves to the top of a file
Ctrl+End Moves to the end of a file
Ctrl+F1 Topic Search
Ctrl+F2 Program Reset Delphi 5+
Ctrl+F5 Add Watch Delphi 5+
Ctrl+F6 Switches between source (.cpp) and header (.h)

BDS 2006+ C++ Builder personality

Ctrl+F7 Evaluate/modify Delphi 2005+
Ctrl+F9 Compile Project Delphi 5+
Ctrl+F10 Open Main Menu
Ctrl+F11 Invoke Open Project Dialog Delphi 2005+
Ctrl+F12 View units Delphi 2+
Ctrl+/ Toggle comment per line or selected block and cursors goes down one line, Ctrl+# on nordic (and perhaps other international ) keyboards Delphi 2005+
Ctrl+. (Period) IDE Insight at least since Delphi 10.2
Ctrl+1..9 Go to a bookmark row in the source BDS 2006+
Ctrl+A Select all
Ctrl+B Invoke buffer window when focus is on editor. The buffer window shows a list of all different tabs. Delphi 2007+
Ctrl+C Copy word under Cursor / selected block
Ctrl+D Delete a currently selected block
Ctrl+E Incremental search Delphi 5+
Ctrl+F Find Delphi 3+
Ctrl+H Replace Dialog
Ctrl+I Inserts a tab character
Ctrl+J Invoke code templates also called code snippets Delphi 5+
Ctrl+K B Sets start of selection (Ctrl+K K sets the end) Delphi 5+
Ctrl+K C Copies selected text at the end of the selection Delphi 5+
Ctrl+K E Changes a word to lowercase and deselects selection Delphi 5+
Ctrl+K F Changes a word to uppercase and deselects selection Delphi 5+
Ctrl+K H Toggle selection
Ctrl+K I Indent the current selected block or current line in case of no selection (Ctrl+K U unindents) Delphi 5+
Ctrl+K K Sets end of selection (Ctrl+K B sets the start) Delphi 5+
Ctrl+K N Changes a word to uppercase Delphi 5+
Ctrl+K O Changes a word to lowercase Delphi 5+
Ctrl+K P Invokes print selection dialog Delphi 5+
Ctrl+K R Invokes Read block from file (inserts text at cursor) Delphi 5+
Ctrl+K T Select word at cursor position Delphi 5+
Ctrl+K U Unindent the current selected block or current line in case of no selection (Ctrl+K I indents) Delphi 5+
Ctrl+K W Invokes Write block to file (selected text) Delphi 5+
Ctrl+L Find again
Ctrl+M Insert new line (same as Enter)
Ctrl+N Insert new line after cursor (cursor stays in current line)
Ctrl+O+A Open file at cursor
Ctrl+O+B Browse symbol at cursor
Ctrl+O+C Turns on block selection mode Delphi 5+
Ctrl+O+G Goto line number in editor Delphi 5+
Ctrl+O+K Turns off block selection mode Delphi 5+
Ctrl+O+L Selects current line (and turns off block selection mode) Delphi 5+
Ctrl+O+O Inserts compiler options and directives
Ctrl+O U Toggles case Delphi 5+
Ctrl+Q+A Search Replace Dialog
Ctrl+Q+B Moves cursor to the beginning of a block
Ctrl+Q+C Moves cursor to end of a file
Ctrl+Q+D Moves cursor to the end of a line
Ctrl+Q+E Moves cursor to the top of the window
Ctrl+Q+F Search Find Dialog
Ctrl+Q+K Moves cursor to the end of a block
Ctrl+Q+P Moves cursor to previous position
Ctrl+Q+R Moves cursor to the beginning of a file
Ctrl+Q+S Moves cursor to the beginning of a line
Ctrl+Q+T Moves cursor to the top of the window
Ctrl+Q+U Moves cursor to the bottom of the window
Ctrl+Q+X Moves cursor to the bottom of the window
Ctrl+Q+Y Deletes to the end of Line
Ctrl+R Replace Dialog
Ctrl+S Save
Ctrl+V Paste
Ctrl+T Delete text from cursor position until end of word Delphi 5+
Ctrl+Y Delete current line Delphi 5+
Ctrl+Z Undo
Shift+Tab Moves the cursor to the left one tab position
Shift+Enter Inserts a new line with a carriage return
Shift+Del Cut to clipboard
Shift+Ins Paste from clipboard
Shift+Home Selects from the cursor position to the start of the current line
Shift+End Selects from the cursor position to the end of the current line
Shift+PgUp Moves the cursor up one screen and selects from the left of the starting cursor position
Shift+PgDn Moves the cursor down one line and selects from the right of the starting cursor position
Shift+LeftArrow Selects the character to the left of the cursor
Shift+RightArrow Selects the character to the right of the cursor
Shift+UpArrow Moves the cursor up one line and selects from the left of the starting cursor position
Shift+DownArrow Moves the cursor down one line and selects from the right of the starting cursor position.
Shift+F7 Trace into next source line Delphi 5+
Shift+F8 Run until return Delphi 5+
Shift+F9 Build Project Delphi 2005+
Shift+F11 Invoke Add to project window Delphi 5+
Ctrl+Shift+G Insert a new GUID at the cursor position Delphi 5+
Ctrl+Shift+I Indent the current selected block Delphi 5+
Ctrl+Shift+U Unindent the current selected block Delphi 5+ Ctrl+Shift+J Invoke SyncEdit BDS 2006+
Ctrl+Shift+V Automatically declare variable at cursor position BDS 2006+
Ctrl+Shift+Y Delete to the end of line Delphi 5+
Ctrl+Shift+R Start/stop recording editor macro Delphi 2+
Ctrl+Shift+P Play editor macro Delphi 2+
Ctrl+Shift+Spacebar Invoke code parameter hints Delphi 5+
Ctrl+Shift+Enter Find all references Delphi 2005+
Ctrl+Shift+C Invoke class completion for the class that currently contains the cursor Delphi 5+
Ctrl+Shift+UpArrow Navigate to method implementation/declaration Delphi 5+
Ctrl+Shift+DownArrow Navigate to method implementation/declaration Delphi 5+
Ctrl+Shift+1..9 Set a bookmark at current row in the source BDS 2006+
Ctrl+Alt+F12 Opens the drop-down on the top-right corner of the code editor, listing all open files BDS 2006+
Ctrl+Alt+MouseWheel Navigate to previous or next method implementation in lexical order in this source unit, or within the class to which scope has been limited using Ctrl+Q+L BDS 2006+
Ctrl+Alt+UpArrow Navigate to previous method implementation in lexical order in this source unit, or within the class to which scope has been limited using Ctrl+Q+L BDS 2006+
Ctrl+Alt+DownArrow Navigate to next method implementation in lexical order in this source unit, or within the class to which scope has been limited using Ctrl+Q+L BDS 2006+
Ctrl+Alt+Home Navigate to the lexically first method implementation in this source unit, or within the class to which scope has been limited using Ctrl+Q+L BDS 2006+
Ctrl+Alt+End Navigate to the lexically last method implementation in this source unit, or within the class to which scope has been limited using Ctrl+Q+L BDS 2006+
Ctrl+Alt+P Activate the Tool Palette in filtering mode (start typing, press Enter to drop component) Delphi 2005+
Ctrl+Alt+A Adds current date to source code BCB 4.0+ (Delphi 5+)
Ctrl+Shift+T Add todo list item Delphi 2005+
Ctrl+Alt+F11 Invoke Project manager window Delphi 2005+
Shift+Alt+F11 Invoke Structure window Delphi 2005+
Ctrl+Shift+B Invoke Browser window Delphi 5-7
Ctrl+Shift+B Invoke Buffer list Delphi 2005+
Ctrl+Alt+B Invoke Breakpoint window Delphi 5+
Ctrl+Alt+S Invoke Call Stack window Delphi 5+
Ctrl+Alt+W Invoke Watches window Delphi 5+
Ctrl+Alt+L Invoke Local Variables window Delphi 5+
Ctrl+Alt+T Invoke Threads window Delphi 7+
Ctrl+Alt+F Invoke FPU window Delphi 2005 (removed in Delphi 2006+)
Ctrl+Alt+C Invoke CPU window Delphi 5+
Ctrl+Alt+V Invoke Event window Delphi 5+
Ctrl+Alt+M Invoke Modules window Delphi 2005+
Shift+F12 Invoke Forms window Delphi 5+
Ctrl+Shift+A Invoke Add to uses clause(Find unit in Delphi 2006) window (Refactoring) Delphi 2005+
Ctrl+Shift+F11 Invoke Project Options window Delphi 2005+
Shift+Ctrl+F9 Run without debugging Delphi 2005+
Shift+Ctrl+F Find in Files Delphi 3+
Ctrl+Shift+K+O Toggles Code folding between On and Off Delphi 2006+
Ctrl+Shift+K+A Code folding: Expands All blocks of code Delphi 2006+
Ctrl+Shift+K+E Code folding: Collapse current block of code Delphi 2006+
Ctrl+Shift+K+U Code folding: Expand current block of code Delphi 2006+
Ctrl+Shift+K+T Code folding: Toggle Current block (expand & collapse) Delphi 2006+
Ctrl+Shift+K+R Code folding: Collapses all regions {$region 'comment'}..{$endregion} Delphi 2006+
Ctrl+Shift+K+P Code folding: Collapse nested procedures Delphi 2006+
Ctrl+Shift+K+M Code folding: Collapse all methods Delphi 2006+
Ctrl+Shift+K+C Code folding: Collapse all classes Delphi 2006+
Ctrl+Shift+K+G Code folding: Collapses down to primary Groups [Interface/Implementation] Delphi 2006+
Ctrl+Shift+K+N Code folding: Collapses Namespace/Unit Delphi 2006+
Ctrl+Shift+Tab Switch to the previous open file in the editor Delphi 2006+
Alt+Shift+DownArrow Moves the cursor down one line and selects the column from the left of the starting cursor position
Alt+Shift+End Selects the column from the cursor position to the end of the current line
Alt+Shift+Home Selects the column from the cursor position to the start of the current line
Alt+Shift+LeftArrow Selects the column to the left of the cursor
Alt+Shift+PgDn Moves the cursor down one line and selects the column from the right of the starting cursor position
Alt+Shift+PgUp Moves the cursor up one screen and selects the column from the left of the starting cursor position
Alt+Shift+RightArrow Selects the column to the right of the cursor
Alt+Shift+UpArrow Moves the cursor up one line and selects the column from the left of the starting cursor position
Ctrl+Shift+S Save All
Ctrl+Shift+End Selects from the cursor position to the end of the current file
Ctrl+Shift+Home Selects from the cursor position to the start of the current file
Ctrl+Shift+LeftArrow Selects the word to the left of the cursor
Ctrl+Shift+PgDn Selects from the cursor position to the bottom of the screen
Ctrl+Shift+PgUp Selects from the cursor position to the top of the screen
Ctrl+Shift+RightArrow Selects the word to the right of the cursor
Ctrl+Shift+Z Redo
Ctrl+Alt+Shift+End Selects the column from the cursor position to the end of the current file
Ctrl+Alt+Shift+Home Selects the column from the cursor position to the start of the current file
Ctrl+Alt+Shift+LeftArrow Selects the column to the left of the cursor
Ctrl+Alt+Shift+PgDn Selects the column from the cursor position to the top of the screen
Ctrl+Alt+Shift+PgUp Selects the column from the cursor position to the bottom of the screen
Ctrl+Alt+Shift+RightArrow Selects the column to the right of the cursor
AltGr+F12 Select editor window tab
Ctrl+Alt+Shift+P Sync method prototypes

Please note the IDE shortcuts might work on earlier versions of Delphi. Correct the list if you find shortcuts working in earlier versions.

You can add your own shortcuts with a free tool called AutoHotKey, see there for some ideas.

Some ancient shortcuts some of which are still working, can be found here

For recent versions, Embarcadero has documented the default keyboard shortcuts in their DocWiki.