Last active
July 4, 2024 16:50
-
-
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 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+F704" => "noop:" | |
"~U+F705" => "noop:" | |
"~U+F706" => "noop:" | |
"~U+F707" => "noop:" | |
"~U+F708" => "noop:" | |
"~U+F709" => "noop:" | |
"~U+F70A" => "noop:" | |
"~U+F70B" => "noop:" | |
"~U+F70C" => "noop:" | |
"~U+F70D" => "noop:" | |
"~U+F70E" => "noop:" | |
"~U+F70F" => "noop:" | |
"~U+F710" => "noop:" | |
"~U+F711" => "noop:" | |
"~U+F712" => "noop:" | |
"~U+F713" => "noop:" | |
"~U+F714" => "noop:" | |
"~U+F715" => "noop:" | |
"~U+F716" => "noop:" | |
"~U+F717" => "noop:" | |
"~U+F718" => "noop:" | |
"~U+F719" => "noop:" | |
"~U+F71A" => "noop:" | |
"~U+F71B" => "noop:" | |
"~U+F71C" => "noop:" | |
"~U+F71D" => "noop:" | |
"~U+F71E" => "noop:" | |
"~U+F71F" => "noop:" | |
"~U+F720" => "noop:" | |
"~U+F721" => "noop:" | |
"~U+F722" => "noop:" | |
"~U+F723" => "noop:" | |
"~U+F724" => "noop:" | |
"~U+F725" => "noop:" | |
"~U+F726" => "noop:" | |
"~U+F727" => "noop:" | |
"~U+F728" => "deleteWordForward:" | |
"~U+F729" => "noop:" | |
"~U+F72A" => "noop:" | |
"~U+F72B" => "noop:" | |
"~U+F72C" => "pageUp:" | |
"~U+F72D" => "pageDown:" | |
"~U+F72E" => "noop:" | |
"~U+F72F" => "noop:" | |
"~U+F730" => "noop:" | |
"~U+F731" => "noop:" | |
"~U+F732" => "noop:" | |
"~U+F733" => "noop:" | |
"~U+F734" => "noop:" | |
"~U+F735" => "noop:" | |
"~U+F736" => "noop:" | |
"~U+F737" => "noop:" | |
"~U+F738" => "noop:" | |
"~U+F739" => "noop:" | |
"~U+F73A" => "noop:" | |
"~U+F73B" => "noop:" | |
"~U+F73C" => "noop:" | |
"~U+F73D" => "noop:" | |
"~U+F73E" => "noop:" | |
"~U+F73F" => "noop:" | |
"~U+F740" => "noop:" | |
"~U+F741" => "noop:" | |
"~U+F742" => "noop:" | |
"~U+F743" => "noop:" | |
"~U+F744" => "noop:" | |
"~U+F745" => "noop:" | |
"~U+F746" => "noop:" | |
"~U+F747" => "noop:" | |
"$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+F704" => "noop:" | |
"U+F705" => "noop:" | |
"U+F706" => "noop:" | |
"U+F707" => "noop:" | |
"U+F708" => "complete:" | |
"U+F709" => "noop:" | |
"U+F70A" => "noop:" | |
"U+F70B" => "noop:" | |
"U+F70C" => "noop:" | |
"U+F70D" => "noop:" | |
"U+F70E" => "noop:" | |
"U+F70F" => "noop:" | |
"U+F710" => "noop:" | |
"U+F711" => "noop:" | |
"U+F712" => "noop:" | |
"U+F713" => "noop:" | |
"U+F714" => "noop:" | |
"U+F715" => "noop:" | |
"U+F716" => "noop:" | |
"U+F717" => "noop:" | |
"U+F718" => "noop:" | |
"U+F719" => "noop:" | |
"U+F71A" => "noop:" | |
"U+F71B" => "noop:" | |
"U+F71C" => "noop:" | |
"U+F71D" => "noop:" | |
"U+F71E" => "noop:" | |
"U+F71F" => "noop:" | |
"U+F720" => "noop:" | |
"U+F721" => "noop:" | |
"U+F722" => "noop:" | |
"U+F723" => "noop:" | |
"U+F724" => "noop:" | |
"U+F725" => "noop:" | |
"U+F726" => "noop:" | |
"U+F727" => "noop:" | |
"U+F728" => "deleteForward:" | |
"U+F729" => "scrollToBeginningOfDocument:" | |
"U+F72A" => "noop:" | |
"U+F72B" => "scrollToEndOfDocument:" | |
"U+F72C" => "scrollPageUp:" | |
"U+F72D" => "scrollPageDown:" | |
"U+F72E" => "noop:" | |
"U+F72F" => "noop:" | |
"U+F730" => "noop:" | |
"U+F731" => "noop:" | |
"U+F732" => "noop:" | |
"U+F733" => "noop:" | |
"U+F734" => "noop:" | |
"U+F735" => "noop:" | |
"U+F736" => "noop:" | |
"U+F737" => "noop:" | |
"U+F738" => "noop:" | |
"U+F739" => "delete:" | |
"U+F73A" => "noop:" | |
"U+F73B" => "noop:" | |
"U+F73C" => "noop:" | |
"U+F73D" => "noop:" | |
"U+F73E" => "noop:" | |
"U+F73F" => "noop:" | |
"U+F740" => "noop:" | |
"U+F741" => "noop:" | |
"U+F742" => "noop:" | |
"U+F743" => "noop:" | |
"U+F744" => "noop:" | |
"U+F745" => "noop:" | |
"U+F746" => "noop:" | |
"U+F747" => "noop:" | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Notes cont'd again again:
See also
defaults write com.apple.Notes alexandria -bool YES
. It will enable the.notesarchive
export feature. This feature is already visible on iPad version of Notes (at least on Apple Store demo machines)