Skip to content

Commit

Permalink
Add inner keyword (#63)
Browse files Browse the repository at this point in the history
* Update keywords.YAML-tmLanguage
  • Loading branch information
qhy040404 authored Nov 30, 2022
1 parent 0bbb091 commit f47a0c4
Show file tree
Hide file tree
Showing 7 changed files with 47 additions and 4 deletions.
2 changes: 1 addition & 1 deletion dist/Kotlin.JSON-tmLanguage
Original file line number Diff line number Diff line change
Expand Up @@ -617,7 +617,7 @@
"name": "storage.modifier.kotlin"
},
{
"match": "\\b(?<![+-/%*=(,]\\s)(inline|external|public|private|protected|internal|abstract|final|sealed|enum|open|annotation|expect|actual|const|lateinit)(?=\\s(?!(?:\\s*)(?:[+-/%*=:).,]|$)))\\b",
"match": "\\b(?<![+-/%*=(,]\\s)(inline|inner|external|public|private|protected|internal|abstract|final|sealed|enum|open|annotation|expect|actual|const|lateinit)(?=\\s(?!(?:\\s*)(?:[+-/%*=:).,]|$)))\\b",
"name": "storage.modifier.kotlin",
"comment": "Soft modifiers"
},
Expand Down
2 changes: 1 addition & 1 deletion dist/Kotlin.YAML-tmLanguage
Original file line number Diff line number Diff line change
Expand Up @@ -219,7 +219,7 @@ repository:
match: \b(out|in|yield|typealias|override)\b
name: storage.modifier.kotlin
-
match: '\b(?<![+-/%*=(,]\s)(inline|external|public|private|protected|internal|abstract|final|sealed|enum|open|annotation|expect|actual|const|lateinit)(?=\s(?!(?:\s*)(?:[+-/%*=:).,]|$)))\b'
match: '\b(?<![+-/%*=(,]\s)(inline|inner|external|public|private|protected|internal|abstract|final|sealed|enum|open|annotation|expect|actual|const|lateinit)(?=\s(?!(?:\s*)(?:[+-/%*=:).,]|$)))\b'
name: storage.modifier.kotlin
comment: 'Soft modifiers'
-
Expand Down
2 changes: 1 addition & 1 deletion dist/Kotlin.tmLanguage
Original file line number Diff line number Diff line change
Expand Up @@ -930,7 +930,7 @@
</dict>
<dict>
<key>match</key>
<string>\b(?&lt;![+-/%*=(,]\s)(inline|external|public|private|protected|internal|abstract|final|sealed|enum|open|annotation|expect|actual|const|lateinit)(?=\s(?!(?:\s*)(?:[+-/%*=:).,]|$)))\b</string>
<string>\b(?&lt;![+-/%*=(,]\s)(inline|inner|external|public|private|protected|internal|abstract|final|sealed|enum|open|annotation|expect|actual|const|lateinit)(?=\s(?!(?:\s*)(?:[+-/%*=:).,]|$)))\b</string>
<key>name</key>
<string>storage.modifier.kotlin</string>
<key>comment</key>
Expand Down
4 changes: 4 additions & 0 deletions snapshots/corpus.kt
Original file line number Diff line number Diff line change
Expand Up @@ -159,4 +159,8 @@ object DefaultListener : MouseAdapter() {

class Feature : Node("Title", "Content", "Description") {

}

class Outer {
inner class Inner {}
}
19 changes: 19 additions & 0 deletions snapshots/corpus.kt.snap
Original file line number Diff line number Diff line change
Expand Up @@ -1148,4 +1148,23 @@
# ^ source.kotlin meta.class.kotlin meta.block.kotlin punctuation.section.group.begin.kotlin
>
>}
#^ source.kotlin meta.class.kotlin meta.block.kotlin punctuation.section.group.end.kotlin
>
>class Outer {
#^^^^^ source.kotlin meta.class.kotlin storage.modifier.kotlin
# ^ source.kotlin meta.class.kotlin
# ^^^^^ source.kotlin meta.class.kotlin entity.name.class.kotlin
# ^ source.kotlin meta.class.kotlin
# ^ source.kotlin meta.class.kotlin meta.block.kotlin punctuation.section.group.begin.kotlin
> inner class Inner {}
#^^^^ source.kotlin meta.class.kotlin meta.block.kotlin
# ^^^^^ source.kotlin meta.class.kotlin meta.block.kotlin storage.modifier.kotlin
# ^ source.kotlin meta.class.kotlin meta.block.kotlin
# ^^^^^ source.kotlin meta.class.kotlin meta.block.kotlin meta.class.kotlin storage.modifier.kotlin
# ^ source.kotlin meta.class.kotlin meta.block.kotlin meta.class.kotlin
# ^^^^^ source.kotlin meta.class.kotlin meta.block.kotlin meta.class.kotlin entity.name.class.kotlin
# ^ source.kotlin meta.class.kotlin meta.block.kotlin meta.class.kotlin
# ^ source.kotlin meta.class.kotlin meta.block.kotlin meta.class.kotlin meta.block.kotlin punctuation.section.group.begin.kotlin
# ^ source.kotlin meta.class.kotlin meta.block.kotlin meta.class.kotlin meta.block.kotlin punctuation.section.group.end.kotlin
>}
#^ source.kotlin meta.class.kotlin meta.block.kotlin punctuation.section.group.end.kotlin
2 changes: 1 addition & 1 deletion src/keywords.YAML-tmLanguage
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ repository:
match: \b(out|in|yield|typealias|override)\b
name: storage.modifier.kotlin
-
match: \b(?<![+-/%*=(,]\s)(inline|external|public|private|protected|internal|abstract|final|sealed|enum|open|annotation|expect|actual|const|lateinit)(?=\s(?!(?:\s*)(?:[+-/%*=:).,]|$)))\b
match: \b(?<![+-/%*=(,]\s)(inline|inner|external|public|private|protected|internal|abstract|final|sealed|enum|open|annotation|expect|actual|const|lateinit)(?=\s(?!(?:\s*)(?:[+-/%*=:).,]|$)))\b
name: storage.modifier.kotlin
comment: 'Soft modifiers'
-
Expand Down
20 changes: 20 additions & 0 deletions test/regression/63.test.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
// SYNTAX TEST "source.kotlin" "Recognize inner modifier"

