diff options
| author | Pham Huy Hoang <hoangtun0810@gmail.com> | 2023-03-25 09:29:32 +0900 |
|---|---|---|
| committer | Amaan Qureshi <amaanq12@gmail.com> | 2023-03-25 00:31:57 -0400 |
| commit | 1ffa01985651f6a5ba88d01e56f09cb76ff6e79a (patch) | |
| tree | c7a08558dca3404298792bcb978cb53e93be19d5 | |
| parent | fix: uninstall function in the install.lua (diff) | |
| download | nvim-treesitter-1ffa01985651f6a5ba88d01e56f09cb76ff6e79a.tar nvim-treesitter-1ffa01985651f6a5ba88d01e56f09cb76ff6e79a.tar.gz nvim-treesitter-1ffa01985651f6a5ba88d01e56f09cb76ff6e79a.tar.bz2 nvim-treesitter-1ffa01985651f6a5ba88d01e56f09cb76ff6e79a.tar.lz nvim-treesitter-1ffa01985651f6a5ba88d01e56f09cb76ff6e79a.tar.xz nvim-treesitter-1ffa01985651f6a5ba88d01e56f09cb76ff6e79a.tar.zst nvim-treesitter-1ffa01985651f6a5ba88d01e56f09cb76ff6e79a.zip | |
feat(python): add match-case indents
| -rw-r--r-- | queries/python/indents.scm | 4 | ||||
| -rw-r--r-- | tests/indent/python/match_case.py | 15 | ||||
| -rw-r--r-- | tests/indent/python_spec.lua | 4 |
3 files changed, 23 insertions, 0 deletions
diff --git a/queries/python/indents.scm b/queries/python/indents.scm index 01933641b..e66f39696 100644 --- a/queries/python/indents.scm +++ b/queries/python/indents.scm @@ -44,6 +44,10 @@ (#set! indent.immediate 1)) ((with_statement) @indent.begin (#set! indent.immediate 1)) +((match_statement) @indent.begin + (#set! indent.immediate 1)) +((case_clause) @indent.begin + (#set! indent.immediate 1)) (if_statement condition: (parenthesized_expression) @indent.align diff --git a/tests/indent/python/match_case.py b/tests/indent/python/match_case.py new file mode 100644 index 000000000..88b56af10 --- /dev/null +++ b/tests/indent/python/match_case.py @@ -0,0 +1,15 @@ +a = 0 + +def test_match_case(): + match a: + case 1: + return + + +def test_match(): + match a: + + +def test_case(): + match a: + case b: diff --git a/tests/indent/python_spec.lua b/tests/indent/python_spec.lua index 6f4e0fec7..2b52d4597 100644 --- a/tests/indent/python_spec.lua +++ b/tests/indent/python_spec.lua @@ -84,6 +84,10 @@ describe("indent Python:", function() run:new_line("line_after_indent.py", { on_line = 49, text = "x", indent = 0 }) run:new_line("line_after_indent.py", { on_line = 55, text = "x", indent = 4 }) run:new_line("line_after_indent.py", { on_line = 63, text = "x", indent = 4 }) + run:new_line("match_case.py", { on_line = 4, text = "pass", indent = 8 }) + run:new_line("match_case.py", { on_line = 5, text = "pass", indent = 12 }) + run:new_line("match_case.py", { on_line = 10, text = "pass", indent = 8 }) + run:new_line("match_case.py", { on_line = 15, text = "pass", indent = 12 }) for _, line in ipairs { 2, 5, 8, 11, 16, 21, 24, 27, 34, 39 } do run:new_line("return_dedent.py", { on_line = line, text = "x", indent = 0 }) |
