abl-tmlanguage 1.3.29 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +12 -14
  2. package/abl.tmLanguage.json +183 -203
  3. package/package.json +1 -1
package/README.md CHANGED
@@ -68,13 +68,13 @@ The ABL-specific scopes produced by the ABL grammar listed in the table below. T
68
68
 
69
69
  | Scope Name | Used for/by |
70
70
  | ------------- | ------------- |
71
- |comment.block.source.abl | Everything between `/*` and `*/` |
71
+ |comment.block.abl | Everything between `/*` and `*/` |
72
72
  |comment.line.double-slash.abl | Everything in a `//` comment, incl. slashes |
73
73
  |comment.preprocessor.analyze-suspend.abl | `&analyze-suspend`, `&analyze-resume` |
74
74
  |constant.character.escape.abl | `~` and the next char |
75
- |constant.language.abl | `today`, `now`, `true`, `false`, `yes`, `no`, `?` (unknown value) |
76
- |constant.language.source.abl | `99/99/9999` (or similar) when used as a format clause |
77
- |constant.numeric.source.abl | 0x00-0xFF, 0-9, scientific notation |
75
+ |constant.language.abl | `true`, `false`, `yes`, `no`, `?` (unknown value) |
76
+ |constant.language.abl | `99/99/9999` (or similar) when used as a format clause |
77
+ |constant.numeric.abl | `0x00`-`0xFF`, `0`-`9`, scientific notation |
78
78
  |entity.name.function.abl | Method call, property call, method name, property name, handle attributes, handle methods, event names |
79
79
  |entity.name.function.preprocessor.abl | Preprocessor names, including built-ins like `opsys` and `process-architecture` |
80
80
  |entity.name.include.abl | Include file names |
@@ -85,23 +85,22 @@ The ABL-specific scopes produced by the ABL grammar listed in the table below. T
85
85
  |entity.name.type.abl | Class/interface/enum names |
86
86
  |entity.name.type.generic.abl | Generic type names |
87
87
  |entity.other.attribute-name.abl | Annotation attribute names |
88
- |keyword.control.directive.conditional.abl | `&if` , `&else`, `&elsif` `&end` |
88
+ |keyword.control.directive.conditional.abl | `&if` , `&else`, `&elseif`, `&end` |
89
89
  |keyword.control.directive.define.abl | `&scoped-define`, `&global-define`, `&undefine` |
90
- |keyword.operator.source.abl | `contains`, `begins`, `matches`, `eq`, `le`, `lt`, `ge`, `gt`, `ne`, `<=`, `<>`, `>=`, `=`, `+`, `-`, `/`, `<`, `>`, `*`, `+=`, `-=`, `/=`, `*=`, `?:` |
90
+ |keyword.operator.abl | `contains`, `begins`, `matches`, `eq`, `le`, `lt`, `ge`, `gt`, `ne`, `<=`, `<>`, `>=`, `=`, `+`, `-`, `/`, `<`, `>`, `*`, `+=`, `-=`, `/=`, `*=`, `?:` |
91
91
  |keyword.other.abl | Any ABL keyword (incl those covered by other scopes like `support.function.abl` and `entity.name.function.abl`) |
92
- |punctuation.accessor.abl | `::` used to reference buffer field names or dataset buffer names|
92
+ |punctuation.accessor.abl | `:` when used for method, property and attribute access. `::` when used to reference buffer field names or dataset buffer names|
93
93
  |punctuation.definition.bracket.square.begin.abl | `[` used for array arguments |
94
94
  |punctuation.definition.bracket.square.end.abl | `]` used for array arguments |
95
95
  |punctuation.definition.generic.begin.abl | `<` used for generic type arguments |
96
96
  |punctuation.definition.generic.end.abl | `>` used for generic type arguments |
97
97
  |punctuation.definition.preprocessor.abl | Leading `&` of referenced preprocessor and directives |
98
- |punctuation.definition.string.begin.abl | Start of a quoted string |
99
- |punctuation.definition.string.end.abl | End of a quoted string |
98
+ |punctuation.definition.string.begin.abl | Starting `"` or `'` of a quoted string |
99
+ |punctuation.definition.string.end.abl | Closing `"` or `'` of a quoted string |
100
100
  |punctuation.section.abl | `{` and `}` |
101
101
  |punctuation.separator.comma.abl | `,` |
102
- |punctuation.separator.continuation | `~` at the end of a line (preprocessor) |
102
+ |punctuation.separator.continuation.abl | `~` at the end of a line (preprocessor) |
103
103
  |punctuation.separator.period.abl | `.` |
104
- |punctuation.separator.colon.abl | `:` |
105
104
  |punctuation.terminator.abl | `.` and `:` |
106
105
  |storage.data.database.abl | Statically-defined database names, e.g.in the `create alias` statement |
107
106
  |storage.data.dataset.abl | Statically-defined dataset names, data-relation names |
@@ -111,7 +110,7 @@ The ABL-specific scopes produced by the ABL grammar listed in the table below. T
111
110
  |storage.type.function.abl | `defined` keyword and preprocessor directives like `&message` |
112
111
  |string.quoted.double.abl | String in `"` quotes |
113
112
  |string.quoted.single.abl | String in `'` quotes |
114
- |support.function.abl | `opsys`, `proversion`, ABL functions (eg `base64-encode`). Note that `TRANSACTION` in a `FOR EACH` statement will be scoped this way |
113
+ |support.function.abl | `opsys`, `proversion`, ABL functions (eg `base64-encode`). Includes functions like `today` that have no or optional parameters. Note that `transaction` in a `for each` statement will be scoped this way |
115
114
  |support.other.abl | Translation attributes `:L`, `:R`, `:T`, `:C`, `:U` |
116
115
  |support.other.argument.abl | `&<name\|number>` arguments in includes |
117
116
  |variable.language.abl | ABL system handles (eg `session` or `this-object`) |
@@ -124,7 +123,7 @@ There are also a number of 'meta' scopes that usually cover multiple other scope
124
123
  |meta.argument.abl | Unnamed arguments like `{1}` |
125
124
  |meta.array.literal.abl | Literal values in an array |
126
125
  |meta.block.abl | A block statement like `do`, `repeat` and ` finally |
127
- |meta.brace.round.js | `(` and `)` |
126
+ |meta.brace.round.abl | `(` and `)` |
128
127
  |meta.declaration.annotation.abl | An annotation from the `@` to the `.` |
129
128
  |meta.define.abl | An entire `define` statement |
130
129
  |meta.define.class.abl | A class definition, from the `class` keyword to its closing `:` |
@@ -137,7 +136,6 @@ There are also a number of 'meta' scopes that usually cover multiple other scope
137
136
  |meta.define-type.implements.abl | The type names that a type implements and/or inherits |
138
137
  |meta.function.arguments.abl | Captures what's between ( and ) when calling a function, excluding the braces |
139
138
  |meta.function-call.abl | The name of an ABL function, including `get-class`, `type-of` and `cast` |
140
- |meta.function.parameters | Parameter definitions |
141
139
  |meta.generic.abl | Generic type names |
142
140
  |meta.include.abl | Include file references, from `{` to `}` |
143
141
  |meta.include.argument.abl | Include argument references like `&arg` and `&arg=` |