<commit_before><?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>fileTypes</key>
	<array>
		<string>nim</string>
		<string>nims</string>
	</array>
	<key>name</key>
	<string>Nim</string>
	<key>patterns</key>
	<array>
		<dict>
			<key>begin</key>
			<string>(\#\[\s*(TODO|todo)?)</string>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>punctuation.definition.multi-comment.nim</string>
				</dict>
				<key>2</key>
				<dict>
					<key>name</key>
					<string>invalid.illegal.TODO.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>A multiline comment.</string>
			<key>end</key>
			<string>(.*]\#)</string>
			<key>name</key>
			<string>comment.line.number-sign.multi-comment.nim</string>
		</dict>
		<dict>
			<key>begin</key>
			<string>(\#\#\[\s*(TODO|todo)?)</string>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>punctuation.definition.multi-doc-comment.nim</string>
				</dict>
				<key>2</key>
				<dict>
					<key>name</key>
					<string>invalid.illegal.TODO.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>A multiline documentation comment.</string>
			<key>end</key>
			<string>(.*]\#\#)</string>
			<key>name</key>
			<string>comment.line.number-sign.multi-doc-comment.nim</string>
		</dict>
		<dict>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>punctuation.definition.doc-comment.nim</string>
				</dict>
				<key>2</key>
				<dict>
					<key>name</key>
					<string>invalid.illegal.TODO.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>A documentation comment.</string>
			<key>match</key>
			<string>(##\s*(TODO|todo)?).+$\n?</string>
			<key>name</key>
			<string>comment.line.number-sign.doc-comment.nim</string>
		</dict>
		<dict>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>punctuation.definition.doc-comment.empty.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>An empty documentation comment.</string>
			<key>match</key>
			<string>(##\s*)$\n?</string>
			<key>name</key>
			<string>comment.line.number-sign.doc-comment.empty.nim</string>
		</dict>
		<dict>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>punctuation.definition.comment.nim</string>
				</dict>
				<key>2</key>
				<dict>
					<key>name</key>
					<string>invalid.illegal.TODO.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>A regular comment</string>
			<key>match</key>
			<string>(#\s*(TODO|todo)?).*$\n?</string>
			<key>name</key>
			<string>comment.line.number-sign.comment.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>C</string>
			<key>name</key>
			<string>source.c.embedded.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>begin</key>
					<string>\{\.(emit:) ?(\"\"\")</string>
					<key>captures</key>
					<dict>
						<key>1</key>
						<dict>
							<key>name</key>
							<string>keyword.other.nim</string>
						</dict>
						<key>2</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>end</key>
					<string>(\"\"\")\.?</string>
					<key>endCaptures</key>
					<dict>
						<key>1</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>patterns</key>
					<array>
						<dict>
							<key>begin</key>
							<string>\`</string>
							<key>end</key>
							<string>\`</string>
							<key>name</key>
							<string>keyword.operator.nim</string>
						</dict>
						<dict>
							<key>include</key>
							<string>source.c</string>
						</dict>
					</array>
				</dict>
			</array>
		</dict>
		<dict>
			<key>comment</key>
			<string>assembly</string>
			<key>name</key>
			<string>source.asm.embedded.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>begin</key>
					<string>(asm )(\"\"\")</string>
					<key>captures</key>
					<dict>
						<key>1</key>
						<dict>
							<key>name</key>
							<string>keyword.other.nim</string>
						</dict>
						<key>2</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>end</key>
					<string>\"\"\"</string>
					<key>endCaptures</key>
					<dict>
						<key>0</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>patterns</key>
					<array>
						<dict>
							<key>begin</key>
							<string>\`</string>
							<key>end</key>
							<string>\`</string>
							<key>name</key>
							<string>keyword.operator.nim</string>
						</dict>
						<dict>
							<key>include</key>
							<string>source.asm</string>
						</dict>
					</array>
				</dict>
			</array>
		</dict>
		<dict>
			<key>comment</key>
			<string>A nim procedure or method declaration</string>
			<key>name</key>
			<string>meta.proc.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>begin</key>
					<string>(?&lt;![\w\x{80}-\x{10FFFF}])(proc|func|method|template|macro|iterator|converter)\s+((\`[^\s\`]+\`)|([\w\x{80}-\x{10FFFF}]+))(\*)?</string>
					<key>beginCaptures</key>
					<dict>
						<key>1</key>
						<dict>
							<key>name</key>
							<string>storage.type.proc.nim</string>
						</dict>
						<key>2</key>
						<dict>
							<key>name</key>
							<string>entity.name.function.nim</string>
						</dict>
						<key>5</key>
						<dict>
							<key>name</key>
							<string>keyword.operator.secondary.kw-public.nim</string>
						</dict>
					</dict>
					<key>end</key>
					<string>(\=)</string>
					<key>endCaptures</key>
					<dict>
						<key>1</key>
						<dict>
							<key>name</key>
							<string>keyword.operator.nim</string>
						</dict>
					</dict>
					<key>patterns</key>
					<array>
						<dict>
							<key>comment</key>
							<string>Generic</string>
							<key>match</key>
							<string>\[[\w\x{80}-\x{10FFFF}]+\]</string>
						</dict>
						<dict>
							<key>begin</key>
							<string>\{</string>
							<key>comment</key>
							<string>Pattern</string>
							<key>end</key>
							<string>\}</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>begin</key>
									<string>\"</string>
									<key>end</key>
									<string>\"</string>
									<key>name</key>
									<string>string.something.nim</string>
								</dict>
								<dict>
									<key>match</key>
									<string>([\w\x{80}-\x{10FFFF}]+)</string>
									<key>name</key>
									<string>entity.other.attribute-name.pattern.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>\(</string>
							<key>comment</key>
							<string>Parameters</string>
							<key>end</key>
							<string>\)</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>begin</key>
									<string>\{</string>
									<key>comment</key>
									<string>Pattern</string>
									<key>end</key>
									<string>\}</string>
									<key>patterns</key>
									<array>
										<dict>
											<key>begin</key>
											<string>\"</string>
											<key>end</key>
											<string>\"</string>
											<key>name</key>
											<string>string.something.nim</string>
										</dict>
										<dict>
											<key>match</key>
											<string>([\[\]\w\x{80}-\x{10FFFF}]+)</string>
											<key>name</key>
											<string>entity.other.attribute-name.pattern.nim</string>
										</dict>
									</array>
								</dict>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>include</key>
							<string>source.nim</string>
						</dict>
					</array>
				</dict>
			</array>
		</dict>
		<dict>
			<key>begin</key>
			<string>\{\.</string>
			<key>comment</key>
			<string>Pragmas</string>
			<key>end</key>
			<string>\.?\}</string>
			<key>name</key>
			<string>pragma</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>begin</key>
					<string>\"</string>
					<key>end</key>
					<string>\"</string>
					<key>name</key>
					<string>string.something.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>([\w\x{80}-\x{10FFFF}]+)</string>
					<key>name</key>
					<string>entity.other.attribute-name.pragma.nim</string>
				</dict>
			</array>
		</dict>
		<dict>
			<key>begin</key>
			<string>discard \"\"\"</string>
			<key>comment</key>
			<string>A discarded triple string literal comment</string>
			<key>end</key>
			<string>\"\"\"</string>
			<key>name</key>
			<string>comment.line.discarded.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>A float literal</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])(\d[_\d]*((\.[_\d]+([eE][\+\-]?\d[_\d]*)?)|([eE][\+\-]?\d[_\d]*)))('?([fF](32|64|128))|[fFdD])?</string>
			<key>name</key>
			<string>constant.numeric.float.decimal.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>A hexadecimal literal</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])(0[xX][0-9A-Fa-f][_0-9A-Fa-f]*)('?(([iIuUfF](8|16|32|64))|[uUfFdD]))?</string>
			<key>name</key>
			<string>constant.numeric.integer.hexadecimal.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>A base-8 integer literal</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])(0[ocC][0-7][_0-7]*)('?(([iIuUfF](8|16|32|64))|[uUfFdD]))?</string>
			<key>name</key>
			<string>constant.numeric.integer.octal.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>A base-2 integer literal</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])(0(b|B)[01][_01]*)('?(([iIuUfF](8|16|32|64))|[uUfFdD]))?</string>
			<key>name</key>
			<string>constant.numeric.integer.binary.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>A base-10 integer literal</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])(\d[_\d]*)('?(([iIuUfF](8|16|32|64))|[uUfFdD]))?</string>
			<key>name</key>
			<string>constant.numeric.integer.decimal.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>Language Constants.</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])(true|false|inf|nil)(?![\w\x{80}-\x{10FFFF}])</string>
			<key>name</key>
			<string>constant.language.nim</string>
		</dict>
		<dict>
			<key>begin</key>
			<string>(?:^|\s+|=)(when|if)\b</string>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>keyword.control.primary.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>Primary branching keywords</string>
			<key>end</key>
			<string>(?=:)</string>
			<key>endCaptures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>control.variable.parameter.nim</string>
				</dict>
			</dict>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>source.nim</string>
				</dict>
			</array>
		</dict>
		<dict>
			<key>begin</key>
			<string>(?:^|\s+|=)(case)\b</string>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>keyword.control.primary.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>Primary branching keyword 'case'</string>
			<key>end</key>
			<string>(?=\bof\b)</string>
			<key>endCaptures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>control.variable.parameter.nim</string>
				</dict>
			</dict>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>source.nim</string>
				</dict>
			</array>
		</dict>
		<dict>
			<key>begin</key>
			<string>(?:^|\s+)(of|else|elif)\b</string>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>keyword.control.secondary.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>Secondary branching keywords and their conditions</string>
			<key>end</key>
			<string>(?=:)</string>
			<key>endCaptures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>control.variable.parameter.nim</string>
				</dict>
			</dict>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>source.nim</string>
				</dict>
			</array>
		</dict>
		<dict>
			<key>comment</key>
			<string>Keywords that affect program control flow or scope.</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])(await|block|break|continue|do|end|except|finally|raise|return|try|while|yield)(?![\w\x{80}-\x{10FFFF}])</string>
			<key>name</key>
			<string>keyword.control.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>Keyword boolean operators for expressions.</string>
			<key>match</key>
			<string>((?&lt;![\w\x{80}-\x{10FFFF}])(and|in|is|isnot|not|notin|or|xor)(?![\w\x{80}-\x{10FFFF}]))</string>
			<key>name</key>
			<string>keyword.operator.boolean.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>Other keywords.</string>
			<key>match</key>
			<string>((?&lt;![\w\x{80}-\x{10FFFF}])(addr|as|bind|cast|concept|const|converter|defer|discard|distinct|div|enum|export|from|import|include|let|mixin|object|of|out|ptr|ref|shl|shr|static|type|using|var)(?![\w\x{80}-\x{10FFFF}]))</string>
			<key>name</key>
			<string>keyword.other.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>Generic operators for expressions.</string>
			<key>match</key>
			<string>(\b()\b|(=|\+|-|\*|/|&lt;|&gt;|@|\$|~|&amp;|%|!|\?|\^|\.|:|\\)+)</string>
			<key>name</key>
			<string>keyword.operator.nim</string>
		</dict>
		<dict>
			<key>begin</key>
			<string>(for)\s+</string>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>keyword.control.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>in keyword in a 'for' loop</string>
			<key>end</key>
			<string>(?=:)</string>
			<key>name</key>
			<string>meta.forloop.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>captures</key>
					<dict>
						<key>1</key>
						<dict>
							<key>name</key>
							<string>keyword.control.nim</string>
						</dict>
					</dict>
					<key>match</key>
					<string>\ [\w\x{80}-\x{10FFFF},]+\s+(in)\s+</string>
				</dict>
				<dict>
					<key>include</key>
					<string>source.nim</string>
				</dict>
			</array>
		</dict>
		<dict>
			<key>captures</key>
			<dict>
				<key>2</key>
				<dict>
					<key>name</key>
					<string>keyword.control.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>Import syntax</string>
			<key>match</key>
			<string>((import)\s+[\.|\w|\/]+,?)</string>
		</dict>
		<dict>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>keyword.control.nim</string>
				</dict>
			</dict>
			<key>match</key>
			<string>(from)\s+[\/\w]+(?:\s+(?:as)\s+[\/\w]+)?\s+(?=import)</string>
		</dict>
		<dict>
			<key>begin</key>
			<string>(var|let)\s*\(</string>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>keyword.other.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>Destructure syntax</string>
			<key>end</key>
			<string>\)</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>Invalid and unused keywords.</string>
			<key>match</key>
			<string>((?&lt;![\w\x{80}-\x{10FFFF}])(interface)(?![\w\x{80}-\x{10FFFF}]))</string>
			<key>name</key>
			<string>keyword.invalid.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>Common functions</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])(new|GC_ref|GC_unref|assert|echo|defined|declared|newException|countup|countdown|len|high|low)(?![\w\x{80}-\x{10FFFF}])</string>
			<key>name</key>
			<string>keyword.other.common.function.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>Built-in, concrete types.</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])(((uint|int|float)(8|16|32|64)?)|clong|culong|cchar|cschar|cshort|cint|csize|clonglong|cfloat|cdouble|clongdouble|cuchar|cushort|cuint|culonglong|cstringArray|bool|string|auto|cstring|char|byte|tobject|typedesc|stmt|expr|any|untyped|typed)(?![\w\x{80}-\x{10FFFF}])</string>
			<key>name</key>
			<string>storage.type.concrete.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>Built-in, generic types.</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])(range|array|seq|tuple|Natural|set|ref|ptr|pointer)(?![\w\x{80}-\x{10FFFF}])</string>
			<key>name</key>
			<string>storage.type.generic.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>Function types</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])(proc|func|iterator|method|template|macro)(?![\w\x{80}-\x{10FFFF}])</string>
			<key>name</key>
			<string>storage.type.function.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>Special types.</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])(openarray|varargs|void)(?![\w\x{80}-\x{10FFFF}])</string>
			<key>name</key>
			<string>storage.type.generic.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>Other constants.</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])([A-Z][A-Z0-9_]+)(?![\w\x{80}-\x{10FFFF}])</string>
			<key>name</key>
			<string>support.constant.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>Other types.</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])([A-Z]\w+)(?![\w\x{80}-\x{10FFFF}])</string>
			<key>name</key>
			<string>support.type.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>Function call.</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])(\w+)(?![\w\x{80}-\x{10FFFF}])(?=\()</string>
			<key>name</key>
			<string>support.function.any-method.nim</string>
		</dict>
		<dict>
			<key>begin</key>
			<string>\w*\"\"\"</string>
			<key>comment</key>
			<string>(Raw) Triple Quoted String</string>
			<key>end</key>
			<string>\"\"\"[^\"]</string>
			<key>name</key>
			<string>string.quoted.triple.nim</string>
		</dict>
		<dict>
			<key>begin</key>
			<string>\w+\"</string>
			<key>comment</key>
			<string>Raw Double Quoted String</string>
			<key>end</key>
			<string>\"</string>
			<key>name</key>
			<string>string.quoted.double.raw.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>match</key>
					<string>\"\"</string>
				</dict>
			</array>
		</dict>
		<dict>
			<key>begin</key>
			<string>\"</string>
			<key>comment</key>
			<string>Double Quoted String</string>
			<key>end</key>
			<string>\"</string>
			<key>name</key>
			<string>string.quoted.double.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#escaped_char</string>
				</dict>
			</array>
		</dict>
		<dict>
			<key>begin</key>
			<string>\'</string>
			<key>comment</key>
			<string>Single quoted character literal</string>
			<key>end</key>
			<string>\'</string>
			<key>name</key>
			<string>string.quoted.single.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#escaped_char</string>
				</dict>
				<dict>
					<key>match</key>
					<string>([^\'][^\']+?)</string>
					<key>name</key>
					<string>invalid.illegal.character.nim</string>
				</dict>
			</array>
		</dict>
		<dict>
			<key>begin</key>
			<string>([\w\x{80}-\x{10FFFF}\`]+)\s*(?=\(|\[.+?\]\s*\()</string>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>support.function.any-method.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>Call syntax</string>
			<key>end</key>
			<string>\)</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>source.nim</string>
				</dict>
			</array>
		</dict>
		<dict>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>support.function.any-method.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>Command syntax</string>
			<key>match</key>
			<string>([\w\x{80}-\x{10FFFF}]+)(?=\s+[\w](?![\w\x{80}-\x{10FFFF}]+((?!\n)\s)+))</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>source.nim</string>
				</dict>
			</array>
		</dict>
		<dict>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>support.function.any-method.nim</string>
				</dict>
			</dict>
			<key>match</key>
			<string>([\w\x{80}-\x{10FFFF}]+)(?=\s+[\"\'\`])</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>source.nim</string>
				</dict>
			</array>
		</dict>
		<dict>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>storage.type.function.nim</string>
				</dict>
				<key>2</key>
				<dict>
					<key>name</key>
					<string>keyword.operator.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>tmpl specifier</string>
			<key>match</key>
			<string>(tmpl(i)?)(?=( (nim|html|xml|js|css|glsl|md))?\"\"\")</string>
		</dict>
		<dict>
			<key>name</key>
			<string>source.nim.embedded.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>begin</key>
					<string>(nim)(\"\"\")</string>
					<key>captures</key>
					<dict>
						<key>1</key>
						<dict>
							<key>name</key>
							<string>storage.type.function.nim</string>
						</dict>
						<key>2</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>end</key>
					<string>\"\"\"</string>
					<key>endCaptures</key>
					<dict>
						<key>0</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>patterns</key>
					<array>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\(</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\)</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\{</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\}</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)(for|while|case|of|when|if|else|elif)( )</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.control.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>(\{|\n)</string>
							<key>endCaptures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>plain</string>
								</dict>
							</dict>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>match</key>
							<string>(?&lt;!\$)(\$[a-zA-Z0-9_]+)</string>
							<key>name</key>
							<string>keyword.operator.nim</string>
						</dict>
						<dict>
							<key>include</key>
							<string>source.nim</string>
						</dict>
					</array>
				</dict>
			</array>
		</dict>
		<dict>
			<key>name</key>
			<string>source.html.embedded.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>begin</key>
					<string>(html)(\"\"\")</string>
					<key>captures</key>
					<dict>
						<key>1</key>
						<dict>
							<key>name</key>
							<string>storage.type.function.nim</string>
						</dict>
						<key>2</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>end</key>
					<string>\"\"\"</string>
					<key>endCaptures</key>
					<dict>
						<key>0</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>patterns</key>
					<array>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\(</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\)</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\{</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\}</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)(for|while|case|of|when|if|else|elif)( )</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.control.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>(\{|\n)</string>
							<key>endCaptures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>plain</string>
								</dict>
							</dict>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>match</key>
							<string>(?&lt;!\$)(\$[a-zA-Z0-9_]+)</string>
							<key>name</key>
							<string>keyword.operator.nim</string>
						</dict>
						<dict>
							<key>include</key>
							<string>text.xml</string>
						</dict>
					</array>
				</dict>
			</array>
		</dict>
		<dict>
			<key>name</key>
			<string>source.xml.embedded.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>begin</key>
					<string>(xml)(\"\"\")</string>
					<key>captures</key>
					<dict>
						<key>1</key>
						<dict>
							<key>name</key>
							<string>storage.type.function.nim</string>
						</dict>
						<key>2</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>end</key>
					<string>\"\"\"</string>
					<key>endCaptures</key>
					<dict>
						<key>0</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>patterns</key>
					<array>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\(</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\)</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\{</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\}</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)(for|while|case|of|when|if|else|elif)( )</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.control.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>(\{|\n)</string>
							<key>endCaptures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>plain</string>
								</dict>
							</dict>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>match</key>
							<string>(?&lt;!\$)(\$[a-zA-Z0-9_]+)</string>
							<key>name</key>
							<string>keyword.operator.nim</string>
						</dict>
						<dict>
							<key>include</key>
							<string>text.xml</string>
						</dict>
					</array>
				</dict>
			</array>
		</dict>
		<dict>
			<key>name</key>
			<string>source.js.embedded.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>begin</key>
					<string>(js)(\"\"\")</string>
					<key>captures</key>
					<dict>
						<key>1</key>
						<dict>
							<key>name</key>
							<string>storage.type.function.nim</string>
						</dict>
						<key>2</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>end</key>
					<string>\"\"\"</string>
					<key>endCaptures</key>
					<dict>
						<key>0</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>patterns</key>
					<array>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\(</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\)</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\{</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\}</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)(for|while|case|of|when|if|else|elif)( )</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.control.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>(\{|\n)</string>
							<key>endCaptures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>plain</string>
								</dict>
							</dict>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>match</key>
							<string>(?&lt;!\$)(\$[a-zA-Z0-9_]+)</string>
							<key>name</key>
							<string>keyword.operator.nim</string>
						</dict>
						<dict>
							<key>include</key>
							<string>source.js</string>
						</dict>
					</array>
				</dict>
			</array>
		</dict>
		<dict>
			<key>name</key>
			<string>source.css.embedded.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>begin</key>
					<string>(css)(\"\"\")</string>
					<key>captures</key>
					<dict>
						<key>1</key>
						<dict>
							<key>name</key>
							<string>storage.type.function.nim</string>
						</dict>
						<key>2</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>end</key>
					<string>\"\"\"</string>
					<key>endCaptures</key>
					<dict>
						<key>0</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>patterns</key>
					<array>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\(</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\)</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\{</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\}</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)(for|while|case|of|when|if|else|elif)( )</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.control.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>(\{|\n)</string>
							<key>endCaptures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>plain</string>
								</dict>
							</dict>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>match</key>
							<string>(?&lt;!\$)(\$[a-zA-Z0-9_]+)</string>
							<key>name</key>
							<string>keyword.operator.nim</string>
						</dict>
						<dict>
							<key>include</key>
							<string>source.css</string>
						</dict>
					</array>
				</dict>
			</array>
		</dict>
		<dict>
			<key>name</key>
			<string>source.glsl.embedded.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>begin</key>
					<string>(glsl)(\"\"\")</string>
					<key>captures</key>
					<dict>
						<key>1</key>
						<dict>
							<key>name</key>
							<string>storage.type.function.nim</string>
						</dict>
						<key>2</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>end</key>
					<string>\"\"\"</string>
					<key>endCaptures</key>
					<dict>
						<key>0</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>patterns</key>
					<array>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\(</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\)</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\{</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\}</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)(for|while|case|of|when|if|else|elif)( )</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.control.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>(\{|\n)</string>
							<key>endCaptures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>plain</string>
								</dict>
							</dict>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>match</key>
							<string>(?&lt;!\$)(\$[a-zA-Z0-9_]+)</string>
							<key>name</key>
							<string>keyword.operator.nim</string>
						</dict>
						<dict>
							<key>include</key>
							<string>source.glsl</string>
						</dict>
					</array>
				</dict>
			</array>
		</dict>
		<dict>
			<key>name</key>
			<string>source.markdown.embedded.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>begin</key>
					<string>(md)(\"\"\")</string>
					<key>captures</key>
					<dict>
						<key>1</key>
						<dict>
							<key>name</key>
							<string>storage.type.function.nim</string>
						</dict>
						<key>2</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>end</key>
					<string>\"\"\"</string>
					<key>endCaptures</key>
					<dict>
						<key>0</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>patterns</key>
					<array>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\(</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\)</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\{</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\}</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)(for|while|case|of|when|if|else|elif)( )</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.control.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>(\{|\n)</string>
							<key>endCaptures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>plain</string>
								</dict>
							</dict>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>match</key>
							<string>(?&lt;!\$)(\$[a-zA-Z0-9_]+)</string>
							<key>name</key>
							<string>keyword.operator.nim</string>
						</dict>
						<dict>
							<key>include</key>
							<string>text.html.markdown.multimarkdown</string>
						</dict>
					</array>
				</dict>
			</array>
		</dict>
	</array>
	<key>repository</key>
	<dict>
		<key>escaped_char</key>
		<dict>
			<key>patterns</key>
			<array>
				<dict>
					<key>match</key>
					<string>\\[nN]</string>
					<key>name</key>
					<string>constant.character.escape.newline.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\\[cC]|\\[rR]</string>
					<key>name</key>
					<string>constant.character.escape.carriagereturn.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\\[lL]</string>
					<key>name</key>
					<string>constant.character.escape.linefeed.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\\[fF]</string>
					<key>name</key>
					<string>constant.character.escape.formfeed.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\\[tT]</string>
					<key>name</key>
					<string>constant.character.escape.tabulator.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\\[vV]</string>
					<key>name</key>
					<string>constant.character.escape.verticaltabulator.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\\\"</string>
					<key>name</key>
					<string>constant.character.escape.double-quote.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\\'</string>
					<key>name</key>
					<string>constant.character.escape.single-quote.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\\[0-9]+</string>
					<key>name</key>
					<string>constant.character.escape.chardecimalvalue.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\\[aA]</string>
					<key>name</key>
					<string>constant.character.escape.alert.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\\[bB]</string>
					<key>name</key>
					<string>constant.character.escape.backspace.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\\[eE]</string>
					<key>name</key>
					<string>constant.character.escape.escape.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\\[xX][0-9A-Fa-f]{2}</string>
					<key>name</key>
					<string>constant.character.escape.hex.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\\\\</string>
					<key>name</key>
					<string>constant.character.escape.backslash.nim</string>
				</dict>
			</array>
		</dict>
	</dict>
	<key>scopeName</key>
	<string>source.nim</string>
	<key>uuid</key>
	<string>fa6f2c1c-dd3f-4bcd-b2be-d05312be4080</string>
</dict>
</plist>
<commit_msg>fix #125 (#127)<commit_after><?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>fileTypes</key>
	<array>
		<string>nim</string>
		<string>nims</string>
		<string>nimble</string>
	</array>
	<key>name</key>
	<string>Nim</string>
	<key>patterns</key>
	<array>
		<dict>
			<key>begin</key>
			<string>(\#\[\s*(TODO|todo)?)</string>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>punctuation.definition.multi-comment.nim</string>
				</dict>
				<key>2</key>
				<dict>
					<key>name</key>
					<string>invalid.illegal.TODO.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>A multiline comment.</string>
			<key>end</key>
			<string>(.*]\#)</string>
			<key>name</key>
			<string>comment.line.number-sign.multi-comment.nim</string>
		</dict>
		<dict>
			<key>begin</key>
			<string>(\#\#\[\s*(TODO|todo)?)</string>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>punctuation.definition.multi-doc-comment.nim</string>
				</dict>
				<key>2</key>
				<dict>
					<key>name</key>
					<string>invalid.illegal.TODO.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>A multiline documentation comment.</string>
			<key>end</key>
			<string>(.*]\#\#)</string>
			<key>name</key>
			<string>comment.line.number-sign.multi-doc-comment.nim</string>
		</dict>
		<dict>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>punctuation.definition.doc-comment.nim</string>
				</dict>
				<key>2</key>
				<dict>
					<key>name</key>
					<string>invalid.illegal.TODO.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>A documentation comment.</string>
			<key>match</key>
			<string>(##\s*(TODO|todo)?).+$\n?</string>
			<key>name</key>
			<string>comment.line.number-sign.doc-comment.nim</string>
		</dict>
		<dict>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>punctuation.definition.doc-comment.empty.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>An empty documentation comment.</string>
			<key>match</key>
			<string>(##\s*)$\n?</string>
			<key>name</key>
			<string>comment.line.number-sign.doc-comment.empty.nim</string>
		</dict>
		<dict>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>punctuation.definition.comment.nim</string>
				</dict>
				<key>2</key>
				<dict>
					<key>name</key>
					<string>invalid.illegal.TODO.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>A regular comment</string>
			<key>match</key>
			<string>(#\s*(TODO|todo)?).*$\n?</string>
			<key>name</key>
			<string>comment.line.number-sign.comment.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>C</string>
			<key>name</key>
			<string>source.c.embedded.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>begin</key>
					<string>\{\.(emit:) ?(\"\"\")</string>
					<key>captures</key>
					<dict>
						<key>1</key>
						<dict>
							<key>name</key>
							<string>keyword.other.nim</string>
						</dict>
						<key>2</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>end</key>
					<string>(\"\"\")\.?</string>
					<key>endCaptures</key>
					<dict>
						<key>1</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>patterns</key>
					<array>
						<dict>
							<key>begin</key>
							<string>\`</string>
							<key>end</key>
							<string>\`</string>
							<key>name</key>
							<string>keyword.operator.nim</string>
						</dict>
						<dict>
							<key>include</key>
							<string>source.c</string>
						</dict>
					</array>
				</dict>
			</array>
		</dict>
		<dict>
			<key>comment</key>
			<string>assembly</string>
			<key>name</key>
			<string>source.asm.embedded.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>begin</key>
					<string>(asm )(\"\"\")</string>
					<key>captures</key>
					<dict>
						<key>1</key>
						<dict>
							<key>name</key>
							<string>keyword.other.nim</string>
						</dict>
						<key>2</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>end</key>
					<string>\"\"\"</string>
					<key>endCaptures</key>
					<dict>
						<key>0</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>patterns</key>
					<array>
						<dict>
							<key>begin</key>
							<string>\`</string>
							<key>end</key>
							<string>\`</string>
							<key>name</key>
							<string>keyword.operator.nim</string>
						</dict>
						<dict>
							<key>include</key>
							<string>source.asm</string>
						</dict>
					</array>
				</dict>
			</array>
		</dict>
		<dict>
			<key>comment</key>
			<string>A nim procedure or method declaration</string>
			<key>name</key>
			<string>meta.proc.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>begin</key>
					<string>(?&lt;![\w\x{80}-\x{10FFFF}])(proc|func|method|template|macro|iterator|converter)\s+((\`[^\s\`]+\`)|([\w\x{80}-\x{10FFFF}]+))(\*)?</string>
					<key>beginCaptures</key>
					<dict>
						<key>1</key>
						<dict>
							<key>name</key>
							<string>storage.type.proc.nim</string>
						</dict>
						<key>2</key>
						<dict>
							<key>name</key>
							<string>entity.name.function.nim</string>
						</dict>
						<key>5</key>
						<dict>
							<key>name</key>
							<string>keyword.operator.secondary.kw-public.nim</string>
						</dict>
					</dict>
					<key>end</key>
					<string>(\=)</string>
					<key>endCaptures</key>
					<dict>
						<key>1</key>
						<dict>
							<key>name</key>
							<string>keyword.operator.nim</string>
						</dict>
					</dict>
					<key>patterns</key>
					<array>
						<dict>
							<key>comment</key>
							<string>Generic</string>
							<key>match</key>
							<string>\[[\w\x{80}-\x{10FFFF}]+\]</string>
						</dict>
						<dict>
							<key>begin</key>
							<string>\{</string>
							<key>comment</key>
							<string>Pattern</string>
							<key>end</key>
							<string>\}</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>begin</key>
									<string>\"</string>
									<key>end</key>
									<string>\"</string>
									<key>name</key>
									<string>string.something.nim</string>
								</dict>
								<dict>
									<key>match</key>
									<string>([\w\x{80}-\x{10FFFF}]+)</string>
									<key>name</key>
									<string>entity.other.attribute-name.pattern.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>\(</string>
							<key>comment</key>
							<string>Parameters</string>
							<key>end</key>
							<string>\)</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>begin</key>
									<string>\{</string>
									<key>comment</key>
									<string>Pattern</string>
									<key>end</key>
									<string>\}</string>
									<key>patterns</key>
									<array>
										<dict>
											<key>begin</key>
											<string>\"</string>
											<key>end</key>
											<string>\"</string>
											<key>name</key>
											<string>string.something.nim</string>
										</dict>
										<dict>
											<key>match</key>
											<string>([\[\]\w\x{80}-\x{10FFFF}]+)</string>
											<key>name</key>
											<string>entity.other.attribute-name.pattern.nim</string>
										</dict>
									</array>
								</dict>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>include</key>
							<string>source.nim</string>
						</dict>
					</array>
				</dict>
			</array>
		</dict>
		<dict>
			<key>begin</key>
			<string>\{\.</string>
			<key>comment</key>
			<string>Pragmas</string>
			<key>end</key>
			<string>\.?\}</string>
			<key>name</key>
			<string>pragma</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>begin</key>
					<string>\"</string>
					<key>end</key>
					<string>\"</string>
					<key>name</key>
					<string>string.something.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>([\w\x{80}-\x{10FFFF}]+)</string>
					<key>name</key>
					<string>entity.other.attribute-name.pragma.nim</string>
				</dict>
			</array>
		</dict>
		<dict>
			<key>begin</key>
			<string>discard \"\"\"</string>
			<key>comment</key>
			<string>A discarded triple string literal comment</string>
			<key>end</key>
			<string>\"\"\"</string>
			<key>name</key>
			<string>comment.line.discarded.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>A float literal</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])(\d[_\d]*((\.[_\d]+([eE][\+\-]?\d[_\d]*)?)|([eE][\+\-]?\d[_\d]*)))('?([fF](32|64|128))|[fFdD])?</string>
			<key>name</key>
			<string>constant.numeric.float.decimal.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>A hexadecimal literal</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])(0[xX][0-9A-Fa-f][_0-9A-Fa-f]*)('?(([iIuUfF](8|16|32|64))|[uUfFdD]))?</string>
			<key>name</key>
			<string>constant.numeric.integer.hexadecimal.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>A base-8 integer literal</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])(0[ocC][0-7][_0-7]*)('?(([iIuUfF](8|16|32|64))|[uUfFdD]))?</string>
			<key>name</key>
			<string>constant.numeric.integer.octal.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>A base-2 integer literal</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])(0(b|B)[01][_01]*)('?(([iIuUfF](8|16|32|64))|[uUfFdD]))?</string>
			<key>name</key>
			<string>constant.numeric.integer.binary.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>A base-10 integer literal</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])(\d[_\d]*)('?(([iIuUfF](8|16|32|64))|[uUfFdD]))?</string>
			<key>name</key>
			<string>constant.numeric.integer.decimal.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>Language Constants.</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])(true|false|inf|nil)(?![\w\x{80}-\x{10FFFF}])</string>
			<key>name</key>
			<string>constant.language.nim</string>
		</dict>
		<dict>
			<key>begin</key>
			<string>(?:^|\s+|=)(when|if)\b</string>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>keyword.control.primary.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>Primary branching keywords</string>
			<key>end</key>
			<string>(?=:)</string>
			<key>endCaptures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>control.variable.parameter.nim</string>
				</dict>
			</dict>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>source.nim</string>
				</dict>
			</array>
		</dict>
		<dict>
			<key>begin</key>
			<string>(?:^|\s+|=)(case)\b</string>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>keyword.control.primary.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>Primary branching keyword 'case'</string>
			<key>end</key>
			<string>(?=\bof\b)</string>
			<key>endCaptures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>control.variable.parameter.nim</string>
				</dict>
			</dict>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>source.nim</string>
				</dict>
			</array>
		</dict>
		<dict>
			<key>begin</key>
			<string>(?:^|\s+)(of|else|elif)\b</string>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>keyword.control.secondary.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>Secondary branching keywords and their conditions</string>
			<key>end</key>
			<string>(?=:)</string>
			<key>endCaptures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>control.variable.parameter.nim</string>
				</dict>
			</dict>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>source.nim</string>
				</dict>
			</array>
		</dict>
		<dict>
			<key>comment</key>
			<string>Keywords that affect program control flow or scope.</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])(await|block|break|continue|do|end|except|finally|raise|return|try|while|yield)(?![\w\x{80}-\x{10FFFF}])</string>
			<key>name</key>
			<string>keyword.control.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>Keyword boolean operators for expressions.</string>
			<key>match</key>
			<string>((?&lt;![\w\x{80}-\x{10FFFF}])(and|in|is|isnot|not|notin|or|xor)(?![\w\x{80}-\x{10FFFF}]))</string>
			<key>name</key>
			<string>keyword.operator.boolean.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>Other keywords.</string>
			<key>match</key>
			<string>((?&lt;![\w\x{80}-\x{10FFFF}])(addr|as|bind|cast|concept|const|converter|defer|discard|distinct|div|enum|export|from|import|include|let|mixin|object|of|out|ptr|ref|shl|shr|static|type|using|var)(?![\w\x{80}-\x{10FFFF}]))</string>
			<key>name</key>
			<string>keyword.other.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>Generic operators for expressions.</string>
			<key>match</key>
			<string>(\b()\b|(=|\+|-|\*|/|&lt;|&gt;|@|\$|~|&amp;|%|!|\?|\^|\.|:|\\)+)</string>
			<key>name</key>
			<string>keyword.operator.nim</string>
		</dict>
		<dict>
			<key>begin</key>
			<string>(for)\s+</string>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>keyword.control.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>in keyword in a 'for' loop</string>
			<key>end</key>
			<string>(?=:)</string>
			<key>name</key>
			<string>meta.forloop.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>captures</key>
					<dict>
						<key>1</key>
						<dict>
							<key>name</key>
							<string>keyword.control.nim</string>
						</dict>
					</dict>
					<key>match</key>
					<string>\ [\w\x{80}-\x{10FFFF},]+\s+(in)\s+</string>
				</dict>
				<dict>
					<key>include</key>
					<string>source.nim</string>
				</dict>
			</array>
		</dict>
		<dict>
			<key>captures</key>
			<dict>
				<key>2</key>
				<dict>
					<key>name</key>
					<string>keyword.control.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>Import syntax</string>
			<key>match</key>
			<string>((import)\s+[\.|\w|\/]+,?)</string>
		</dict>
		<dict>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>keyword.control.nim</string>
				</dict>
			</dict>
			<key>match</key>
			<string>(from)\s+[\/\w]+(?:\s+(?:as)\s+[\/\w]+)?\s+(?=import)</string>
		</dict>
		<dict>
			<key>begin</key>
			<string>(var|let)\s*\(</string>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>keyword.other.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>Destructure syntax</string>
			<key>end</key>
			<string>\)</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>Invalid and unused keywords.</string>
			<key>match</key>
			<string>((?&lt;![\w\x{80}-\x{10FFFF}])(interface)(?![\w\x{80}-\x{10FFFF}]))</string>
			<key>name</key>
			<string>keyword.invalid.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>Common functions</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])(new|GC_ref|GC_unref|assert|echo|defined|declared|newException|countup|countdown|len|high|low)(?![\w\x{80}-\x{10FFFF}])</string>
			<key>name</key>
			<string>keyword.other.common.function.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>Built-in, concrete types.</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])(((uint|int|float)(8|16|32|64)?)|clong|culong|cchar|cschar|cshort|cint|csize|clonglong|cfloat|cdouble|clongdouble|cuchar|cushort|cuint|culonglong|cstringArray|bool|string|auto|cstring|char|byte|tobject|typedesc|stmt|expr|any|untyped|typed)(?![\w\x{80}-\x{10FFFF}])</string>
			<key>name</key>
			<string>storage.type.concrete.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>Built-in, generic types.</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])(range|array|seq|tuple|Natural|set|ref|ptr|pointer)(?![\w\x{80}-\x{10FFFF}])</string>
			<key>name</key>
			<string>storage.type.generic.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>Function types</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])(proc|func|iterator|method|template|macro)(?![\w\x{80}-\x{10FFFF}])</string>
			<key>name</key>
			<string>storage.type.function.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>Special types.</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])(openarray|varargs|void)(?![\w\x{80}-\x{10FFFF}])</string>
			<key>name</key>
			<string>storage.type.generic.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>Other constants.</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])([A-Z][A-Z0-9_]+)(?![\w\x{80}-\x{10FFFF}])</string>
			<key>name</key>
			<string>support.constant.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>Other types.</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])([A-Z]\w+)(?![\w\x{80}-\x{10FFFF}])</string>
			<key>name</key>
			<string>support.type.nim</string>
		</dict>
		<dict>
			<key>comment</key>
			<string>Function call.</string>
			<key>match</key>
			<string>(?&lt;![\w\x{80}-\x{10FFFF}])(\w+)(?![\w\x{80}-\x{10FFFF}])(?=\()</string>
			<key>name</key>
			<string>support.function.any-method.nim</string>
		</dict>
		<dict>
			<key>begin</key>
			<string>\w*\"\"\"</string>
			<key>comment</key>
			<string>(Raw) Triple Quoted String</string>
			<key>end</key>
			<string>\"\"\"[^\"]</string>
			<key>name</key>
			<string>string.quoted.triple.nim</string>
		</dict>
		<dict>
			<key>begin</key>
			<string>\w+\"</string>
			<key>comment</key>
			<string>Raw Double Quoted String</string>
			<key>end</key>
			<string>\"</string>
			<key>name</key>
			<string>string.quoted.double.raw.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>match</key>
					<string>\"\"</string>
				</dict>
			</array>
		</dict>
		<dict>
			<key>begin</key>
			<string>\"</string>
			<key>comment</key>
			<string>Double Quoted String</string>
			<key>end</key>
			<string>\"</string>
			<key>name</key>
			<string>string.quoted.double.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#escaped_char</string>
				</dict>
			</array>
		</dict>
		<dict>
			<key>begin</key>
			<string>\'</string>
			<key>comment</key>
			<string>Single quoted character literal</string>
			<key>end</key>
			<string>\'</string>
			<key>name</key>
			<string>string.quoted.single.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#escaped_char</string>
				</dict>
				<dict>
					<key>match</key>
					<string>([^\'][^\']+?)</string>
					<key>name</key>
					<string>invalid.illegal.character.nim</string>
				</dict>
			</array>
		</dict>
		<dict>
			<key>begin</key>
			<string>([\w\x{80}-\x{10FFFF}\`]+)\s*(?=\(|\[.+?\]\s*\()</string>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>support.function.any-method.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>Call syntax</string>
			<key>end</key>
			<string>\)</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>source.nim</string>
				</dict>
			</array>
		</dict>
		<dict>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>support.function.any-method.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>Command syntax</string>
			<key>match</key>
			<string>([\w\x{80}-\x{10FFFF}]+)(?=\s+[\w](?![\w\x{80}-\x{10FFFF}]+((?!\n)\s)+))</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>source.nim</string>
				</dict>
			</array>
		</dict>
		<dict>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>support.function.any-method.nim</string>
				</dict>
			</dict>
			<key>match</key>
			<string>([\w\x{80}-\x{10FFFF}]+)(?=\s+[\"\'\`])</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>source.nim</string>
				</dict>
			</array>
		</dict>
		<dict>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>storage.type.function.nim</string>
				</dict>
				<key>2</key>
				<dict>
					<key>name</key>
					<string>keyword.operator.nim</string>
				</dict>
			</dict>
			<key>comment</key>
			<string>tmpl specifier</string>
			<key>match</key>
			<string>(tmpl(i)?)(?=( (nim|html|xml|js|css|glsl|md))?\"\"\")</string>
		</dict>
		<dict>
			<key>name</key>
			<string>source.nim.embedded.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>begin</key>
					<string>(nim)(\"\"\")</string>
					<key>captures</key>
					<dict>
						<key>1</key>
						<dict>
							<key>name</key>
							<string>storage.type.function.nim</string>
						</dict>
						<key>2</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>end</key>
					<string>\"\"\"</string>
					<key>endCaptures</key>
					<dict>
						<key>0</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>patterns</key>
					<array>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\(</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\)</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\{</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\}</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)(for|while|case|of|when|if|else|elif)( )</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.control.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>(\{|\n)</string>
							<key>endCaptures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>plain</string>
								</dict>
							</dict>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>match</key>
							<string>(?&lt;!\$)(\$[a-zA-Z0-9_]+)</string>
							<key>name</key>
							<string>keyword.operator.nim</string>
						</dict>
						<dict>
							<key>include</key>
							<string>source.nim</string>
						</dict>
					</array>
				</dict>
			</array>
		</dict>
		<dict>
			<key>name</key>
			<string>source.html.embedded.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>begin</key>
					<string>(html)(\"\"\")</string>
					<key>captures</key>
					<dict>
						<key>1</key>
						<dict>
							<key>name</key>
							<string>storage.type.function.nim</string>
						</dict>
						<key>2</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>end</key>
					<string>\"\"\"</string>
					<key>endCaptures</key>
					<dict>
						<key>0</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>patterns</key>
					<array>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\(</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\)</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\{</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\}</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)(for|while|case|of|when|if|else|elif)( )</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.control.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>(\{|\n)</string>
							<key>endCaptures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>plain</string>
								</dict>
							</dict>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>match</key>
							<string>(?&lt;!\$)(\$[a-zA-Z0-9_]+)</string>
							<key>name</key>
							<string>keyword.operator.nim</string>
						</dict>
						<dict>
							<key>include</key>
							<string>text.xml</string>
						</dict>
					</array>
				</dict>
			</array>
		</dict>
		<dict>
			<key>name</key>
			<string>source.xml.embedded.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>begin</key>
					<string>(xml)(\"\"\")</string>
					<key>captures</key>
					<dict>
						<key>1</key>
						<dict>
							<key>name</key>
							<string>storage.type.function.nim</string>
						</dict>
						<key>2</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>end</key>
					<string>\"\"\"</string>
					<key>endCaptures</key>
					<dict>
						<key>0</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>patterns</key>
					<array>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\(</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\)</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\{</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\}</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)(for|while|case|of|when|if|else|elif)( )</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.control.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>(\{|\n)</string>
							<key>endCaptures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>plain</string>
								</dict>
							</dict>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>match</key>
							<string>(?&lt;!\$)(\$[a-zA-Z0-9_]+)</string>
							<key>name</key>
							<string>keyword.operator.nim</string>
						</dict>
						<dict>
							<key>include</key>
							<string>text.xml</string>
						</dict>
					</array>
				</dict>
			</array>
		</dict>
		<dict>
			<key>name</key>
			<string>source.js.embedded.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>begin</key>
					<string>(js)(\"\"\")</string>
					<key>captures</key>
					<dict>
						<key>1</key>
						<dict>
							<key>name</key>
							<string>storage.type.function.nim</string>
						</dict>
						<key>2</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>end</key>
					<string>\"\"\"</string>
					<key>endCaptures</key>
					<dict>
						<key>0</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>patterns</key>
					<array>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\(</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\)</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\{</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\}</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)(for|while|case|of|when|if|else|elif)( )</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.control.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>(\{|\n)</string>
							<key>endCaptures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>plain</string>
								</dict>
							</dict>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>match</key>
							<string>(?&lt;!\$)(\$[a-zA-Z0-9_]+)</string>
							<key>name</key>
							<string>keyword.operator.nim</string>
						</dict>
						<dict>
							<key>include</key>
							<string>source.js</string>
						</dict>
					</array>
				</dict>
			</array>
		</dict>
		<dict>
			<key>name</key>
			<string>source.css.embedded.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>begin</key>
					<string>(css)(\"\"\")</string>
					<key>captures</key>
					<dict>
						<key>1</key>
						<dict>
							<key>name</key>
							<string>storage.type.function.nim</string>
						</dict>
						<key>2</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>end</key>
					<string>\"\"\"</string>
					<key>endCaptures</key>
					<dict>
						<key>0</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>patterns</key>
					<array>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\(</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\)</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\{</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\}</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)(for|while|case|of|when|if|else|elif)( )</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.control.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>(\{|\n)</string>
							<key>endCaptures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>plain</string>
								</dict>
							</dict>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>match</key>
							<string>(?&lt;!\$)(\$[a-zA-Z0-9_]+)</string>
							<key>name</key>
							<string>keyword.operator.nim</string>
						</dict>
						<dict>
							<key>include</key>
							<string>source.css</string>
						</dict>
					</array>
				</dict>
			</array>
		</dict>
		<dict>
			<key>name</key>
			<string>source.glsl.embedded.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>begin</key>
					<string>(glsl)(\"\"\")</string>
					<key>captures</key>
					<dict>
						<key>1</key>
						<dict>
							<key>name</key>
							<string>storage.type.function.nim</string>
						</dict>
						<key>2</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>end</key>
					<string>\"\"\"</string>
					<key>endCaptures</key>
					<dict>
						<key>0</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>patterns</key>
					<array>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\(</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\)</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\{</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\}</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)(for|while|case|of|when|if|else|elif)( )</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.control.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>(\{|\n)</string>
							<key>endCaptures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>plain</string>
								</dict>
							</dict>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>match</key>
							<string>(?&lt;!\$)(\$[a-zA-Z0-9_]+)</string>
							<key>name</key>
							<string>keyword.operator.nim</string>
						</dict>
						<dict>
							<key>include</key>
							<string>source.glsl</string>
						</dict>
					</array>
				</dict>
			</array>
		</dict>
		<dict>
			<key>name</key>
			<string>source.markdown.embedded.nim</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>begin</key>
					<string>(md)(\"\"\")</string>
					<key>captures</key>
					<dict>
						<key>1</key>
						<dict>
							<key>name</key>
							<string>storage.type.function.nim</string>
						</dict>
						<key>2</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>end</key>
					<string>\"\"\"</string>
					<key>endCaptures</key>
					<dict>
						<key>0</key>
						<dict>
							<key>name</key>
							<string>comment.syntax.nim</string>
						</dict>
					</dict>
					<key>patterns</key>
					<array>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\(</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\)</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)\{</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>\}</string>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>begin</key>
							<string>(?&lt;!\$)(\$)(for|while|case|of|when|if|else|elif)( )</string>
							<key>captures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>keyword.operator.nim</string>
								</dict>
								<key>2</key>
								<dict>
									<key>name</key>
									<string>keyword.control.nim</string>
								</dict>
							</dict>
							<key>end</key>
							<string>(\{|\n)</string>
							<key>endCaptures</key>
							<dict>
								<key>1</key>
								<dict>
									<key>name</key>
									<string>plain</string>
								</dict>
							</dict>
							<key>patterns</key>
							<array>
								<dict>
									<key>include</key>
									<string>source.nim</string>
								</dict>
							</array>
						</dict>
						<dict>
							<key>match</key>
							<string>(?&lt;!\$)(\$[a-zA-Z0-9_]+)</string>
							<key>name</key>
							<string>keyword.operator.nim</string>
						</dict>
						<dict>
							<key>include</key>
							<string>text.html.markdown.multimarkdown</string>
						</dict>
					</array>
				</dict>
			</array>
		</dict>
	</array>
	<key>repository</key>
	<dict>
		<key>escaped_char</key>
		<dict>
			<key>patterns</key>
			<array>
				<dict>
					<key>match</key>
					<string>\\[nN]</string>
					<key>name</key>
					<string>constant.character.escape.newline.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\\[cC]|\\[rR]</string>
					<key>name</key>
					<string>constant.character.escape.carriagereturn.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\\[lL]</string>
					<key>name</key>
					<string>constant.character.escape.linefeed.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\\[fF]</string>
					<key>name</key>
					<string>constant.character.escape.formfeed.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\\[tT]</string>
					<key>name</key>
					<string>constant.character.escape.tabulator.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\\[vV]</string>
					<key>name</key>
					<string>constant.character.escape.verticaltabulator.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\\\"</string>
					<key>name</key>
					<string>constant.character.escape.double-quote.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\\'</string>
					<key>name</key>
					<string>constant.character.escape.single-quote.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\\[0-9]+</string>
					<key>name</key>
					<string>constant.character.escape.chardecimalvalue.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\\[aA]</string>
					<key>name</key>
					<string>constant.character.escape.alert.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\\[bB]</string>
					<key>name</key>
					<string>constant.character.escape.backspace.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\\[eE]</string>
					<key>name</key>
					<string>constant.character.escape.escape.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\\[xX][0-9A-Fa-f]{2}</string>
					<key>name</key>
					<string>constant.character.escape.hex.nim</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\\\\</string>
					<key>name</key>
					<string>constant.character.escape.backslash.nim</string>
				</dict>
			</array>
		</dict>
	</dict>
	<key>scopeName</key>
	<string>source.nim</string>
	<key>uuid</key>
	<string>fa6f2c1c-dd3f-4bcd-b2be-d05312be4080</string>
</dict>
</plist>

{'fraction_non_alphanumeric': 0.22794847500451182, 'fraction_numerical': 0.008459664320519762, 'mean_word_length': 2.0540838471872953, 'pattern_counts': {'":': 0, '<': 5829, '<?xml version=': 2, '>': 5829, 'https://': 0, 'lorem ipsum': 0, 'www.': 2, 'xml': 12}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7623258', 'n_tokens_mistral': 50886, 'n_tokens_neox': 34455, 'n_words': 3923}