Skip to content

Instantly share code, notes, and snippets.

@francisbarton
Created August 28, 2025 17:35
Show Gist options
  • Select an option

  • Save francisbarton/648893ce92becf954acfc014485f4b50 to your computer and use it in GitHub Desktop.

Select an option

Save francisbarton/648893ce92becf954acfc014485f4b50 to your computer and use it in GitHub Desktop.
My Positron keybindings file
[
// Ctrl + Up/Down to move lines
{
"key": "ctrl+up",
"command": "editor.action.moveLinesUpAction",
"when": "editorTextFocus && !editorReadonly"
},
{
"key": "alt+up",
"command": "-editor.action.moveLinesUpAction",
"when": "editorTextFocus && !editorReadonly"
},
{
"key": "ctrl+down",
"command": "editor.action.moveLinesDownAction",
"when": "editorTextFocus && !editorReadonly"
},
{
"key": "alt+down",
"command": "-editor.action.moveLinesDownAction",
"when": "editorTextFocus && !editorReadonly"
},
// Shift + Alt + Up/Down to copy lines
{
"key": "shift+alt+down",
"command": "editor.action.copyLinesDownAction",
"when": "editorTextFocus && !editorReadonly"
},
{
"key": "ctrl+shift+alt+down",
"command": "-editor.action.copyLinesDownAction",
"when": "editorTextFocus && !editorReadonly"
},
{
"key": "shift+alt+up",
"command": "editor.action.copyLinesUpAction",
"when": "editorTextFocus && !editorReadonly"
},
{
"key": "ctrl+shift+alt+up",
"command": "-editor.action.copyLinesUpAction",
"when": "editorTextFocus && !editorReadonly"
},
{
"key": "ctrl+d",
"command": "editor.action.deleteLines",
"when": "textInputFocus && !editorReadonly"
},
{
"key": "ctrl+shift+k",
"command": "-editor.action.deleteLines",
"when": "textInputFocus && !editorReadonly"
},
{
"key": "alt+left", // my personal kink
"command": "r.insertLeftAssignment",
"when": "editorTextFocus && editorLangId == 'r' || editorTextFocus && quarto.document.languageId == 'r'"
},
{
"key": "alt+oem_minus",
"command": "-r.insertLeftAssignment",
"when": "editorTextFocus && editorLangId == 'r' || editorTextFocus && quarto.document.languageId == 'r'"
},
{
"key": "alt+left",
"command": "r.insertLeftAssignmentConsole",
"when": "positronConsoleFocused && editorLangId == 'r'"
},
{
"key": "alt+oem_minus",
"command": "-r.insertLeftAssignmentConsole",
"when": "positronConsoleFocused && editorLangId == 'r'"
},
// Ctrl + Alt + / to find next and add to selection
{
"key": "alt+oem_2",
"command": "editor.action.addSelectionToNextFindMatch",
"when": "editorFocus"
},
{
"key": "ctrl+d",
"command": "-editor.action.addSelectionToNextFindMatch",
"when": "editorFocus"
},
// Ctrl + Shift + R to insert section in R script, like RStudio
{
"key": "ctrl+shift+r",
"command": "r.insertSection",
"when": "editorLangId == 'r'"
},
{
"key": "ctrl+k h",
"command": "-r.insertSection",
"when": "editorLangId == 'r'"
},
{
"key": "ctrl+shift+r",
"command": "-editor.action.refactor",
"when": "editorHasCodeActionsProvider && textInputFocus && !editorReadonly"
},
// Ctrl + # toggles between console and editor focus
{
"key": "ctrl+oem_7",
"command": "workbench.action.focusActiveEditorGroup",
"when": "positronConsoleFocused"
},
{
"key": "ctrl+oem_7",
"command": "workbench.action.positronConsole.focusConsole",
"when": "editorFocus"
},
// Ctrl + Shift + # toggles between terminal and editor focus
{
"key": "ctrl+shift+oem_7",
"command": "workbench.action.terminal.focus",
"when": "positronConsoleFocused"
},
{
"key": "ctrl+shift+oem_7",
"command": "workbench.action.positronConsole.focusConsole",
"when": "terminalFocus"
},
{
"key": "ctrl+o",
"command": "-workbench.action.files.openFileFolder",
"when": "isMacNative && openFolderWorkspaceSupport"
},
{
"key": "ctrl+shift+o",
"command": "workbench.action.openWorkspace"
},
{
"key": "ctrl+shift+o",
"command": "-editor.action.accessibleViewGoToSymbol",
"when": "accessibilityHelpIsShown && accessibleViewGoToSymbolSupported || accessibleViewGoToSymbolSupported && accessibleViewIsShown"
},
{
"key": "ctrl+shift+o",
"command": "-workbench.action.terminal.openDetectedLink",
"when": "terminalFocus && terminalHasBeenCreated"
},
{
"key": "ctrl+shift+o",
"command": "-workbench.action.gotoSymbol",
"when": "!accessibilityHelpIsShown && !accessibleViewIsShown"
},
{
"key": "ctrl+k ctrl+o",
"command": "-workbench.action.files.openFolder",
"when": "openFolderWorkspaceSupport"
},
{
"key": "ctrl+k ctrl+e",
"command": "r.packageCheck",
"when": "isRPackage"
},
{
"key": "ctrl+shift+e",
"command": "-r.packageCheck",
"when": "isRPackage"
},
{
"key": "ctrl+k ctrl+d",
"command": "r.packageDocument",
"when": "isRPackage"
},
{
"key": "ctrl+shift+d",
"command": "-r.packageDocument",
"when": "isRPackage"
},
{
"key": "ctrl+k ctrl+t",
"command": "r.packageTest",
"when": "isRPackage"
},
{
"key": "ctrl+shift+t",
"command": "-r.packageTest",
"when": "isRPackage"
},
{
"key": "ctrl+k ctrl+b",
"command": "r.packageInstall",
"when": "isRPackage"
},
{
"key": "ctrl+shift+b",
"command": "-r.packageInstall",
"when": "isRPackage"
},
{
"key": "ctrl+shift+l",
"command": "r.packageLoad",
"when": "isRPackage"
},
{
"key": "ctrl+shift+enter",
"command": "-r.sourceCurrentFile",
"when": "!isRPackage && editorLangId == 'r'"
},
{
"key": "alt+k f",
"command": "-workbench.action.positronConsole.focusConsole"
},
{
"key": "ctrl+k f",
"command": "-workbench.action.positronConsole.focusConsole"
},
{
"key": "ctrl+shift+m",
"command": "-r.insertPipeConsole",
"when": "positronConsoleFocused && editorLangId == 'r'"
},
{
"key": "ctrl+k ctrl+h",
"command": "-positron.help.showHelpAtCursor",
"when": "editorFocus || positronConsoleFocused"
},
{
"key": "ctrl+k q",
"command": "quarto-assist.focus",
"when": "editorTextFocus && editorLangId == 'quarto'"
},
{
"key": "ctrl+f1",
"command": "-quarto-assist.focus",
"when": "editorTextFocus && editorLangId == 'quarto'"
},
{
"key": "ctrl+d",
"command": "-notebook.addFindMatchToSelection",
"when": "config.notebook.multiCursor.enabled && notebookCellEditorFocused && activeEditor == 'workbench.editor.notebook'"
},
{
"key": "ctrl+k ctrl+e",
"command": "-keybindings.editor.defineWhenExpression",
"when": "inKeybindings && keybindingFocus"
},
{
"key": "ctrl+k ctrl+t",
"command": "-workbench.action.selectTheme"
},
{
"key": "ctrl+k p",
"command": "-workbench.action.files.copyPathOfActiveFile"
},
{
"key": "ctrl+k p",
"command": "pr:github.focus"
},
{
"key": "ctrl+shift+v",
"command": "workbench.action.replaceInFiles"
},
{
"key": "ctrl+shift+h",
"command": "-workbench.action.replaceInFiles"
},
{
"key": "ctrl+shift+h",
"command": "-workbench.action.positron.openHelp",
"when": "workbench.panel.positronHelp.active"
},
{
"key": "ctrl+shift+v",
"command": "-markdown.showPreview",
"when": "!notebookEditorFocused && editorLangId == 'markdown'"
},
{
"key": "ctrl+shift+v",
"command": "-notebook.cell.pasteAbove",
"when": "notebookEditorFocused && !inputFocus"
},
{
"key": "ctrl+k shift+o",
"command": "-workbench.action.compareEditor.openSide",
"when": "inDiffEditor"
},
{
"key": "ctrl+shift+oem_3",
"command": "-workbench.action.terminal.new",
"when": "terminalProcessSupported || terminalWebExtensionContributedProfile"
},
{
"key": "ctrl+shift+oem_3",
"command": "workbench.action.positronConsole.open",
"when": "workbench.panel.positronConsole.active"
},
{
"key": "ctrl+k ctrl+g",
"command": "git-graph.view"
},
{
"key": "ctrl+shift+0",
"command": "-workbench.action.language.runtime.restartActiveSession"
},
{
"key": "ctrl+shift+f10",
"command": "-workbench.action.language.runtime.restartActiveSession"
},
{
"key": "ctrl+alt+r",
"command": "-positron.runAllCells",
"when": "editorTextFocus && positron.hasCodeCells && !findInputFocussed && !replaceInputFocussed"
},
{
"key": "ctrl+alt+r",
"command": "-quarto.runAllCells",
"when": "editorTextFocus && !findInputFocussed && !replaceInputFocussed && editorLangId == 'quarto'"
},
{
"key": "ctrl+alt+r",
"command": "-quarto.runAllCells",
"when": "activeCustomEditorId == 'quarto.visualEditor'"
},
{
"key": "shift+alt+r",
"command": "-revealFileInOS",
"when": "!editorFocus"
},
{
"key": "shift+alt+r",
"command": "workbench.action.language.runtime.restartActiveSession"
},
{
"key": "ctrl+shift+numpad0",
"command": "-workbench.action.language.runtime.restartActiveSession"
},
{
"key": "ctrl+shift+h",
"command": "issues:github.focus"
},
{
"key": "ctrl+shift+h",
"command": "-workbench.action.positron.toggleVariables",
"when": "workbench.panel.positronVariables.active"
}
]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment