Skip to content

Instantly share code, notes, and snippets.

@kmaglione
Created November 8, 2011 20:25
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kmaglione/1349059 to your computer and use it in GitHub Desktop.
Save kmaglione/1349059 to your computer and use it in GitHub Desktop.
propertyPattern: util.regexp(<![CDATA[
(?:
(?P<preSpace> <space>*)
(?P<name> [-a-z]*)
(?:
<space>* : \s* (?P<value>
(?:
[-\w]+
(?:
\s* \( \s*
(?: <string> | [^)]* )
\s* (?: \) | $)
)?
\s*
| \s* <string> \s*
| <space>*
| [^;}]*
)*
)
)?
)
(?P<postSpace> <space>* (?: ; | $) )
]]>, "gix",
{
space: /(?: \s | \/\* .*? \*\/ )/,
string: /(?:" (?:[^\\"]|\\.)* (?:"|$) | '(?:[^\\']|\\.)* (?:'|$) )/
}),
patterns: memoize({
get property() util.regexp(<![CDATA[
(?:
(?P<preSpace> <space>*)
(?P<name> [-a-z]*)
(?:
<space>* : \s* (?P<value>
<token>*
)
)?
)
(?P<postSpace> <space>* (?: ; | $) )
]]>, "gix", this),
get function() util.regexp(<![CDATA[
(?P<function>
\s* \( \s*
(?: <string> | [^)]* )
\s* (?: \) | $)
)
]]>, "gx", this),
space: /(?: \s | \/\* .*? \*\/ )/,
get string() util.regexp(<![CDATA[
(?P<string>
" (?:[^\\"]|\\.)* (?:"|$) |
' (?:[^\\']|\\.)* (?:'|$)
)
]]>, "gx", this),
get token() util.regexp(<![CDATA[
(?P<token>
(?P<word> [-\w]+)
<function>?
\s*
| (?P<important> !important\b)
| \s* <string> \s*
| <space>+
| [^;}\s]+
)
]]>, "gix", this)
}),
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment