X-Git-Url: http://lambda.jimpryor.net/git/gitweb.cgi?a=blobdiff_plain;f=jsMath%2Fextensions%2FHTML.js;fp=jsMath%2Fextensions%2FHTML.js;h=0000000000000000000000000000000000000000;hb=cb3848eeb2c1340d5a5090b46b51c6e53b21ad39;hp=1982e36370b65e75bfad35a01dc4a10cc4e59a8b;hpb=10b8a88ca57bb59dc6d5866d943a193f2ecf11d4;p=lambda.git diff --git a/jsMath/extensions/HTML.js b/jsMath/extensions/HTML.js deleted file mode 100644 index 1982e363..00000000 --- a/jsMath/extensions/HTML.js +++ /dev/null @@ -1,122 +0,0 @@ -/* - * extensions/HTML.js - * - * Part of the jsMath package for mathematics on the web. - * - * This file implements a number of HTML-specific extensions to TeX, - * including \color, \style, \class, \unicode, etc. It will be loaded - * automatically when needed, or can be loaded by - * - * jsMath.Extension.Require('HTML'); - * - * --------------------------------------------------------------------- - * - * Copyright 2005-2006 by Davide P. Cervone - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/********************************************************************/ - -jsMath.Package(jsMath.Parser,{ - - macros: { - color: 'Color', - href: 'Href', - 'class': 'Class', - style: 'Style', - cssId: 'CSSId', - unicode: 'Unicode' - }, - - /* - * Show the argument in a particular color - */ - Color: function (name) { - var color = this.GetArgument(this.cmd+name); if (this.error) return; - this.CheckHTML(color,name); if (this.error) return; - // check that it looks like a color? - this.AddHTML(name,['','']); - }, - - /* - * Make the argument be a link - */ - Href: function (name) { - var href = this.GetArgument(this.cmd+name); if (this.error) return; - this.CheckHTML(href,name); if (this.error) return; - this.AddHTML(name,['','']); - }, - - /* - * Apply a CSS class to the argument - */ - Class: function (name) { - var clss = this.GetArgument(this.cmd+name); if (this.error) return; - this.CheckHTML(clss,name); if (this.error) return; - this.AddHTML(name,['','']); - }, - - /* - * Apply a CSS style to the argument - */ - Style: function (name) { - var style = this.GetArgument(this.cmd+name); if (this.error) return; - this.CheckHTML(style,name); if (this.error) return; - this.AddHTML(name,['','']); - }, - - /* - * Add a CSS element ID to the argument - */ - CSSId: function (name) { - var id = this.GetArgument(this.cmd+name); if (this.error) return; - this.CheckHTML(id,name); if (this.error) return; - this.AddHTML(name,['','']); - }, - - /* - * Insert some raw HTML around the argument (this will not affect - * the spacing or other TeX features) - */ - AddHTML: function (name,params) { - var data = this.mlist.data; - var arg = this.GetArgument(this.cmd+name); if (this.error) return; - arg = jsMath.Parse(arg,data.font,data.size,data.style); - if (arg.error) {this.Error(arg); return} - this.mlist.Add(jsMath.mItem.HTML(params[0])); - for (var i = 0; i < arg.mlist.Length(); i++) {this.mlist.Add(arg.mlist.Get(i))} - this.mlist.Add(jsMath.mItem.HTML(params[1])); - }, - - CheckHTML: function (data,name) { - if (data.match(/[<>&"]/)) - {this.Error("Can't include raw HTML in first argument of "+this.cmd+name)} - }, - - /* - * Insert a unicode reference as an Ord atom. Its argument should - * be the unicode code point, e.g. \unicode{8211}, or \unicode{x203F}. - * You can also specify the height (offset from the x height) and depth - * in ems, together with a CSS class for the character, e.g., - * \unicode{8211,class,.2,-.3} - */ - Unicode: function (name) { - var arg = this.GetArgument(this.cmd+name); if (this.error) return; - this.CheckHTML(arg,name); if (this.error) return; - arg = arg.split(','); arg[0] = '&#'+arg[0]+';'; - if (!arg[1]) {arg[1] = 'normal'} - this.mlist.Add(jsMath.mItem.TextAtom('ord',arg[0],arg[1],arg[2],arg[3])); - } - -});