abl-tmlanguage 1.3.13 → 1.3.14

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.
@@ -12,6 +12,49 @@
12
12
  }
13
13
  ],
14
14
  "repository": {
15
+ "trigger-procedure": {
16
+ "begin": "(?i)\\b(trigger)\\s+(proce(?:dure|dur|du|d)?)\\b",
17
+ "beginCaptures": {
18
+ "1": {
19
+ "name": "keyword.other.abl"
20
+ },
21
+ "2": {
22
+ "name": "keyword.other.abl"
23
+ }
24
+ },
25
+ "end": "(?=:|\\.)",
26
+ "endCaptures": {
27
+ "1": {
28
+ "name": "punctuation.terminator.abl"
29
+ }
30
+ },
31
+ "patterns": [
32
+ {
33
+ "include": "#comment"
34
+ },
35
+ {
36
+ "include": "#preprocessors"
37
+ },
38
+ {
39
+ "include": "#primitive-type"
40
+ },
41
+ {
42
+ "include": "#variable-as"
43
+ },
44
+ {
45
+ "include": "#variable-like"
46
+ },
47
+ {
48
+ "include": "#keywords"
49
+ },
50
+ {
51
+ "include": "#db-dot-table"
52
+ },
53
+ {
54
+ "include": "#string"
55
+ }
56
+ ]
57
+ },
15
58
  "procedure-definition": {
16
59
  "name": "meta.procedure.abl",
17
60
  "comment": "Look ahead to the procedure name, quoted or not. It will be resolved in the patterns. 'Names must begin with a letter.' from https://docs.progress.com/bundle/openedge-abl-manage-applications/page/Name-limits.html",
@@ -433,6 +476,12 @@
433
476
  {
434
477
  "include": "#comment"
435
478
  },
479
+ {
480
+ "include": "#buffer-copy"
481
+ },
482
+ {
483
+ "include": "#trigger-procedure"
484
+ },
436
485
  {
437
486
  "include": "#abl-function-variable-arg"
438
487
  },
@@ -1093,8 +1142,8 @@
1093
1142
  }
1094
1143
  },
1095
1144
  "db-dot-table": {
1096
- "match": "(?i)\\b([a-zA-Z_][a-zA-Z0-9#$\\-_%&]*(\\.[a-zA-Z_][a-zA-Z0-9#$\\-_%&]*)?)\\b",
1097
- "comment": "Looks for format of 'table', with an optional preceding 'db.'. This pattern may conflict with type names",
1145
+ "match": "(?i)\\b([a-zA-Z_][a-zA-Z0-9#$\\-_%&]*(\\.[a-zA-Z_][a-zA-Z0-9#$\\-_%&]*)?)(?=[^a-zA-Z0-9#$\\-_%&])",
1146
+ "comment": "Looks for format of 'table', with an optional preceding 'db.'. This pattern may conflict with type names. The last option must not be a word boundary since that includes dashes",
1098
1147
  "captures": {
1099
1148
  "1": {
1100
1149
  "name": "storage.data.table.abl"
@@ -1622,7 +1671,7 @@
1622
1671
  }
1623
1672
  },
1624
1673
  "variable-as": {
1625
- "match": "\\s*([a-zA-Z0-9_\\-#$%\\-]+)\\s+([Aa][Ss])\\s*",
1674
+ "match": "\\s*([a-zA-Z0-9_\\-#$%\\-]+)\\s+([Aa][Ss])\\b",
1626
1675
  "captures": {
1627
1676
  "1": {
1628
1677
  "name": "variable.other.abl"
@@ -1719,7 +1768,7 @@
1719
1768
  "name": "keyword.other.abl"
1720
1769
  }
1721
1770
  },
1722
- "end": "(\\.)",
1771
+ "end": "(\\.)(?!\\w)",
1723
1772
  "endCaptures": {
1724
1773
  "1": {
1725
1774
  "name": "punctuation.terminator.abl"
@@ -2168,10 +2217,10 @@
2168
2217
  "end": "(?=\\.)",
2169
2218
  "patterns": [
2170
2219
  {
2171
- "include": "#keywords"
2220
+ "include": "#abl-functions"
2172
2221
  },
2173
2222
  {
2174
- "include": "#abl-functions"
2223
+ "include": "#keywords"
2175
2224
  },
2176
2225
  {
2177
2226
  "match": "\\b([a-zA-Z0-9][a-zA-Z0-9_\\-]*)\\b",
@@ -2280,6 +2329,9 @@
2280
2329
  "name": "storage.data.table.abl"
2281
2330
  }
2282
2331
  }
2332
+ },
2333
+ {
2334
+ "include": "#comment"
2283
2335
  }
2284
2336
  ]
2285
2337
  },
@@ -2430,15 +2482,45 @@
2430
2482
  ]
2431
2483
  },
2432
2484
  "define-frame": {
2433
- "match": "(?i)\\s*((?:fram(?:e)?))\\s*([a-zA-Z_][a-zA-Z0-9_#$\\-%&]*)",
2434
- "captures": {
2485
+ "begin": "(?i)\\s*((?:fram(?:e)?))\\s*([a-zA-Z_][a-zA-Z0-9_#$\\-%&]*)",
2486
+ "beginCaptures": {
2435
2487
  "1": {
2436
2488
  "name": "keyword.other.abl"
2437
2489
  },
2438
2490
  "2": {
2439
2491
  "name": "variable.other.abl"
2440
2492
  }
2441
- }
2493
+ },
2494
+ "end": "(?=[Ww][Ii][Tt][Hh]|\\.(?!\\w))",
2495
+ "patterns": [
2496
+ {
2497
+ "include": "#comment"
2498
+ },
2499
+ {
2500
+ "include": "#string"
2501
+ },
2502
+ {
2503
+ "include": "#numeric"
2504
+ },
2505
+ {
2506
+ "include": "#preprocessors"
2507
+ },
2508
+ {
2509
+ "include": "#abl-functions"
2510
+ },
2511
+ {
2512
+ "include": "#keywords"
2513
+ },
2514
+ {
2515
+ "include": "#db-dot-table-dot-field"
2516
+ },
2517
+ {
2518
+ "include": "#constant"
2519
+ },
2520
+ {
2521
+ "include": "#variable-name"
2522
+ }
2523
+ ]
2442
2524
  },
2443
2525
  "define-variable": {
2444
2526
  "comment": "This rule captures just the variable name and the data type. Based on https://docs.progress.com/bundle/abl-reference/page/DEFINE-VARIABLE-statement.html",
@@ -3356,6 +3438,9 @@
3356
3438
  {
3357
3439
  "include": "#constant"
3358
3440
  },
3441
+ {
3442
+ "include": "#timestamp-constant"
3443
+ },
3359
3444
  {
3360
3445
  "include": "#type-reference"
3361
3446
  },
@@ -3576,34 +3661,33 @@
3576
3661
  "name": "variable.parameter.abl"
3577
3662
  },
3578
3663
  "run-statement": {
3664
+ "begin": "\\b([Rr][Uu][Nn])\\b",
3665
+ "beginCaptures": {
3666
+ "1": {
3667
+ "name": "keyword.other.abl"
3668
+ }
3669
+ },
3670
+ "end": "(?i)(?=\\.|value|set|persistent|single-run|singleton|on|no-error|in|asynchronous|\\()",
3579
3671
  "patterns": [
3580
3672
  {
3581
- "include": "#run-unquoted"
3673
+ "include": "#string"
3582
3674
  },
3583
3675
  {
3584
- "include": "#run-quoted"
3585
- }
3586
- ]
3587
- },
3588
- "run-quoted": {
3589
- "match": "(?i)\\s*(run)\\s+(?!value)\\s*(['\"].*['\"])",
3590
- "captures": {
3591
- "1": {
3592
- "name": "keyword.other.abl"
3676
+ "include": "#argument-reference"
3593
3677
  },
3594
- "2": {
3595
- "name": "entity.name.procedure.abl"
3678
+ {
3679
+ "include": "#comment"
3680
+ },
3681
+ {
3682
+ "include": "#procedure-name"
3596
3683
  }
3597
- }
3684
+ ]
3598
3685
  },
