Skip to content

Instantly share code, notes, and snippets.

@notpushkin
Last active August 29, 2015 13:57
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save notpushkin/9874496 to your computer and use it in GitHub Desktop.
Save notpushkin/9874496 to your computer and use it in GitHub Desktop.
Various useful keybindings for ST3
[
/**
* Based on <http://ilyabirman.ru/projects/typography-layout/>
*/
// «french»
{ "keys": ["alt+,"], "command": "insert_snippet", "args": {"contents": "«$0»"}, "context":
[
{ "key": "setting.auto_match_enabled", "operator": "equal", "operand": true },
{ "key": "selection_empty", "operator": "equal", "operand": true, "match_all": true },
{ "key": "following_text", "operator": "regex_contains", "operand": "^(?:\t| |\\)|]|;|\\}|$)", "match_all": true }
]
},
{ "keys": ["alt+,"], "command": "insert_snippet", "args": {"contents": "«${0:$SELECTION}»"}, "context":
[
{ "key": "setting.auto_match_enabled", "operator": "equal", "operand": true },
{ "key": "selection_empty", "operator": "equal", "operand": false, "match_all": true }
]
},
{ "keys": ["alt+."], "command": "insert_snippet", "args": {"contents": "»"}},
// For cyrillic keyboards
{ "keys": ["alt+б"], "command": "insert_snippet", "args": {"contents": "«$0»"}, "context":
[
{ "key": "setting.auto_match_enabled", "operator": "equal", "operand": true },
{ "key": "selection_empty", "operator": "equal", "operand": true, "match_all": true },
{ "key": "following_text", "operator": "regex_contains", "operand": "^(?:\t| |\\)|]|;|\\}|$)", "match_all": true }
]
},
{ "keys": ["alt+б"], "command": "insert_snippet", "args": {"contents": "«${0:$SELECTION}»"}, "context":
[
{ "key": "setting.auto_match_enabled", "operator": "equal", "operand": true },
{ "key": "selection_empty", "operator": "equal", "operand": false, "match_all": true }
]
},
{ "keys": ["alt+ю"], "command": "insert_snippet", "args": {"contents": "»"}},
// „german“
{ "keys": ["alt+shift+,"], "command": "insert_snippet", "args": {"contents": "„$0“"}, "context":
[
{ "key": "setting.auto_match_enabled", "operator": "equal", "operand": true },
{ "key": "selection_empty", "operator": "equal", "operand": true, "match_all": true },
{ "key": "following_text", "operator": "regex_contains", "operand": "^(?:\t| |\\)|]|;|\\}|$)", "match_all": true }
]
},
{ "keys": ["alt+shift+,"], "command": "insert_snippet", "args": {"contents": "„${0:$SELECTION}“"}, "context":
[
{ "key": "setting.auto_match_enabled", "operator": "equal", "operand": true },
{ "key": "selection_empty", "operator": "equal", "operand": false, "match_all": true }
]
},
{ "keys": ["alt+shift+."], "command": "insert_snippet", "args": {"contents": "“"}},
{ "keys": ["alt+shift+б"], "command": "insert_snippet", "args": {"contents": "„$0“"}, "context":
[
{ "key": "setting.auto_match_enabled", "operator": "equal", "operand": true },
{ "key": "selection_empty", "operator": "equal", "operand": true, "match_all": true },
{ "key": "following_text", "operator": "regex_contains", "operand": "^(?:\t| |\\)|]|;|\\}|$)", "match_all": true }
]
},
// for cyrillic keyboards
{ "keys": ["alt+shift+б"], "command": "insert_snippet", "args": {"contents": "„${0:$SELECTION}“"}, "context":
[
{ "key": "setting.auto_match_enabled", "operator": "equal", "operand": true },
{ "key": "selection_empty", "operator": "equal", "operand": false, "match_all": true }
]
},
{ "keys": ["alt+shift+ю"], "command": "insert_snippet", "args": {"contents": "“"} },
// dashes
// conflicts with defaults
// En dash
{ "keys": ["alt+-"], "command": "insert_snippet", "args": {"contents": "–"} },
// Em dash
{ "keys": ["alt+shift+-"], "command": "insert_snippet", "args": {"contents": "—"} },
// Minus
{ "keys": ["alt+m"], "command": "insert_snippet", "args": {"contents": "−"} },
]
[
/**
* Cyrillic keybindings
* by Ale <ale.incrowd.ws>
*/
{ "keys": ["ctrl+я"], "command": "undo" },
{ "keys": ["ctrl+shift+я"], "command": "redo" },
{ "keys": ["ctrl+ч"], "command": "cut" },
{ "keys": ["ctrl+с"], "command": "copy" },
{ "keys": ["ctrl+м"], "command": "paste" },
{ "keys": ["ctrl+shift+м"], "command": "paste_and_indent" },
{ "keys": ["ctrl+л", "ctrl+м"], "command": "paste_from_history" },
{ "keys": ["ctrl+ф"], "command": "select_all" },
{ "keys": ["ctrl+shift+д"], "command": "split_selection_into_lines" },
{ "keys": ["ctrl+ъ"], "command": "indent" },
{ "keys": ["ctrl+х"], "command": "unindent" },
{ "keys": ["ctrl+д"], "command": "expand_selection", "args": {"to": "line"} },
{ "keys": ["ctrl+в"], "command": "find_under_expand" },
{ "keys": ["ctrl+л", "ctrl+в"], "command": "find_under_expand_skip" },
{ "keys": ["ctrl+shift+ь"], "command": "expand_selection", "args": {"to": "brackets"} },
{ "keys": ["ctrl+ь"], "command": "move_to", "args": {"to": "brackets"} },
{ "keys": ["ctrl+shift+о"], "command": "expand_selection", "args": {"to": "indentation"} },
{ "keys": ["ctrl+shift+ф"], "command": "expand_selection", "args": {"to": "tag"} },
{ "keys": ["alt+ю"], "command": "close_tag" },
{ "keys": ["ctrl+alt+й"], "command": "toggle_record_macro" },
{ "keys": ["ctrl+alt+shift+й"], "command": "run_macro" },
{ "keys": ["ctrl+з"], "command": "show_overlay", "args": {"overlay": "goto", "show_files": true} },
{ "keys": ["ctrl+shift+з"], "command": "show_overlay", "args": {"overlay": "command_palette"} },
{ "keys": ["ctrl+alt+з"], "command": "prompt_select_workspace" },
{ "keys": ["ctrl+к"], "command": "show_overlay", "args": {"overlay": "goto", "text": "@"} },
{ "keys": ["ctrl+п"], "command": "show_overlay", "args": {"overlay": "goto", "text": ":"} },
{ "keys": ["ctrl+ж"], "command": "show_overlay", "args": {"overlay": "goto", "text": "#"} },
{ "keys": ["ctrl+shift+r"], "command": "goto_symbol_in_project" },
{ "keys": ["ctrl+ш"], "command": "show_panel", "args": {"panel": "incremental_find", "reverse": false} },
{ "keys": ["ctrl+shift+ш"], "command": "show_panel", "args": {"panel": "incremental_find", "reverse": true} },
{ "keys": ["ctrl+а"], "command": "show_panel", "args": {"panel": "find", "reverse": false} },
{ "keys": ["ctrl+р"], "command": "show_panel", "args": {"panel": "replace", "reverse": false} },
{ "keys": ["ctrl+shift+р"], "command": "replace_next" },
{ "keys": ["ctrl+у"], "command": "slurp_find_string" },
{ "keys": ["ctrl+shift+у"], "command": "slurp_replace_string" },
{ "keys": ["ctrl+shift+а"], "command": "show_panel", "args": {"panel": "find_in_files"} },
{ "keys": ["ctrl+о"], "command": "join_lines" },
{ "keys": ["ctrl+shift+в"], "command": "duplicate_line" },
{ "keys": ["alt+."], "command": "auto_complete" },
{ "keys": ["alt+."], "command": "replace_completion_with_auto_complete", "context":
[
{ "key": "last_command", "operator": "equal", "operand": "insert_best_completion" },
{ "key": "auto_complete_visible", "operator": "equal", "operand": false },
{ "key": "setting.tab_completion", "operator": "equal", "operand": true }
]
},
{ "keys": ["ctrl+alt+shift+з"], "command": "show_scope_name" },
{ "keys": ["ctrl+и"], "command": "build" },
{ "keys": ["ctrl+shift+и"], "command": "build", "args": {"variant": "Run"} },
{ "keys": ["ctrl+л", "ctrl+up"], "command": "new_pane" },
{ "keys": ["ctrl+л", "ctrl+shift+up"], "command": "new_pane", "args": {"move": false} },
{ "keys": ["ctrl+л", "ctrl+down"], "command": "close_pane" },
{ "keys": ["ctrl+л", "ctrl+left"], "command": "focus_neighboring_group", "args": {"forward": false} },
{ "keys": ["ctrl+л", "ctrl+right"], "command": "focus_neighboring_group" },
{ "keys": ["ctrl+л", "ctrl+shift+left"], "command": "move_to_neighboring_group", "args": {"forward": false} },
{ "keys": ["ctrl+л", "ctrl+shift+right"], "command": "move_to_neighboring_group" },
{ "keys": ["ctrl+shift+л"], "command": "run_macro_file", "args": {"file": "res://Packages/Default/Delete Line.sublime-macro"} },
{ "keys": ["alt+й"], "command": "wrap_lines" },
{ "keys": ["ctrl+л", "ctrl+г"], "command": "upper_case" },
{ "keys": ["ctrl+л", "ctrl+д"], "command": "lower_case" },
{ "keys": ["ctrl+л", "ctrl+space"], "command": "set_mark" },
{ "keys": ["ctrl+л", "ctrl+ф"], "command": "select_to_mark" },
{ "keys": ["ctrl+л", "ctrl+ц"], "command": "delete_to_mark" },
{ "keys": ["ctrl+л", "ctrl+ч"], "command": "swap_with_mark" },
{ "keys": ["ctrl+л", "ctrl+н"], "command": "yank" },
{ "keys": ["ctrl+л", "ctrl+л"], "command": "run_macro_file", "args": {"file": "res://Packages/Default/Delete to Hard EOL.sublime-macro"} },
{ "keys": ["ctrl+л", "ctrl+backspace"], "command": "run_macro_file", "args": {"file": "res://Packages/Default/Delete to Hard BOL.sublime-macro"} },
{ "keys": ["ctrl+л", "ctrl+п"], "command": "clear_bookmarks", "args": {"name": "mark"} },
{ "keys": ["ctrl+л", "ctrl+с"], "command": "show_at_center" },
{ "keys": ["alt+shift+ц"], "command": "insert_snippet", "args": { "name": "Packages/XML/long-tag.sublime-snippet" } },
{ "keys": ["ctrl+л", "ctrl+1"], "command": "fold_by_level", "args": {"level": 1} },
{ "keys": ["ctrl+л", "ctrl+2"], "command": "fold_by_level", "args": {"level": 2} },
{ "keys": ["ctrl+л", "ctrl+3"], "command": "fold_by_level", "args": {"level": 3} },
{ "keys": ["ctrl+л", "ctrl+4"], "command": "fold_by_level", "args": {"level": 4} },
{ "keys": ["ctrl+л", "ctrl+5"], "command": "fold_by_level", "args": {"level": 5} },
{ "keys": ["ctrl+л", "ctrl+6"], "command": "fold_by_level", "args": {"level": 6} },
{ "keys": ["ctrl+л", "ctrl+7"], "command": "fold_by_level", "args": {"level": 7} },
{ "keys": ["ctrl+л", "ctrl+8"], "command": "fold_by_level", "args": {"level": 8} },
{ "keys": ["ctrl+л", "ctrl+9"], "command": "fold_by_level", "args": {"level": 9} },
{ "keys": ["ctrl+л", "ctrl+0"], "command": "unfold_all" },
{ "keys": ["ctrl+л", "ctrl+о"], "command": "unfold_all" },
{ "keys": ["ctrl+л", "ctrl+е"], "command": "fold_tag_attributes" },
]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment