'#! /usr/bin/env perl' Comment.Hashbang '\n\n' Text.Whitespace 'use' Keyword ' ' Text.Whitespace 'strict' Name.Namespace ';' Punctuation '\n' Text.Whitespace 'use' Keyword ' ' Text.Whitespace 'warnings' Name.Namespace ';' Punctuation '\n\n' Text.Whitespace '# common delimiters' Comment.Single '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '"a: "' Literal.String ';' Punctuation '\n' Text.Whitespace 'my' Keyword ' ' Text.Whitespace '$' Name.Variable 'a' Name.Variable ' ' Text.Whitespace '=' Operator ' ' Text.Whitespace '"foo"' Literal.String ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'a' Name.Variable ',' Punctuation ' ' Text.Whitespace '" - "' Literal.String ';' Punctuation '\n' Text.Whitespace '$' Name.Variable 'a' Name.Variable ' ' Text.Whitespace '=~' Operator ' ' Text.Whitespace 's/foo/bar/' Literal.String.Regex ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'a' Name.Variable ',' Punctuation ' ' Text.Whitespace '"\\n"' Literal.String ';' Punctuation '\n\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '"b: "' Literal.String ';' Punctuation '\n' Text.Whitespace 'my' Keyword ' ' Text.Whitespace '$' Name.Variable 'b' Name.Variable ' ' Text.Whitespace '=' Operator ' ' Text.Whitespace '"foo"' Literal.String ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'b' Name.Variable ',' Punctuation ' ' Text.Whitespace '" - "' Literal.String ';' Punctuation '\n' Text.Whitespace '$' Name.Variable 'b' Name.Variable ' ' Text.Whitespace '=~' Operator ' ' Text.Whitespace 's!foo!bar!' Literal.String.Regex ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'b' Name.Variable ',' Punctuation ' ' Text.Whitespace '"\\n"' Literal.String ';' Punctuation '\n\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '"c: "' Literal.String ';' Punctuation '\n' Text.Whitespace 'my' Keyword ' ' Text.Whitespace '$' Name.Variable 'c' Name.Variable ' ' Text.Whitespace '=' Operator ' ' Text.Whitespace '"foo"' Literal.String ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'c' Name.Variable ',' Punctuation ' ' Text.Whitespace '" - "' Literal.String ';' Punctuation '\n' Text.Whitespace '$' Name.Variable 'c' Name.Variable ' ' Text.Whitespace '=~' Operator ' ' Text.Whitespace 's@foo@bar@' Literal.String.Regex ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'c' Name.Variable ',' Punctuation ' ' Text.Whitespace '"\\n"' Literal.String ';' Punctuation '\n\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '"d: "' Literal.String ';' Punctuation '\n' Text.Whitespace 'my' Keyword ' ' Text.Whitespace '$' Name.Variable 'd' Name.Variable ' ' Text.Whitespace '=' Operator ' ' Text.Whitespace '"foo"' Literal.String ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'd' Name.Variable ',' Punctuation ' ' Text.Whitespace '" - "' Literal.String ';' Punctuation '\n' Text.Whitespace '$' Name.Variable 'd' Name.Variable ' ' Text.Whitespace '=~' Operator ' ' Text.Whitespace 's\\foo\\bar\\' Literal.String.Regex ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'd' Name.Variable ',' Punctuation ' ' Text.Whitespace '"\\n"' Literal.String ';' Punctuation '\n\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '"\\n"' Literal.String ';' Punctuation '\n\n' Text.Whitespace '# balanced delimiters' Comment.Single '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '"e: "' Literal.String ';' Punctuation '\n' Text.Whitespace 'my' Keyword ' ' Text.Whitespace '$' Name.Variable 'e' Name.Variable ' ' Text.Whitespace '=' Operator ' ' Text.Whitespace '"foo"' Literal.String ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'e' Name.Variable ',' Punctuation ' ' Text.Whitespace '" - "' Literal.String ';' Punctuation '\n' Text.Whitespace '$' Name.Variable 'e' Name.Variable ' ' Text.Whitespace '=~' Operator ' ' Text.Whitespace 's{foo}' Literal.String.Regex '{bar}' Literal.String.Regex ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'e' Name.Variable ',' Punctuation ' ' Text.Whitespace '"\\n"' Literal.String ';' Punctuation '\n\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '"f: "' Literal.String ';' Punctuation '\n' Text.Whitespace 'my' Keyword ' ' Text.Whitespace '$' Name.Variable 'f' Name.Variable ' ' Text.Whitespace '=' Operator ' ' Text.Whitespace '"foo"' Literal.String ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'f' Name.Variable ',' Punctuation ' ' Text.Whitespace '" - "' Literal.String ';' Punctuation '\n' Text.Whitespace '$' Name.Variable 'f' Name.Variable ' ' Text.Whitespace '=~' Operator ' ' Text.Whitespace 's(foo)' Literal.String.Regex '(bar)' Literal.String.Regex ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'f' Name.Variable ',' Punctuation ' ' Text.Whitespace '"\\n"' Literal.String ';' Punctuation '\n\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '"g: "' Literal.String ';' Punctuation '\n' Text.Whitespace 'my' Keyword ' ' Text.Whitespace '$' Name.Variable 'g' Name.Variable ' ' Text.Whitespace '=' Operator ' ' Text.Whitespace '"foo"' Literal.String ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'g' Name.Variable ',' Punctuation ' ' Text.Whitespace '" - "' Literal.String ';' Punctuation '\n' Text.Whitespace '$' Name.Variable 'g' Name.Variable ' ' Text.Whitespace '=~' Operator ' ' Text.Whitespace 's' Literal.String.Regex '' Literal.String.Regex ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'g' Name.Variable ',' Punctuation ' ' Text.Whitespace '"\\n"' Literal.String ';' Punctuation '\n\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '"h: "' Literal.String ';' Punctuation '\n' Text.Whitespace 'my' Keyword ' ' Text.Whitespace '$' Name.Variable 'h' Name.Variable ' ' Text.Whitespace '=' Operator ' ' Text.Whitespace '"foo"' Literal.String ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'h' Name.Variable ',' Punctuation ' ' Text.Whitespace '" - "' Literal.String ';' Punctuation '\n' Text.Whitespace '$' Name.Variable 'h' Name.Variable ' ' Text.Whitespace '=~' Operator ' ' Text.Whitespace 's[foo]' Literal.String.Regex '[bar]' Literal.String.Regex ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'h' Name.Variable ',' Punctuation ' ' Text.Whitespace '"\\n"' Literal.String ';' Punctuation '\n\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '"\\n"' Literal.String ';' Punctuation '\n\n' Text.Whitespace '# balanced delimiters with whitespace' Comment.Single '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '"i: "' Literal.String ';' Punctuation '\n' Text.Whitespace 'my' Keyword ' ' Text.Whitespace '$' Name.Variable 'i' Name.Variable ' ' Text.Whitespace '=' Operator ' ' Text.Whitespace '"foo"' Literal.String ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'i' Name.Variable ',' Punctuation ' ' Text.Whitespace '" - "' Literal.String ';' Punctuation '\n' Text.Whitespace '$' Name.Variable 'i' Name.Variable ' ' Text.Whitespace '=~' Operator ' ' Text.Whitespace 's{foo} ' Literal.String.Regex '{bar}' Literal.String.Regex ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'i' Name.Variable ',' Punctuation ' ' Text.Whitespace '"\\n"' Literal.String ';' Punctuation '\n\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '"j: "' Literal.String ';' Punctuation '\n' Text.Whitespace 'my' Keyword ' ' Text.Whitespace '$' Name.Variable 'j' Name.Variable ' ' Text.Whitespace '=' Operator ' ' Text.Whitespace '"foo"' Literal.String ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'j' Name.Variable ',' Punctuation ' ' Text.Whitespace '" - "' Literal.String ';' Punctuation '\n' Text.Whitespace '$' Name.Variable 'j' Name.Variable ' ' Text.Whitespace '=~' Operator ' ' Text.Whitespace 's\t\t' Literal.String.Regex '' Literal.String.Regex ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'j' Name.Variable ',' Punctuation ' ' Text.Whitespace '"\\n"' Literal.String ';' Punctuation '\n\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '"k: "' Literal.String ';' Punctuation '\n' Text.Whitespace 'my' Keyword ' ' Text.Whitespace '$' Name.Variable 'k' Name.Variable ' ' Text.Whitespace '=' Operator ' ' Text.Whitespace '"foo"' Literal.String ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'k' Name.Variable ',' Punctuation ' ' Text.Whitespace '" - "' Literal.String ';' Punctuation '\n' Text.Whitespace '$' Name.Variable 'k' Name.Variable ' ' Text.Whitespace '=~' Operator '\n\t' Text.Whitespace 's(foo)\n\n\t' Literal.String.Regex '(bar)' Literal.String.Regex ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'k' Name.Variable ',' Punctuation ' ' Text.Whitespace '"\\n"' Literal.String ';' Punctuation '\n\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '"\\n"' Literal.String ';' Punctuation '\n\n' Text.Whitespace '# mixed delimiters' Comment.Single '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '"l: "' Literal.String ';' Punctuation '\n' Text.Whitespace 'my' Keyword ' ' Text.Whitespace '$' Name.Variable 'l' Name.Variable ' ' Text.Whitespace '=' Operator ' ' Text.Whitespace '"foo"' Literal.String ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'l' Name.Variable ',' Punctuation ' ' Text.Whitespace '" - "' Literal.String ';' Punctuation '\n' Text.Whitespace '$' Name.Variable 'l' Name.Variable ' ' Text.Whitespace '=~' Operator ' ' Text.Whitespace 's{foo} ' Literal.String.Regex '' Literal.String.Regex ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'l' Name.Variable ',' Punctuation ' ' Text.Whitespace '"\\n"' Literal.String ';' Punctuation '\n\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '"m: "' Literal.String ';' Punctuation '\n' Text.Whitespace 'my' Keyword ' ' Text.Whitespace '$' Name.Variable 'm' Name.Variable ' ' Text.Whitespace '=' Operator ' ' Text.Whitespace '"foo"' Literal.String ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'm' Name.Variable ',' Punctuation ' ' Text.Whitespace '" - "' Literal.String ';' Punctuation '\n' Text.Whitespace '$' Name.Variable 'm' Name.Variable ' ' Text.Whitespace '=~' Operator ' ' Text.Whitespace 's(foo) ' Literal.String.Regex '!bar!' Literal.String.Regex ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'm' Name.Variable ',' Punctuation ' ' Text.Whitespace '"\\n"' Literal.String ';' Punctuation '\n\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '"n: "' Literal.String ';' Punctuation '\n' Text.Whitespace 'my' Keyword ' ' Text.Whitespace '$' Name.Variable 'n' Name.Variable ' ' Text.Whitespace '=' Operator ' ' Text.Whitespace '"foo"' Literal.String ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'n' Name.Variable ',' Punctuation ' ' Text.Whitespace '" - "' Literal.String ';' Punctuation '\n' Text.Whitespace '$' Name.Variable 'n' Name.Variable ' ' Text.Whitespace '=~' Operator ' ' Text.Whitespace 's[foo] ' Literal.String.Regex '$bar$' Literal.String.Regex ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'n' Name.Variable ',' Punctuation ' ' Text.Whitespace '"\\n"' Literal.String ';' Punctuation '\n\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '"\\n"' Literal.String ';' Punctuation '\n\n' Text.Whitespace '# /x modifier' Comment.Single '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '"o: "' Literal.String ';' Punctuation '\n' Text.Whitespace 'my' Keyword ' ' Text.Whitespace '$' Name.Variable 'o' Name.Variable ' ' Text.Whitespace '=' Operator ' ' Text.Whitespace '"foo"' Literal.String ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'o' Name.Variable ',' Punctuation ' ' Text.Whitespace '" - "' Literal.String ';' Punctuation '\n' Text.Whitespace '$' Name.Variable 'o' Name.Variable ' ' Text.Whitespace '=~' Operator ' ' Text.Whitespace 's{\n\t\t\t\tfoo\n\t\t\t } ' Literal.String.Regex '{bar}x' Literal.String.Regex ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'o' Name.Variable ',' Punctuation ' ' Text.Whitespace '"\\n"' Literal.String ';' Punctuation '\n\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '"p: "' Literal.String ';' Punctuation '\n' Text.Whitespace 'my' Keyword ' ' Text.Whitespace '$' Name.Variable 'p' Name.Variable ' ' Text.Whitespace '=' Operator ' ' Text.Whitespace '"foo"' Literal.String ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'p' Name.Variable ',' Punctuation ' ' Text.Whitespace '" - "' Literal.String ';' Punctuation '\n' Text.Whitespace '$' Name.Variable 'p' Name.Variable ' ' Text.Whitespace '=~' Operator ' ' Text.Whitespace 's%\n foo\n %bar%x' Literal.String.Regex ';' Punctuation '\n' Text.Whitespace 'print' Keyword ' ' Text.Whitespace '$' Name.Variable 'p' Name.Variable ',' Punctuation ' ' Text.Whitespace '"\\n"' Literal.String ';' Punctuation '\n' Text.Whitespace