3599
- "run-unquoted": {
3686
+ "procedure-name": {
3600
3687
  "comment": "(External) Program names are files, so need to support unicode.",
3601
- "match": "(?i)\\s*(run)\\s+(?!value)\\s*([\\w\\-$\\@\\/\\\\\\.]{1,256})(?<!\\.)",
3688
+ "match": "([\\w\\-\\$\\@\\/\\\\\\.]{1,256})(?=\\b|\\.$)",
3602
3689
  "captures": {
3603
3690
  "1": {
3604
- "name": "keyword.other.abl"
3605
- },
3606
- "2": {
3607
3691
  "name": "entity.name.procedure.abl"
3608
3692
  }
3609
3693
  }
@@ -3788,7 +3872,7 @@
3788
3872
  "comment": "https://docs.progress.com/bundle/abl-reference/page/Data-types.html"
3789
3873
  },
3790
3874
  "numeric": {
3791
- "match": "(?<![a-zA-Z0-9_\\-#$%-])(0[xX]\\h+)|(\\-?[0-9]+(\\.[0-9]+)?)",
3875
+ "match": "(?<![a-zA-Z0-9_\\-#$%-])(0[xX]\\h+)|(\\-?\\.?[0-9]+(\\.[0-9]+)?)",
3792
3876
  "name": "constant.numeric.source.abl"
3793
3877
  },
3794
3878
  "abl-system-handles": {
@@ -3942,7 +4026,7 @@
3942
4026
  },
3943
4027
  {
3944
4028
  "comment": " NEW <buffer>. The position of the negative lookahead (?!...) is very important",
3945
- "match": "(?i)\\s*((new)\\s+(?!.*\\()([a-zA-Z_][a-zA-Z0-9_\\-#$%\\.]*))",
4029
+ "match": "(?i)\\s*((new)\\s+(?!.*\\()([a-zA-Z_{][a-zA-Z0-9_\\-#$%\\.{&}]*))",
3946
4030
  "captures": {
3947
4031
  "2": {
3948
4032
  "name": "support.function.abl"
@@ -3954,6 +4038,159 @@
3954
4038
  }
3955
4039
  ]
3956
4040
  },
4041
+ "assign-statment": {
4042
+ "patterns": [
4043
+ {
4044
+ "include": "#abl-functions"
4045
+ },
4046
+ {
4047
+ "include": "#language-functions"
4048
+ },
4049
+ {
4050
+ "include": "#string"
4051
+ },
4052
+ {
4053
+ "include": "#expression"
4054
+ },
4055
+ {
4056
+ "include": "#argument-reference"
4057
+ },
4058
+ {
4059
+ "include": "#preprocessors"
4060
+ },
4061
+ {
4062
+ "include": "#attribute-access"
4063
+ },
4064
+ {
4065
+ "include": "#buffer-name"
4066
+ },
4067
+ {
4068
+ "include": "#can-find"
4069
+ },
4070
+ {
4071
+ "include": "#abl-system-handles"
4072
+ },
4073
+ {
4074
+ "include": "#db-dot-table-dot-field"
4075
+ },
4076
+ {
4077
+ "include": "#extent"
4078
+ },
4079
+ {
4080
+ "include": "#function-arguments"
4081
+ },
4082
+ {
4083
+ "include": "#get-class"
4084
+ },
4085
+ {
4086
+ "include": "#handle-attributes"
4087
+ },
4088
+ {
4089
+ "include": "#handle-methods"
4090
+ },
4091
+ {
4092
+ "include": "#if-then"
4093
+ },
4094
+ {
4095
+ "include": "#operator"
4096
+ },
4097
+ {
4098
+ "include": "#type-member-call"
4099
+ },
4100
+ {
4101
+ "include": "#include-file"
4102
+ },
4103
+ {
4104
+ "include": "#new-record"
4105
+ },
4106
+ {
4107
+ "include": "#new-class"
4108
+ },
4109
+ {
4110
+ "include": "#record-buffer-functions"
4111
+ },
4112
+ {
4113
+ "include": "#rowid-function"
4114
+ },
4115
+ {
4116
+ "include": "#type-names"
4117
+ }
4118
+ ]
4119
+ },
4120
+ "buffer-copy": {
4121
+ "begin": "(?i)\\b(buffer-copy)\\s+([a-zA-Z_][a-zA-Z0-9_\\-#$%]+(\\.[a-zA-Z][a-zA-Z0-9_\\-#$%]*)?)",
4122
+ "beginCaptures": {
4123
+ "1": {
4124
+ "name": "keyword.other.abl"
4125
+ },
4126
+ "2": {
4127
+ "name": "storage.data.table.abl"
4128
+ }
4129
+ },
4130
+ "end": "(?=\\.)",
4131
+ "patterns": [
4132
+ {
4133
+ "match": "\\b([Tt][Oo])\\s+([a-zA-Z_][a-zA-Z0-9_\\-#$%]+(\\.[a-zA-Z][a-zA-Z0-9_\\-#$%]*)?)",
4134
+ "captures": {
4135
+ "1": {
4136
+ "name": "keyword.other.abl"
4137
+ },
4138
+ "2": {
4139
+ "name": "storage.data.table.abl"
4140
+ }
4141
+ }
4142
+ },
4143
+ {
4144
+ "include": "#using-except"
4145
+ },
4146
+ {
4147
+ "include": "#comment"
4148
+ },
4149
+ {
4150
+ "include": "#preprocessors"
4151
+ },
4152
+ {
4153
+ "match": "(?i)\\b(assign|no-lobs|no-error)\\b",
4154
+ "captures": {
4155
+ "1": {
4156
+ "name": "keyword.other.abl"
4157
+ }
4158
+ }
4159
+ },
4160
+ {
4161
+ "include": "#db-dot-table-dot-field"
4162
+ },
4163
+ {
4164
+ "include": "#assign-statment"
4165
+ },
4166
+ {
4167
+ "include": "#keywords"
4168
+ },
4169
+ {
4170
+ "include": "#expression"
4171
+ }
4172
+ ]
4173
+ },
4174
+ "using-except": {
4175
+ "begin": "(?i)\\b(using|except)\\b",
4176
+ "beginCaptures": {
4177
+ "1": {
4178
+ "name": "keyword.other.abl"
4179
+ }
4180
+ },
4181
+ "end": "(?i)\\s*(?=to|using|except)\\b",
4182
+ "patterns": [
4183
+ {
4184
+ "include": "#field-name"
4185
+ },
4186
+ {
4187
+ "include": "#comment"
4188
+ },
4189
+ {
4190
+ "include": "#preprocessors"
4191
+ }
4192
+ ]
4193
+ },
3957
4194
  "keywords": {
3958
4195
  "comment": "These scopes contain statements, not all the keywords. Methods, attributes and functions have their own scopes.",
3959
4196
  "patterns": [
@@ -4036,7 +4273,7 @@
4036
4273
  },
4037
4274
  "keywords-A": {
4038
4275
  "comment": "The keyword must not have a trailing variable character (one of #$-_%&)",
4039
- "match": "(?i)\\b(a(?:mbiguous?|mbiguo?|mbig|uto-go|vailable?|vailab?|vail|bstract|ccumulate?|ccumula?|ccumu?|cross|ctive-form|ctive-window|dd|dvise|ggregate|lert-box|ll|llow-replication|lter|lternate-key|nd|nsi-only|ny|nywhere|ppend|pplication|pply|rray-message?|rray-messa?|rray-mes?|rray-m|s|s-cursor|scending?|scendi?|scen?|sc|sk-overwrite|ssembly|ssign|t|ttach|ttachment|ttribute-type|udit-control|udit-policy|uthorization|uto-endkey|utomatic|verage?|vera?|ve|vg|ppend-line|bort|ny-key|ny-printable))\\b(?![#$\\-_%&])",
4276
+ "match": "(?i)\\b(a(?:bort|bstract|ccumulate?|ccumula?|ccumu?|cross|ctive-form|ctive-window|dd|dvise|ggregate|lert-box|ll|llow-replication|lter|lternate-key|mbiguous?|mbiguo?|mbig|nd|nsi-only|ny|ny-key|ny-printable|nywhere|ppend|ppend-line|pplication|pply|rray-message?|rray-messa?|rray-mes?|rray-m|s|s-cursor|scending?|scendi?|scen?|sc|sk-overwrite|ssembly|ssign|t|ttach|ttachment|ttribute-type|udit-control|udit-policy|uthorization|uto-endkey|uto-go|utomatic|vailable?|vailab?|vail|verage?|vera?|ve|vg))\\b(?![#$\\-_%&])",
4040
4277
  "captures": {
4041
4278
  "1": {
4042
4279
  "name": "keyword.other.abl"
@@ -4045,7 +4282,7 @@
4045
4282
  },
4046
4283
  "keywords-B": {
4047
4284
  "comment": "The keyword must not have a trailing variable character (one of #$-_%&)",
4048
- "match": "(?i)\\b(b(?:gcolor?|gcol?|gc|ell|lock-level?|lock-lev|uffer-compare?|uffer-compa?|uffer-copy|rowse|uffer|uttons?|ackwards?|ase-key|ase64|atch|efore-hide?|efore-hi?|egins|etween|ig-endian|inary|ind|ind-where|lob|order-bottom?|order-bott?|order-bo?|order-left?|order-le?|order-right?|order-rig?|order-r|order-top?|order-t|oth|ottom|reak|rowse-column-data-types|rowse-column-formats|rowse-column-labels|rowse-header|tos|uttons?|y|y-pointer|y-reference|y-value|y-variant-pointer?|y-variant-point|yte|ackspace|reak-line|lock|ack-tab|ottom-column))\\b(?![#$\\-_%&])",
4285
+ "match": "(?i)\\b(b(?:ack-tab|ackspace|ackwards?|ase-key|ase64|atch|efore-hide?|efore-hi?|egins|ell|etween|gcolor?|gcol?|gc|ig-endian|inary|ind|ind-where|lob|lock|lock-level?|lock-lev|order-bottom?|order-bott?|order-bo?|order-left?|order-le?|order-right?|order-rig?|order-r|order-top?|order-t|oth|ottom|ottom-column|reak|reak-line|rowse|rowse-column-data-types|rowse-column-formats|rowse-column-labels|rowse-header|tos|uffer|uffer-compare?|uffer-compa?|uffer-copy|uttons?|uttons?|y|y-pointer|y-reference|y-value|y-variant-pointer?|y-variant-point|yte))\\b(?![#$\\-_%&])",
4049
4286
  "captures": {
4050
4287
  "1": {
4051
4288
  "name": "keyword.other.abl"
@@ -4054,7 +4291,7 @@
4054
4291
  },
4055
4292
  "keywords-C": {
4056
4293
  "comment": "The keyword must not have a trailing variable character (one of #$-_%&)",
4057
- "match": "(?i)\\b(c(?:entered?|enter|olumn-label?|olumn-lab|ontext-help-id|all|ase|atch|hoose|lass|lear|lose|olor|ompile|onnect|onstructor|opy-lob|reate|lient-principal|urrent-language?|urrent-langua?|urrent-lang|urrent-value|ursor?|urs|ache|ache-size|decl|hained|haracter?|haract?|hara?|haracter_length|heck|heck-mem-stomp|lipboard|lob|odebase-locator|ol|ol-of|ollate|olon|olon-aligned?|olon-align|olor-table|olumn-codepage|olumn-label-bgcolor?|olumn-label-bgcol?|olumn-label-bgc|olumn-label-dcolor|olumn-label-fgcolor?|olumn-label-fgcol?|olumn-label-fgc|olumn-label-font|olumn-label-height-chars?|olumn-label-height-cha?|olumn-label-height-c|olumn-label-height-pixels?|olumn-label-height-pixe?|olumn-label-height-pi?|olumn-of|olumns?|om-self|ombo-box|ommand|ompares?|ompiler|omponent-handle|omponent-self|onstrained|ontains|ontents|ontext|ontext-popup?|ontext-pop|ontrol|ontrol-container?|ontrol-contain?|ontrol-conta?|ontrol-frame?|onvert|ount|reate-on-add|reate-test-file|tos|urrent|urrent_date|ursor-up|ursor-down|ursor-left|ursor-right|hoices|ancel-pick|ut|opy|ontainer-event))\\b(?![#$\\-_%&])",
4294
+ "match": "(?i)\\b(c(?:ache|ache-size|all|ancel-pick|ase|atch|decl|entered?|enter|hained|haracter_length|haracter?|haract?|hara?|heck|heck-mem-stomp|hoices|hoose|lass|lear|lient-principal|lipboard|lob|lose|odebase-locator|ol|ol-of|ollate|olon|olon-aligned?|olon-align|olor|olor-table|olumn-codepage|olumn-label-bgcolor?|olumn-label-bgcol?|olumn-label-bgc|olumn-label-dcolor|olumn-label-fgcolor?|olumn-label-fgcol?|olumn-label-fgc|olumn-label-font|olumn-label-height-chars?|olumn-label-height-cha?|olumn-label-height-c|olumn-label-height-pixels?|olumn-label-height-pixe?|olumn-label-height-pi?|olumn-label?|olumn-lab|olumn-of|olumns?|om-self|ombo-box|ommand|ompares?|ompiler??|omponent-handle|omponent-self|onnect|onstrained|onstructor|ontainer-event|ontains|ontents|ontext|ontext-help-id|ontext-popup?|ontext-pop|ontrol|ontrol-container?|ontrol-contain?|ontrol-conta?|ontrol-frame?|onvert|opy|opy-lob|ount|reate|reate-on-add|reate-test-file|tos|urrent|urrent-language?|urrent-langua?|urrent-lang|urrent-value|urrent_date|ursor-down|ursor-left|ursor-right|ursor-up|ursor?|urs|ut))\\b(?![#$\\-_%&])",
4058
4295
  "captures": {
4059
4296
  "1": {
4060
4297
  "name": "keyword.other.abl"
@@ -4063,7 +4300,7 @@
4063
4300
  },
4064
4301
  "keywords-D": {
4065
4302
  "comment": "The keyword must not have a trailing variable character (one of #$-_%&)",
4066
- "match": "(?i)\\b(d(?:color|efault|elete|elimiter|rop-target|atabase|ataset|ata-source|de|efine?|efi?|estructor|ictionary?|ictiona?|ictio?|ict|isable|isconnect?|isconne?|iscon|isplay?|ispl?|os??|own|ynamic-current-value|ynamic-new|ynamic-property|ata-bind?|ata-bi?|ata-relation?|ata-relati?|ata-rela?|ataset-handle|ebug-list|ebug-set-tenant|ebugger|eclare|efault-extension?|efault-extensi?|efault-exten?|efault-ext?|efault-untranslatable|efault-window|efer-lob-fetch|efine-user-event-manager|elegate|escending?|escendi?|escen?|esc|etach|ialog-box|ialog-help|ir|isabled|istinct|ll-call-type|otnet-clr-loaded|ouble|rop|rop-down|rop-down-list|slog-manager|ump|elete-character|el|os-end|elete-field|elete-column|eselection|eselect|eselection-extend|eselect-extend|ismiss-menu|efault-action|elete-word|elete-end-line|efault-pop-up|de-notify|ata-refresh-line|ata-refresh-page|rop-file-notify))\\b(?![#$\\-_%&])",
4303
+ "match": "(?i)\\b(d(?:ata-bind?|ata-bi?|ata-refresh-line|ata-refresh-page|ata-relation?|ata-relati?|ata-rela?|ata-source|atabase|ataset|ataset-handle|color|de|de-notify|ebug-list|ebug-set-tenant|ebugger|eclare|efault|efault-action|efault-button?|efault-butt?|efault-extension?|efault-extensi?|efault-exten?|efault-ext?|efault-pop-up|efault-untranslatable|efault-window|efer-lob-fetch|efine-user-event-manager|efine?|efi?|el|elegate|elete|elete-character|elete-column|elete-end-line|elete-field|elete-word|elimiter|escending?|escendi?|escen?|esc|eselect|eselect-extend|eselection|eselection-extend|estructor|etach|ialog-box|ialog-help|ictionary?|ictiona?|ictio?|ict|ir|isabled??|isconnect?|isconne?|iscon|ismiss-menu|isplay?|ispl?|istinct|ll-call-type|os??|os-end|otnet-clr-loaded|ouble|own|rop|rop-down|rop-down-list|rop-file-notify|rop-target|slog-manager|ump|ynamic-current-value|ynamic-new|ynamic-property))\\b(?![#$\\-_%&])",
4067
4304
  "captures": {
4068
4305
  "1": {
4069
4306
  "name": "keyword.other.abl"
@@ -4072,7 +4309,7 @@
4072
4309
  },
4073
4310
  "keywords-E": {
4074
4311
  "comment": "The keyword must not have a trailing variable character (one of #$-_%&)",
4075
- "match": "(?i)\\b(e(?:rror|xecute|num|vent|mpty|nable|nd|ntry|xport|xtent|vents|xternal|ach|cho|dge|diting|ditor|lse|nd-key|ndkey|q|rror-status?|rror-stat|scape|vent-handler-context|xcept|xclusive|xclusive-lock?|xclusive-lo?|xclusive-web-user?|xclusive-web-us?|xclusive-web-?|xists|xpire|xplicit|xtended|xtract|nd-error|nd-move|nd-resize|nd-box-selection|mpty-selection|nter-menubar|xit|ditor-tab|ditor-backtab|nd-search|nd-row-resize))\\b(?![#$\\-_%&])",
4312
+ "match": "(?i)\\b(e(?:ach|cho|dge|dge-pixels?|dge-pixe?|dge-pi?|diting|ditor|ditor-backtab|ditor-tab|lse|mpty|mpty-selection|nable|nd|nd-box-selection|nd-error|nd-key|nd-move|nd-resize|nd-row-resize|nd-search|ndkey|nter-menubar|ntry|num|q|rror|rror-status?|rror-stat|scape|vent|vent-handler-context|vents|xcept|xclusive|xclusive-lock?|xclusive-lo?|xclusive-web-user?|xclusive-web-us?|xclusive-web-?|xecute|xists|xit|xpire|xplicit|xport|xtended|xtent|xternal|xtract))\\b(?![#$\\-_%&])",
4076
4313
  "captures": {
4077
4314
  "1": {
4078
4315
  "name": "keyword.other.abl"
@@ -4081,7 +4318,7 @@
4081
4318
  },
4082
4319
  "keywords-F": {
4083
4320
  "comment": "The keyword must not have a trailing variable character (one of #$-_%&)",
4084
- "match": "(?i)\\b(f(?:gcolor?|gcol?|gc|lat-button|ont|oreign-key-hidden|ormat?|orm|rame?|inally|ind|irst|ix-codepage|or|ormat?|orm|rame-value?|rame-val|unction|rom|alse|alse-leaks|etch|ields?|ile|ile-access-date?|ile-access-da?|ile-access-time?|ile-access-ti?|ile-information?|ile-informati?|ile-informa?|ile-infor?|ilename|ill-in|ilters|inal|ind-case-sensitive|ind-global|ind-next-occurrence|ind-prev-occurrence|ind-select|ind-wrap-around|inder|irehose-cursor|ixed-only|lags|loat|ocus|ont-table|orce-file|orwards?|rom-chars?|rom-cha?|rom-c|rom-current?|rom-curre?|rom-cur|rom-pixels?|rom-pixe?|rom-pi?|romnoreorder|ull-height|unction-call-type|ocus-in|ind-next|ind-previous))\\b(?![#$\\-_%&])",
4321
+ "match": "(?i)\\b(f(?:alse|alse-leaks|etch|gcolor?|gcol?|gc|ields?|ile|ile-access-date?|ile-access-da?|ile-access-time?|ile-access-ti?|ile-information?|ile-informati?|ile-informa?|ile-infor?|ilename|ill-in|ilters|inal|inally|ind|ind-case-sensitive|ind-global|ind-next|ind-next-occurrence|ind-prev-occurrence|ind-previous|ind-select|ind-wrap-around|inder|irehose-cursor|irst|ix-codepage|ixed-only|lags|lat-button|loat|ocus|ocus-in|ont|ont-table|or|orce-file|oreign-key-hidden|ormat?|orm|ormat?|orm|orwards?|rame-value?|rame-val|rame?|rom|rom-chars?|rom-cha?|rom-c|rom-current?|rom-curre?|rom-cur|rom-pixels?|rom-pixe?|rom-pi?|romnoreorder|ull-height|unction|unction-call-type))\\b(?![#$\\-_%&])",
4085
4322
  "captures": {
4086
4323
  "1": {
4087
4324
  "name": "keyword.other.abl"
@@ -4090,7 +4327,7 @@
4090
4327
  },
4091
4328
  "keywords-G": {
4092
4329
  "comment": "The keyword must not have a trailing variable character (one of #$-_%&)",
4093
- "match": "(?i)\\b(g(?:et|et-key-value?|et-key-val|et-dir|et-file|e|enerate-md5|et-attr-call-type|et-text-height|et-text-width|etbyte|lob(?:al?)?|o-on|rant|rant-archive|rayed|rid-set|rid-unit-height|rid-unit-width|roup|[ot]|oto))\\b(?![#$\\-_%&])",
4330
+ "match": "(?i)\\b(g(?:e|enerate-md5|et|et-attr-call-type|et-dir|et-file|et-key-value?|et-key-val|et-text-height|et-text-width|etbyte|lobal?|lob|o|o-on|oto|rant|rant-archive|raphic-edge?|raphic-ed?|rayed|rid-set|rid-unit-height|rid-unit-width|roup|t))\\b(?![#$\\-_%&])",
4094
4331
  "captures": {
4095
4332
  "1": {
4096
4333
  "name": "keyword.other.abl"
@@ -4099,7 +4336,7 @@
4099
4336
  },
4100
4337
  "keywords-H": {
4101
4338
  "comment": "The keyword must not have a trailing variable character (one of #$-_%&)",
4102
- "match": "(?i)\\b(h(?:idden|ide|aving|eader|eight|elp-context?|elp-conte?|elp-con|elp-topic|elpfile-name?|elpfile-na?|int|ost-byte-order|ome|oriz-scroll-drag|oriz-home|oriz-end))\\b(?![#$\\-_%&])",
4339
+ "match": "(?i)\\b(h(?:aving|eader|eight|elp|elp-context?|elp-conte?|elp-con|elp-topic|elpfile-name?|elpfile-na?|idden|ide|int|ome|oriz-end|oriz-home|oriz-scroll-drag|ost-byte-order))\\b(?![#$\\-_%&])",
4103
4340
  "captures": {
4104
4341
  "1": {
4105
4342
  "name": "keyword.other.abl"
@@ -4108,7 +4345,7 @@
4108
4345
  },
4109
4346
  "keywords-I": {
4110
4347
  "comment": "The keyword must not have a trailing variable character (one of #$-_%&)",
4111
- "match": "(?i)\\b(i(?:mage-down|mage-insensitive|mage-up|nitial|nitiate|mage|mport|nput|nput-output?|nput-outp?|nput-ou?|nsert|nterface|f|mage-size|mage-size-chars?|mage-size-cha?|mage-size-c|mage-size-pixels?|mage-size-pixe?|mage-size-pi?|mplements|n|ndex-hint|ndexed-reposition|ndicator|nformation?|nformati?|nforma?|nfor?|nherit-color-mode|nherits|nit|nitial-dir|nitial-filter|nner|nto|s|tem|nsert-mode|nsert-field|nsert-field-data|nsert-field-label|nsert-column|teration-changed))\\b(?![#$\\-_%&])",
4348
+ "match": "(?i)\\b(i(?:f|mage|mage-down|mage-insensitive|mage-size|mage-size-chars?|mage-size-cha?|mage-size-c|mage-size-pixels?|mage-size-pixe?|mage-size-pi?|mage-up|mplements|mport|n|ndex-hint|ndexed-reposition|ndicator|nformation?|nformati?|nforma?|nfor?|nherit-color-mode|nherits|nit|nitial|nitial-dir|nitial-filter|nitiate|nner|nput|nput-output?|nput-outp?|nput-ou?|nsert|nsert-column|nsert-field|nsert-field-data|nsert-field-label|nsert-mode|nterface|nto|s|tem|teration-changed))\\b(?![#$\\-_%&])",
4112
4349
  "captures": {
4113
4350
  "1": {
4114
4351
  "name": "keyword.other.abl"
@@ -4135,7 +4372,7 @@
4135
4372
  },
4136
4373
  "keywords-L": {
4137
4374
  "comment": "The keyword must not have a trailing variable character (one of #$-_%&)",
4138
- "match": "(?i)\\b(l(?:abel|ocked|eave|ength|oad|oad-picture|abel-pfcolor?|abel-pfcol?|abel-pfc|andscape|ast-event?|ast-key|e|eading|eak-detection|eft|eft-aligned?|eft-align|ike|ike-sequential|isting?|isti|ittle-endian|oad-from|oad-result-into|ob-dir|og-id|og-manager|ong|ongchar?|ongch|ookahead|ower|t|eft-end|ine-up|ine-down|ine-right|ine-left))\\b(?![#$\\-_%&])",
4375
+ "match": "(?i)\\b(l(?:abel|abel-pfcolor?|abel-pfcol?|abel-pfc|andscape|ast-event?|ast-key|e|eading|eak-detection|eave|eft|eft-aligned?|eft-align|eft-end|ength|ike|ike-sequential|ine-down|ine-left|ine-right|ine-up|isting?|isti|ittle-endian|oad|oad-from|oad-picture|oad-result-into|ob-dir|ocked|og-id|og-manager|ong|ongchar?|ongch|ookahead|ower|t))\\b(?![#$\\-_%&])",
4139
4376
  "captures": {
4140
4377
  "1": {
4141
4378
  "name": "keyword.other.abl"
@@ -4144,7 +4381,7 @@
4144
4381
  },
4145
4382
  "keywords-M": {
4146
4383
  "comment": "The keyword must not have a trailing variable character (one of #$-_%&)",
4147
- "match": "(?i)\\b(m(?:ax-button|essage-area|ouse-pointer?|ouse-point?|ouse-poi?|ouse-p|enu|essage|ethod|achine-class|ap|argin-extra|argin-height|argin-height-chars?|argin-height-cha?|argin-height-c|argin-height-pixels?|argin-height-pixe?|argin-height-pi?|argin-width|argin-width-chars?|argin-width-cha?|argin-width-c|argin-width-pixels?|argin-width-pixe?|argin-width-pi?|atches|ax|ax-height|ax-rows|ax-size|ax-width|aximize|d5-value|emptr|enu-item|enubar|essage-area-msg|essage-line|in-height|in-schema-marshall?|in-size|in-width|od|odulo|ouse|pe|ultiple-key|ust-exist|ove|ain-menu|enu-drop))\\b(?![#$\\-_%&])",
4384
+ "match": "(?i)\\b(m(?:achine-class|ain-menu|ap|argin-extra|argin-height|argin-height-chars?|argin-height-cha?|argin-height-c|argin-height-pixels?|argin-height-pixe?|argin-height-pi?|argin-width|argin-width-chars?|argin-width-cha?|argin-width-c|argin-width-pixels?|argin-width-pixe?|argin-width-pi?|atches|ax|ax-button|ax-height|ax-rows|ax-size|ax-width|aximize|d5-value|emptr|enu|enu-drop|enu-item|enubar|essage|essage-area|essage-area-msg|essage-line|ethod|in-height|in-schema-marshall?|in-size|in-width|od|odulo|ouse|ouse-pointer?|ouse-point?|ouse-poi?|ouse-p|ove|pe|ultiple-key|ust-exist))\\b(?![#$\\-_%&])",
4148
4385
  "captures": {
4149
4386
  "1": {
4150
4387
  "name": "keyword.other.abl"
@@ -4153,7 +4390,7 @@
4153
4390
  },
4154
4391
  "keywords-N": {
4155
4392
  "comment": "The keyword must not have a trailing variable character (one of #$-_%&)",
4156
- "match": "(?i)\\b(n(?:amespace-prefix|amespace-uri|ested|o-focus|ew|ext|ext-prompt|ative|e|ew-instance|o|o-apply|o-array-message?|o-array-messa?|o-array-mes?|o-array-m|o-assign|o-attr|o-attr-list?|o-attr-li?|o-attr-space?|o-attr-spa?|o-attr-s|o-auto-trim?|o-auto-validate|o-bind-where|o-box|o-column-scrolling?|o-column-scrolli?|o-column-scrol?|o-column-scr?|o-console|o-convert|o-convert-3d-colors?|o-convert-3d-colo?|o-convert-3d-co?|o-convert-3d-?|o-debug|o-drag|o-echo|o-error|o-fill?|o-fi?|o-firehose-cursor|o-help|o-hide|o-index-hint|o-inherit-bgcolor?|o-inherit-bgcol?|o-inherit-bgc|o-inherit-fgcolor?|o-inherit-fgcol?|o-inherit-fgc|o-join-by-sqldb|o-keycache-join|o-labels?|o-lobs|o-lock|o-lookahead|o-map|o-message?|o-messa?|o-mes|o-pause|o-prefetch?|o-prefet?|o-query-order-added?|o-query-order-add?|o-query-order-a?|o-query-order?|o-query-ord?|o-query-o|o-query-unique-added?|o-query-unique-add?|o-query-unique-a?|o-query-unique?|o-query-uniq?|o-query-un?|o-return-value?|o-return-val|o-row-markers|o-schema-marshall?|o-scrollbar-vertical?|o-scrollbar-vertic?|o-scrollbar-vert?|o-scrollbar-ve?|o-scrolling|o-separate-connection|o-separators|o-tab-stop?|o-tab-st?|o-tab-?|o-underline?|o-underli?|o-under?|o-undo??|o-wait|o-word-wrap|ode-type|on-serializable|one|ot-active|ull|um-copies|um-selected|umeric|ew-line|ext-frame|ext-word|ext-error))\\b(?![#$\\-_%&])",
4393
+ "match": "(?i)\\b(n(?:amespace-prefix|amespace-uri|ative|e|ested|ew|ew-instance|ew-line|ext|ext-error|ext-frame|ext-prompt|ext-word|o|o-apply|o-array-message?|o-array-messa?|o-array-mes?|o-array-m|o-assign|o-attr|o-attr-list?|o-attr-li?|o-attr-space?|o-attr-spa?|o-attr-s|o-auto-trim?|o-auto-validate|o-bind-where|o-box|o-column-scrolling?|o-column-scrolli?|o-column-scrol?|o-column-scr?|o-console|o-convert|o-convert-3d-colors?|o-convert-3d-colo?|o-convert-3d-co?|o-convert-3d-?|o-debug|o-drag|o-echo|o-error|o-fill?|o-fi?|o-firehose-cursor|o-focus|o-help|o-hide|o-index-hint|o-inherit-bgcolor?|o-inherit-bgcol?|o-inherit-bgc|o-inherit-fgcolor?|o-inherit-fgcol?|o-inherit-fgc|o-join-by-sqldb|o-keycache-join|o-labels?|o-lobs|o-lock|o-lookahead|o-map|o-message?|o-messa?|o-mes|o-pause|o-prefetch?|o-prefet?|o-query-order-added?|o-query-order-add?|o-query-order-a?|o-query-order?|o-query-ord?|o-query-o|o-query-unique-added?|o-query-unique-add?|o-query-unique-a?|o-query-unique?|o-query-uniq?|o-query-un?|o-return-value?|o-return-val|o-row-markers|o-schema-marshall?|o-scrollbar-vertical?|o-scrollbar-vertic?|o-scrollbar-vert?|o-scrollbar-ve?|o-scrolling|o-separate-connection|o-separators|o-tab-stop?|o-tab-st?|o-tab-?|o-underline?|o-underli?|o-under?|o-undo??|o-wait|o-word-wrap|ode-type|on-serializable|one|ot-active|ull|um-copies|um-selected|umeric))\\b(?![#$\\-_%&])",
4157
4394
  "captures": {
4158
4395
  "1": {
4159
4396
  "name": "keyword.other.abl"
@@ -4162,7 +4399,7 @@
4162
4399
  },
4163
4400
  "keywords-O": {
4164
4401
  "comment": "The keyword must not have a trailing variable character (one of #$-_%&)",
4165
- "match": "(?i)\\b(o(?:n|bject|pen|s-append|s-command|s-copy|s-create-dir|s-delete|s-rename|utput|verlay|ctet_length|ff??|k|k-cancel|ld|le-invoke-locale?|le-invoke-loca|le-names-locale?|le-names-loca|ption|ptions-file|r|rdered-join|rientation|s-dir|s2|s400|therwise|uter|uter-join|verride|pen-line-above|ff-home|ff-end|ut-of-data))\\b(?![#$\\-_%&])",
4402
+ "match": "(?i)\\b(o(?:bject|ctet_length|ff??|ff-end|ff-home|k|k-cancel|ld|le-invoke-locale?|le-invoke-loca|le-names-locale?|le-names-loca|n|pen|pen-line-above|ption|ptions-file|r|rdered-join|rientation|s-append|s-command|s-copy|s-create-dir|s-delete|s-dir|s-rename|s2|s400|therwise|ut-of-data|uter|uter-join|utput|verlay|verride))\\b(?![#$\\-_%&])",
4166
4403
  "captures": {
4167
4404
  "1": {
4168
4405
  "name": "keyword.other.abl"
@@ -4171,7 +4408,7 @@
4171
4408
  },
4172
4409
  "keywords-P": {
4173
4410
  "comment": "The keyword must not have a trailing variable character (one of #$-_%&)",
4174
- "match": "(?i)\\b(p(?:fcolor?|fcol?|fc|arameter?|aramet?|aram|roperty|rocedure?|rocedu?|roce|age|ause|rocess|rompt-for?|rompt-f|romsgs|ropath|ublish|ut|ut-bits|ut-bytes??|ut-double|ut-float|ut-int64|ut-key-value?|ut-key-val|ut-long|ut-short|ut-string|ut-unsigned-long|ut-unsigned-short|rinter-setup|ackage-private|ackage-protected|age-width?|age-wid|aged|arent-id-field|artial-key|ascal|erformance?|erforman?|erform?|erfo?|ixels|ortrait|recision|reprocess?|reproce?|reselect?|resele?|rev|rinter|rivate|rivileges|rocedure-call-type|rofile-file|rofiler|rompt|rotected|ublic|utbyte|age-up|age-down|ick|ick-both|ick-area|aste|rev-word|rev-frame|age-right|age-left|age-right-text|arent-window-close|rocedure-complete))\\b(?![#$\\-_%&])",
4411
+ "match": "(?i)\\b(p(?:ackage-private|ackage-protected|age|age-bottom?|age-bott?|age-down|age-left|age-right|age-right-text|age-up|age-width?|age-wid|aged|arameter?|aramet?|aram|arent-id-field|arent-window-close|artial-key|ascal|aste|ause|erformance?|erforman?|erform?|erfo?|fcolor?|fcol?|fc|ick|ick-area|ick-both|ixels|ortrait|recision|reprocess?|reproce?|reselect?|resele?|rev|rev-frame|rev-word|rinter|rinter-setup|rivate|rivileges|rocedure-call-type|rocedure-complete|rocedure?|rocedu?|roce|rocess|rofile-file|rofiler|rompt|rompt-for?|rompt-f|romsgs|ropath|roperty|rotected|ublic|ublish|ut|ut-bits|ut-bytes??|ut-double|ut-float|ut-int64|ut-key-value?|ut-key-val|ut-long|ut-short|ut-string|ut-unsigned-long|ut-unsigned-short|utbyte))\\b(?![#$\\-_%&])",
4175
4412
  "captures": {
4176
4413
  "1": {
4177
4414
  "name": "keyword.other.abl"
@@ -4180,7 +4417,7 @@
4180
4417
  },
4181
4418
  "keywords-Q": {
4182
4419
  "comment": "The keyword must not have a trailing variable character (one of #$-_%&)",
4183
- "match": "(?i)\\b(qu(?:ery|it|ery-tuning|estion))\\b(?![#$\\-_%&])",
4420
+ "match": "(?i)\\b(qu(?:ery|ery-tuning|estion|it))\\b(?![#$\\-_%&])",
4184
4421
  "captures": {
4185
4422
  "1": {
4186
4423
  "name": "keyword.other.abl"
@@ -4189,7 +4426,7 @@
4189
4426
  },
4190
4427
  "keywords-R": {
4191
4428
  "comment": "The keyword must not have a trailing variable character (one of #$-_%&)",
4192
- "match": "(?i)\\b(r(?:ecursive|esize|eturn-value?|eturn-val|ow|equest|ectangle?|ectang?|ecta?|aw|aw-transfer|eadkey|elease|epeat|eposition|eturn|outine-level|un|adio-set|code-information?|code-informati?|code-informa?|code-infor?|ead-available|ead-exact-num|eal|eference-only|einstate|eplication-create|eplication-delete|eplication-write|eposition-backwards?|eposition-backwar?|eposition-backw?|eposition-forwards?|eposition-forwar?|eposition-forw|eposition-parent-relation?|eposition-parent-relati?|eposition-parent-rela?|esult|etain|etry-cancel|eturn-to-start-dir?|eturns|everse-from|evert|evoke|ight|ight-aligned?|ight-align|ow-created|ow-deleted|ow-height|ow-modified|ow-of|ow-unmodified|ule|ule-row|ule-y|un-procedure?|un-procedu?|un-proce?|ecall|esume-display|ight-end|eports|ow-display|ow-entry|ow-leave|ead-response))\\b(?![#$\\-_%&])",
4429
+ "match": "(?i)\\b(r(?:adio-set|aw|aw-transfer|code-information?|code-informati?|code-informa?|code-infor?|ead-available|ead-exact-num|ead-response|eadkey|eal|ecall|ectangle?|ectang?|ecta?|ecursive|eference-only|einstate|elease|epeat|eplication-create|eplication-delete|eplication-write|eports|eposition|eposition-backwards?|eposition-backwar?|eposition-backw?|eposition-forwards?|eposition-forwar?|eposition-forw|eposition-parent-relation?|eposition-parent-relati?|eposition-parent-rela?|equest|esize|esult|esume-display|etain|etry-cancel|eturn|eturn-to-start-dir?|eturn-value?|eturn-val|eturns|everse-from|evert|evoke|ight|ight-aligned?|ight-align|ight-end|outine-level|ow|ow-created|ow-deleted|ow-display|ow-entry|ow-height|ow-leave|ow-modified|ow-of|ow-unmodified|ule|ule-row|ule-y|un|un-procedure?|un-procedu?|un-proce?))\\b(?![#$\\-_%&])",
4193
4430
  "captures": {
4194
4431
  "1": {
4195
4432
  "name": "keyword.other.abl"
@@ -4198,7 +4435,7 @@
4198
4435
  },
4199
4436
  "keywords-S": {
4200
4437
  "comment": "The keyword must not have a trailing variable character (one of #$-_%&)",
4201
- "match": "(?i)\\b(s(?:croll-bars|ensitive|eparators|erialize-hidden|erialize-name|ingle-run|tatus-area|tored-procedure?|tored-procedu?|tored-proce?|ax-attributes|ax-reader|ax-writer|erver|erver-socket|oap-header|oap-header-entryref|ocket|end|tream|ub-menu|creen|uper|ave|croll|eek|et|et-byte-order|et-pointer-value?|et-pointer-val|how-stats?|tatus|top|ubscribe|ubstring?|ubstri?|ystem-dialog|ystem-help|ave-as|ax-complete?|ax-comple|ax-parser-error|ax-running|ax-uninitialized|ax-write-begin|ax-write-complete|ax-write-content|ax-write-element|ax-write-error|ax-write-idle|ax-write-tag|ax-xml|chema|creen-io|crolled-row-position?|crolled-row-positi?|crolled-row-posi?|crolling|earch-self|earch-target|ection|ecurity-policy|elect|elect-on-join|elect-repositioned-row|elected-items|election-list|elf|eparate-connection|erializable|ession|et-attr-call-type|et-cell-focus|et-contents|et-db-logging|et-event-manager-option|et-option|et-state|hare-lock?|hare-lo?|hare-?|hared|hort|ide-label?|ide-lab|ignature|ilent|imple|ingle|ingle-character|ize|ize-chars?|ize-cha?|ize-c|ize-pixels?|ize-pixe?|ize-pi?|kip|kip-group-duplicates|kip-schema-check|lider|mallint|oap-fault|ome|ource|ource-procedure|pace|ql|tart|tart-mem-check|tarting|tatic|tatus-area-msg|tdcall|tomp-detection|tomp-frequency|top-after|top-mem-check|tream-handle|tream-io|tring-xref|ub-average?|ub-avera?|ub-ave|ub-count|ub-maximum?|ub-maxim?|ub-max|ub-menu-help|ub-minimum?|ub-minim?|ub-min|ub-total|um|ummary|uspend|top-display|ettings|croll-left|croll-right|election|election-extend|elect-extend|tart-move|tart-resize|tart-box-selection|tart-extend-box-selection|croll-mode|crollbar-drag|tart-search|croll-notify|tart-row-resize|croll-vertical|croll-horizontal))\\b(?![#$\\-_%&])",
4438
+ "match": "(?i)\\b(s(?:ave|ave-as|ax-attributes|ax-complete?|ax-comple|ax-parser-error|ax-reader|ax-running|ax-uninitialized|ax-write-begin|ax-write-complete|ax-write-content|ax-write-element|ax-write-error|ax-write-idle|ax-write-tag|ax-writer|ax-xml|chema|creen|creen-io|croll|croll-bars|croll-horizontal|croll-left|croll-mode|croll-notify|croll-right|croll-vertical|crollable|crollbar-drag|crolled-row-position?|crolled-row-positi?|crolled-row-posi?|crolling|earch-self|earch-target|ection|ecurity-policy|eek|elect|elect-extend|elect-on-join|elect-repositioned-row|elected-items|election|election-extend|election-list|elf|end|ensitive|eparate-connection|eparators|erializable|erialize-hidden|erialize-name|erver|erver-socket|ession|et|et-attr-call-type|et-byte-order|et-cell-focus|et-contents|et-db-logging|et-event-manager-option|et-option|et-pointer-value?|et-pointer-val|et-state|ettings|hare-lock?|hare-lo?|hare-?|hared|hort|how-in-taskbar?|how-in-taskb?|how-stats?|ide-labels?|ide-labe?|ignature|ilent|imple|ingle|ingle-character|ingle-run|ize|ize-chars?|ize-cha?|ize-c|ize-pixels?|ize-pixe?|ize-pi?|kip|kip-group-duplicates|kip-schema-check|lider|mallint|oap-fault|oap-header|oap-header-entryref|ocket|ome|ource|ource-procedure|pace|ql|tart|tart-box-selection|tart-extend-box-selection|tart-mem-check|tart-move|tart-resize|tart-row-resize|tart-search|tarting|tatic|tatus|tatus-area|tatus-area-msg|tdcall|tomp-detection|tomp-frequency|top|top-after|top-display|top-mem-check|tored-procedure?|tored-procedu?|tored-proce?|tream|tream-handle|tream-io|tring-xref|ub-average?|ub-avera?|ub-ave|ub-count|ub-maximum?|ub-maxim?|ub-max|ub-menu|ub-menu-help|ub-minimum?|ub-minim?|ub-min|ub-total|ubscribe|ubstring?|ubstri?|um|ummary|uper|uspend|ystem-dialog|ystem-help))\\b(?![#$\\-_%&])",
4202
4439
  "captures": {
4203
4440
  "1": {
4204
4441
  "name": "keyword.other.abl"
@@ -4207,7 +4444,7 @@
4207
4444
  },
4208
4445
  "keywords-T": {
4209
4446
  "comment": "The keyword must not have a trailing variable character (one of #$-_%&)",
4210
- "match": "(?i)\\b(t(?:hree-d|itle|ooltip|ransaction?|ransacti?|hrow|emp-table|erminate|riggers|hrough|o|erminal|his-object|ransaction-mode|rigger|able-scan|arget|arget-procedure|enant|enant-where|erm|ext|ext-cursor|ext-seg-growth?|ext-seg-grow?|ext-seg-gr?|ext-seg-?|hen|his-procedure|hru|op|opic|otal|railing|rans|rue|tcodepage|ab|op-column))\\b(?![#$\\-_%&])",
4447
+ "match": "(?i)\\b(t(?:ab|able-scan|arget|arget-procedure|emp-table|enant|enant-where|erm|erminal|erminate|ext|ext-cursor|ext-seg-growth?|ext-seg-grow?|ext-seg-gr?|ext-seg-?|hen|his-object|his-procedure|hree-d|hrough|hrow|hru|itle|o|ooltip|op|op-column|opic|otal|railing|rans|ransaction-mode|ransaction?|ransacti?|riggers??|rue|tcodepage))\\b(?![#$\\-_%&])",
4211
4448
  "captures": {
4212
4449
  "1": {
4213
4450
  "name": "keyword.other.abl"
@@ -4216,7 +4453,7 @@
4216
4453
  },
4217
4454
  "keywords-U": {
4218
4455
  "comment": "The keyword must not have a trailing variable character (one of #$-_%&)",
4219
- "match": "(?i)\\b(u(?:ndo|nderline?|nderli?|nix|nload|nsubscribe|p|pdate|se|sing|nbuffered?|nbuffer?|nbuff|nformatted?|nformatt?|nforma?|nion|nique|nless-hidden|nsigned-byte|nsigned-int64|nsigned-integer|nsigned-long|nsigned-short|pper|se-dict-exps?|se-dict-ex?|se-dict-?|se-dic|se-filename|se-index|se-revvideo|se-text|se-underline|se-widget-pool|ser|tc-offset|nix-end))\\b(?![#$\\-_%&])",
4456
+ "match": "(?i)\\b(u(?:nbuffered?|nbuffer?|nbuff|nderline?|nderli?|ndo|nformatted?|nformatt?|nforma?|nion|nique|nix|nix-end|nless-hidden|nload|nsigned-byte|nsigned-int64|nsigned-integer|nsigned-long|nsigned-short|nsubscribe|p|pdate|pper|se|se-dict-exps?|se-dict-ex?|se-dict-?|se-dic|se-filename|se-index|se-revvideo|se-text|se-underline|se-widget-pool|ser|sing|tc-offset))\\b(?![#$\\-_%&])",
4220
4457
  "captures": {
4221
4458
  "1": {
4222
4459
  "name": "keyword.other.abl"
@@ -4225,7 +4462,7 @@
4225
4462
  },
4226
4463
  "keywords-V": {
4227
4464
  "comment": "The keyword must not have a trailing variable character (one of #$-_%&)",
4228
- "match": "(?i)\\b(view-as|(var(?:i(?:able?|ab?|))?)|validate|var|view|v6frame|values|verbose?|verbo?|vertical?|vertic?|vert|virtual-height|virtual-width|vms|void|value-changed)\\b(?![#$\\-_%&])",
4465
+ "match": "(?i)\\b(v(?:6frame|alidate|alue|alue-changed|alues|ar|ariable?|ariab?|ari?|erbose?|erbo?|ertical?|ertic?|ert|iew|iew-as|irtual-height|irtual-width|ms|oid))\\b(?![#$\\-_%&])",
4229
4466
  "captures": {
4230
4467
  "1": {
4231
4468
  "name": "keyword.other.abl"
@@ -4234,7 +4471,7 @@
4234
4471
  },
4235
4472
  "keywords-W": {
4236
4473
  "comment": "The keyword must not have a trailing variable character (one of #$-_%&)",
4237
- "match": "(?i)\\b(w(?:arning|idget|idget-pool|ork-table?|ork-tab|orkfile|ait-for|ait|eb-context?|eb-conte?|eb-con|hen|here|hile|idth|indow-delayed-minimize?|indow-delayed-minimi?|indow-delayed-mini?|indow-maximized?|indow-maximiz?|indow-maxim|indow-minimized?|indow-minimiz?|indow-minim|indow-name|indow-normal|ith|ord-index|indow-close|indow-restored|indow-resized|eb-notify))\\b(?![#$\\-_%&])",
4474
+ "match": "(?i)\\b(w(?:ait|ait-for|arning|eb-context?|eb-conte?|eb-con|eb-notify|hen|here|hile|idget|idget-id|idget-pool|idth|indow-close|indow-delayed-minimize?|indow-delayed-minimi?|indow-delayed-mini?|indow-maximized?|indow-maximiz?|indow-maxim|indow-minimized?|indow-minimiz?|indow-minim|indow-name|indow-normal|indow-resized|indow-restored|ith|ord-index|ork-table?|ork-tab|orkfile|rite))\\b(?![#$\\-_%&])",
4238
4475
  "captures": {
4239
4476
  "1": {
4240
4477
  "name": "keyword.other.abl"
@@ -4243,7 +4480,7 @@
4243
4480
  },
4244
4481
  "keywords-X": {
4245
4482
  "comment": "The keyword must not have a trailing variable character (one of #$-_%&)",
4246
- "match": "(?i)\\b(x(?:ml-data-type|ml-node-name|ml-node-type|-document|-noderef|-of|code|or|ref|ref-xml))\\b(?![#$\\-_%&])",
4483
+ "match": "(?i)\\b(x(?:-document|-noderef|-of|code|ml-data-type|ml-node-name|ml-node-type|or|ref|ref-xml))\\b(?![#$\\-_%&])",
4247
4484
  "captures": {
4248
4485
  "1": {
4249
4486
  "name": "keyword.other.abl"
@@ -4336,7 +4573,7 @@
4336
4573
  ]
4337
4574
  },
4338
4575
  "handle-attributes-A": {
4339
- "match": "(?i)(:)(a(?:ccelerator|ctive|ctor|dm-data|fter-buffer|fter-rowid|fter-table|llow-column-searching|llow-prev-deserialization|lways-on-top|mbiguous?|mbiguo?|mbig|ppl-alert-boxes?|ppl-alert-box?|ppl-alert-b?|ppl-alert|ppl-context-id|ppserver-info|ppserver-password|ppserver-userid|synchronous|sync-request-count|sync-request-handle|ttached-pairlist|ttribute-names|ttr-space?|ttr-spa?|ttr-s?|ttr|udit-event-context|uto-completion?|uto-completi?|uto-comple?|uto-comp|uto-delete|uto-delete-xml|uto-end-key|uto-go|uto-indent?|uto-inde?|uto-resize|uto-return?|uto-retu?|uto-synchronize|uto-validate?|uto-valida?|uto-vali?|uto-zap?|uto-z|vailable?|vailab?|vail|vailable-formats))\\b(?![#$\\-_%&])",
4576
+ "match": "(?i)(:)(a(?:ccelerator|ctive|ctor|dm-data|fter-buffer|fter-rowid|fter-table|llow-column-searching|llow-prev-deserialization|lways-on-top|mbiguous?|mbiguo?|mbig|ppl-alert-boxes?|ppl-alert-box?|ppl-alert-b?|ppl-alert|ppl-context-id|ppserver-info|ppserver-password|ppserver-userid|sync-request-count|sync-request-handle|synchronous|ttached-pairlist|ttr-space?|ttr-spa?|ttr-s?|ttr|ttribute-names|udit-event-context|uto-completion?|uto-completi?|uto-comple?|uto-comp|uto-delete|uto-delete-xml|uto-end-key|uto-go|uto-indent?|uto-inde?|uto-resize|uto-return?|uto-retu?|uto-synchronize|uto-validate?|uto-valida?|uto-vali?|uto-zap?|uto-z|vailable-formats|vailable?|vailab?|vail))\\b(?![#$\\-_%&])",
4340
4577
  "captures": {
4341
4578
  "1": {
4342
4579
  "name": "punctuation.separator.colon.abl"
@@ -4358,7 +4595,7 @@
4358
4595
  }
4359
4596
  },
4360
4597
  "handle-attributes-C": {
4361
- "match": "(?i)(:)(c(?:ache|all-name|all-type|ancel-button|ancelled|an-create?|an-crea|an-delete?|an-dele|an-do-domain-support|an-read|an-write?|areful-paint|ase-sensitive?|ase-sensiti?|ase-sensi?|ase-sen|entered?|enter|harset|hecked|hild-buffer|hild-num|lass-type|lient-connection-id|lient-tty|lient-type|lient-workstation|ode|odepage|olumns?|olumn-bgcolor?|olumn-bgcol?|olumn-bgc|olumn-dcolor|olumn-fgcolor?|olumn-fgcol?|olumn-fgc|olumn-font|olumn-label?|olumn-lab|olumn-movable|olumn-pfcolor?|olumn-pfcol?|olumn-pfc|olumn-read-only|olumn-resizable|olumn-scrolling?|olumn-scrolli?|olumn-scrol?|olumn-scr?|om-handle|omplete|onfig-name|ontext-help|ontext-help-file|ontext-help-id|ontrol-box|onvert-3d-colors?|onvert-3d-colo?|onvert-3d-co?|onvert-3d-?|overage|pcase|pcoll|pinternal?|pintern?|pinte?|plog|pprint|prcodein|prcodeout|pstream|pterm|rc-value?|rc-val|urrent-changed|urrent-column|urrent-environment?|urrent-environme?|urrent-environ?|urrent-envir?|urrent-env|urrent-iteration|urrent-request-info|urrent-response-info|urrent-result-row|urrent-row-modified|urrent-window|ursor-char|ursor-line|ursor-offset))\\b(?![#$\\-_%&])",
4598
+ "match": "(?i)(:)(c(?:ache|all-name|all-type|an-create?|an-crea|an-delete?|an-dele|an-do-domain-support|an-read|an-write?|ancel-button|ancelled|areful-paint|ase-sensitive?|ase-sensiti?|ase-sensi?|ase-sen|entered?|enter|harset|hecked|hild-buffer|hild-num|lass-type|lient-connection-id|lient-tty|lient-type|lient-workstation|ode|odepage|olumn-bgcolor?|olumn-bgcol?|olumn-bgc|olumn-dcolor|olumn-fgcolor?|olumn-fgcol?|olumn-fgc|olumn-font|olumn-label?|olumn-lab|olumn-movable|olumn-pfcolor?|olumn-pfcol?|olumn-pfc|olumn-read-only|olumn-resizable|olumn-scrolling?|olumn-scrolli?|olumn-scrol?|olumn-scr?|olumns?|om-handle|omplete|onfig-name|ontext-help|ontext-help-file|ontext-help-id|ontrol-box|onvert-3d-colors?|onvert-3d-colo?|onvert-3d-co?|onvert-3d-?|overage|pcase|pcoll|pinternal?|pintern?|pinte?|plog|pprint|prcodein|prcodeout|pstream|pterm|rc-value?|rc-val|urrent-changed|urrent-column|urrent-environment?|urrent-environme?|urrent-environ?|urrent-envir?|urrent-env|urrent-iteration|urrent-request-info|urrent-response-info|urrent-result-row|urrent-row-modified|urrent-window|ursor-char|ursor-line|ursor-offset))\\b(?![#$\\-_%&])",
4362
4599
  "captures": {
4363
4600
  "1": {
4364
4601
  "name": "punctuation.separator.colon.abl"
@@ -4391,7 +4628,7 @@
4391
4628
  }
4392
4629
  },
4393
4630
  "handle-attributes-F": {
4394
- "match": "(?i)(:)(f(?:gcolor?|gcol?|gc|ile-create-date?|ile-create-da?|ile-create-time?|ile-create-ti?|ile-mod-date?|ile-mod-da?|ile-mod-time?|ile-mod-ti?|ile-name|ile-offset?|ile-offs?|ile-size|ile-type|illed|ill-mode|ill-where-string|irst-async-request?|irst-async-reque?|irst-async-req?|irst-async-r?|irst-async|irst-buffer|irst-child|irst-column|irst-dataset|irst-data-source|irst-form|irst-object|irst-procedure?|irst-procedu?|irst-proce?|irst-query|irst-server?|irst-serv|irst-server-socket|irst-socket|irst-tab-item?|irst-tab-it?|it-last-column|lat-button|ocused-row|ocused-row-selected|ont|oreground?|oregrou?|oregr?|ore|oreign-key-hidden|orm-input|orm-long-input|ormat?|orm|ormatted?|orward-only|ragment?|rame?|rame-col|rame-name|rame-row|rame-spacing?|rame-spaci?|rame-spa|rame-x|rame-y|requency|ull-height-chars?|ull-height-cha?|ull-height-c|ull-height-pixels?|ull-height-pixe?|ull-height-pi?|ull-pathname?|ull-pathna?|ull-width-chars?|ull-width-cha?|ull-width-c?|ull-width|ull-width-pixels?|ull-width-pixe?|ull-width-pi?|unction))\\b(?![#$\\-_%&])",
4631
+ "match": "(?i)(:)(f(?:gcolor?|gcol?|gc|ile-create-date?|ile-create-da?|ile-create-time?|ile-create-ti?|ile-mod-date?|ile-mod-da?|ile-mod-time?|ile-mod-ti?|ile-name|ile-offset?|ile-offs?|ile-size|ile-type|ill-mode|ill-where-string|illed|irst-async-request?|irst-async-reque?|irst-async-req?|irst-async-r?|irst-async|irst-buffer|irst-child|irst-column|irst-data-source|irst-dataset|irst-form|irst-object|irst-procedure?|irst-procedu?|irst-proce?|irst-query|irst-server-socket|irst-server?|irst-serv|irst-socket|irst-tab-item?|irst-tab-it?|it-last-column|lat-button|ocused-row|ocused-row-selected|ont|oreground?|oregrou?|oregr?|ore|oreign-key-hidden|orm-input|orm-long-input|ormatted?|ormat?|orm|orward-only|ragment?|rame-col|rame-name|rame-row|rame-spacing?|rame-spaci?|rame-spa|rame-x|rame-y|rame?|requency|ull-height-chars?|ull-height-cha?|ull-height-c|ull-height-pixels?|ull-height-pixe?|ull-height-pi?|ull-pathname?|ull-pathna?|ull-width-chars?|ull-width-cha?|ull-width-c?|ull-width|ull-width-pixels?|ull-width-pixe?|ull-width-pi?|unction))\\b(?![#$\\-_%&])",
4395
4632
  "captures": {
4396
4633
  "1": {
4397
4634
  "name": "punctuation.separator.colon.abl"
@@ -4424,7 +4661,7 @@
4424
4661
  }
4425
4662
  },
4426
4663
  "handle-attributes-I": {
4427
- "match": "(?i)(:)(i(?:cfparameter?|cfparamet?|cfparam|con|gnore-current-modified?|gnore-current-modifi?|gnore-current-modi?|mage|mage-down|mage-insensitive|mage-up|mmediate-display|ndex|ndex-information?|ndex-informati?|ndex-informa?|ndex-infor?|n-handle|nherit-bgcolor?|nherit-bgcol?|nherit-bgc|nherit-fgcolor?|nherit-fgcol?|nherit-fgc|nitial|nner-chars|nner-lines|nput-value|nstantiating-procedure|nternal-entries|s-class?|s-json|s-multi-tenant|s-open|s-parameter-set|s-partitioned?|s-xml|tems-per-row))\\b(?![#$\\-_%&])",
4664
+ "match": "(?i)(:)(i(?:cfparameter?|cfparamet?|cfparam|con|gnore-current-modified?|gnore-current-modifi?|gnore-current-modi?|mage|mage-down|mage-insensitive|mage-up|mmediate-display|n-handle|ndex|ndex-information?|ndex-informati?|ndex-informa?|ndex-infor?|nherit-bgcolor?|nherit-bgcol?|nherit-bgc|nherit-fgcolor?|nherit-fgcol?|nherit-fgc|nitial|nner-chars|nner-lines|nput-value|nstantiating-procedure|nternal-entries|s-class?|s-json|s-multi-tenant|s-open|s-parameter-set|s-partitioned?|s-xml|tems-per-row))\\b(?![#$\\-_%&])",
4428
4665
  "captures": {
4429
4666
  "1": {
4430
4667
  "name": "punctuation.separator.colon.abl"
@@ -4446,7 +4683,7 @@
4446
4683
  }
4447
4684
  },
4448
4685
  "handle-attributes-L": {
4449
- "match": "(?i)(:)(l(?:abel|abel-bgcolor?|abel-bgcol?|abel-bgc|abel-dcolor?|abel-dcol?|abel-dc|abel-fgcolor?|abel-fgcol?|abel-fgc|abel-font|abels|abels-have-colons|anguages?|arge|arge-to-small|ast-async-request?|ast-async-reque?|ast-async-req?|ast-async-r?|ast-async|ast-batch|ast-child|ast-form|ast-object|ast-procedure?|ast-procedu?|ast-proce|ast-server?|ast-serv|ast-server-socket|ast-socket|ast-tab-item?|ast-tab-it?|ength|ibrary|ibrary-calling-convention|ine|ist-item-pairs|ist-items|istings|iteral-question|ocal-host|ocal-name|ocal-port|ocal-version-info|ocator-column-number|ocator-line-number|ocator-public-id|ocator-system-id|ocator-type|ocked|og-entry-types|og-threshold|ogfile-name|ogging-level|ogin-expiration-timestamp|ogin-host|ogin-state))\\b(?![#$\\-_%&])",
4686
+ "match": "(?i)(:)(l(?:abel|abel-bgcolor?|abel-bgcol?|abel-bgc|abel-dcolor?|abel-dcol?|abel-dc|abel-fgcolor?|abel-fgcol?|abel-fgc|abel-font|abels|abels-have-colons|anguages?|arge|arge-to-small|ast-async-request?|ast-async-reque?|ast-async-req?|ast-async-r?|ast-async|ast-batch|ast-child|ast-form|ast-object|ast-procedure?|ast-procedu?|ast-proce|ast-server-socket|ast-server?|ast-serv|ast-socket|ast-tab-item?|ast-tab-it?|ength|ibrary|ibrary-calling-convention|ine|ist-item-pairs|ist-items|istings|iteral-question|ocal-host|ocal-name|ocal-port|ocal-version-info|ocator-column-number|ocator-line-number|ocator-public-id|ocator-system-id|ocator-type|ocked|og-entry-types|og-threshold|ogfile-name|ogging-level|ogin-expiration-timestamp|ogin-host|ogin-state))\\b(?![#$\\-_%&])",
4450
4687
  "captures": {
4451
4688
  "1": {
4452
4689
  "name": "punctuation.separator.colon.abl"
@@ -4457,7 +4694,7 @@
4457
4694
  }
4458
4695
  },
4459
4696
  "handle-attributes-M": {
4460
- "match": "(?i)(:)(m(?:andatory|anual-highlight|ax-button|ax-chars|ax-data-guess|ax-height-chars?|ax-height-cha?|ax-height-c|ax-height-pixels?|ax-height-pixe?|ax-height-pi?|aximum-level|ax-value?|ax-val|ax-width-chars?|ax-width-cha?|ax-width-c|ax-width-pixels?|ax-width-pixe?|ax-width-pi?|enu-bar|enu-key?|enu-k|enu-mouse?|enu-mou?|enu-m|erge-by-field|essage-area|essage-area-font|in-button|in-column-width-chars?|in-column-width-cha?|in-column-width-c|in-column-width-pixels?|in-column-width-pixe?|in-column-width-pi?|in-height-chars?|in-height-cha?|in-height-c|in-height-pixels?|in-height-pixe?|in-height-pi?|in-schema-marshall?|in-value?|in-val|in-width-chars?|in-width-cha?|in-width-c|in-width-pixels?|in-width-pixe?|in-width-pi?|odified|ouse-pointer?|ouse-point?|ouse-poi?|ouse-p|ovable|ulti-compile|ultiple|ultitasking-interval|ust-understand))\\b(?![#$\\-_%&])",
4697
+ "match": "(?i)(:)(m(?:andatory|anual-highlight|ax-button|ax-chars|ax-data-guess|ax-height-chars?|ax-height-cha?|ax-height-c|ax-height-pixels?|ax-height-pixe?|ax-height-pi?|ax-value?|ax-val|ax-width-chars?|ax-width-cha?|ax-width-c|ax-width-pixels?|ax-width-pixe?|ax-width-pi?|aximum-level|enu-bar|enu-key?|enu-k|enu-mouse?|enu-mou?|enu-m|erge-by-field|essage-area|essage-area-font|in-button|in-column-width-chars?|in-column-width-cha?|in-column-width-c|in-column-width-pixels?|in-column-width-pixe?|in-column-width-pi?|in-height-chars?|in-height-cha?|in-height-c|in-height-pixels?|in-height-pixe?|in-height-pi?|in-schema-marshall?|in-value?|in-val|in-width-chars?|in-width-cha?|in-width-c|in-width-pixels?|in-width-pixe?|in-width-pi?|odified|ouse-pointer?|ouse-point?|ouse-poi?|ouse-p|ovable|ulti-compile|ultiple|ultitasking-interval|ust-understand))\\b(?![#$\\-_%&])",
4461
4698
  "captures": {
4462
4699
  "1": {
4463
4700
  "name": "punctuation.separator.colon.abl"
@@ -4468,7 +4705,7 @@
4468
4705
  }
4469
4706
  },
4470
4707
  "handle-attributes-N": {
4471
- "match": "(?i)(:)(n(?:ame|amespace-prefix|amespace-uri|eeds-appserver-prompt|eeds-prompt|ested|ew|ew-row|ext-column?|ext-colu?|ext-rowid|ext-sibling|ext-tab-item?|o-current-value|o-empty-space|o-focus|onamespace-schema-location|o-schema-marshall?|o-validate?|o-valida?|o-vali?|ode-value|um-buffers|um-buttons?|um-butto?|um-but|um-child-relations|um-children|um-columns?|um-colum?|um-col|um-dropped-files|um-entries|um-fields|um-formats|um-header-entries|um-items|um-iterations|um-lines|um-locked-columns?|um-locked-colum?|um-locked-col|um-log-files|um-messages|um-parameters|um-references|um-relations|um-replaced?|um-replac?|um-repl|um-results|um-selected-rows|um-selected-widgets|um-source-buffers|um-tabs|um-to-retain|um-top-buffers|um-visible-columns?|um-visible-colum?|um-visible-col|umeric-decimal-point?|umeric-decimal-poi?|umeric-decimal-p?|umeric-decimal?|umeric-decim?|umeric-dec|umeric-format?|umeric-form?|umeric-fo?|umeric-separator?|umeric-separat?|umeric-separ?|umeric-sep))\\b(?![#$\\-_%&])",
4708
+ "match": "(?i)(:)(n(?:ame|amespace-prefix|amespace-uri|eeds-appserver-prompt|eeds-prompt|ested|ew|ew-row|ext-column?|ext-colu?|ext-rowid|ext-sibling|ext-tab-item?|o-current-value|o-empty-space|o-focus|o-schema-marshall?|o-validate?|o-valida?|o-vali?|ode-value|onamespace-schema-location|um-buffers|um-buttons?|um-butto?|um-but|um-child-relations|um-children|um-columns?|um-colum?|um-col|um-dropped-files|um-entries|um-fields|um-formats|um-header-entries|um-items|um-iterations|um-lines|um-locked-columns?|um-locked-colum?|um-locked-col|um-log-files|um-messages|um-parameters|um-references|um-relations|um-replaced?|um-replac?|um-repl|um-results|um-selected-rows|um-selected-widgets|um-source-buffers|um-tabs|um-to-retain|um-top-buffers|um-visible-columns?|um-visible-colum?|um-visible-col|umeric-decimal-point?|umeric-decimal-poi?|umeric-decimal-p?|umeric-decimal?|umeric-decim?|umeric-dec|umeric-format?|umeric-form?|umeric-fo?|umeric-separator?|umeric-separat?|umeric-separ?|umeric-sep))\\b(?![#$\\-_%&])",
4472
4709
  "captures": {
4473
4710
  "1": {
4474
4711
  "name": "punctuation.separator.colon.abl"
@@ -4490,7 +4727,7 @@
4490
4727
  }
4491
4728
  },
4492
4729
  "handle-attributes-P": {
4493
- "match": "(?i)(:)(p(?:age-bottom?|age-bott?|age-top|arameter?|aramet?|aram|arent|arent-buffer|arent-fields-after|arent-fields-before|arent-id-relation|arent-relation?|arent-relati?|arent-rela?|arse-status|assword-field|athname|be-hash-algorithm?|be-hash-algorit?|be-hash-algor?|be-hash-alg|be-key-rounds|ersistent?|ersiste?|ersistent-cache-disabled|ersistent-procedure|fcolor?|fcol?|fc|ixels-per-column?|ixels-per-colu?|ixels-per-row|opup-menu?|opup-me?|opup-only?|opup-on?|osition|refer-dataset|repared|repare-string|rev-column?|rev-colu?|rev-sibling|rev-tab-item?|rev-tab-it?|rimary|rimary-passphrase|rinter-control-handle|rinter-hdc|rinter-name|rinter-port|rivate-data?|rivate-da?|rocedure-name|rocedure-type|rofiling|rogress-source?|rogress-sour?|rogress-so?|roxy|roxy-password|roxy-userid|ublic-id|ublished-events))\\b(?![#$\\-_%&])",
4730
+ "match": "(?i)(:)(p(?:age-bottom?|age-bott?|age-top|arameter?|aramet?|aram|arent|arent-buffer|arent-fields-after|arent-fields-before|arent-id-relation|arent-relation?|arent-relati?|arent-rela?|arse-status|assword-field|athname|be-hash-algorithm?|be-hash-algorit?|be-hash-algor?|be-hash-alg|be-key-rounds|ersistent-cache-disabled|ersistent-procedure|ersistent?|ersiste?|fcolor?|fcol?|fc|ixels-per-column?|ixels-per-colu?|ixels-per-row|opup-menu?|opup-me?|opup-only?|opup-on?|osition|refer-dataset|repare-string|repared|rev-column?|rev-colu?|rev-sibling|rev-tab-item?|rev-tab-it?|rimary|rimary-passphrase|rinter-control-handle|rinter-hdc|rinter-name|rinter-port|rivate-data?|rivate-da?|rocedure-name|rocedure-type|rofiling|rogress-source?|rogress-sour?|rogress-so?|roxy|roxy-password|roxy-userid|ublic-id|ublished-events))\\b(?![#$\\-_%&])",
4494
4731
  "captures": {
4495
4732
  "1": {
4496
4733
  "name": "punctuation.separator.colon.abl"
@@ -4512,7 +4749,7 @@
4512
4749
  }
4513
4750
  },
4514
4751
  "handle-attributes-R": {
4515
- "match": "(?i)(:)(r(?:adio-buttons|ead-only|ecid|ecord-length?|ecord-leng?|ecursive|efreshable|ejected|elation-fields?|elation-fiel?|elation-fi|elations-active|emote|emote-host|emote-port|eposition|equest-info|esizable?|esizab?|esize|esponse-info|estart-row|estart-rowid|etain-shape?|etain-sha?|etain-s|eturn-inserted?|eturn-insert?|eturn-inse?|eturn-value?|eturn-val|eturn-value-data-type|eturn-value-dll-type|oles??|ounded|ow|ow-height-chars?|ow-height-cha?|ow-height-c|ow-height-pixels?|ow-height-pixe?|ow-height-pi?|ow-state|owid|ow-markers?|ow-marke?|ow-mar?|ow-resizable))\\b(?![#$\\-_%&])",
4752
+ "match": "(?i)(:)(r(?:adio-buttons|ead-only|ecid|ecord-length?|ecord-leng?|ecursive|efreshable|ejected|elation-fields?|elation-fiel?|elation-fi|elations-active|emote|emote-host|emote-port|eposition|equest-info|esizable?|esizab?|esize|esponse-info|estart-row|estart-rowid|etain-shape?|etain-sha?|etain-s|eturn-inserted?|eturn-insert?|eturn-inse?|eturn-value-data-type|eturn-value-dll-type|eturn-value?|eturn-val|oles??|ounded|ow|ow-height-chars?|ow-height-cha?|ow-height-c|ow-height-pixels?|ow-height-pixe?|ow-height-pi?|ow-markers?|ow-marke?|ow-mar?|ow-resizable|ow-state|owid))\\b(?![#$\\-_%&])",
4516
4753
  "captures": {
4517
4754
  "1": {
4518
4755
  "name": "punctuation.separator.colon.abl"
@@ -4523,7 +4760,7 @@
4523
4760
  }
4524
4761
  },
4525
4762
  "handle-attributes-S": {
4526
- "match": "(?i)(:)(s(?:ave-where-string|chema-change|chema-location|chema-marshal|chema-path|creen-lines|creen-value?|creen-val|croll-bars|crollable|crollbar-horizontal?|crollbar-horizont?|crollbar-horizo?|crollbar-hori?|crollbar-ho?|crollbar-vertical?|crollbar-vertic?|crollbar-vert?|crollbar-ve?|eal-timestamp|electable|elected|election-end|election-start|election-text|ensitive|eparators|eparator-fgcolor?|eparator-fgcol?|eparator-fgc|erialize-hidden|erialize-name|erver|erver-connection-bound?|erver-connection-bou?|erver-connection-bound-request?|erver-connection-bound-reque?|erver-connection-bound-req?|erver-connection-context?|erver-connection-conte?|erver-connection-con?|erver-connection-id|erver-operating-mode|ession-end|ession-id|how-in-taskbar?|how-in-taskb?|ide-label-handle?|ide-label-hand?|ide-label-ha?|ide-labels|ignature-value|ingle-run|ingleton|kip-deleted-record?|kip-deleted-reco?|mall-icon|mall-title|oap-fault-actor|oap-fault-code|oap-fault-detail|oap-fault-misunderstood-header|oap-fault-node|oap-fault-role|oap-fault-string|oap-fault-subcode|oap-version|ort|ort-ascending|ort-number|sl-server-name|tandalone|tartup-parameters|tate-detail|tatistics|tatus-area|tatus-area-font|top|top-object|topped?|tream|tretch-to-fit|trict|trict-entity-resolution|ubtype|uper-procedures?|uper-procedur?|uper-proced?|uper-proc|uppress-namespace-processing|uppress-warnings?|uppress-warnin?|uppress-warn?|uppress-wa?|uppress-warnings-list|ymmetric-encryption-aad|ymmetric-encryption-algorithm|ymmetric-encryption-iv|ymmetric-encryption-key|ymmetric-support|ystem-alert-boxes?|ystem-alert-box?|ystem-alert-b?|ystem-alert|ystem-id))\\b(?![#$\\-_%&])",
4763
+ "match": "(?i)(:)(s(?:ave-where-string|chema-change|chema-location|chema-marshal|chema-path|creen-lines|creen-value?|creen-val|croll-bars|crollable|crollbar-horizontal?|crollbar-horizont?|crollbar-horizo?|crollbar-hori?|crollbar-ho?|crollbar-vertical?|crollbar-vertic?|crollbar-vert?|crollbar-ve?|eal-timestamp|electable|elected|election-end|election-start|election-text|ensitive|eparator-fgcolor?|eparator-fgcol?|eparator-fgc|eparators|erialize-hidden|erialize-name|erver|erver-connection-bound-request?|erver-connection-bound-reque?|erver-connection-bound-req?|erver-connection-bound?|erver-connection-bou?|erver-connection-context?|erver-connection-conte?|erver-connection-con?|erver-connection-id|erver-operating-mode|ession-end|ession-id|how-in-taskbar?|how-in-taskb?|ide-label-handle?|ide-label-hand?|ide-label-ha?|ide-labels|ignature-value|ingle-run|ingleton|kip-deleted-record?|kip-deleted-reco?|mall-icon|mall-title|oap-fault-actor|oap-fault-code|oap-fault-detail|oap-fault-misunderstood-header|oap-fault-node|oap-fault-role|oap-fault-string|oap-fault-subcode|oap-version|ort|ort-ascending|ort-number|sl-server-name|tandalone|tartup-parameters|tate-detail|tatistics|tatus-area|tatus-area-font|top|top-object|topped?|tream|tretch-to-fit|trict|trict-entity-resolution|ubtype|uper-procedures?|uper-procedur?|uper-proced?|uper-proc|uppress-namespace-processing|uppress-warnings-list|uppress-warnings?|uppress-warnin?|uppress-warn?|uppress-wa?|ymmetric-encryption-aad|ymmetric-encryption-algorithm|ymmetric-encryption-iv|ymmetric-encryption-key|ymmetric-support|ystem-alert-boxes?|ystem-alert-box?|ystem-alert-b?|ystem-alert|ystem-id))\\b(?![#$\\-_%&])",
4527
4764
  "captures": {
4528
4765
  "1": {
4529
4766
  "name": "punctuation.separator.colon.abl"
@@ -4534,7 +4771,7 @@
4534
4771
  }
4535
4772
  },
4536
4773
  "handle-attributes-T": {
4537
- "match": "(?i)(:)(t(?:ab-position|ab-stop|able|able-crc-list|able-handle|able-list|able-number?|able-numb?|emp-directory?|emp-directo?|emp-direc?|emp-dir|ext-selected|hread-safe|hree-d|ic-marks|ime-source|imezone|itle|itle-bgcolor?|itle-bgcol?|itle-bgc|itle-dcolor?|itle-dcol?|itle-dc|itle-fgcolor?|itle-fgcol?|itle-fgc|itle-font?|itle-fo|oggle-box|ooltips??|op-nav-query|op-only|race-filter|racing|racking-changes|ransaction?|ransacti?|ransparent?|ranspare?|rans-init-procedure?|rans-init-procedu?|rans-init-proce?|ype))\\b(?![#$\\-_%&])",
4774
+ "match": "(?i)(:)(t(?:ab-position|ab-stop|able|able-crc-list|able-handle|able-list|able-number?|able-numb?|emp-directory?|emp-directo?|emp-direc?|emp-dir|ext-selected|hread-safe|hree-d|ic-marks|ime-source|imezone|itle|itle-bgcolor?|itle-bgcol?|itle-bgc|itle-dcolor?|itle-dcol?|itle-dc|itle-fgcolor?|itle-fgcol?|itle-fgc|itle-font?|itle-fo|oggle-box|ooltips??|op-nav-query|op-only|race-filter|racing|racking-changes|rans-init-procedure?|rans-init-procedu?|rans-init-proce?|ransaction?|ransacti?|ransparent?|ranspare?|ype))\\b(?![#$\\-_%&])",
4538
4775
  "captures": {
4539
4776
  "1": {
4540
4777
  "name": "punctuation.separator.colon.abl"
@@ -4790,7 +5027,7 @@
4790
5027
  ]
4791
5028
  },
4792
5029
  "handle-methods-G": {
4793
- "begin": "(?i)(:)(get-(?:attribute|attribute-node|binary-data|blue-value?|blue-val?|blue-v?|blue|browse-column?|browse-colu?|buffer-handle|bytes-available|callback-proc-context|callback-proc-name|cgi-list|cgi-value|cgi-long-value|changes|child|child-relation?|child-relati?|child-rela?|client|column|config-value|current?|curre?|dataset-buffer|document-element|dropped-file|dynamic|error-column|error-row|file-name|file-offset?|first?|green-value?|green-val?|green-v?|green|header-entry?|index-by-namespace-name|index-by-qname|iteration|last|localname-by-index|message|message-type|next|node|number|parent|prev|property|printers|qname-by-index|red-value?|red-val?|red-v?|red|relation?|relati?|rela?|repositioned-row|rgb-value?|rgb-val?|rgb-v?|rgb|row|safe-user|selected-widget?|selected-widg?|selected-wi?|selected-?|serialized|signature|socket-option|source-buffer|tab-item|text-height-chars?|text-height-cha?|text-height-c|text-height-pixels?|text-height-pixe?|text-height-pi?|text-width-chars?|text-width-cha?|text-width-c|text-width-pixels?|text-width-pixe?|text-width-pi?|top-buffer|type-by-index|type-by-namespace-name|type-by-qname|uri-by-index|value-by-index|value-by-namespace-name|value-by-qname|wait-state?|wait-sta?|wait-s?|wait))\\s*(?=\\()",
5030
+ "begin": "(?i)(:)(get-(?:attribute|attribute-node|binary-data|blue-value?|blue-val?|blue-v?|blue|browse-column?|browse-colu?|buffer-handle|bytes-available|callback-proc-context|callback-proc-name|cgi-list|cgi-long-value|cgi-value|changes|child|child-relation?|child-relati?|child-rela?|client|column|config-value|current?|curre?|dataset-buffer|document-element|dropped-file|dynamic|error-column|error-row|file-name|file-offset?|first?|green-value?|green-val?|green-v?|green|header-entry?|index-by-namespace-name|index-by-qname|iteration|last|localname-by-index|message|message-type|next|node|number|parent|prev|printers|property|qname-by-index|red-value?|red-val?|red-v?|red|relation?|relati?|rela?|repositioned-row|rgb-value?|rgb-val?|rgb-v?|rgb|row|safe-user|selected-widget?|selected-widg?|selected-wi?|selected-?|serialized|signature|socket-option|source-buffer|tab-item|text-height-chars?|text-height-cha?|text-height-c|text-height-pixels?|text-height-pixe?|text-height-pi?|text-width-chars?|text-width-cha?|text-width-c|text-width-pixels?|text-width-pixe?|text-width-pi?|top-buffer|type-by-index|type-by-namespace-name|type-by-qname|uri-by-index|value-by-index|value-by-namespace-name|value-by-qname|wait-state?|wait-sta?|wait-s?|wait))\\s*(?=\\()",
4794
5031
  "beginCaptures": {
4795
5032
  "1": {
4796
5033
  "name": "punctuation.separator.colon.abl"
@@ -5188,7 +5425,7 @@
5188
5425
  },
5189
5426
  "abl-functions-D": {
5190
5427
  "name": "meta.function-call.abl",
5191
- "begin": "(?i)\\s*(d(?:ataservers|ata-source-modified|ate|atetime|atetime-tz|ay|bcodepage|bcollation|bname|bparam|b-remote-host|brestrictions?|brestrictio?|brestrict?|brestri?|brest|btaskid|btype|bversion?|bversi?|ecimal?|ecim?|ec|ecrypt|efined|ynamic-cast|ynamic-current-value|ynamic-enum|ynamic-function?|ynamic-functi?|ynamic-func|ynamic-invoke|ynamic-next-value|ynamic-property))\\s*(?=\\()",
5428
+ "begin": "(?i)\\s*(d(?:ata-source-modified|ataservers|ate|atetime|atetime-tz|ay|b-remote-host|bcodepage|bcollation|bname|bparam|brestrictions?|brestrictio?|brestrict?|brestri?|brest|btaskid|btype|bversion?|bversi?|ecimal?|ecim?|ec|ecrypt|efined|ynamic-cast|ynamic-current-value|ynamic-enum|ynamic-function?|ynamic-functi?|ynamic-func|ynamic-invoke|ynamic-next-value|ynamic-property))\\s*(?=\\()",
5192
5429
  "beginCaptures": {
5193
5430
  "1": {
5194
5431
  "name": "support.function.abl"
@@ -5328,7 +5565,7 @@
5328
5565
  },
5329
5566
  "abl-functions-L": {
5330
5567
  "name": "meta.function-call.abl",
5331
- "begin": "(?i)\\s*(last|lastkey|last-of|lc|ldbname|left-trim|length|library|line-counter?|line-count|list-events|list-query-attrs|list-set-attrs|list-widgets|locked|log|(log(?:i(?:cal?|c?))?)|lo?|(longch(?:ar?)?)|lookup|lower)\\s*(?=\\()",
5568
+ "begin": "(?i)\\s*(l(?:ast|ast-of|astkey|c|dbname|eft-trim|ength|ibrary|ine-counter?|ine-count|ist-events|ist-query-attrs|ist-set-attrs|ist-widgets|ocked|og|ogical?|ogic?|og?|ookup|ower))\\s*(?=\\()",
5332
5569
  "beginCaptures": {
5333
5570
  "1": {
5334
5571
  "name": "support.function.abl"
@@ -5388,7 +5625,7 @@
5388
5625
  },
5389
5626
  "abl-functions-O": {
5390
5627
  "name": "meta.function-call.abl",
5391
- "begin": "(?i)\\s*(o(?:psys|s-drives?|s-error|s-getenv|s-dir))\\s*(?=\\()",
5628
+ "begin": "(?i)\\s*(o(?:psys|s-dir|s-drives?|s-error|s-getenv))\\s*(?=\\()",
5392
5629
  "beginCaptures": {
5393
5630
  "1": {
5394
5631
  "name": "support.function.abl"
@@ -5448,7 +5685,7 @@
5448
5685
  },
5449
5686
  "abl-functions-R": {
5450
5687
  "name": "meta.function-call.abl",
5451
- "begin": "(?i)\\s*(r(?:elation-fields?|elation-fiel?|elation-fi|-index|andom|aw|ecid|ecord-length?|ecord-leng?|ejected|eplace|etry|eturn-value?|eturn-val|gb-value?|gb-val?|gb-v|ight-trim|ound|ow-state|owid|eturn))\\s*(?=\\()",
5688
+ "begin": "(?i)\\s*(r(?:-index|andom|aw|ecid|ecord-length?|ecord-leng?|ejected|elation-fields?|elation-fiel?|elation-fi|eplace|etry|eturn|eturn-value?|eturn-val|gb-value?|gb-val?|gb-v|ight-trim|ound|ow-state|owid))\\s*(?=\\()",
5452
5689
  "beginCaptures": {
5453
5690
  "1": {
5454
5691
  "name": "support.function.abl"
@@ -5468,7 +5705,7 @@
5468
5705
  },
5469
5706
  "abl-functions-S": {
5470
5707
  "name": "meta.function-call.abl",
5471
- "begin": "(?i)\\s*(s(?:creen-lines|dbname|earch|eek|et-db-client|et-effective-tenant|et-size|etuserid?|etuser|ha1-digest|qrt|sl-server-name|tring|ubstitute?|ubstitu?|ubsti?|ubstring?|ubstri?|uper|kip))\\s*(?=\\()",
5708
+ "begin": "(?i)\\s*(s(?:creen-lines|dbname|earch|eek|et-db-client|et-effective-tenant|et-size|etuserid?|etuser|ha1-digest|kip|pace|qrt|sl-server-name|tring|ubstitute?|ubstitu?|ubsti?|ubstring?|ubstri?|uper))\\s*(?=\\()",
5472
5709
  "beginCaptures": {
5473
5710
  "1": {
5474
5711
  "name": "support.function.abl"
@@ -5488,7 +5725,7 @@
5488
5725
  },
5489
5726
  "abl-functions-T": {
5490
5727
  "name": "meta.function-call.abl",
5491
- "begin": "(?i)\\s*(t(?:enant-id|enant-name|enant-name-to-id|erminal|ime|imezone|oday|o-rowid|ransaction?|ransacti?|rim|runcate?|runca?|ype-of|his-object))\\s*(?=\\()",
5728
+ "begin": "(?i)\\s*(t(?:enant-id|enant-name|enant-name-to-id|erminal|his-object|ime|imezone|o-rowid|oday|ransaction?|ransacti?|rim|runcate?|runca?|ype-of))\\s*(?=\\()",
5492
5729
  "beginCaptures": {
5493
5730
  "1": {
5494
5731
  "name": "support.function.abl"
@@ -5528,7 +5765,7 @@
5528
5765
  },
5529
5766
  "abl-functions-V": {
5530
5767
  "name": "meta.function-call.abl",
5531
- "begin": "(?i)\\s*(val(?:ue|id-event|id-handle|id-object))\\s*(?=\\()",
5768
+ "begin": "(?i)\\s*(val(?:id-event|id-handle|id-object|ue))\\s*(?=\\()",
5532
5769
  "beginCaptures": {
5533
5770
  "1": {
5534
5771
  "name": "support.function.abl"