From 4d826a0fe05872e15ccd55cc0295d6a5a4e8f93f Mon Sep 17 00:00:00 2001 From: Kevin Rose Date: Wed, 18 Oct 2017 02:23:50 -0500 Subject: [PATCH 1/5] Add async indent patterns. --- settings/language-python.cson | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/settings/language-python.cson b/settings/language-python.cson index e9105bb..0d2c66c 100644 --- a/settings/language-python.cson +++ b/settings/language-python.cson @@ -4,5 +4,5 @@ 'softTabs': true 'tabLength': 4 'commentStart': '# ' - 'increaseIndentPattern': '^\\s*(class|def|elif|else|except|finally|for|if|try|with|while)\\b.*:\\s*$' + 'increaseIndentPattern': '^\\s*(class|def|elif|else|except|finally|for|if|try|with|while|async def|async for|async with)\\b.*:\\s*$' 'decreaseIndentPattern': '^\\s*(elif|else|except|finally)\\b.*:\\s*$' From 32ed25dcc3507b345fdb4b000041e17ec9371087 Mon Sep 17 00:00:00 2001 From: Kevin Rose Date: Wed, 18 Oct 2017 02:23:59 -0500 Subject: [PATCH 2/5] Add tests for async indent patterns. --- spec/language-python-spec.coffee | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/spec/language-python-spec.coffee b/spec/language-python-spec.coffee index 47fd519..1a69570 100644 --- a/spec/language-python-spec.coffee +++ b/spec/language-python-spec.coffee @@ -18,10 +18,14 @@ describe 'Python settings', -> expect(increaseIndentRegex.testSync('for i in range(n):')).toBeTruthy() expect(increaseIndentRegex.testSync(' for i in range(n):')).toBeTruthy() + expect(increaseIndentRegex.testSync('async for i in range(n):')).toBeTruthy() + expect(increaseIndentRegex.testSync(' async for i in range(n):')).toBeTruthy() expect(increaseIndentRegex.testSync('class TheClass(Object):')).toBeTruthy() expect(increaseIndentRegex.testSync(' class TheClass(Object):')).toBeTruthy() expect(increaseIndentRegex.testSync('def f(x):')).toBeTruthy() expect(increaseIndentRegex.testSync(' def f(x):')).toBeTruthy() + expect(increaseIndentRegex.testSync('async def f(x):')).toBeTruthy() + expect(increaseIndentRegex.testSync(' async def f(x):')).toBeTruthy() expect(increaseIndentRegex.testSync('if this_var == that_var:')).toBeTruthy() expect(increaseIndentRegex.testSync(' if this_var == that_var:')).toBeTruthy() expect(increaseIndentRegex.testSync('elif this_var == that_var:')).toBeTruthy() @@ -36,6 +40,8 @@ describe 'Python settings', -> expect(increaseIndentRegex.testSync(' finally:')).toBeTruthy() expect(increaseIndentRegex.testSync('with open("filename") as f:')).toBeTruthy() expect(increaseIndentRegex.testSync(' with open("filename") as f:')).toBeTruthy() + expect(increaseIndentRegex.testSync('async with open("filename") as f:')).toBeTruthy() + expect(increaseIndentRegex.testSync(' async with open("filename") as f:')).toBeTruthy() expect(increaseIndentRegex.testSync('while True:')).toBeTruthy() expect(increaseIndentRegex.testSync(' while True:')).toBeTruthy() expect(increaseIndentRegex.testSync('\t\t while True:')).toBeTruthy() From 7f8ea3bb40d013667fa5eaec73daad98af4689a1 Mon Sep 17 00:00:00 2001 From: Kevin Rose Date: Wed, 18 Oct 2017 02:25:48 -0500 Subject: [PATCH 3/5] Update path to test file so it exists in a directory from tests point of view. --- spec/language-python-spec.coffee | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spec/language-python-spec.coffee b/spec/language-python-spec.coffee index 1a69570..72fcecd 100644 --- a/spec/language-python-spec.coffee +++ b/spec/language-python-spec.coffee @@ -6,7 +6,7 @@ describe 'Python settings', -> beforeEach -> waitsForPromise -> - atom.workspace.open('sample.py').then (o) -> + atom.workspace.open('../../sample.py').then (o) -> editor = o languageMode = editor.languageMode From d8cc1f6612e0b1470982171b806a4aa0807de5f2 Mon Sep 17 00:00:00 2001 From: Kevin Rose Date: Fri, 20 Oct 2017 08:45:50 -0500 Subject: [PATCH 4/5] Simplify async pattern w/ suggestion from 50Wliu --- settings/language-python.cson | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/settings/language-python.cson b/settings/language-python.cson index 0d2c66c..001e981 100644 --- a/settings/language-python.cson +++ b/settings/language-python.cson @@ -4,5 +4,5 @@ 'softTabs': true 'tabLength': 4 'commentStart': '# ' - 'increaseIndentPattern': '^\\s*(class|def|elif|else|except|finally|for|if|try|with|while|async def|async for|async with)\\b.*:\\s*$' + 'increaseIndentPattern': '^\\s*(class|def|elif|else|except|finally|for|if|try|with|while|async\\s+(def|for|with))\\b.*:\\s*$' 'decreaseIndentPattern': '^\\s*(elif|else|except|finally)\\b.*:\\s*$' From 6983f1dc9c620b7e185d38e6b22e971a0f4e0316 Mon Sep 17 00:00:00 2001 From: Kevin Rose Date: Fri, 20 Oct 2017 08:47:34 -0500 Subject: [PATCH 5/5] Remove unneeded filename from open call in spec --- spec/language-python-spec.coffee | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spec/language-python-spec.coffee b/spec/language-python-spec.coffee index 72fcecd..e5b431e 100644 --- a/spec/language-python-spec.coffee +++ b/spec/language-python-spec.coffee @@ -6,7 +6,7 @@ describe 'Python settings', -> beforeEach -> waitsForPromise -> - atom.workspace.open('../../sample.py').then (o) -> + atom.workspace.open().then (o) -> editor = o languageMode = editor.languageMode