UNPKG

refractor

Version:

Lightweight, robust, elegant virtual syntax highlighting using Prism

25 lines (23 loc) 762 B
// @ts-nocheck /** * @import {Refractor} from '../lib/core.js' */ matlab.displayName = 'matlab' matlab.aliases = [] /** @param {Refractor} Prism */ export default function matlab(Prism) { Prism.languages.matlab = { comment: [/%\{[\s\S]*?\}%/, /%.+/], string: { pattern: /\B'(?:''|[^'\r\n])*'/, greedy: true }, // FIXME We could handle imaginary numbers as a whole number: /(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[eE][+-]?\d+)?(?:[ij])?|\b[ij]\b/, keyword: /\b(?:NaN|break|case|catch|continue|else|elseif|end|for|function|if|inf|otherwise|parfor|pause|pi|return|switch|try|while)\b/, function: /\b(?!\d)\w+(?=\s*\()/, operator: /\.?[*^\/\\']|[+\-:@]|[<>=~]=?|&&?|\|\|?/, punctuation: /\.{3}|[.,;\[\](){}!]/ } }