Sublime 代码格式化调整快捷键

快捷键调整

  • 自定义快捷键(Win/Mac 环境下 Sublime Text 自定义快捷键对比)

// Win/Mac 环境下 Sublime Text 自定义快捷键对比
[
    // 自定义快捷键后, 顺便把Default中的属性注释掉, 不然两个Default与User中定义的快捷键都会生效
    // { "keys": ["alt+j"], "command": "find_under_expand" }, // Win: IDEA: alt+j, 向下选中内容文字信息
    { "keys": ["alt+j"], "command": "find_under_expand" }, // Mac: IDEA: alt+j, 向下选中内容文字信息

    // { "keys": ["ctrl+d"], "command": "duplicate_line" }, // Win: IDEA: ctrl+d, 向下复制上一行内容
    { "keys": ["super+d"], "command": "duplicate_line" }, // Mac: IDEA: ctrl+d, 向下复制上一行内容


    // { "keys": ["shift+enter"], "command": "run_macro_file", "args": {"file": "res://Packages/Default/Add Line.sublime-macro"} }, // Win: 在光标所在行往下添加一行,并且光标移到下一行
    { "keys": ["shift+enter"], "command": "run_macro_file", "args": {"file": "res://Packages/Default/Add Line.sublime-macro"} }, // Mac: 在光标所在行往下添加一行,并且光标移到下一行
    // { "keys": ["ctrl+shift+enter"], "command": "run_macro_file", "args": {"file": "res://Packages/Default/Add Line Before.sublime-macro"} }, // Win/Mac: 在光标所在行往上添加一行,并且光标移到上一行
    { "keys": ["ctrl+shift+enter"], "command": "run_macro_file", "args": {"file": "res://Packages/Default/Add Line Before.sublime-macro"} }, // Mac: 在光标所在行往上添加一行,并且光标移到上一行
    
    // 特别注意: 快捷键ctrl+alt+up/down与网易云音乐的快捷键重合, 关闭网易云音乐的全局快捷键
    // { "keys": ["ctrl+alt+up"], "command": "select_lines", "args": {"forward": false} }, // Win: 多行光标向上批量操作
    { "keys": ["ctrl+alt+up"], "command": "select_lines", "args": {"forward": false} }, // Mac: 多行光标向上批量操作
    // { "keys": ["ctrl+alt+down"], "command": "select_lines", "args": {"forward": true} }, // Win 多行光标向下批量操作
    { "keys": ["ctrl+alt+down"], "command": "select_lines", "args": {"forward": true} }, // Mac: 多行光标向下批量操作
    
    // { "keys": ["shift+alt+up"], "command": "swap_line_up" }, // Win: 将光标所在行和上一行代码互换(将光标所在行插入到上一行之前)
    { "keys": ["shift+alt+up"], "command": "swap_line_up" }, // Mac: 将光标所在行和上一行代码互换(将光标所在行插入到上一行之前)
    // { "keys": ["shift+alt+down"], "command": "swap_line_down" }, // Win: 将光标所在行和下一行代码互换(将光标所在行插入到下一行之后)
    { "keys": ["shift+alt+down"], "command": "swap_line_down" }, // Mac: 将光标所在行和下一行代码互换(将光标所在行插入到下一行之后)
    
    // { "keys": ["alt+left"], "command": "prev_view" }, // Win: 左切换窗口
    { "keys": ["alt+left"], "command": "prev_view" }, // Mac: 左切换窗口
    // { "keys": ["alt+right"], "command": "next_view" }, // Win: 右切换窗口
    { "keys": ["alt+right"], "command": "next_view" }, // Mac: 右切换窗口
    
    // { "keys": ["ctrl+f"], "command": "show_panel", "args": {"panel": "find", "reverse": false} }, // Win: 查找
    { "keys": ["super+f"], "command": "show_panel", "args": {"panel": "find", "reverse": false} }, // Mac: 查找
    // { "keys": ["ctrl+h"], "command": "show_panel", "args": {"panel": "replace", "reverse": false} }, // Win: 查找, 替换
    { "keys": ["super+h"], "command": "show_panel", "args": {"panel": "replace", "reverse": false} }, // Mac: 查找, 替换
    // { "keys": ["ctrl+shift+f"], "command": "show_panel", "args": {"panel": "find_in_files"} }, // Win: 查找并替换(不生效的原因可能是与搜狗输入法快捷键冲突, 关闭后正常)
    { "keys": ["super+shift+f"], "command": "show_panel", "args": {"panel": "find_in_files"} }, // Mac: 查找并替换(不生效的原因可能是与搜狗输入法快捷键冲突, 关闭后正常)
    
    // { "keys": ["ctrl+shift+u"], "command": "upper_case" }, // Win: 小写转大写
    { "keys": ["super+shift+u"], "command": "upper_case" }, // Mac: 小写转大写
    // { "keys": ["ctrl+shift+l"], "command": "lower_case" }, // Win: 大写转小写
    { "keys": ["super+shift+l"], "command": "lower_case" }, // Mac: 大写转小写
    
    // 特别注意: 常用命令: 剪切,复制,粘贴,保存,新建; 在Win环境中是"ctrl+字母", 在Mac环境中是"super+字母"(super指:Command键)
    // { "keys": ["ctrl+x"], "command": "cut" }, // Win: 剪切
    { "keys": ["super+x"], "command": "cut" }, // Mac: 剪切
    // { "keys": ["ctrl+c"], "command": "copy" }, // Win: 复制
    { "keys": ["super+c"], "command": "copy" }, // Mac: 复制
    // { "keys": ["ctrl+v"], "command": "paste" }, // Win: 粘贴
    { "keys": ["super+v"], "command": "paste" }, // Mac: 粘贴
    //{ "keys": ["ctrl+s"], "command": "save", "args": { "async": true } }, // Win: 保存
    { "keys": ["super+s"], "command": "save", "args": { "async": true } }, // Mac: 保存
    //{ "keys": ["ctrl+n"], "command": "new_file" }, // Win: 新建文件
    { "keys": ["super+n"], "command": "new_file" }, // Mac: 新建文件

    // sqlBeautifier插件自定义的快捷键
    // { "keys": ["ctrl+e", "ctrl+e"], "command": "sql_beautifier" }, // Win: 默认:["ctrl+k", "ctrl+b"]
    { "keys": ["ctrl+e", "ctrl+e"], "command": "sql_beautifier" }, // Mac: 默认:["ctrl+k", "ctrl+b"]
    
    // pretty json插件快捷键
    //{"keys": ["ctrl+alt+j"], "command": "pretty_json"}, // Win: JSON格式化
    {"keys": ["ctrl+alt+j"], "command": "pretty_json"}, // Mac: JSON格式化
]
  • 默认快捷键

  • [
    	{ "keys": ["ctrl+shift+n"], "command": "new_window" },
    	{ "keys": ["ctrl+shift+w"], "command": "close_window" },
    	{ "keys": ["ctrl+o"], "command": "prompt_open_file" },
    	{ "keys": ["ctrl+shift+t"], "command": "reopen_last_file" },
    	{ "keys": ["alt+o"], "command": "switch_file", "args": {"extensions": ["cpp", "cxx", "cc", "c", "hpp", "hxx", "hh", "h", "ipp", "inl", "m", "mm"]} },
    	{ "keys": ["ctrl+n"], "command": "new_file" },
    	{ "keys": ["ctrl+s"], "command": "save" },
    	{ "keys": ["ctrl+shift+s"], "command": "prompt_save_as" },
    	{ "keys": ["ctrl+f4"], "command": "close_file" },
    	{ "keys": ["ctrl+w"], "command": "close" },
    
    	{ "keys": ["ctrl+k", "ctrl+b"], "command": "toggle_side_bar" },
    	{ "keys": ["f11"], "command": "toggle_full_screen" },
    	{ "keys": ["shift+f11"], "command": "toggle_distraction_free" },
    
    	{ "keys": ["backspace"], "command": "left_delete" },
    	{ "keys": ["shift+backspace"], "command": "left_delete" },
    	{ "keys": ["ctrl+shift+backspace"], "command": "left_delete" },
    	{ "keys": ["delete"], "command": "right_delete" },
    	{ "keys": ["enter"], "command": "insert", "args": {"characters": "\n"} },
    	{ "keys": ["shift+enter"], "command": "insert", "args": {"characters": "\n"} },
    
    	{ "keys": ["ctrl+z"], "command": "undo" },
    	{ "keys": ["ctrl+shift+z"], "command": "redo" },
    	{ "keys": ["ctrl+y"], "command": "redo_or_repeat" },
    	{ "keys": ["ctrl+u"], "command": "soft_undo" },
    	//{ "keys": ["ctrl+shift+u"], "command": "soft_redo" },
    
    	{ "keys": ["shift+delete"], "command": "cut" },
    	{ "keys": ["ctrl+insert"], "command": "copy" },
    	{ "keys": ["shift+insert"], "command": "paste" },
    	{ "keys": ["ctrl+x"], "command": "cut" },
    	{ "keys": ["ctrl+c"], "command": "copy" },
    	{ "keys": ["ctrl+v"], "command": "paste" },
    	{ "keys": ["ctrl+shift+v"], "command": "paste_and_indent" },
    	{ "keys": ["ctrl+k", "ctrl+v"], "command": "paste_from_history" },
    
    	{ "keys": ["left"], "command": "move", "args": {"by": "characters", "forward": false} },
    	{ "keys": ["right"], "command": "move", "args": {"by": "characters", "forward": true} },
    	{ "keys": ["up"], "command": "move", "args": {"by": "lines", "forward": false} },
    	{ "keys": ["down"], "command": "move", "args": {"by": "lines", "forward": true} },
    	{ "keys": ["shift+left"], "command": "move", "args": {"by": "characters", "forward": false, "extend": true} },
    	{ "keys": ["shift+right"], "command": "move", "args": {"by": "characters", "forward": true, "extend": true} },
    	{ "keys": ["shift+up"], "command": "move", "args": {"by": "lines", "forward": false, "extend": true} },
    	{ "keys": ["shift+down"], "command": "move", "args": {"by": "lines", "forward": true, "extend": true} },
    
    	{ "keys": ["ctrl+left"], "command": "move", "args": {"by": "words", "forward": false} },
    	{ "keys": ["ctrl+right"], "command": "move", "args": {"by": "word_ends", "forward": true} },
    	{ "keys": ["ctrl+shift+left"], "command": "move", "args": {"by": "words", "forward": false, "extend": true} },
    	{ "keys": ["ctrl+shift+right"], "command": "move", "args": {"by": "word_ends", "forward": true, "extend": true} },
    
    	{ "keys": ["alt+left"], "command": "move", "args": {"by": "subwords", "forward": false} },
    	{ "keys": ["alt+right"], "command": "move", "args": {"by": "subword_ends", "forward": true} },
    	{ "keys": ["alt+shift+left"], "command": "move", "args": {"by": "subwords", "forward": false, "extend": true} },
    	{ "keys": ["alt+shift+right"], "command": "move", "args": {"by": "subword_ends", "forward": true, "extend": true} },
    
    	//{ "keys": ["ctrl+alt+up"], "command": "select_lines", "args": {"forward": false} }, // 多行光标向上批量操作
    	//{ "keys": ["ctrl+alt+down"], "command": "select_lines", "args": {"forward": true} }, // 多行光标向下批量操作
    
    	{ "keys": ["pageup"], "command": "move", "args": {"by": "pages", "forward": false} },
    	{ "keys": ["pagedown"], "command": "move", "args": {"by": "pages", "forward": true} },
    	{ "keys": ["shift+pageup"], "command": "move", "args": {"by": "pages", "forward": false, "extend": true} },
    	{ "keys": ["shift+pagedown"], "command": "move", "args": {"by": "pages", "forward": true, "extend": true} },
    
    	{ "keys": ["home"], "command": "move_to", "args": {"to": "bol", "extend": false} },
    	{ "keys": ["end"], "command": "move_to", "args": {"to": "eol", "extend": false} },
    	{ "keys": ["shift+home"], "command": "move_to", "args": {"to": "bol", "extend": true} },
    	{ "keys": ["shift+end"], "command": "move_to", "args": {"to": "eol", "extend": true} },
    	{ "keys": ["ctrl+home"], "command": "move_to", "args": {"to": "bof", "extend": false} },
    	{ "keys": ["ctrl+end"], "command": "move_to", "args": {"to": "eof", "extend": false} },
    	{ "keys": ["ctrl+shift+home"], "command": "move_to", "args": {"to": "bof", "extend": true} },
    	{ "keys": ["ctrl+shift+end"], "command": "move_to", "args": {"to": "eof", "extend": true} },
    
    
    	{ "keys": ["ctrl+up"], "command": "scroll_lines", "args": {"amount": 1.0 } },
    	{ "keys": ["ctrl+down"], "command": "scroll_lines", "args": {"amount": -1.0 } },
    
    	{ "keys": ["ctrl+pagedown"], "command": "next_view" },
    	{ "keys": ["ctrl+pageup"], "command": "prev_view" },
    
    	{ "keys": ["ctrl+tab"], "command": "next_view_in_stack" },
    	{ "keys": ["ctrl+shift+tab"], "command": "prev_view_in_stack" },
    
    	{ "keys": ["ctrl+a"], "command": "select_all" },
    	//{ "keys": ["ctrl+shift+l"], "command": "split_selection_into_lines" },
    	{ "keys": ["escape"], "command": "single_selection", "context":
    		[
    			{ "key": "num_selections", "operator": "not_equal", "operand": 1 }
    		]
    	},
    	{ "keys": ["escape"], "command": "clear_fields", "context":
    		[
    			{ "key": "has_next_field", "operator": "equal", "operand": true }
    		]
    	},
    	{ "keys": ["escape"], "command": "clear_fields", "context":
    		[
    			{ "key": "has_prev_field", "operator": "equal", "operand": true }
    		]
    	},
    	{ "keys": ["escape"], "command": "hide_panel", "args": {"cancel": true},
    		"context":
    		[
    			{ "key": "panel_visible", "operator": "equal", "operand": true }
    		]
    	},
    	{ "keys": ["escape"], "command": "hide_overlay", "context":
    		[
    			{ "key": "overlay_visible", "operator": "equal", "operand": true }
    		]
    	},
    	{ "keys": ["escape"], "command": "hide_popup", "context":
    		[
    			{ "key": "popup_visible", "operator": "equal", "operand": true }
    		]
    	},
    	{ "keys": ["escape"], "command": "hide_auto_complete", "context":
    		[
    			{ "key": "auto_complete_visible", "operator": "equal", "operand": true }
    		]
    	},
    
    	{ "keys": ["tab"], "command": "insert_best_completion", "args": {"default": "\t", "exact": true} },
    	{ "keys": ["tab"], "command": "insert_best_completion", "args": {"default": "\t", "exact": false},
    		"context":
    		[
    			{ "key": "setting.tab_completion", "operator": "equal", "operand": true },
    			{ "key": "preceding_text", "operator": "not_regex_match", "operand": ".*\\b[0-9]+$", "match_all": true },
    		]
    	},
    	{ "keys": ["tab"], "command": "replace_completion_with_next_completion", "context":
    		[
    			{ "key": "last_command", "operator": "equal", "operand": "insert_best_completion" },
    			{ "key": "setting.tab_completion", "operator": "equal", "operand": true }
    		]
    	},
    	{ "keys": ["tab"], "command": "reindent", "context":
    		[
    			{ "key": "setting.auto_indent", "operator": "equal", "operand": true },
    			{ "key": "selection_empty", "operator": "equal", "operand": true, "match_all": true },
    			{ "key": "preceding_text", "operator": "regex_match", "operand": "^$", "match_all": true },
    			{ "key": "following_text", "operator": "regex_match", "operand": "^$", "match_all": true }
    		]
    	},
    	{ "keys": ["tab"], "command": "indent", "context":
    		[
    			{ "key": "text", "operator": "regex_contains", "operand": "\n" }
    		]
    	},
    	{ "keys": ["tab"], "command": "next_field", "context":
    		[
    			{ "key": "has_next_field", "operator": "equal", "operand": true }
    		]
    	},
    	{ "keys": ["tab"], "command": "commit_completion", "context":
    		[
    			{ "key": "auto_complete_visible" },
    			{ "key": "setting.auto_complete_commit_on_tab" }
    		]
    	},
    
    	{ "keys": ["shift+tab"], "command": "insert", "args": {"characters": "\t"} },
    	{ "keys": ["shift+tab"], "command": "unindent", "context":
    		[
    			{ "key": "setting.shift_tab_unindent", "operator": "equal", "operand": true }
    		]
    	},
    	{ "keys": ["shift+tab"], "command": "unindent", "context":
    		[
    			{ "key": "preceding_text", "operator": "regex_match", "operand": "^[\t ]*" }
    		]
    	},
    	{ "keys": ["shift+tab"], "command": "unindent", "context":
    		[
    			{ "key": "text", "operator": "regex_contains", "operand": "\n" }
    		]
    	},
    	{ "keys": ["shift+tab"], "command": "prev_field", "context":
    		[
    			{ "key": "has_prev_field", "operator": "equal", "operand": true }
    		]
    	},
    
    	{ "keys": ["ctrl+]"], "command": "indent" },
    	{ "keys": ["ctrl+["], "command": "unindent" },
    
    	{ "keys": ["insert"], "command": "toggle_overwrite" },
    
    	{ "keys": ["ctrl+l"], "command": "expand_selection", "args": {"to": "line"} },
    	//{ "keys": ["ctrl+d"], "command": "find_under_expand" }, // 向下选中内容文字信息
    	{ "keys": ["ctrl+k", "ctrl+d"], "command": "find_under_expand_skip" },
    	{ "keys": ["ctrl+shift+space"], "command": "expand_selection", "args": {"to": "scope"} },
    	{ "keys": ["ctrl+shift+m"], "command": "expand_selection", "args": {"to": "brackets"} },
    	{ "keys": ["ctrl+m"], "command": "move_to", "args": {"to": "brackets"} },
    	{ "keys": ["ctrl+shift+j"], "command": "expand_selection", "args": {"to": "indentation"} },
    	{ "keys": ["ctrl+shift+a"], "command": "expand_selection", "args": {"to": "tag"} },
    
    	{ "keys": ["alt+."], "command": "close_tag" },
    
    	{ "keys": ["ctrl+q"], "command": "toggle_record_macro" },
    	{ "keys": ["ctrl+shift+q"], "command": "run_macro" },
    
    	//{ "keys": ["ctrl+enter"], "command": "run_macro_file", "args": {"file": "res://Packages/Default/Add Line.sublime-macro"} }, // 在光标所在行往下添加一行,并且光标移到下一行
    	//{ "keys": ["ctrl+shift+enter"], "command": "run_macro_file", "args": {"file": "res://Packages/Default/Add Line Before.sublime-macro"} }, // 在光标所在行往上添加一行,并且光标移到上一行
    	{ "keys": ["enter"], "command": "commit_completion", "context":
    		[
    			{ "key": "auto_complete_visible" },
    			{ "key": "setting.auto_complete_commit_on_tab", "operand": false }
    		]
    	},
    
    	{ "keys": ["ctrl+p"], "command": "show_overlay", "args": {"overlay": "goto", "show_files": true} },
    	{ "keys": ["ctrl+shift+p"], "command": "show_overlay", "args": {"overlay": "command_palette"} },
    	{ "keys": ["ctrl+r"], "command": "show_overlay", "args": {"overlay": "goto", "text": "@"} },
    	{ "keys": ["ctrl+g"], "command": "show_overlay", "args": {"overlay": "goto", "text": ":"} },
    	{ "keys": ["ctrl+;"], "command": "show_overlay", "args": {"overlay": "goto", "text": "#"} },
    	{ "keys": ["f12"], "command": "goto_definition" },
    	{ "keys": ["shift+f12"], "command": "goto_reference" },
    	{ "keys": ["ctrl+shift+r"], "command": "goto_symbol_in_project" },
    	{ "keys": ["alt+keypad_minus"], "command": "jump_back" },
    	{ "keys": ["alt+shift+keypad_minus"], "command": "jump_forward" },
    	{ "keys": ["alt+-"], "command": "jump_back" },
    	{ "keys": ["alt+shift+-"], "command": "jump_forward" },
    
    	{ "keys": ["ctrl+i"], "command": "show_panel", "args": {"panel": "incremental_find", "reverse": false} },
    	{ "keys": ["ctrl+shift+i"], "command": "show_panel", "args": {"panel": "incremental_find", "reverse": true} },
    	//{ "keys": ["ctrl+f"], "command": "show_panel", "args": {"panel": "find", "reverse": false} }, // 查找
    	//{ "keys": ["ctrl+h"], "command": "show_panel", "args": {"panel": "replace", "reverse": false} }, // 查找, 替换
    	{ "keys": ["ctrl+shift+h"], "command": "replace_next" },
    	{ "keys": ["f3"], "command": "find_next" },
    	{ "keys": ["shift+f3"], "command": "find_prev" },
    	{ "keys": ["ctrl+f3"], "command": "find_under" },
    	{ "keys": ["ctrl+shift+f3"], "command": "find_under_prev" },
    	{ "keys": ["alt+f3"], "command": "find_all_under" },
    	{ "keys": ["ctrl+e"], "command": "slurp_find_string" },
    	{ "keys": ["ctrl+shift+e"], "command": "slurp_replace_string" },
    	//{ "keys": ["ctrl+shift+f"], "command": "show_panel", "args": {"panel": "find_in_files"} }, // 查找并替换
    	{ "keys": ["f4"], "command": "next_result" },
    	{ "keys": ["shift+f4"], "command": "prev_result" },
    
    	{ "keys": ["ctrl+."], "command": "next_modification" },
    	{ "keys": ["ctrl+,"], "command": "prev_modification" },
    	{ "keys": ["ctrl+k", "ctrl+z"], "command": "revert_modification" },
    	{ "keys": ["ctrl+k", "ctrl+/"], "command": "toggle_inline_diff" },
    	{ "keys": ["ctrl+k", "ctrl+;"], "command": "toggle_inline_diff", "args": { "prefer_hide": true } },
    
    	{ "keys": ["f6"], "command": "toggle_setting", "args": {"setting": "spell_check"} },
    	{ "keys": ["ctrl+f6"], "command": "next_misspelling" },
    	{ "keys": ["ctrl+shift+f6"], "command": "prev_misspelling" },
    
    	//{ "keys": ["ctrl+shift+up"], "command": "swap_line_up" }, // 将光标所在行和上一行代码互换(将光标所在行插入到上一行之前)
    	//{ "keys": ["ctrl+shift+down"], "command": "swap_line_down" }, // 将光标所在行和下一行代码互换(将光标所在行插入到下一行之后)
    
    	{ "keys": ["ctrl+backspace"], "command": "delete_word", "args": { "forward": false } },
    	{ "keys": ["ctrl+shift+backspace"], "command": "run_macro_file", "args": {"file": "res://Packages/Default/Delete to Hard BOL.sublime-macro"} },
    
    	{ "keys": ["ctrl+delete"], "command": "delete_word", "args": { "forward": true } },
    	{ "keys": ["ctrl+shift+delete"], "command": "run_macro_file", "args": {"file": "res://Packages/Default/Delete to Hard EOL.sublime-macro"} },
    
    	{ "keys": ["ctrl+/"], "command": "toggle_comment", "args": { "block": false } },
    	{ "keys": ["ctrl+shift+/"], "command": "toggle_comment", "args": { "block": true } },
    
    	{ "keys": ["ctrl+j"], "command": "join_lines" },
    	//{ "keys": ["ctrl+shift+d"], "command": "duplicate_line" }, //向下复制上一行内容
    
    	{ "keys": ["ctrl+`"], "command": "show_panel", "args": {"panel": "console", "toggle": true} },
    
    	{ "keys": ["ctrl+space"], "command": "auto_complete" },
    	{ "keys": ["ctrl+space"], "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+p"], "command": "show_scope_name" },
    
    	{ "keys": ["f7"], "command": "build" },
    	{ "keys": ["ctrl+b"], "command": "build" },
    	{ "keys": ["ctrl+shift+b"], "command": "build", "args": {"select": true} },
    	{ "keys": ["ctrl+break"], "command": "cancel_build" },
    
    	{ "keys": ["ctrl+t"], "command": "transpose" },
    
    	{ "keys": ["f9"], "command": "sort_lines", "args": {"case_sensitive": false} },
    	{ "keys": ["ctrl+f9"], "command": "sort_lines", "args": {"case_sensitive": true} },
    
    	// Auto-pair quotes
    	{ "keys": ["\""], "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 },
    			{ "key": "preceding_text", "operator": "not_regex_contains", "operand": "[\"a-zA-Z0-9_]$", "match_all": true },
    			{ "key": "eol_selector", "operator": "not_equal", "operand": "string.quoted.double - punctuation.definition.string.end", "match_all": true }
    		]
    	},
    	{ "keys": ["\""], "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": ["\""], "command": "move", "args": {"by": "characters", "forward": true}, "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": "^\"", "match_all": true },
    			{ "key": "selector", "operator": "not_equal", "operand": "punctuation.definition.string.begin", "match_all": true },
    			{ "key": "eol_selector", "operator": "not_equal", "operand": "string.quoted.double - punctuation.definition.string.end", "match_all": true },
    		]
    	},
    	{ "keys": ["backspace"], "command": "run_macro_file", "args": {"file": "res://Packages/Default/Delete Left Right.sublime-macro"}, "context":
    		[
    			{ "key": "setting.auto_match_enabled", "operator": "equal", "operand": true },
    			{ "key": "selection_empty", "operator": "equal", "operand": true, "match_all": true },
    			{ "key": "preceding_text", "operator": "regex_contains", "operand": "\"$", "match_all": true },
    			{ "key": "following_text", "operator": "regex_contains", "operand": "^\"", "match_all": true },
    			{ "key": "selector", "operator": "not_equal", "operand": "punctuation.definition.string.begin", "match_all": true },
    			{ "key": "eol_selector", "operator": "not_equal", "operand": "string.quoted.double - punctuation.definition.string.end", "match_all": true },
    		]
    	},
    
    	// Auto-pair single quotes
    	{ "keys": ["'"], "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 },
    			{ "key": "preceding_text", "operator": "not_regex_contains", "operand": "['a-zA-Z0-9_]$", "match_all": true },
    			{ "key": "eol_selector", "operator": "not_equal", "operand": "string.quoted.single - punctuation.definition.string.end", "match_all": true }
    		]
    	},
    	{ "keys": ["'"], "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": ["'"], "command": "move", "args": {"by": "characters", "forward": true}, "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": "^'", "match_all": true },
    			{ "key": "selector", "operator": "not_equal", "operand": "punctuation.definition.string.begin", "match_all": true },
    			{ "key": "eol_selector", "operator": "not_equal", "operand": "string.quoted.single - punctuation.definition.string.end", "match_all": true },
    		]
    	},
    	{ "keys": ["backspace"], "command": "run_macro_file", "args": {"file": "res://Packages/Default/Delete Left Right.sublime-macro"}, "context":
    		[
    			{ "key": "setting.auto_match_enabled", "operator": "equal", "operand": true },
    			{ "key": "selection_empty", "operator": "equal", "operand": true, "match_all": true },
    			{ "key": "preceding_text", "operator": "regex_contains", "operand": "'$", "match_all": true },
    			{ "key": "following_text", "operator": "regex_contains", "operand": "^'", "match_all": true },
    			{ "key": "selector", "operator": "not_equal", "operand": "punctuation.definition.string.begin", "match_all": true },
    			{ "key": "eol_selector", "operator": "not_equal", "operand": "string.quoted.single - punctuation.definition.string.end", "match_all": true },
    		]
    	},
    
    	// Auto-pair brackets
    	{ "keys": ["("], "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": ["("], "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": [")"], "command": "move", "args": {"by": "characters", "forward": true}, "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": "^\\)", "match_all": true }
    		]
    	},
    	{ "keys": ["backspace"], "command": "run_macro_file", "args": {"file": "res://Packages/Default/Delete Left Right.sublime-macro"}, "context":
    		[
    			{ "key": "setting.auto_match_enabled", "operator": "equal", "operand": true },
    			{ "key": "selection_empty", "operator": "equal", "operand": true, "match_all": true },
    			{ "key": "preceding_text", "operator": "regex_contains", "operand": "\\($", "match_all": true },
    			{ "key": "following_text", "operator": "regex_contains", "operand": "^\\)", "match_all": true }
    		]
    	},
    
    	// Auto-pair square brackets
    	{ "keys": ["["], "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": ["["], "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": ["]"], "command": "move", "args": {"by": "characters", "forward": true}, "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": "^\\]", "match_all": true }
    		]
    	},
    	{ "keys": ["backspace"], "command": "run_macro_file", "args": {"file": "res://Packages/Default/Delete Left Right.sublime-macro"}, "context":
    		[
    			{ "key": "setting.auto_match_enabled", "operator": "equal", "operand": true },
    			{ "key": "selection_empty", "operator": "equal", "operand": true, "match_all": true },
    			{ "key": "preceding_text", "operator": "regex_contains", "operand": "\\[$", "match_all": true },
    			{ "key": "following_text", "operator": "regex_contains", "operand": "^\\]", "match_all": true }
    		]
    	},
    
    	// Auto-pair curly brackets
    	{ "keys": ["{"], "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": ["{"], "command": "wrap_block", "args": {"begin": "{", "end": "}"}, "context":
    		[
    			{ "key": "indented_block", "match_all": true },
    			{ "key": "setting.auto_match_enabled", "operator": "equal", "operand": true },
    			{ "key": "selection_empty", "operator": "equal", "operand": true, "match_all": true },
    			{ "key": "following_text", "operator": "regex_match", "operand": "^$", "match_all": true },
    		]
    	},
    	{ "keys": ["{"], "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": ["}"], "command": "move", "args": {"by": "characters", "forward": true}, "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": "^\\}", "match_all": true }
    		]
    	},
    	{ "keys": ["backspace"], "command": "run_macro_file", "args": {"file": "res://Packages/Default/Delete Left Right.sublime-macro"}, "context":
    		[
    			{ "key": "setting.auto_match_enabled", "operator": "equal", "operand": true },
    			{ "key": "selection_empty", "operator": "equal", "operand": true, "match_all": true },
    			{ "key": "preceding_text", "operator": "regex_contains", "operand": "\\{$", "match_all": true },
    			{ "key": "following_text", "operator": "regex_contains", "operand": "^\\}", "match_all": true }
    		]
    	},
    
    	{ "keys": ["enter"], "command": "run_macro_file", "args": {"file": "res://Packages/Default/Add Line in Braces.sublime-macro"}, "context":
    		[
    			{ "key": "setting.auto_indent", "operator": "equal", "operand": true },
    			{ "key": "selection_empty", "operator": "equal", "operand": true, "match_all": true },
    			{ "key": "preceding_text", "operator": "regex_contains", "operand": "\\{$", "match_all": true },
    			{ "key": "following_text", "operator": "regex_contains", "operand": "^\\}", "match_all": true }
    		]
    	},
    	{ "keys": ["shift+enter"], "command": "run_macro_file", "args": {"file": "res://Packages/Default/Add Line in Braces.sublime-macro"}, "context":
    		[
    			{ "key": "setting.auto_indent", "operator": "equal", "operand": true },
    			{ "key": "selection_empty", "operator": "equal", "operand": true, "match_all": true },
    			{ "key": "preceding_text", "operator": "regex_contains", "operand": "\\{$", "match_all": true },
    			{ "key": "following_text", "operator": "regex_contains", "operand": "^\\}", "match_all": true }
    		]
    	},
    
    	{ "keys": ["enter"], "command": "auto_indent_tag", "context":
    		[
    			{ "key": "setting.auto_indent", "operator": "equal", "operand": true },
    			{ "key": "selection_empty", "operator": "equal", "operand": true, "match_all": true },
    			{ "key": "selector", "operator": "equal", "operand": "punctuation.definition.tag.begin", "match_all": true },
    			{ "key": "preceding_text", "operator": "regex_contains", "operand": ">$", "match_all": true },
    			{ "key": "following_text", "operator": "regex_contains", "operand": "^</", "match_all": true },
    		]
    	},
    	{ "keys": ["shift+enter"], "command": "auto_indent_tag", "context":
    		[
    			{ "key": "setting.auto_indent", "operator": "equal", "operand": true },
    			{ "key": "selection_empty", "operator": "equal", "operand": true, "match_all": true },
    			{ "key": "selector", "operator": "equal", "operand": "punctuation.definition.tag.begin", "match_all": true },
    			{ "key": "preceding_text", "operator": "regex_contains", "operand": ">$", "match_all": true },
    			{ "key": "following_text", "operator": "regex_contains", "operand": "^</", "match_all": true },
    		]
    	},
    
    	{
    		"keys": ["alt+shift+1"],
    		"command": "set_layout",
    		"args":
    		{
    			"cols": [0.0, 1.0],
    			"rows": [0.0, 1.0],
    			"cells": [[0, 0, 1, 1]]
    		}
    	},
    	{
    		"keys": ["alt+shift+2"],
    		"command": "set_layout",
    		"args":
    		{
    			"cols": [0.0, 0.5, 1.0],
    			"rows": [0.0, 1.0],
    			"cells": [[0, 0, 1, 1], [1, 0, 2, 1]]
    		}
    	},
    	{
    		"keys": ["alt+shift+3"],
    		"command": "set_layout",
    		"args":
    		{
    			"cols": [0.0, 0.33, 0.66, 1.0],
    			"rows": [0.0, 1.0],
    			"cells": [[0, 0, 1, 1], [1, 0, 2, 1], [2, 0, 3, 1]]
    		}
    	},
    	{
    		"keys": ["alt+shift+4"],
    		"command": "set_layout",
    		"args":
    		{
    			"cols": [0.0, 0.25, 0.5, 0.75, 1.0],
    			"rows": [0.0, 1.0],
    			"cells": [[0, 0, 1, 1], [1, 0, 2, 1], [2, 0, 3, 1], [3, 0, 4, 1]]
    		}
    	},
    	{
    		"keys": ["alt+shift+8"],
    		"command": "set_layout",
    		"args":
    		{
    			"cols": [0.0, 1.0],
    			"rows": [0.0, 0.5, 1.0],
    			"cells": [[0, 0, 1, 1], [0, 1, 1, 2]]
    		}
    	},
    	{
    		"keys": ["alt+shift+9"],
    		"command": "set_layout",
    		"args":
    		{
    			"cols": [0.0, 1.0],
    			"rows": [0.0, 0.33, 0.66, 1.0],
    			"cells": [[0, 0, 1, 1], [0, 1, 1, 2], [0, 2, 1, 3]]
    		}
    	},
    	{
    		"keys": ["alt+shift+5"],
    		"command": "set_layout",
    		"args":
    		{
    			"cols": [0.0, 0.5, 1.0],
    			"rows": [0.0, 0.5, 1.0],
    			"cells":
    			[
    				[0, 0, 1, 1], [1, 0, 2, 1],
    				[0, 1, 1, 2], [1, 1, 2, 2]
    			]
    		}
    	},
    	{ "keys": ["ctrl+1"], "command": "focus_group", "args": { "group": 0 } },
    	{ "keys": ["ctrl+2"], "command": "focus_group", "args": { "group": 1 } },
    	{ "keys": ["ctrl+3"], "command": "focus_group", "args": { "group": 2 } },
    	{ "keys": ["ctrl+4"], "command": "focus_group", "args": { "group": 3 } },
    	{ "keys": ["ctrl+5"], "command": "focus_group", "args": { "group": 4 } },
    	{ "keys": ["ctrl+6"], "command": "focus_group", "args": { "group": 5 } },
    	{ "keys": ["ctrl+7"], "command": "focus_group", "args": { "group": 6 } },
    	{ "keys": ["ctrl+8"], "command": "focus_group", "args": { "group": 7 } },
    	{ "keys": ["ctrl+9"], "command": "focus_group", "args": { "group": 8 } },
    	{ "keys": ["ctrl+shift+1"], "command": "move_to_group", "args": { "group": 0 } },
    	{ "keys": ["ctrl+shift+2"], "command": "move_to_group", "args": { "group": 1 } },
    	{ "keys": ["ctrl+shift+3"], "command": "move_to_group", "args": { "group": 2 } },
    	{ "keys": ["ctrl+shift+4"], "command": "move_to_group", "args": { "group": 3 } },
    	{ "keys": ["ctrl+shift+5"], "command": "move_to_group", "args": { "group": 4 } },
    	{ "keys": ["ctrl+shift+6"], "command": "move_to_group", "args": { "group": 5 } },
    	{ "keys": ["ctrl+shift+7"], "command": "move_to_group", "args": { "group": 6 } },
    	{ "keys": ["ctrl+shift+8"], "command": "move_to_group", "args": { "group": 7 } },
    	{ "keys": ["ctrl+shift+9"], "command": "move_to_group", "args": { "group": 8 } },
    	{ "keys": ["ctrl+0"], "command": "focus_side_bar" },
    
    	{ "keys": ["ctrl+k", "ctrl+up"], "command": "new_pane" },
    	{ "keys": ["ctrl+k", "ctrl+shift+up"], "command": "new_pane", "args": {"move": false} },
    	{ "keys": ["ctrl+k", "ctrl+down"], "command": "close_pane" },
    	{ "keys": ["ctrl+k", "ctrl+left"], "command": "focus_neighboring_group", "args": {"forward": false} },
    	{ "keys": ["ctrl+k", "ctrl+right"], "command": "focus_neighboring_group" },
    	{ "keys": ["ctrl+k", "ctrl+shift+left"], "command": "move_to_neighboring_group", "args": {"forward": false} },
    	{ "keys": ["ctrl+k", "ctrl+shift+right"], "command": "move_to_neighboring_group" },
    
    	{ "keys": ["alt+1"], "command": "select_by_index", "args": { "index": 0 } },
    	{ "keys": ["alt+2"], "command": "select_by_index", "args": { "index": 1 } },
    	{ "keys": ["alt+3"], "command": "select_by_index", "args": { "index": 2 } },
    	{ "keys": ["alt+4"], "command": "select_by_index", "args": { "index": 3 } },
    	{ "keys": ["alt+5"], "command": "select_by_index", "args": { "index": 4 } },
    	{ "keys": ["alt+6"], "command": "select_by_index", "args": { "index": 5 } },
    	{ "keys": ["alt+7"], "command": "select_by_index", "args": { "index": 6 } },
    	{ "keys": ["alt+8"], "command": "select_by_index", "args": { "index": 7 } },
    	{ "keys": ["alt+9"], "command": "select_by_index", "args": { "index": 8 } },
    	{ "keys": ["alt+0"], "command": "select_by_index", "args": { "index": 9 } },
    
    	{ "keys": ["f2"], "command": "next_bookmark" },
    	{ "keys": ["shift+f2"], "command": "prev_bookmark" },
    	{ "keys": ["ctrl+f2"], "command": "toggle_bookmark" },
    	{ "keys": ["ctrl+shift+f2"], "command": "clear_bookmarks" },
    	{ "keys": ["alt+f2"], "command": "select_all_bookmarks" },
    
    	{ "keys": ["ctrl+shift+k"], "command": "run_macro_file", "args": {"file": "res://Packages/Default/Delete Line.sublime-macro"} },
    
    	{ "keys": ["alt+q"], "command": "wrap_lines" },
    
    	{ "keys": ["ctrl+k", "ctrl+u"], "command": "upper_case" },
    	{ "keys": ["ctrl+k", "ctrl+l"], "command": "lower_case" },
    
    	{ "keys": ["ctrl+k", "ctrl+space"], "command": "set_mark" },
    	{ "keys": ["ctrl+k", "ctrl+a"], "command": "select_to_mark" },
    	{ "keys": ["ctrl+k", "ctrl+w"], "command": "delete_to_mark" },
    	{ "keys": ["ctrl+k", "ctrl+x"], "command": "swap_with_mark" },
    	{ "keys": ["ctrl+k", "ctrl+y"], "command": "yank" },
    	{ "keys": ["ctrl+k", "ctrl+k"], "command": "run_macro_file", "args": {"file": "res://Packages/Default/Delete to Hard EOL.sublime-macro"} },
    	{ "keys": ["ctrl+k", "ctrl+backspace"], "command": "run_macro_file", "args": {"file": "res://Packages/Default/Delete to Hard BOL.sublime-macro"} },
    	{ "keys": ["ctrl+k", "ctrl+g"], "command": "clear_bookmarks", "args": {"name": "mark"} },
    	{ "keys": ["ctrl+k", "ctrl+c"], "command": "show_at_center" },
    
    	{ "keys": ["ctrl++"], "command": "increase_font_size" },
    	{ "keys": ["ctrl+="], "command": "increase_font_size" },
    	{ "keys": ["ctrl+keypad_plus"], "command": "increase_font_size" },
    	{ "keys": ["ctrl+-"], "command": "decrease_font_size" },
    	{ "keys": ["ctrl+keypad_minus"], "command": "decrease_font_size" },
    
    	{ "keys": ["ctrl+equals"], "command": "increase_font_size" },
    	{ "keys": ["ctrl+shift+equals"], "command": "decrease_font_size" },
    	{ "keys": ["ctrl+shift+keypad_plus"], "command": "decrease_font_size" },
    
    	{ "keys": ["alt+shift+w"], "command": "insert_snippet", "args": { "name": "Packages/XML/Snippets/long-tag.sublime-snippet" } },
    
    	{ "keys": ["ctrl+shift+["], "command": "fold" },
    	{ "keys": ["ctrl+shift+]"], "command": "unfold" },
    	{ "keys": ["ctrl+k", "ctrl+1"], "command": "fold_by_level", "args": {"level": 1} },
    	{ "keys": ["ctrl+k", "ctrl+2"], "command": "fold_by_level", "args": {"level": 2} },
    	{ "keys": ["ctrl+k", "ctrl+3"], "command": "fold_by_level", "args": {"level": 3} },
    	{ "keys": ["ctrl+k", "ctrl+4"], "command": "fold_by_level", "args": {"level": 4} },
    	{ "keys": ["ctrl+k", "ctrl+5"], "command": "fold_by_level", "args": {"level": 5} },
    	{ "keys": ["ctrl+k", "ctrl+6"], "command": "fold_by_level", "args": {"level": 6} },
    	{ "keys": ["ctrl+k", "ctrl+7"], "command": "fold_by_level", "args": {"level": 7} },
    	{ "keys": ["ctrl+k", "ctrl+8"], "command": "fold_by_level", "args": {"level": 8} },
    	{ "keys": ["ctrl+k", "ctrl+9"], "command": "fold_by_level", "args": {"level": 9} },
    	{ "keys": ["ctrl+k", "ctrl+0"], "command": "unfold_all" },
    	{ "keys": ["ctrl+k", "ctrl+j"], "command": "unfold_all" },
    	{ "keys": ["ctrl+k", "ctrl+t"], "command": "fold_tag_attributes" },
    
    	{ "keys": ["context_menu"], "command": "context_menu" },
    
    	{ "keys": ["alt+c"], "command": "toggle_case_sensitive", "context":
    		[
    			{ "key": "setting.is_widget", "operator": "equal", "operand": true }
    		]
    	},
    	{ "keys": ["alt+r"], "command": "toggle_regex", "context":
    		[
    			{ "key": "setting.is_widget", "operator": "equal", "operand": true }
    		]
    	},
    	{ "keys": ["alt+w"], "command": "toggle_whole_word", "context":
    		[
    			{ "key": "setting.is_widget", "operator": "equal", "operand": true }
    		]
    	},
    	{ "keys": ["alt+a"], "command": "toggle_preserve_case", "context":
    		[
    			{ "key": "setting.is_widget", "operator": "equal", "operand": true }
    		]
    	},
    
    	// Find panel key bindings
    	{ "keys": ["enter"], "command": "find_next", "context":
    		[{"key": "panel", "operand": "find"}, {"key": "panel_has_focus"}]
    	},
    	{ "keys": ["shift+enter"], "command": "find_prev", "context":
    		[{"key": "panel", "operand": "find"}, {"key": "panel_has_focus"}]
    	},
    	{ "keys": ["alt+enter"], "command": "find_all", "args": {"close_panel": true},
    		 "context": [{"key": "panel", "operand": "find"}, {"key": "panel_has_focus"}]
    	},
    
    	// Replace panel key bindings
    	{ "keys": ["enter"], "command": "find_next", "context":
    		[{"key": "panel", "operand": "replace"}, {"key": "panel_has_focus"}]
    	},
    	{ "keys": ["shift+enter"], "command": "find_prev", "context":
    		[{"key": "panel", "operand": "replace"}, {"key": "panel_has_focus"}]
    	},
    	{ "keys": ["alt+enter"], "command": "find_all", "args": {"close_panel": true},
    		"context": [{"key": "panel", "operand": "replace"}, {"key": "panel_has_focus"}]
    	},
    	{ "keys": ["ctrl+alt+enter"], "command": "replace_all", "args": {"close_panel": true},
    		 "context": [{"key": "panel", "operand": "replace"}, {"key": "panel_has_focus"}]
    	},
    
    	// Incremental find panel key bindings
    	{ "keys": ["enter"], "command": "hide_panel", "context":
    		[{"key": "panel", "operand": "incremental_find"}, {"key": "panel_has_focus"}]
    	},
    	{ "keys": ["shift+enter"], "command": "find_prev", "context":
    		[{"key": "panel", "operand": "incremental_find"}, {"key": "panel_has_focus"}]
    	},
    	{ "keys": ["alt+enter"], "command": "find_all", "args": {"close_panel": true},
    		"context": [{"key": "panel", "operand": "incremental_find"}, {"key": "panel_has_focus"}]
    	},
    
    	// Find in Files panel key bindings
    	{ "keys": ["alt+enter"], "command": "find_all",
    		 "context": [{"key": "panel", "operand": "find_in_files"}, {"key": "panel_has_focus"}]
    	},
    	{ "keys": ["ctrl+alt+enter"], "command": "replace_all",
    		 "context": [{"key": "panel", "operand": "find_in_files"}, {"key": "panel_has_focus"}]
    	},
    
    	// HTML, XML close tag
    	{ "keys": ["/"], "command": "close_tag", "args": { "insert_slash": true }, "context":
    		[
    			{ "key": "selector", "operator": "equal", "operand": "(text.html, text.xml) - string - comment", "match_all": true },
    			{ "key": "preceding_text", "operator": "regex_match", "operand": ".*<$", "match_all": true },
    			{ "key": "setting.auto_close_tags" }
    		]
    	}
    ]
    

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
{ 快速敲代码 } 一、Emmet 1HTML所有未知的缩写都会转换成标签,!+ctrl+E 生成html基本代码,script:src,meta:utf, 2生成Lorem Ipsum文本也非常简单,输入lorem,按Tab键 3如果要生成标题呢,只需减少单词的数量,比如:lorem4将生成下面的标题 4当前HTML代码的基础上添加缩写,将向外扩展代码shift+ctrl+g,弹出:Enter Wrap Abbreviation(输入扩展缩写) 5在鼠标光标处按快捷键ctrl+d,将会选择光标所在标签范围内的所有内容,多次运行将扩大选择。有扩大就有缩小,快捷键:crtl+shift+d,多次运行将缩小选择范围。 6数字递增/递减,快捷键分别是:ctrl+up/down、alt+up/down和ctrl+alt+up/down 7添加与删除注释ctrl+/ 8将光标移动到img或background-image标签上,按下ctrl+shift+u,Emmet会自动读取图片的尺寸并添加 9数学计算表达式,输入4*8再按ctrl+shift+y,Emmet能给出最终的结果 10将图片转换成data:URL模式,将光标放在img或background-image标签的图片上,ctrl+shift+l快捷键,完美的转换。 11后代:> nav>ul>li 12兄弟:+ div+p+bq 13上级:^ div+div>p>span+em^bq 14分组:() div>(header>ul>li*2>a)+footer>p 16乘法:* 17自增符号:$ 18ID和类属性#header .title form#search.wide 19自定义属性p[title="Hello world"] td[rowspan=2 colspan=3 title] 20文本:{} a{Click me} p>{Click }+a{here}+{ to continue} 二、Doc Blockr 在JS函数上方输入/**,然后回车或tab,doc就生成好了非常好用。 { 自动格式调整 } 三、Js Format 格式化js:选中一段文本,control+alt+f。 四、HTMLBeautify Control-Alt-Shift-F 五、Alignment等号对齐 选中文本并按ctrl + alt + a 六、jslint 打开一个js文件,control+j,即可输出jsLint检查的结果。 七、Bracket Highlighter 用于匹配括号,引号和html标签。对于很长的代码很有用。安装好之后,不需要设置插件会自动生效。 BracketHighlighter这个插件能在左侧高亮显示匹配的括号、引号和标签,能匹配的 [] , () , {} , "" , '' 八、Prefixr跨浏览器CSS整理器 九、JsFormt javascript格式化 ctrl+alt+f 十、CSScomb CSS属性排序 ctrl+shift+c 十一、Color Pick ctrl+alt+c -------------------------------------------------------------------- Ctrl+L选择整行(按住-继续选择下行) Ctrl+KK从光标处删除至行尾 Ctrl+Shift+K删除整行 Ctrl+Shift+D复制光标所在整行,插入在该行之前 Ctrl+J合并行(已选择需要合并的多行时) Ctrl+KU改为大写 Ctrl+KL改为小写 Ctrl+D选词(按住-继续选择下个相同的字符串) Ctrl+M光标移动至括号内开始或结束的位置 Ctrl+Shift+M选择括号内的内容(按住-继续选择父括号) Ctrl+/注释整行(如已选择内容,同“Ctrl+Shift+/”效果) Ctrl+Shift+/注释已选择内容 Ctrl+Space自动完成(win与系统快捷键冲突,需修改)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值