{ "comments": { "lineComment": "//", "blockComment": [ "/*", "*/" ] }, "brackets": [ [ "{", "}" ], [ "[", "]" ], [ "(", ")" ] ], "autoClosingPairs": [ { "open": "[", "close": "]" }, { "open": "{", "close": "}" }, { "open": "(", "close": ")" }, { "open": "'", "close": "'", "notIn": [ "string", "comment" ] }, { "open": "\"", "close": "\"", "notIn": [ "string" ] }, { "open": "/*", "close": "*/", "notIn": [ "string", "comment" ] }, { "open": "/**", "close": " */", "notIn": [ "string" ] } ], "surroundingPairs": [ [ "{", "}" ], [ "[", "]" ], [ "(", ")" ], [ "\"", "\"" ], [ "'", "'" ], [ "<", ">" ] ], "wordPattern": "(-?\\d*\\.\\d\\w*)|([^\\`\\~\\!\\@\\#\\%\\^\\&\\*\\(\\)\\-\\=\\+\\[\\{\\]\\}\\\\\\|\\;\\:\\'\\\"\\,\\.\\<\\>\\/\\?\\s]+)", "folding": { "markers": { "start": "^\\s*#pragma\\s+region\\b", "end": "^\\s*#pragma\\s+endregion\\b" } }, "indentationRules": { "decreaseIndentPattern": { "pattern": "^\\s*[\\}\\]\\)].*$" }, "increaseIndentPattern": { "pattern": "^.*(\\{[^}]*|\\([^)]*|\\[[^\\]]*)$" }, }, "onEnterRules": [ { // Decrease indentation after single line if/else if/else, for, or while "previousLineText": "^\\s*(((else ?)?if|for|while)\\s*\\(.*\\)\\s*|else\\s*)$", // But make sure line doesn't have braces or is not another if statement "beforeText": "^\\s+([^{i\\s]|i(?!f\\b))", "action": { "indent": "outdent" } }, // Add // when pressing enter from inside line comment { "beforeText": { "pattern": "\/\/.*" }, "afterText": { "pattern": "^(?!\\s*$).+" }, "action": { "indent": "none", "appendText": "// " } }, ] }