Last active
June 26, 2025 20:08
-
-
Save hym3242/8e8bc10a2fed8e55973c500f1798c234 to your computer and use it in GitHub Desktop.
Dump of /System/Library/Frameworks/AppKit.framework/Resources/StandardKeyBinding.dict on macOS Ventura 13.4, plus some notes
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
$ # plz forgive this dumb method of visualization. | |
$ cp /System/Library/Frameworks/AppKit.framework/Resources/StandardKeyBinding.dict . | |
$ plutil -convert xml1 StandardKeyBinding.dict | |
$ plutil -p StandardKeyBinding.dict | unicode-vis | cat -v | tr '\t' '+' | |
{ | |
"^C" => "insertNewline:" | |
"^H" => "deleteBackward:" | |
"^Y" => "insertBacktab:" //shift+tab | |
"^[" => "cancelOperation:" | |
"^?" => "deleteBackward:" | |
"+" => "insertTab:" | |
" | |
" => "insertNewline:" | |
"^M" => "insertNewline:" | |
"@" => "noop:" | |
"@^?" => "deleteToBeginningOfLine:" | |
"@ " => "cycleToNextInputScript:" | |
"@." => "cancelOperation:" | |
"@^ " => "togglePlatformInputSystem:" | |
"@^U+F701" => "makeBaseWritingDirectionNatural:" | |
"@^U+F702" => "makeBaseWritingDirectionRightToLeft:" | |
"@^U+F703" => "makeBaseWritingDirectionLeftToRight:" | |
"@~ " => "cycleToNextInputKeyboardLayout:" | |
"@~^U+F701" => "makeTextWritingDirectionNatural:" | |
"@~^U+F702" => "makeTextWritingDirectionRightToLeft:" | |
"@~^U+F703" => "makeTextWritingDirectionLeftToRight:" | |
"@$U+F700" => "moveToBeginningOfDocumentAndModifySelection:" | |
"@$U+F701" => "moveToEndOfDocumentAndModifySelection:" | |
"@$U+F702" => "moveToLeftEndOfLineAndModifySelection:" | |
"@$U+F703" => "moveToRightEndOfLineAndModifySelection:" | |
"@U+F700" => "moveToBeginningOfDocument:" | |
"@U+F701" => "moveToEndOfDocument:" | |
"@U+F702" => "moveToLeftEndOfLine:" | |
"@U+F703" => "moveToRightEndOfLine:" | |
"^" => "noop:" | |
"^^C" => "insertLineBreak:" | |
"^^Y" => "selectPreviousKeyView:" //ctrl+shift+tab (remember that tab is ^I(0x09) and shift got its name because it shifts one bit?) (i forgot the source sorry! maybe checkout "things every hacker once knew") | |
"^^?" => "deleteBackwardByDecomposingPreviousCharacter:" | |
"^+" => "selectNextKeyView:" | |
"^ | |
" => "insertLineBreak:" | |
"^^M" => "insertLineBreak:" | |
"^'" => "insertSingleQuoteIgnoringSubstitution:" | |
"^"" => "insertDoubleQuoteIgnoringSubstitution:" | |
"^/" => "insertRightToLeftSlash:" | |
"^$U+F702" => "moveToLeftEndOfLineAndModifySelection:" | |
"^$U+F703" => "moveToRightEndOfLineAndModifySelection:" | |
"^a" => "moveToBeginningOfParagraph:" | |
"^A" => "moveToBeginningOfParagraphAndModifySelection:" | |
"^b" => "moveBackward:" | |
"^B" => "moveBackwardAndModifySelection:" | |
"^d" => "deleteForward:" | |
"^e" => "moveToEndOfParagraph:" | |
"^E" => "moveToEndOfParagraphAndModifySelection:" | |
"^f" => "moveForward:" | |
"^F" => "moveForwardAndModifySelection:" | |
"^h" => "deleteBackward:" | |
"^k" => "deleteToEndOfParagraph:" | |
"^l" => "centerSelectionInVisibleArea:" | |
"^n" => "moveDown:" | |
"^N" => "moveDownAndModifySelection:" | |
"^o" => [ | |
0 => "insertNewlineIgnoringFieldEditor:" | |
1 => "moveBackward:" | |
] | |
"^p" => "moveUp:" | |
"^P" => "moveUpAndModifySelection:" | |
"^t" => "transpose:" | |
"^v" => "pageDown:" | |
"^V" => "pageDownAndModifySelection:" | |
"^y" => "yank:" | |
"^U+F700" => "scrollPageUp:" | |
"^U+F701" => "scrollPageDown:" | |
"^U+F702" => "moveToLeftEndOfLine:" | |
"^U+F703" => "moveToRightEndOfLine:" | |
"~^C" => "insertNewlineIgnoringFieldEditor:" | |
"~^H" => "deleteWordBackward:" | |
"~^[" => "complete:" | |
"~^?" => "deleteWordBackward:" | |
"~+" => "insertTabIgnoringFieldEditor:" | |
"~ | |
" => "insertNewlineIgnoringFieldEditor:" | |
"~^M" => "insertNewlineIgnoringFieldEditor:" | |
"~^^?" => "deleteWordBackward:" | |
"~^b" => "moveWordBackward:" | |
"~^B" => "moveWordBackwardAndModifySelection:" | |
"~^f" => "moveWordForward:" | |
"~^F" => "moveWordForwardAndModifySelection:" | |
"~$U+F700" => "moveParagraphBackwardAndModifySelection:" | |
"~$U+F701" => "moveParagraphForwardAndModifySelection:" | |
"~$U+F702" => "moveWordLeftAndModifySelection:" | |
"~$U+F703" => "moveWordRightAndModifySelection:" | |
"~U+F700" => [ | |
0 => "moveBackward:" | |
1 => "moveToBeginningOfParagraph:" | |
] | |
"~U+F701" => [ | |
0 => "moveForward:" | |
1 => "moveToEndOfParagraph:" | |
] | |
"~U+F702" => "moveWordLeft:" | |
"~U+F703" => "moveWordRight:" | |
"~U+F728" => "deleteWordForward:" | |
"~U+F72C" => "pageUp:" | |
"~U+F72D" => "pageDown:" | |
"$U+F700" => "moveUpAndModifySelection:" | |
"$U+F701" => "moveDownAndModifySelection:" | |
"$U+F702" => "moveLeftAndModifySelection:" | |
"$U+F703" => "moveRightAndModifySelection:" | |
"$U+F729" => "moveToBeginningOfDocumentAndModifySelection:" | |
"$U+F72B" => "moveToEndOfDocumentAndModifySelection:" | |
"$U+F72C" => "pageUpAndModifySelection:" | |
"$U+F72D" => "pageDownAndModifySelection:" | |
"U+F700" => "moveUp:" | |
"U+F701" => "moveDown:" | |
"U+F702" => "moveLeft:" | |
"U+F703" => "moveRight:" | |
"U+F708" => "complete:" | |
"U+F728" => "deleteForward:" | |
"U+F729" => "scrollToBeginningOfDocument:" | |
"U+F72B" => "scrollToEndOfDocument:" | |
"U+F72C" => "scrollPageUp:" | |
"U+F72D" => "scrollPageDown:" | |
"U+F739" => "delete:" | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
A random NS debug defaults found in Console.app:
_NSSpin