# based on the table at http://support.apple.com/kb/HT1343
# Note: these bindings assume the swapped Meta and Control modifiers standard of Qt
# Command - C
# Option - A
# Control - M
# Status: "Key combination" What it does
# +: "Command-Space" # Show or hide the Spotlight search field (if multiple languages are installed, may rotate through enabled script systems)
# +: "Option-Command-Space" # Show the Spotlight search results window (if multiple languages are installed, may rotate through keyboard layouts and input methods within a script)
# +: "Command-esc" # Open Front Row (if installed)
# +: "Option-Eject" # Eject from secondary optical media drive (if one is installed)
# +: "Control-Eject" # Show shutdown dialog
# +: "Option-Command-Eject" # Put the computer to sleep
# +: "Control-Command-Eject" # Quit all applications (after giving you a chance to save changes to open documents), then restart the computer
# +: "Control Option-Command-Eject" # Quit all applications (after giving you a chance to save changes to open documents), then shut down the computer
# +: "Command-Tab" # Move forward to the next most recently used application in a list of open applications
# +: "Shift-Command-Tab" # Move backward through a list of open applications (sorted by recent use)
# -: "Control-A" # Move to beginning of line/paragraph
# used by menu.bind - paragraph-params
# +: "Control-B" # Move one character backward
\bind "M-b" "char-backward"
# +: "Control-D" # Delete the character in front of the cursor
\bind "M-d" "char-delete-forward"
# +: "Control-E" # Move to end of line/paragraph
\bind "M-e" "line-end"
# +: "Control-F" # Move one character forward
\bind "M-f" "char-forward"
# +: "Control-H" # Delete the character behind the cursor
\bind "M-h" "char-delete-backward"
# -: "Control-K" # Delete from the character in front of the cursor to the end of the line/paragraph
# used by menu.bind - keymap
# +: "Control-L" # Center the cursor/selection in the visible area
\bind "M-l" "screen-recenter"
\bind "F5" "screen-recenter"
# +: "Control-N" # Move down one line
\bind "M-n" "down"
# +: "Control-O" # Insert a new line after the cursor
\bind "M-o" "break-paragraph"
# -: "Control-P" # Move up one line
# used by menu.bind - layouts
# -: "Control-T" # Transpose the character behind the cursor and the character in front of the cursor
# +: "Control-V" # Move down one page
\bind "M-v" "scroll page up"
# -: "Shift-Tab" # Navigate through controls in a reverse direction
# +: "Control-Tab" # Move focus to the next grouping of controls in a dialog or the next table (when Tab moves to the next cell)
\bind "M-Tab" "buffer-next"
# +: "Shift-Control-Tab" # Move focus to the previous grouping of controls
# -: "Control-Right Arrow" # Move focus to another value or cell within a view, such as a table
# -: "Control-Left Arrow" # Move focus to another value or cell within a view, such as a table
# -: "Control-Down Arrow" # Move focus to another value or cell within a view, such as a table
# -: "Control-Up Arrow" # Move focus to another value or cell within a view, such as a table
# +: "Command-Right Arrow" # Move the text insertion point to the end of the current line
\bind "C-Right" "line-end"
# +: "Command-Left Arrow" # Move the text insertion point to the beginning of the current line
\bind "C-Left" "line-begin"
# +: "Command-Down Arrow" # Move the text insertion point to the end of the document
\bind "C-Down" "buffer-end"
\bind "M-A-Down" "inset-end"
# +: "Command-Up Arrow" # Move the text insertion point to the beginning of the document
\bind "C-Up" "buffer-begin"
\bind "M-A-Up" "inset-begin"
# +: "Shift-Command-Right Arrow" # Select text between the insertion point and the end of the current line (*)
\bind "S-C-Right" "line-end-select"
# +: "Shift-Command-Left Arrow" # Select text between the insertion point and the beginning of the current line (*)
\bind "S-C-Left" "line-begin-select"
# +: "Shift-Right Arrow" # Extend text selection one character to the right (*)
\bind "S-Right" "char-right-select"
# +: "Shift-Left Arrow" # Extend text selection one character to the left (*)
\bind "S-Left" "char-left-select"
# +: "Shift-Command-Up Arrow" # Select text between the insertion point and the beginning of the document (*)
\bind "S-C-Up" "buffer-begin-select"
# +: "Shift-Command-Down Arrow" # Select text between the insertion point and the end of the document (*)
\bind "S-C-Down" "buffer-end-select"
# +: "Shift-Up Arrow" # Extend text selection to the line above, to the nearest character boundary at the same horizontal location (*)
\bind "S-Up" "up-select"
# +: "Shift-Down Arrow" # Extend text selection to the line below, to the nearest character boundary at the same horizontal location (*)
\bind "S-Down" "down-select"
# +: "Shift-Option-Right Arrow" # Extend text selection to the end of the current word, then to the end of the following word if pressed again (*)
\bind "A-Right" "word-right"
\bind "S-A-Right" "word-right-select"
# +: "Shift-Option-Left Arrow" # Extend text selection to the beginning of the current word, then to the beginning of the following word if pressed again (*)
\bind "A-Left" "word-left"
\bind "S-A-Left" "word-left-select"
# +: "Shift-Option-Down Arrow" # Extend text selection to the end of the current paragraph, then to the end of the following paragraph if pressed again (*)
\bind "A-Down" "paragraph-down"
\bind "S-A-Down" "paragraph-down-select"
\bind "S-M-A-Down" "inset-end-select"
# +: "Shift-Option-Up Arrow" # Extend text selection to the beginning of the current paragraph, then to the beginning of the following paragraph if pressed again (*)
\bind "A-Up" "paragraph-up"
\bind "S-A-Up" "paragraph-up-select"
\bind "S-M-A-Up" "inset-begin-select"
# -: "Control-Space" # Toggle between the current and previous input sources
# -: "Option-Control-Space" # Toggle through all enabled input sources
# +: "Option-Command-esc" # Force Quit
# Additional commands
\bind "C-S-O" "font-strikeout"
\bind "C-S-T" "buffer-update pdf" # (pdflatex; was "ps")
\bind "C-S-R" "buffer-update"
\bind "C-M-S-T" "master-buffer-update pdf"
\bind "C-M-S-D" "master-buffer-update dvi"
\bind "C-S-E" "changes-track" # it's what MS Word uses