@@ -2,6 +2,10 @@ name = "C"
grammar = "c"
path_suffixes = ["c"]
line_comments = ["// "]
+decrease_indent_patterns = [
+ { pattern = "^\\s*\\{.*\\}?\\s*$", valid_after = ["if", "for", "while", "do", "switch", "else"] },
+ { pattern = "^\\s*else\\s*$", valid_after = ["if"] }
+]
autoclose_before = ";:.,=}])>"
brackets = [
{ start = "{", end = "}", close = true, newline = true },
@@ -3,7 +3,17 @@
(assignment_expression)
(if_statement)
(for_statement)
+ (while_statement)
+ (do_statement)
+ (else_clause)
] @indent
(_ "{" "}" @end) @indent
(_ "(" ")" @end) @indent
+
+(if_statement) @start.if
+(for_statement) @start.for
+(while_statement) @start.while
+(do_statement) @start.do
+(switch_statement) @start.switch
+(else_clause) @start.else
@@ -2,6 +2,10 @@ name = "C++"
grammar = "cpp"
path_suffixes = ["cc", "hh", "cpp", "h", "hpp", "cxx", "hxx", "c++", "ipp", "inl", "ixx", "cu", "cuh", "C", "H"]
line_comments = ["// ", "/// ", "//! "]
+decrease_indent_patterns = [
+ { pattern = "^\\s*\\{.*\\}?\\s*$", valid_after = ["if", "for", "while", "do", "switch", "else"] },
+ { pattern = "^\\s*else\\s*$", valid_after = ["if"] }
+]
autoclose_before = ";:.,=}])>"
brackets = [
{ start = "{", end = "}", close = true, newline = true },
@@ -1,7 +1,19 @@
[
(field_expression)
(assignment_expression)
+ (if_statement)
+ (for_statement)
+ (while_statement)
+ (do_statement)
+ (else_clause)
] @indent
(_ "{" "}" @end) @indent
(_ "(" ")" @end) @indent
+
+(if_statement) @start.if
+(for_statement) @start.for
+(while_statement) @start.while
+(do_statement) @start.do
+(switch_statement) @start.switch
+(else_clause) @start.else