All Downloads are FREE. Search and download functionalities are using the official Maven repository.

META-INF.resources.bower_components.google-code-prettify.src.lang-tex.js Maven / Gradle / Ivy

There is a newer version: 1.2.2.1-jre17
Show newest version
// Copyright (C) 2011 Martin S.
//
// 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.

/**
 * @fileoverview
 * Support for tex highlighting as discussed on
 * meta.tex.stackexchange.com.
 *
 * @author Martin S.
 */

PR['registerLangHandler'](
    PR['createSimpleLexer'](
        [
            // whitespace
            [PR['PR_PLAIN'], /^[\t\n\r \xA0]+/, null, '\t\n\r \xA0'],
            // all comments begin with '%'
            [PR['PR_COMMENT'], /^%[^\r\n]*/, null, '%']
        ],
        [
            //[PR['PR_DECLARATION'], /^\\([egx]?def|(new|renew|provide)(command|environment))\b/],
            // any command starting with a \ and contains
            // either only letters (a-z,A-Z), '@' (internal macros)
            [PR['PR_KEYWORD'], /^\\[a-zA-Z@]+/],
            // or contains only one character
            [PR['PR_KEYWORD'], /^\\./],
            // Highlight dollar for math mode and ampersam for tabular
            [PR['PR_TYPE'], /^[$&]/],
            // numeric measurement values with attached units
            [PR['PR_LITERAL'],
                /[+-]?(?:\.\d+|\d+(?:\.\d*)?)(cm|em|ex|in|pc|pt|bp|mm)/i],
            // punctuation usually occurring within commands
            [PR['PR_PUNCTUATION'], /^[{}()\[\]=]+/]
        ]),
    ['latex', 'tex']);




© 2015 - 2025 Weber Informatics LLC | Privacy Policy