From d1333dd7e51729a581fed3e429fa035bff77a3db Mon Sep 17 00:00:00 2001 From: George Harker Date: Sun, 19 Mar 2023 18:09:18 -0700 Subject: refactor(indent)!: Rework indent, aligned indent MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit indents now use @indent.X style captures, and indent.PROP for properties to set on those captures, as documented in the help. Captures are: indent.auto indent.begin indent.end indent.dedent indent.branch indent.ignore indent.align indent.zero Properties are: indent.immediate indent.start_at_same_line indent.open_delimiter indent.close_delimiter indent.increment indent.avoid_last_matching_next Multiple opening delims on one line and multiple closing on a line are collapsed so as not to over indent, The final line of @indent.align blocks which must in some cases be treated specially to avoid clashing with the next line is treated the same regardless of whether the @indent.align capture actually uses aligned indentation or just normal indentation. The indent.avoid_last_matching_next property controls this. Adjust python to use these. List, set, dict and tuple all use @indent.align which permits both hanging and aligned styles. Finally, try: on it’s own will indent when typing live but make no guaranteeds about whole-file formatting. Includes lucario387:fix-align-indent --- tests/indent/python/error_state_dict.py | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 tests/indent/python/error_state_dict.py (limited to 'tests/indent/python/error_state_dict.py') diff --git a/tests/indent/python/error_state_dict.py b/tests/indent/python/error_state_dict.py new file mode 100644 index 000000000..dec92b1f9 --- /dev/null +++ b/tests/indent/python/error_state_dict.py @@ -0,0 +1,6 @@ + +d = {1:4, + 2:3, + 4:5} + +d2 = {1:3, -- cgit v1.2.3-70-g09d2