File tree 2 files changed +39
-0
lines changed
2 files changed +39
-0
lines changed Original file line number Diff line number Diff line change @@ -44,4 +44,19 @@ exports.activate = function() {
44
44
language ( regex ) { return 'regex' } ,
45
45
content ( regex ) { return regex }
46
46
} )
47
+
48
+ // This feels hacky. Better suggestions welcome.
49
+ const grammar = atom . grammars . grammarForId ( 'source.js' )
50
+ grammar . precedingRowConditions = ( node ) => (
51
+ ( node . parent . type == 'while_statement' && node . type != 'statement_block' )
52
+ || ( node . parent . type == 'jsx_self_closing_element' && node . type != '/' )
53
+ || ( node . parent . type == 'if_statement'
54
+ && ( ! ( node . type == 'if_statement'
55
+ && node . previousSibling . type == 'else'
56
+ && node . previousSibling . startPosition . row == node . startPosition . row )
57
+ /* not an else-if */
58
+ )
59
+ && node . type != 'statement_block'
60
+ && node . type != 'else' )
61
+ )
47
62
}
Original file line number Diff line number Diff line change 11
11
' decreaseIndentPattern' : ' (?x)
12
12
^ \\ s* (\\ s* /[*] .* [*]/ \\ s*)* [}\\ ])]
13
13
'
14
+ scopes :
15
+ indent :
16
+ array : true
17
+ object : true
18
+ arguments : true
19
+ statement_block : true
20
+ class_body : true
21
+ parenthesized_expression : true
22
+ jsx_element : true
23
+ jsx_opening_element : true
24
+ jsx_expression : true
25
+ switch_body : true
26
+ comment : true
27
+ indentExceptFirst :
28
+ member_expression : true
29
+ assignment_expression : true
30
+ expression_statement : true
31
+ variable_declarator : true
32
+ lexical_declaration : true
33
+ binary_expression : true
34
+ types :
35
+ indent : {}
36
+ outdent :
37
+ access_specifier : true
You can’t perform that action at this time.
0 commit comments