Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
[
// jj is the keybinding to replace escape key. Vi nav preference.
{
"keys": ["j", "j"],
"command": "_enter_normal_mode",
"args": {
"mode": "mode_insert"
},
"context": [{"key": "vi_insert_mode_aware"}]
},
// Move Lines Up, Down, Left, Right
{
"keys": ["ctrl+option+super+up"],
"command": "swap_line_up"
}, {
"keys": ["ctrl+option+super+down"],
"command": "swap_line_down"
}, {
"keys": ["ctrl+option+super+right"],
"command": "indent"
}, {
"keys": ["ctrl+option+super+left"],
"command": "unindent"
},
// Search in project - plugin command
{ "keys": ["ctrl+alt+j"], "command": "search_in_project" },
// tab key: Used by emmet plugin to expand JSX inside of react
{
"keys": ["tab"],
"command": "expand_abbreviation_by_tab",
// put comma-separated syntax selectors for which
// you want to expandEmmet abbreviations into "operand" key
// instead of SCOPE_SELECTOR.
// Examples: source.js, text.html - source
"context": [
{
"operand": "meta.group.braces.round.js, text.html",
"operator": "equal",
"match_all": true,
"key": "selector"
},
// run only if there's no selected text
{
"match_all": true,
"key": "selection_empty"
},
// don't work if there are active tabstops
{
"operator": "equal",
"operand": false,
"match_all": true,
"key": "has_next_field"
},
// don't work if completion popup is visible and you
// want to insert completion with Tab. If you want to
// expand Emmet with Tab even if popup is visible --
// remove this section
{
"operand": false,
"operator": "equal",
"match_all": true,
"key": "auto_complete_visible"
},
{
"match_all": true,
"key": "is_abbreviation"
}
]
}
]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment