From b9e5cfef5f846bb766caec3f42f2b29196da865d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Dudr?= Date: Mon, 24 Feb 2025 06:04:38 +0100 Subject: [PATCH] nvim: bring back c_sharp indents --- dot_config/nvim/queries/c_sharp/indents.scm | 117 ++++++++++++++++++++ 1 file changed, 117 insertions(+) create mode 100644 dot_config/nvim/queries/c_sharp/indents.scm diff --git a/dot_config/nvim/queries/c_sharp/indents.scm b/dot_config/nvim/queries/c_sharp/indents.scm new file mode 100644 index 0000000..72cc8cb --- /dev/null +++ b/dot_config/nvim/queries/c_sharp/indents.scm @@ -0,0 +1,117 @@ +[ + (property_declaration) + ; (field_declaration) + (variable_declaration) + (accessor_declaration) + + ; (declaration_list) + + (parameter_list) + (type_parameter_list) + (accessor_list) + (attribute_argument_list) + (base_list) + (argument_list) + + (binary_expression) + (expression_statement) + (return_statement) + (local_declaration_statement) + (local_function_statement) + (yield_statement) + (fixed_statement) + (unsafe_statement) + (labeled_statement) + (for_each_statement) + (for_statement) + (if_statement) + (switch_expression) + (switch_section) + (switch_statement) + (while_statement) + (lambda_expression) + (do_statement) + (checked_statement) + (try_statement) + (using_statement) + (local_function_statement) + (object_creation_expression) + (array_creation_expression) + (implicit_object_creation_expression) + + ] @indent.begin + +(method_declaration body: _ @indent.begin) +(namespace_declaration body: _ @indent.begin) +(record_declaration body: _ @indent.begin) +(class_declaration body: _ @indent.begin) +(struct_declaration body: _ @indent.begin) +(constructor_declaration body: _ @indent.begin) +(interface_declaration body: _ @indent.begin) +(enum_declaration body: _ @indent.begin) + +(property_declaration (accessor_list "{" @indent.branch) @indent.dedent) + +(switch_section + (case_switch_label) (case_switch_label) @indent.branch) + + +(if_statement (block "{" @indent.branch)) +(if_statement alternative: (if_statement) @indent.dedent) + +(while_statement + (block "{" @indent.branch)) + +(array_creation_expression + (initializer_expression "{" @indent.branch)) +(object_creation_expression + (initializer_expression "{" @indent.branch)) +(implicit_object_creation_expression + (initializer_expression "{" @indent.branch)) + +(for_each_statement + body: (block "{" @indent.branch)) + +(lambda_expression + body: (block "{" @indent.branch)) + +(for_statement + body: (block "{" @indent.branch)) + +(switch_expression "{" @indent.branch) + +(switch_statement + (switch_body "{" @indent.branch)) + +(try_statement + body: (block "{" @indent.branch)) +(catch_clause + body: (block "{" @indent.branch)) +(finally_clause + (block "{" @indent.branch)) + +(fixed_statement + (block "{" @indent.branch)) + +(using_statement + body: (block "{" @indent.branch)) + +["catch" "finally" "else" "}" "]" ")" ] @indent.branch + +["}" ")" "]" ] @indent.end + +(expression_statement ";" @indent.end) + +(local_function_statement ";" @indent.end) +(local_declaration_statement ";" @indent.end) + +; this is fucked up, because grammer doesn't match # as part of the token +[ + (if_directive) + (else_directive) + (elif_directive) + (endif_directive) + (nullable_directive) + (pragma_directive) + (undef_directive) + ] @indent.zero