diff options
author | rxi <rxi@users.noreply.github.com> | 2020-05-13 08:46:02 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-05-13 08:46:02 +0100 |
commit | a4897cb1c91a447d45649b5167f220199bbe04d5 (patch) | |
tree | 2e22b561fbaf53d84a184791b8f88b1fdcb322e9 | |
parent | ca622270dc0ec6d388aa34451e00ca240287261f (diff) | |
parent | 672a9fdeed192ed897c970911d8c5fd153e3d065 (diff) | |
download | lite-xl-plugins-a4897cb1c91a447d45649b5167f220199bbe04d5.tar.gz lite-xl-plugins-a4897cb1c91a447d45649b5167f220199bbe04d5.zip |
Merge pull request #29 from 636f6d6d656e740a/master
Added Haskell syntax file
-rw-r--r-- | README.md | 1 | ||||
-rw-r--r-- | plugins/language_hs.lua | 45 |
2 files changed, 46 insertions, 0 deletions
@@ -27,6 +27,7 @@ Plugin | Description [`language_csharp`](plugins/language_csharp.lua?raw=1) | Syntax for the [C#](http://csharp.net) programming language [`language_fe`](plugins/language_fe.lua?raw=1) | Syntax for the [fe](https://github.com/rxi/fe) programming language [`language_go`](plugins/language_go.lua?raw=1) | Syntax for the [Go](https://golang.org/) programming language +[`language_hs`](plugins/language_hs.lua?raw=1) | Syntax for the [Haskell](https://www.haskell.org/) programming language [`language_jiyu`](plugins/language_jiyu.lua?raw=1) | Syntax for the [jiyu](https://github.com/machinamentum/jiyu) programming language [`language_odin`](plugins/language_odin.lua?raw=1) | Syntax for the [Odin](https://github.com/odin-lang/Odin) programming language [`language_php`](plugins/language_php.lua?raw=1) | Syntax for the [PHP](https://php.net) programming language diff --git a/plugins/language_hs.lua b/plugins/language_hs.lua new file mode 100644 index 0000000..f0bf378 --- /dev/null +++ b/plugins/language_hs.lua @@ -0,0 +1,45 @@ +local syntax = require "core.syntax" + +syntax.add { + files = { "%.hs$" }, + comment = "%-%-", + patterns = { + { pattern = {"%-%-", "\n"}, type = "comment" }, + { pattern = { "{%-", "%-}" }, type = "comment" }, + { pattern = { '"', '"', '\\' }, type = "string" }, + { pattern = { "'", "'", '\\' }, type = "string" }, + { pattern = "-?0x%x+", type = "number" }, + { pattern = "-?%d+[%d%.eE]*f?", type = "number" }, + { pattern = "-?%.?%d+f?", type = "number" }, + { pattern = "[!%#%$%%&*+./%<=>%?@\\%^|%-~:]", type = "operator" }, + { pattern = "[%a_'][%w_']*", type = "symbol" }, + }, + symbols = { + ["as"] = "keyword", + ["case"] = "keyword", + ["of"] = "keyword", + ["class"] = "keyword", + ["data"] = "keyword", + ["default"] = "keyword", + ["deriving"] = "keyword", + ["do"] = "keyword", + ["forall"] = "keyword", + ["foreign"] = "keyword", + ["hiding"] = "keyword", + ["if"] = "keyword", + ["then"] = "keyword", + ["else"] = "keyword", + ["import"] = "keyword", + ["infix"] = "keyword", + ["infixl"] = "keyword", + ["infixr"] = "keyword", + ["let"] = "keyword", + ["in"] = "keyword", + ["mdo"] = "keyword", + ["module"] = "keyword", + ["newtype"] = "keyword", + ["qualified"] = "keyword", + ["type"] = "keyword", + ["where"] = "keyword", + }, +} |