diff --git a/projects/linux/ee.files b/projects/linux/ee.files index dd67be52f..ef6a61b57 100644 --- a/projects/linux/ee.files +++ b/projects/linux/ee.files @@ -626,6 +626,8 @@ ../../src/eepp/ui/doc/languages/css.hpp ../../src/eepp/ui/doc/languages/d.cpp ../../src/eepp/ui/doc/languages/d.hpp +../../src/eepp/ui/doc/languages/hare.cpp +../../src/eepp/ui/doc/languages/hare.hpp ../../src/eepp/ui/doc/languages/htaccess.hpp ../../src/eepp/ui/doc/languages/objeck.hpp ../../src/eepp/ui/doc/languages/odin.cpp diff --git a/src/eepp/ui/doc/languages/hare.cpp b/src/eepp/ui/doc/languages/hare.cpp new file mode 100644 index 000000000..b680a9f85 --- /dev/null +++ b/src/eepp/ui/doc/languages/hare.cpp @@ -0,0 +1,69 @@ +#include +#include + +namespace EE { namespace UI { namespace Doc { namespace Language { + +void addHare() { + + SyntaxDefinitionManager::instance()->add( + + { "Hare", + { "%.ha$" }, + { + { { "//.*" }, "comment" }, + { { "\"", "\"", "\\" }, "string" }, + { { "'", "'", "\\" }, "string" }, + { { "-?0x%x+" }, "number" }, + { { "-?%d+[%d%.eE]*f?" }, "number" }, + { { "-?%.?%d+f?" }, "number" }, + { { "[%+%-=/%*%^%%<>!~|&]" }, "operator" }, + { { "[%a_][%w_]*%f[(]" }, "function" }, + { { "[%a_][%w_]*" }, "symbol" }, + { { "^@" }, "keyword" }, + { { "%s+" }, "normal" }, + { { "%w+%f[%s]" }, "normal" }, + + }, + { + { "void", "keyword2" }, { "valist", "keyword2" }, { "vaend", "keyword" }, + { "vaarg", "keyword" }, { "vastart", "keyword" }, { "use", "keyword" }, + { "i16", "keyword2" }, { "for", "keyword" }, { "abort", "keyword" }, + { "fn", "keyword" }, { "if", "keyword" }, { "fini", "keyword" }, + { "fconst", "keyword2" }, { "i64", "keyword2" }, { "free", "keyword" }, + { "false", "literal" }, { "def", "keyword" }, { "u16", "keyword2" }, + { "f32", "keyword2" }, { "yield", "keyword" }, { "export", "keyword" }, + { "len", "keyword" }, { "delete", "keyword" }, { "align", "keyword" }, + { "true", "literal" }, { "fmt", "literal" }, { "iconst", "keyword2" }, + { "init", "keyword" }, { "break", "keyword" }, { "else", "keyword" }, + { "continue", "keyword" }, { "i32", "keyword2" }, { "bool", "keyword2" }, + { "case", "keyword" }, { "i8", "keyword2" }, { "int", "keyword2" }, + { "str", "keyword2" }, { "is", "keyword" }, { "defer", "keyword" }, + { "f64", "keyword2" }, { "enum", "keyword2" }, { "null", "literal" }, + { "u8", "keyword2" }, { "insert", "keyword" }, { "u64", "keyword2" }, + { "let", "keyword" }, { "return", "keyword" }, { "alloc", "keyword" }, + { "offset", "keyword" }, { "nullable", "keyword2" }, { "rconst", "keyword2" }, + { "uintptr", "keyword2" }, { "rune", "keyword2" }, { "size", "keyword2" }, + { "signed", "literal" }, { "match", "keyword" }, { "static", "keyword" }, + { "switch", "keyword" }, { "test", "keyword" }, { "type", "keyword" }, + { "const", "keyword" }, { "union", "keyword2" }, { "u32", "keyword2" }, + { "struct", "keyword2" }, { "uint", "keyword2" }, { "unsigned", "literal" }, + { "bufio", "literal" }, { "io", "literal" }, { "os", "literal" }, + { "sort", "literal" }, { "strings", "literal" }, { "ascii", "literal" }, + { "bytes", "literal" }, { "crypto", "literal" }, { "dirs", "literal" }, + { "encoding", "literal" }, { "endian", "literal" }, { "errors", "literal" }, + { "fnmatch", "literal" }, { "format", "literal" }, { "fs", "literal" }, + { "getopt", "literal" }, { "glob", "literal" }, { "hare", "literal" }, + { "hash", "literal" }, { "linux", "literal" }, { "log", "literal" }, + { "math", "literal" }, { "mime", "literal" }, { "net", "literal" }, + { "path", "literal" }, { "regex", "literal" }, { "rt", "literal" }, + { "shlex", "literal" }, { "strconv", "literal" }, { "strio", "literal" }, + { "temp", "literal" }, { "test", "literal" }, { "time", "literal" }, + { "types", "literal" }, { "unix", "literal" }, { "uuid", "literal" }, + }, + "//", + {} + + } ); +} + +}}}} // namespace EE::UI::Doc::Language diff --git a/src/eepp/ui/doc/languages/hare.hpp b/src/eepp/ui/doc/languages/hare.hpp new file mode 100644 index 000000000..90ae960fb --- /dev/null +++ b/src/eepp/ui/doc/languages/hare.hpp @@ -0,0 +1,10 @@ +#ifndef EE_UI_DOC_Hare +#define EE_UI_DOC_Hare + +namespace EE { namespace UI { namespace Doc { namespace Language { + +extern void addHare(); + +}}}} // namespace EE::UI::Doc::Language + +#endif diff --git a/src/eepp/ui/doc/syntaxdefinitionmanager.cpp b/src/eepp/ui/doc/syntaxdefinitionmanager.cpp index 2800e2de6..c1157c4bc 100644 --- a/src/eepp/ui/doc/syntaxdefinitionmanager.cpp +++ b/src/eepp/ui/doc/syntaxdefinitionmanager.cpp @@ -7,6 +7,7 @@ #include #include #include +#include #include #include #include @@ -2611,6 +2612,7 @@ SyntaxDefinitionManager::SyntaxDefinitionManager() { addGLSL(); addGo(); addHaskell(); + addHare(); addHaxe(); addHLSL(); addHtaccessFile();