| Index: lib/src/prism/components/prism-ocaml.js
|
| diff --git a/lib/src/prism/components/prism-ocaml.js b/lib/src/prism/components/prism-ocaml.js
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..fd3234faf6e41b4493b85ebc3500ef6070645e86
|
| --- /dev/null
|
| +++ b/lib/src/prism/components/prism-ocaml.js
|
| @@ -0,0 +1,21 @@
|
| +Prism.languages.ocaml = {
|
| + 'comment': /\(\*[\s\S]*?\*\)/,
|
| + 'string': [
|
| + /"(?:\\.|[^\\\r\n"])*"/,
|
| + /(['`])(?:\\(?:\d+|x[\da-f]+|.)|(?!\1)[^\\\r\n])\1/i
|
| + ],
|
| + 'number': /\b-?(?:0x[\da-f][\da-f_]+|(?:0[bo])?\d[\d_]*\.?[\d_]*(?:e[+-]?[\d_]+)?)/i,
|
| + 'type': {
|
| + pattern: /\B['`][a-z\d_]*/i,
|
| + alias: 'variable'
|
| + },
|
| + 'directive': {
|
| + pattern: /\B#[a-z\d_]+/i,
|
| + alias: 'function'
|
| + },
|
| + 'keyword': /\b(?:as|assert|begin|class|constraint|do|done|downto|else|end|exception|external|for|fun|function|functor|if|in|include|inherit|initializer|lazy|let|match|method|module|mutable|new|object|of|open|prefix|private|rec|then|sig|struct|to|try|type|val|value|virtual|where|while|with)\b/,
|
| + 'boolean': /\b(?:false|true)\b/,
|
| + // Custom operators are allowed
|
| + 'operator': /:=|[=<>@^|&+\-*\/$%!?~][!$%&\*+\-.\/:<=>?@^|~]*|\b(?:and|asr|land|lor|lxor|lsl|lsr|mod|nor|or)\b/,
|
| + 'punctuation': /[(){}\[\]|_.,:;]/
|
| +};
|
|
|