>class Outer {
#^^^^^ source.kotlin meta.class.kotlin storage.modifier.kotlin
# ^ source.kotlin meta.class.kotlin
# ^^^^^ source.kotlin meta.class.kotlin entity.name.class.kotlin
# ^ source.kotlin meta.class.kotlin
# ^ source.kotlin meta.class.kotlin meta.block.kotlin punctuation.section.group.begin.kotlin
> inner class Inner {}
#^^^^ source.kotlin meta.class.kotlin meta.block.kotlin
# ^^^^^ source.kotlin meta.class.kotlin meta.block.kotlin storage.modifier.kotlin
# ^ source.kotlin meta.class.kotlin meta.block.kotlin
# ^^^^^ source.kotlin meta.class.kotlin meta.block.kotlin meta.class.kotlin storage.modifier.kotlin
# ^ source.kotlin meta.class.kotlin meta.block.kotlin meta.class.kotlin
# ^^^^^ source.kotlin meta.class.kotlin meta.block.kotlin meta.class.kotlin entity.name.class.kotlin
# ^ source.kotlin meta.class.kotlin meta.block.kotlin meta.class.kotlin
# ^ source.kotlin meta.class.kotlin meta.block.kotlin meta.class.kotlin meta.block.kotlin punctuation.section.group.begin.kotlin
# ^ source.kotlin meta.class.kotlin meta.block.kotlin meta.class.kotlin meta.block.kotlin punctuation.section.group.end.kotlin
>}
#^ source.kotlin meta.class.kotlin meta.block.kotlin punctuation.section.group.end.kotlin

0 comments on commit f47a0c4

Please sign in to comment.