// brush: "html" aliases: [] // This file is part of the "jQuery.Syntax" project, and is distributed under the MIT License. // Copyright (c) 2011 Samuel G. D. Williams. <http://www.oriontransfer.co.nz> // See <jquery.syntax.js> for licensing details. Syntax.brushes.dependency('html', 'xml'); Syntax.brushes.dependency('html', 'javascript'); Syntax.brushes.dependency('html', 'css'); Syntax.brushes.dependency('html', 'php-script'); Syntax.brushes.dependency('html', 'ruby'); Syntax.register('html', function(brush) { brush.push({ pattern: /<script.*?type\=.?text\/javascript.*?>((.|\n)*?)<\/script>/gmi, matches: Syntax.extractMatches({brush: 'javascript'}) }); brush.push({ pattern: /<style.*?type=.?text\/css.*?>((.|\n)*?)<\/style>/gmi, matches: Syntax.extractMatches({brush: 'css'}) }); brush.push({ pattern: /((<\?php)([\s\S]*?)(\?>))/gm, matches: Syntax.extractMatches( {klass: 'php-tag', allow: ['keyword', 'php-script']}, {klass: 'keyword'}, {brush: 'php-script'}, {klass: 'keyword'} ) }); brush.push({ pattern: /((<\?rb?)([\s\S]*?)(\?>))/gm, matches: Syntax.extractMatches( {klass: 'ruby-tag', allow: ['keyword', 'ruby']}, {klass: 'keyword'}, {brush: 'ruby'}, {klass: 'keyword'} ) }); brush.push({ pattern: /<%=?(.*?)(%>)/g, klass: 'instruction', allow: ['string'] }); brush.push({ pattern: /<\!(DOCTYPE(.*?))>/g, matches: Syntax.extractMatches({klass: 'doctype'}) }); // Is this rule still relevant? brush.push({ pattern: /(%[0-9a-f]{2})/gi, klass: 'percent-escape', only: ['html'] }); // The position of this statement is important - it determines at what point the rules of the parent are processed. // In this case, the rules for xml are processed after the rules for html. brush.derives('xml'); });