aboutsummaryrefslogtreecommitdiff
path: root/node_modules/highlight.js/lib/languages/r.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/highlight.js/lib/languages/r.js')
-rw-r--r--node_modules/highlight.js/lib/languages/r.js69
1 files changed, 69 insertions, 0 deletions
diff --git a/node_modules/highlight.js/lib/languages/r.js b/node_modules/highlight.js/lib/languages/r.js
new file mode 100644
index 000000000..ddaaa67ff
--- /dev/null
+++ b/node_modules/highlight.js/lib/languages/r.js
@@ -0,0 +1,69 @@
+module.exports = function(hljs) {
+ var IDENT_RE = '([a-zA-Z]|\\.[a-zA-Z.])[a-zA-Z0-9._]*';
+
+ return {
+ contains: [
+ hljs.HASH_COMMENT_MODE,
+ {
+ begin: IDENT_RE,
+ lexemes: IDENT_RE,
+ keywords: {
+ 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: "'"}
+ ]
+ }
+ ]
+ };
+}; \ No newline at end of file