aboutsummaryrefslogtreecommitdiff
path: root/plugins/language_phps.lua
diff options
context:
space:
mode:
authorjgmdev <jgmdev@gmail.com>2021-09-02 16:51:27 -0400
committerjgmdev <jgmdev@gmail.com>2021-09-02 16:51:27 -0400
commita2ef6b0964d71a4353fe93ad1d1f5275123fa447 (patch)
tree60725a6db66fe7997db25ca168bebcc78afa4726 /plugins/language_phps.lua
parentada44aee90e00cdb69259112c345aba221dbf19d (diff)
downloadlite-xl-plugins-a2ef6b0964d71a4353fe93ad1d1f5275123fa447.tar.gz
lite-xl-plugins-a2ef6b0964d71a4353fe93ad1d1f5275123fa447.zip
Improved language_php plugin
* Removed language_phps.lua * Merged language_phps to language_php to simplify installation * Allow php syntax coloring inside <style> and <script> tags
Diffstat (limited to 'plugins/language_phps.lua')
-rw-r--r--plugins/language_phps.lua140
1 files changed, 0 insertions, 140 deletions
diff --git a/plugins/language_phps.lua b/plugins/language_phps.lua
deleted file mode 100644
index 082b962..0000000
--- a/plugins/language_phps.lua
+++ /dev/null
@@ -1,140 +0,0 @@
--- mod-version:2 -- lite-xl 2.0
---[[
- language_phps.lua
- complement to language_php.lua providing the php syntax support
- version: 20210512_181200
---]]
-local syntax = require "core.syntax"
-
-syntax.add {
- files = { "%.phps$" },
- headers = "^<%?php",
- comment = "//",
- patterns = {
- -- Attributes
- { pattern = {"#%[", "%]"}, type = "normal" },
- -- Comments
- { pattern = "//.-\n", type = "comment" },
- { pattern = "#.-\n", type = "comment" },
- { pattern = { "/%*", "%*/" }, type = "comment" },
- -- The '\\' is for escaping to work on " or '
- { pattern = { '"', '"', '\\' }, type = "string" },
- { pattern = { "'", "'", '\\' }, type = "string" },
- { pattern = "0[bB][%d]+", type = "number" },
- { pattern = "0[xX][%da-fA-F]+", type = "number" },
- { pattern = "-?%d[%d_%.eE]*", type = "number" },
- { pattern = "-?%.?%d+", type = "number" },
- { pattern = "[%.%+%-=/%*%^%%<>!~|&%?:]", type = "operator" },
- -- Variables
- { pattern = "%$[%w_]+", type = "keyword2" },
- -- Respect control structures, treat as keyword not function
- { pattern = "if[%s]*%f[(]", type = "keyword" },
- { pattern = "else[%s]*%f[(]", type = "keyword" },
- { pattern = "elseif[%s]*%f[(]", type = "keyword" },
- { pattern = "for[%s]*%f[(]", type = "keyword" },
- { pattern = "foreach[%s]*%f[(]", type = "keyword" },
- { pattern = "while[%s]*%f[(]", type = "keyword" },
- { pattern = "catch[%s]*%f[(]", type = "keyword" },
- { pattern = "switch[%s]*%f[(]", type = "keyword" },
- { pattern = "match[%s]*%f[(]", type = "keyword" },
- { pattern = "fn[%s]*%f[(]", type = "keyword" },
- -- All functions that aren't control structures
- { pattern = "[%a_][%w_]*[%s]*%f[(]", type = "function" },
- -- Array type hint not added on symbols to also make it work
- -- as a function call
- { pattern = "array", type = "literal" },
- -- Match static or namespace container on sub element access
- { pattern = "[%a_][%w_]*[%s]*%f[:]", type = "literal" },
- -- Uppercase constants of at least 3 characters in len
- { pattern = "%u[%u_][%u%d_]+", type = "number" },
- -- Magic constants
- { pattern = "__[%u]+__", type = "number" },
- -- Everything else
- { pattern = "[%a_][%w_]*", type = "symbol" },
- },
- symbols = {
- ["return"] = "keyword",
- ["if"] = "keyword",
- ["else"] = "keyword",
- ["elseif"] = "keyword",
- ["endif"] = "keyword",
- ["declare"] = "keyword",
- ["enddeclare"] = "keyword",
- ["switch"] = "keyword",
- ["endswitch"] = "keyword",
- ["as"] = "keyword",
- ["do"] = "keyword",
- ["for"] = "keyword",
- ["endfor"] = "keyword",
- ["foreach"] = "keyword",
- ["endforeach"] = "keyword",
- ["while"] = "keyword",
- ["endwhile"] = "keyword",
- ["switch"] = "keyword",
- ["match"] = "keyword",
- ["case"] = "keyword",
- ["continue"] = "keyword",
- ["default"] = "keyword",
- ["break"] = "keyword",
- ["goto"] = "keyword",
-
- ["try"] = "keyword",
- ["catch"] = "keyword",
- ["throw"] = "keyword",
- ["finally"] = "keyword",
-
- ["class"] = "keyword",
- ["trait"] = "keyword",
- ["interface"] = "keyword",
- ["public"] = "keyword",
- ["static"] = "keyword",
- ["protected"] = "keyword",
- ["private"] = "keyword",
- ["abstract"] = "keyword",
- ["final"] = "keyword",
- ["$this"] = "literal",
-
- ["function"] = "keyword",
- ["fn"] = "keyword",
- ["global"] = "keyword",
- ["var"] = "keyword",
- ["const"] = "keyword",
-
- ["bool"] = "literal",
- ["boolean"] = "literal",
- ["int"] = "literal",
- ["integer"] = "literal",
- ["real"] = "literal",
- ["double"] = "literal",
- ["float"] = "literal",
- ["string"] = "literal",
- ["object"] = "literal",
- ["callable"] = "literal",
- ["iterable"] = "literal",
- ["void"] = "literal",
- ["parent"] = "literal",
- ["self"] = "literal",
- ["mixed"] = "literal",
-
- ["namespace"] = "keyword",
- ["extends"] = "keyword",
- ["implements"] = "keyword",
- ["instanceof"] = "keyword",
- ["require"] = "keyword",
- ["require_once"] = "keyword",
- ["include"] = "keyword",
- ["include_once"] = "keyword",
- ["use"] = "keyword",
- ["new"] = "keyword",
- ["clone"] = "keyword",
-
- ["true"] = "number",
- ["false"] = "number",
- ["NULL"] = "number",
- ["null"] = "number",
-
- ["print"] = "function",
- ["echo"] = "function",
- ["exit"] = "function",
- },
-}