// This is a TextMate grammar distributed by `starry-night`. // This grammar is developed at // // and licensed `mit`. // See for more info. /** * @import {Grammar} from '@wooorm/starry-night' */ /** @type {Grammar} */ const grammar = { extensions: ['.pbt', '.sra', '.sru', '.srw'], names: ['powerbuilder'], patterns: [ {include: '#strings'}, {include: '#comments'}, {include: '#general_rules'}, {include: '#keywords'}, {include: '#literals'}, {include: '#special_rules'}, {include: '#final'} ], repository: { comments: { patterns: [ {match: '//.*$', name: 'comment.line.double-slash.powerbuilder'}, { begin: '/\\*', end: '\\*/', name: 'comment.block.documentation.powerbuilder' }, { begin: '\\A(HA)?(?=\\$)', captures: { 1: {name: 'comment.block.documentation.headers.powerbuilder'} }, end: '^(?!\\$)', name: 'meta.header.powerbuilder', patterns: [ { captures: { 1: {name: 'comment.block.documentation.headers.powerbuilder'}, 2: {name: 'variable.other.header.name.powerbuilder'}, 3: {name: 'comment.block.documentation.headers.powerbuilder'}, 4: { name: 'string.unquoted.header.description.powerbuilder', patterns: [{include: '#string-escapes'}] } }, match: '(\\$)(.*?)(\\$)(.*)', name: 'meta.header.line.powerbuilder' } ] } ] }, final: { patterns: [ { match: '([\\w$#%][\\w\\d$#%\\-]*)', name: 'variable.other.local.powerbuilder' }, {include: '#operators'} ] }, general_rules: { patterns: [ { begin: '(?i)^\\s*(close|commit|connect|declare|delete|describe|disconnect|execute|fetch|insert|open|prepare|rollback|select|selectblob|update|updateblob)(?:^(?=[\\w\\d$#%\\-`])|(?<=[\\w\\d$#%\\-`])$|(?|<|&)', name: 'keyword.operator.symbols.powerbuilder' } ] }, primitives: { patterns: [ { match: '(?i)(?:^(?=[\\w\\d$#%\\-`])|(?<=[\\w\\d$#%\\-`])$|(?