summaryrefslogtreecommitdiff
path: root/pyssg.xyz/live/static/hl/languages/makefile.min.js
diff options
context:
space:
mode:
Diffstat (limited to 'pyssg.xyz/live/static/hl/languages/makefile.min.js')
-rw-r--r--pyssg.xyz/live/static/hl/languages/makefile.min.js12
1 files changed, 12 insertions, 0 deletions
diff --git a/pyssg.xyz/live/static/hl/languages/makefile.min.js b/pyssg.xyz/live/static/hl/languages/makefile.min.js
new file mode 100644
index 0000000..9bfe357
--- /dev/null
+++ b/pyssg.xyz/live/static/hl/languages/makefile.min.js
@@ -0,0 +1,12 @@
+hljs.registerLanguage("makefile",(()=>{"use strict";return e=>{const i={
+className:"variable",variants:[{begin:"\\$\\("+e.UNDERSCORE_IDENT_RE+"\\)",
+contains:[e.BACKSLASH_ESCAPE]},{begin:/\$[@%<?\^\+\*]/}]},a={className:"string",
+begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,i]},n={className:"variable",
+begin:/\$\([\w-]+\s/,end:/\)/,keywords:{
+built_in:"subst patsubst strip findstring filter filter-out sort word wordlist firstword lastword dir notdir suffix basename addsuffix addprefix join wildcard realpath abspath error warning shell origin flavor foreach if or and call eval file value"
+},contains:[i]},s={begin:"^"+e.UNDERSCORE_IDENT_RE+"\\s*(?=[:+?]?=)"},r={
+className:"section",begin:/^[^\s]+:/,end:/$/,contains:[i]};return{
+name:"Makefile",aliases:["mk","mak"],keywords:{$pattern:/[\w-]+/,
+keyword:"define endef undefine ifdef ifndef ifeq ifneq else endif include -include sinclude override export unexport private vpath"
+},contains:[e.HASH_COMMENT_MODE,i,a,n,s,{className:"meta",begin:/^\.PHONY:/,
+end:/$/,keywords:{$pattern:/[\.\w]+/,"meta-keyword":".PHONY"}},r]}}})()); \ No newline at end of file