honeylisp/vendor/lite-plugins/plugins/language_fe.lua
Jeremy Penner cb5132f393 git subrepo clone https://github.com/rxi/lite-plugins vendor/lite-plugins
subrepo:
  subdir:   "vendor/lite-plugins"
  merged:   "de4227d"
upstream:
  origin:   "https://github.com/rxi/lite-plugins"
  branch:   "master"
  commit:   "de4227d"
git-subrepo:
  version:  "0.4.2"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "65fde50"
2020-11-19 21:04:39 -05:00

34 lines
1 KiB
Lua

local syntax = require "core.syntax"
syntax.add {
files = "%.fe$",
comment = ";",
patterns = {
{ pattern = ";.-\n", type = "comment" },
{ pattern = { '"', '"', '\\' }, type = "string" },
{ pattern = "0x[%da-fA-F]+", type = "number" },
{ pattern = "-?%d+[%d%.]*", type = "number" },
{ pattern = "-?%.?%d+", type = "number" },
{ pattern = "'", type = "symbol" },
{ pattern = "%f[^(][^()'%s\"]+", type = "function" },
{ pattern = "[^()'%s\"]+", type = "symbol" },
},
symbols = {
["if"] = "keyword2",
["let"] = "keyword2",
["do"] = "keyword2",
["fn"] = "keyword2",
["mac"] = "keyword2",
["'"] = "keyword2",
["print"] = "keyword",
["while"] = "keyword",
["car"] = "keyword",
["cdr"] = "keyword",
["not"] = "keyword",
["setcdr"] = "keyword",
["setcar"] = "keyword",
["nil"] = "literal",
["t"] = "literal",
}
}