/* Language: Erlang REPL Author: Sergey Ignatov */ hljs.LANGUAGES['erlang-repl'] = function(hljs) { return { defaultMode: { keywords: { special_functions: 'spawn spawn_link self', reserved: 'after and andalso|10 band begin bnot bor bsl bsr bxor case catch cond div end fun if ' + 'let not of or orelse|10 query receive rem try when xor' }, contains: [ { className: 'input_number', begin: '^[0-9]+> ', relevance: 10 }, { className: 'comment', begin: '%', end: '$' }, { className: 'number', begin: '\\b(\\d+#[a-fA-F0-9]+|\\d+(\\.\\d+)?([eE][-+]?\\d+)?)', relevance: 0 }, hljs.APOS_STRING_MODE, hljs.QUOTE_STRING_MODE, { className: 'constant', begin: '\\?(::)?([A-Z]\\w*(::)?)+' }, { className: 'arrow', begin: '->' }, { className: 'ok', begin: 'ok' }, { className: 'exclamation_mark', begin: '!' }, { className: 'function_or_atom', begin: '(\\b[a-z\'][a-zA-Z0-9_\']*:[a-z\'][a-zA-Z0-9_\']*)|(\\b[a-z\'][a-zA-Z0-9_\']*)', relevance: 0 }, { className: 'variable', begin: '[A-Z][a-zA-Z0-9_\']*', relevance: 0 } ] } }; }(hljs);