{"information_for_contributors":["This file has been converted from https://github.com/jeff-hykin/better-go-syntax/blob/master/export/generated.tmLanguage.json","If you want to provide a fix or improvement, please create a pull request against the original repository.","Once accepted there, we are happy to receive an update request."],"version":"https://github.com/jeff-hykin/better-go-syntax/commit/6175663a7a0e23d58ccf9aab95054cb6e5c92aff","name":"Go","scopeName":"source.go","patterns":[{"include":"#comments"},{"include":"#comments"},{"comment":"Interpreted string literals","begin":"\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.go"}},"end":"\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.go"}},"name":"string.quoted.double.go","patterns":[{"include":"#string_escaped_char"},{"include":"#string_placeholder"}]},{"comment":"Raw string literals","begin":"`","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.go"}},"end":"`","endCaptures":{"0":{"name":"punctuation.definition.string.end.go"}},"name":"string.quoted.raw.go","patterns":[{"include":"#string_placeholder"}]},{"comment":"Syntax error receiving channels","match":"<\\-([\\t ]+)chan\\b","captures":{"1":{"name":"invalid.illegal.receive-channel.go"}}},{"comment":"Syntax error sending channels","match":"\\bchan([\\t ]+)<-","captures":{"1":{"name":"invalid.illegal.send-channel.go"}}},{"comment":"Syntax error using slices","match":"\\[\\](\\s+)","captures":{"1":{"name":"invalid.illegal.slice.go"}}},{"comment":"Syntax error numeric literals","match":"\\b0[0-7]*[89]\\d*\\b","name":"invalid.illegal.numeric.go"},{"comment":"Built-in functions","match":"\\b(append|cap|close|complex|copy|delete|imag|len|make|new|panic|print|println|real|recover)\\b(?=\\()","name":"support.function.builtin.go"},{"comment":"Function declarations","match":"^(\\bfunc\\b)(?:\\s+(\\([^\\)]+\\)\\s+)?(\\w+)(?=\\())?","captures":{"1":{"name":"keyword.function.go"},"2":{"patterns":[{"include":"#brackets"},{"include":"#operators"}]},"3":{"patterns":[{"match":"\\d\\w*","name":"invalid.illegal.identifier.go"},{"match":"\\w+","name":"entity.name.function.go"}]}}},{"comment":"Functions","match":"(\\bfunc\\b)|(\\w+)(?=\\()","captures":{"1":{"name":"keyword.function.go"},"2":{"patterns":[{"match":"\\d\\w*","name":"invalid.illegal.identifier.go"},{"match":"\\w+","name":"support.function.go"}]}}},{"include":"#numeric_literals"},{"comment":"Language constants","match":"\\b(true|false|nil|iota)\\b","name":"constant.language.go"},{"begin":"\\b(package)\\s+","beginCaptures":{"1":{"name":"keyword.package.go"}},"end":"(?!\\G)","patterns":[{"match":"\\d\\w*","name":"invalid.illegal.identifier.go"},{"match":"\\w+","name":"entity.name.package.go"}]},{"begin":"\\b(type)\\s+","beginCaptures":{"1":{"name":"keyword.type.go"}},"end":"(?!\\G)","patterns":[{"match":"\\d\\w*","name":"invalid.illegal.identifier.go"},{"match":"\\w+","name":"entity.name.type.go"}]},{"begin":"\\b(import)\\s+","beginCaptures":{"1":{"name":"keyword.import.go"}},"end":"(?!\\G)","patterns":[{"include":"#imports"}]},{"begin":"\\b(var)\\s+","beginCaptures":{"1":{"name":"keyword.var.go"}},"end":"(?!\\G)","patterns":[{"include":"#variables"}]},{"match":"(?,\\s*\\w+(?:\\.\\w+)*)*)(?=\\s*=(?!=))","captures":{"1":{"patterns":[{"match":"\\d\\w*","name":"invalid.illegal.identifier.go"},{"match":"\\w+(?:\\.\\w+)*","name":"variable.other.assignment.go","captures":{"0":{"patterns":[{"include":"#delimiters"}]}}},{"include":"#delimiters"}]}}},{"match":"\\b\\w+(?:,\\s*\\w+)*(?=\\s*:=)","captures":{"0":{"patterns":[{"match":"\\d\\w*","name":"invalid.illegal.identifier.go"},{"match":"\\w+","name":"variable.other.assignment.go"},{"include":"#delimiters"}]}}},{"comment":"Terminators","match":";","name":"punctuation.terminator.go"},{"include":"#brackets"},{"include":"#delimiters"},{"include":"#keywords"},{"include":"#operators"},{"include":"#runes"},{"include":"#storage_types"}],"repository":{"brackets":{"patterns":[{"begin":"{","beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.curly.go"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.curly.go"}},"patterns":[{"include":"$self"}]},{"begin":"\\(","beginCaptures":{"0":{"name":"punctuation.definition.begin.bracket.round.go"}},"end":"\\)","endCaptures":{"0":{"name":"punctuation.definition.end.bracket.round.go"}},"patterns":[{"include":"$self"}]},{"match":"\\[|\\]","name":"punctuation.definition.bracket.square.go"}]},"comments":{"patterns":[{"name":"comment.block.go","begin":"(\\/\\*)","beginCaptures":{"1":{"name":"punctuation.definition.comment.go"}},"end":"(\\*\\/)","endCaptures":{"1":{"name":"punctuation.definition.comment.go"}}},{"name":"comment.line.double-slash.go","begin":"(\\/\\/)","beginCaptures":{"1":{"name":"punctuation.definition.comment.go"}},"end":"(?:\\n|$)"}]},"delimiters":{"patterns":[{"match":",","name":"punctuation.other.comma.go"},{"match":"\\.(?!\\.\\.)","name":"punctuation.other.period.go"},{"match":":(?!=)","name":"punctuation.other.colon.go"}]},"imports":{"patterns":[{"match":"((?!\\s+\")[^\\s]*)?\\s*((\")([^\"]*)(\"))","captures":{"1":{"name":"entity.alias.import.go"},"2":{"name":"string.quoted.double.go"},"3":{"name":"punctuation.definition.string.begin.go"},"4":{"name":"entity.name.import.go"},"5":{"name":"punctuation.definition.string.end.go"}}},{"begin":"\\(","beginCaptures":{"0":{"name":"punctuation.definition.imports.begin.bracket.round.go"}},"end":"\\)","endCaptures":{"0":{"name":"punctuation.definition.imports.end.bracket.round.go"}},"patterns":[{"include":"#comments"},{"include":"#imports"}]}]},"keywords":{"patterns":[{"comment":"Flow control keywords","match":"\\b(break|case|continue|default|defer|else|fallthrough|for|go|goto|if|range|return|select|switch)\\b","name":"keyword.control.go"},{"match":"\\bchan\\b","name":"keyword.channel.go"},{"match":"\\bconst\\b","name":"keyword.const.go"},{"match":"\\bfunc\\b","name":"keyword.function.go"},{"match":"\\binterface\\b","name":"keyword.interface.go"},{"match":"\\bmap\\b","name":"keyword.map.go"},{"match":"\\bstruct\\b","name":"keyword.struct.go"}]},"operators":{"comment":"Note that the order here is very important!","patterns":[{"match":"(\\*|&)(?=\\w)","name":"keyword.operator.address.go"},{"match":"<\\-","name":"keyword.operator.channel.go"},{"match":"\\-\\-","name":"keyword.operator.decrement.go"},{"match":"\\+\\+","name":"keyword.operator.increment.go"},{"match":"(==|!=|<=|>=|<(?!<)|>(?!>))","name":"keyword.operator.comparison.go"},{"match":"(&&|\\|\\||!)","name":"keyword.operator.logical.go"},{"match":"(=|\\+=|\\-=|\\|=|\\^=|\\*=|/=|:=|%=|<<=|>>=|&\\^=|&=)","name":"keyword.operator.assignment.go"},{"match":"(\\+|\\-|\\*|/|%)","name":"keyword.operator.arithmetic.go"},{"match":"(&(?!\\^)|\\||\\^|&\\^|<<|>>)","name":"keyword.operator.arithmetic.bitwise.go"},{"match":"\\.\\.\\.","name":"keyword.operator.ellipsis.go"}]},"runes":{"patterns":[{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.go"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.go"}},"name":"string.quoted.rune.go","patterns":[{"match":"\\G(\\\\([0-7]{3}|[abfnrtv\\\\'\"]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8})|.)(?=')","name":"constant.other.rune.go"},{"match":"[^']+","name":"invalid.illegal.unknown-rune.go"}]}]},"storage_types":{"patterns":[{"match":"\\bbool\\b","name":"storage.type.boolean.go"},{"match":"\\bbyte\\b","name":"storage.type.byte.go"},{"match":"\\berror\\b","name":"storage.type.error.go"},{"match":"\\b(complex(64|128)|float(32|64)|u?int(8|16|32|64)?)\\b","name":"storage.type.numeric.go"},{"match":"\\brune\\b","name":"storage.type.rune.go"},{"match":"\\bstring\\b","name":"storage.type.string.go"},{"match":"\\buintptr\\b","name":"storage.type.uintptr.go"}]},"string_escaped_char":{"patterns":[{"match":"\\\\([0-7]{3}|[abfnrtv\\\\'\"]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8})","name":"constant.character.escape.go"},{"match":"\\\\[^0-7xuUabfnrtv\\'\"]","name":"invalid.illegal.unknown-escape.go"}]},"string_placeholder":{"patterns":[{"match":"%(\\[\\d+\\])?([\\+#\\-0\\x20]{,2}((\\d+|\\*)?(\\.?(\\d+|\\*|(\\[\\d+\\])\\*?)?(\\[\\d+\\])?)?))?[vT%tbcdoqxXUbeEfFgGspw]","name":"constant.other.placeholder.go"}]},"variables":{"patterns":[{"match":"(\\w+(?:,\\s*\\w+)*)(\\s+\\*?\\w+(?:\\.\\w+)?\\s*)?(?=\\s*=)","captures":{"1":{"patterns":[{"match":"\\d\\w*","name":"invalid.illegal.identifier.go"},{"match":"\\w+","name":"variable.other.assignment.go"},{"include":"#delimiters"}]},"2":{"patterns":[{"include":"$self"}]}}},{"match":"(\\w+(?:,\\s*\\w+)*)(\\s+(\\[(\\d*|\\.\\.\\.)\\])*\\*?(<-)?\\w+(?:\\.\\w+)?\\s*[^=].*)","captures":{"1":{"patterns":[{"match":"\\d\\w*","name":"invalid.illegal.identifier.go"},{"match":"\\w+","name":"variable.other.declaration.go"},{"include":"#delimiters"}]},"2":{"patterns":[{"include":"$self"}]}}},{"begin":"\\(","beginCaptures":{"0":{"name":"punctuation.definition.variables.begin.bracket.round.go"}},"end":"\\)","endCaptures":{"0":{"name":"punctuation.definition.variables.end.bracket.round.go"}},"patterns":[{"include":"$self"},{"include":"#variables"}]}]},"numeric_literals":{"match":"(?x

Windows NT KPTV 6.2 build 9200 (Windows Server 2012 Datacenter Edition) i586