12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- /*
- Language: Scilab
- Author: Sylvestre Ledru <[email protected]>
- Origin: matlab.js
- Description: Scilab is a port from Matlab
- Category: scientific
- */
- function(hljs) {
- var COMMON_CONTAINS = [
- hljs.C_NUMBER_MODE,
- {
- className: 'string',
- begin: '\'|\"', end: '\'|\"',
- contains: [hljs.BACKSLASH_ESCAPE, {begin: '\'\''}]
- }
- ];
- return {
- aliases: ['sci'],
- lexemes: /%?\w+/,
- keywords: {
- keyword: 'abort break case clear catch continue do elseif else endfunction end for function '+
- 'global if pause return resume select try then while',
- literal:
- '%f %F %t %T %pi %eps %inf %nan %e %i %z %s',
- built_in: // Scilab has more than 2000 functions. Just list the most commons
- 'abs and acos asin atan ceil cd chdir clearglobal cosh cos cumprod deff disp error '+
- 'exec execstr exists exp eye gettext floor fprintf fread fsolve imag isdef isempty '+
- 'isinfisnan isvector lasterror length load linspace list listfiles log10 log2 log '+
- 'max min msprintf mclose mopen ones or pathconvert poly printf prod pwd rand real '+
- 'round sinh sin size gsort sprintf sqrt strcat strcmps tring sum system tanh tan '+
- 'type typename warning zeros matrix'
- },
- illegal: '("|#|/\\*|\\s+/\\w+)',
- contains: [
- {
- className: 'function',
- beginKeywords: 'function', end: '$',
- contains: [
- hljs.UNDERSCORE_TITLE_MODE,
- {
- className: 'params',
- begin: '\\(', end: '\\)'
- }
- ]
- },
- {
- begin: '[a-zA-Z_][a-zA-Z_0-9]*(\'+[\\.\']*|[\\.\']+)', end: '',
- relevance: 0
- },
- {
- begin: '\\[', end: '\\]\'*[\\.\']*',
- relevance: 0,
- contains: COMMON_CONTAINS
- },
- hljs.COMMENT('//', '$')
- ].concat(COMMON_CONTAINS)
- };
- }
|