1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- /*
- Language: R
- Description: R is a free software environment for statistical computing and graphics.
- Author: Joe Cheng <joe@rstudio.org>
- Website: https://www.r-project.org
- Category: scientific
- */
- function r(hljs) {
- var IDENT_RE = '([a-zA-Z]|\\.[a-zA-Z.])[a-zA-Z0-9._]*';
- return {
- name: 'R',
- contains: [
- hljs.HASH_COMMENT_MODE,
- {
- begin: IDENT_RE,
- keywords: {
- $pattern: IDENT_RE,
- keyword:
- 'function if in break next repeat else for return switch while try tryCatch ' +
- 'stop warning require library attach detach source setMethod setGeneric ' +
- 'setGroupGeneric setClass ...',
- literal:
- 'NULL NA TRUE FALSE T F Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 ' +
- 'NA_complex_|10'
- },
- relevance: 0
- },
- {
- // hex value
- className: 'number',
- begin: "0[xX][0-9a-fA-F]+[Li]?\\b",
- relevance: 0
- },
- {
- // explicit integer
- className: 'number',
- begin: "\\d+(?:[eE][+\\-]?\\d*)?L\\b",
- relevance: 0
- },
- {
- // number with trailing decimal
- className: 'number',
- begin: "\\d+\\.(?!\\d)(?:i\\b)?",
- relevance: 0
- },
- {
- // number
- className: 'number',
- begin: "\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d*)?i?\\b",
- relevance: 0
- },
- {
- // number with leading decimal
- className: 'number',
- begin: "\\.\\d+(?:[eE][+\\-]?\\d*)?i?\\b",
- relevance: 0
- },
- {
- // escaped identifier
- begin: '`',
- end: '`',
- relevance: 0
- },
- {
- className: 'string',
- contains: [hljs.BACKSLASH_ESCAPE],
- variants: [
- {begin: '"', end: '"'},
- {begin: "'", end: "'"}
- ]
- }
- ]
- };
- }
- module.exports = r;
|