aboutsummaryrefslogtreecommitdiff
path: root/node_modules/highlight.js/lib/languages/haml.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/highlight.js/lib/languages/haml.js')
-rw-r--r--node_modules/highlight.js/lib/languages/haml.js106
1 files changed, 106 insertions, 0 deletions
diff --git a/node_modules/highlight.js/lib/languages/haml.js b/node_modules/highlight.js/lib/languages/haml.js
new file mode 100644
index 000000000..c8d0b6d86
--- /dev/null
+++ b/node_modules/highlight.js/lib/languages/haml.js
@@ -0,0 +1,106 @@
+module.exports = // TODO support filter tags like :javascript, support inline HTML
+function(hljs) {
+ return {
+ case_insensitive: true,
+ contains: [
+ {
+ className: 'meta',
+ begin: '^!!!( (5|1\\.1|Strict|Frameset|Basic|Mobile|RDFa|XML\\b.*))?$',
+ relevance: 10
+ },
+ // FIXME these comments should be allowed to span indented lines
+ hljs.COMMENT(
+ '^\\s*(!=#|=#|-#|/).*$',
+ false,
+ {
+ relevance: 0
+ }
+ ),
+ {
+ begin: '^\\s*(-|=|!=)(?!#)',
+ starts: {
+ end: '\\n',
+ subLanguage: 'ruby'
+ }
+ },
+ {
+ className: 'tag',
+ begin: '^\\s*%',
+ contains: [
+ {
+ className: 'selector-tag',
+ begin: '\\w+'
+ },
+ {
+ className: 'selector-id',
+ begin: '#[\\w-]+'
+ },
+ {
+ className: 'selector-class',
+ begin: '\\.[\\w-]+'
+ },
+ {
+ begin: '{\\s*',
+ end: '\\s*}',
+ contains: [
+ {
+ begin: ':\\w+\\s*=>',
+ end: ',\\s+',
+ returnBegin: true,
+ endsWithParent: true,
+ contains: [
+ {
+ className: 'attr',
+ begin: ':\\w+'
+ },
+ hljs.APOS_STRING_MODE,
+ hljs.QUOTE_STRING_MODE,
+ {
+ begin: '\\w+',
+ relevance: 0
+ }
+ ]
+ }
+ ]
+ },
+ {
+ begin: '\\(\\s*',
+ end: '\\s*\\)',
+ excludeEnd: true,
+ contains: [
+ {
+ begin: '\\w+\\s*=',
+ end: '\\s+',
+ returnBegin: true,
+ endsWithParent: true,
+ contains: [
+ {
+ className: 'attr',
+ begin: '\\w+',
+ relevance: 0
+ },
+ hljs.APOS_STRING_MODE,
+ hljs.QUOTE_STRING_MODE,
+ {
+ begin: '\\w+',
+ relevance: 0
+ }
+ ]
+ }
+ ]
+ }
+ ]
+ },
+ {
+ begin: '^\\s*[=~]\\s*'
+ },
+ {
+ begin: '#{',
+ starts: {
+ end: '}',
+ subLanguage: 'ruby'
+ }
+ }
+ ]
+ };
+}; \ No newline at end of file