Skip to content
This repository was archived by the owner on Dec 15, 2022. It is now read-only.

Commit 936c1f6

Browse files
WliuWliu
authored andcommitted
Merge pull request #50 from svanharmelen/b-continuation-indents
Add a comma to the regexp
2 parents cbf2337 + dadcd51 commit 936c1f6

File tree

2 files changed

+53
-2
lines changed

2 files changed

+53
-2
lines changed

settings/language-go.cson

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@
22
'editor':
33
'commentStart': '// '
44
'increaseIndentPattern': '^.*(\\bcase\\b.*:|\\bdefault\\b:|(\\b(func|if|else|switch|select|for|struct)\\b.*|\\w)\\{[^}]*|\\([^)]*)$'
5-
'decreaseNextIndentPattern': '^\\s*[^\\s()}]+(?<m>[^()]*\\((?:\\g<m>|[^()]*)\\)[^()]*)*[^()]*\\)$'
6-
'decreaseIndentPattern': '^\\s*(\\bcase\\b.*:|\\bdefault\\b:|\\}[),]?|\\))$'
5+
'decreaseIndentPattern': '^\\s*(\\bcase\\b.*:|\\bdefault\\b:|\\}[),]?|\\)[,]?)$'
6+
'decreaseNextIndentPattern': '^\\s*[^\\s()}]+(?<m>[^()]*\\((?:\\g<m>|[^()]*)\\)[^()]*)*[^()]*\\)[,]?$'

spec/language-go-spec.coffee

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
describe 'Go settings', ->
2+
[editor, languageMode] = []
3+
4+
afterEach ->
5+
editor.destroy()
6+
7+
beforeEach ->
8+
waitsForPromise ->
9+
atom.workspace.open('sample.go').then (o) ->
10+
editor = o
11+
languageMode = editor.languageMode
12+
13+
waitsForPromise ->
14+
atom.packages.activatePackage('language-go')
15+
16+
it 'matches lines correctly using the increaseIndentPattern', ->
17+
increaseIndentRegex = languageMode.increaseIndentRegexForScopeDescriptor(['source.go'])
18+
19+
expect(increaseIndentRegex.testSync(' case true:')).toBeTruthy()
20+
expect(increaseIndentRegex.testSync(' default:')).toBeTruthy()
21+
expect(increaseIndentRegex.testSync('func something() {')).toBeTruthy()
22+
expect(increaseIndentRegex.testSync(' if true {')).toBeTruthy()
23+
expect(increaseIndentRegex.testSync(' else {')).toBeTruthy()
24+
expect(increaseIndentRegex.testSync(' switch {')).toBeTruthy()
25+
expect(increaseIndentRegex.testSync(' switch true {')).toBeTruthy()
26+
expect(increaseIndentRegex.testSync(' select {')).toBeTruthy()
27+
expect(increaseIndentRegex.testSync(' select true {')).toBeTruthy()
28+
expect(increaseIndentRegex.testSync(' for v := range val {')).toBeTruthy()
29+
expect(increaseIndentRegex.testSync(' for i := 0; i < 10; i++ {')).toBeTruthy()
30+
expect(increaseIndentRegex.testSync(' for i := 0; i < 10; i++ {')).toBeTruthy()
31+
expect(increaseIndentRegex.testSync(' type something struct {')).toBeTruthy()
32+
expect(increaseIndentRegex.testSync(' fmt.Printf("some%s",')).toBeTruthy()
33+
34+
it 'matches lines correctly using the decreaseIndentPattern', ->
35+
decreaseIndentRegex = languageMode.decreaseIndentRegexForScopeDescriptor(['source.go'])
36+
37+
expect(decreaseIndentRegex.testSync(' case true:')).toBeTruthy()
38+
expect(decreaseIndentRegex.testSync(' default:')).toBeTruthy()
39+
expect(decreaseIndentRegex.testSync(' }')).toBeTruthy()
40+
expect(decreaseIndentRegex.testSync(' },')).toBeTruthy()
41+
expect(decreaseIndentRegex.testSync(' )')).toBeTruthy()
42+
expect(decreaseIndentRegex.testSync(' ),')).toBeTruthy()
43+
44+
it 'matches lines correctly using the decreaseNextIndentPattern', ->
45+
decreaseNextIndentRegex = languageMode.decreaseNextIndentRegexForScopeDescriptor(['source.go'])
46+
47+
expect(decreaseNextIndentRegex.testSync(' fmt.Println("something"))')).toBeTruthy()
48+
expect(decreaseNextIndentRegex.testSync(' fmt.Println("something")),')).toBeTruthy()
49+
50+
expect(decreaseNextIndentRegex.testSync(' fmt.Println("something")')).toBeFalsy()
51+
expect(decreaseNextIndentRegex.testSync(' fmt.Println("something"),')).toBeFalsy()

0 commit comments

Comments
 (0)