summaryrefslogtreecommitdiff
path: root/static/hl/languages/elm.min.js
diff options
context:
space:
mode:
authorDavid Luevano Alvarado <david@luevano.xyz>2021-03-18 00:23:57 -0700
committerDavid Luevano Alvarado <david@luevano.xyz>2021-03-18 00:23:57 -0700
commit3c10d209d706c286817e7150595113d9cda444bd (patch)
tree83f24325544855c64306c01f54cce31731b59f4a /static/hl/languages/elm.min.js
parentf8ae4d47bd7f3c0534822a78be8f0654195c4e1a (diff)
Add highligh.js
Diffstat (limited to 'static/hl/languages/elm.min.js')
-rw-r--r--static/hl/languages/elm.min.js16
1 files changed, 16 insertions, 0 deletions
diff --git a/static/hl/languages/elm.min.js b/static/hl/languages/elm.min.js
new file mode 100644
index 0000000..c08d929
--- /dev/null
+++ b/static/hl/languages/elm.min.js
@@ -0,0 +1,16 @@
+hljs.registerLanguage("elm",(()=>{"use strict";return e=>{const n={
+variants:[e.COMMENT("--","$"),e.COMMENT(/\{-/,/-\}/,{contains:["self"]})]},i={
+className:"type",begin:"\\b[A-Z][\\w']*",relevance:0},s={begin:"\\(",end:"\\)",
+illegal:'"',contains:[{className:"type",
+begin:"\\b[A-Z][\\w]*(\\((\\.\\.|,|\\w+)\\))?"},n]};return{name:"Elm",
+keywords:"let in if then else case of where module import exposing type alias as infix infixl infixr port effect command subscription",
+contains:[{beginKeywords:"port effect module",end:"exposing",
+keywords:"port effect module where command subscription exposing",
+contains:[s,n],illegal:"\\W\\.|;"},{begin:"import",end:"$",
+keywords:"import as exposing",contains:[s,n],illegal:"\\W\\.|;"},{begin:"type",
+end:"$",keywords:"type alias",contains:[i,s,{begin:/\{/,end:/\}/,
+contains:s.contains},n]},{beginKeywords:"infix infixl infixr",end:"$",
+contains:[e.C_NUMBER_MODE,n]},{begin:"port",end:"$",keywords:"port",contains:[n]
+},{className:"string",begin:"'\\\\?.",end:"'",illegal:"."
+},e.QUOTE_STRING_MODE,e.C_NUMBER_MODE,i,e.inherit(e.TITLE_MODE,{
+begin:"^[_a-z][\\w']*"}),n,{begin:"->|<-"}],illegal:/;/}}})()); \ No newline at end of file