mirror of
https://github.com/SpartanJ/eepp.git
synced 2026-08-13 04:42:12 +03:00
ecode: TSX and JSX support improvements.
This commit is contained in:
@@ -7,8 +7,9 @@
|
||||
"name": "typescript-language-server",
|
||||
"url": "https://github.com/theia-ide/typescript-language-server",
|
||||
"command": "typescript-language-server --stdio",
|
||||
"file_patterns": ["%.ts$", "%.tsx$"],
|
||||
"file_patterns": ["%.ts$"],
|
||||
"rootIndicationFileNames": ["package.json", "package-lock.json"],
|
||||
"share_process": true,
|
||||
"initializationOptions": {
|
||||
"preferences": {
|
||||
"allowIncompleteCompletions": true,
|
||||
@@ -29,11 +30,24 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"language": "tsx",
|
||||
"use": "typescript-language-server",
|
||||
"share_process": true,
|
||||
"file_patterns": ["%.tsx$"]
|
||||
},
|
||||
{
|
||||
"language": "javascript",
|
||||
"use": "typescript-language-server",
|
||||
"share_process": true,
|
||||
"file_patterns": ["%.js$"]
|
||||
},
|
||||
{
|
||||
"language": "jsx",
|
||||
"use": "typescript-language-server",
|
||||
"share_process": true,
|
||||
"file_patterns": ["%.jsx$"]
|
||||
},
|
||||
{
|
||||
"language": "go",
|
||||
"name": "gopls",
|
||||
|
||||
@@ -89,6 +89,8 @@ class EE_API SyntaxDefinition {
|
||||
|
||||
std::vector<SyntaxPattern> getPatternsOfType( const std::string& type ) const;
|
||||
|
||||
SyntaxDefinition& setFileTypes( const std::vector<std::string>& types );
|
||||
|
||||
protected:
|
||||
std::string mLanguageName;
|
||||
String::HashType mLanguageId;
|
||||
|
||||
@@ -46,6 +46,11 @@ std::vector<SyntaxPattern> SyntaxDefinition::getPatternsOfType( const std::strin
|
||||
return patterns;
|
||||
}
|
||||
|
||||
SyntaxDefinition& SyntaxDefinition::setFileTypes( const std::vector<std::string>& types ) {
|
||||
mFiles = types;
|
||||
return *this;
|
||||
}
|
||||
|
||||
const std::vector<SyntaxPattern>& SyntaxDefinition::getPatterns() const {
|
||||
return mPatterns;
|
||||
}
|
||||
|
||||
@@ -441,7 +441,9 @@ static void addJavaScript() {
|
||||
{
|
||||
{ { "//.-\n" }, "comment" },
|
||||
{ { "/%*", "%*/" }, "comment" },
|
||||
{ { "/[%+%-%*%^%!%=%&%|%?%:%;%,%(%[%{%<%>%\\]", "/[igm]?", "\\" }, "string" },
|
||||
{ { "/[%+%-%*%^%!%=%&%|%?%:%;%,%(%[%{%<%>%\\]", "/[igmsuyd][igmsuyd]?[igmsuyd]?",
|
||||
"\\" },
|
||||
"string" },
|
||||
{ { "\"", "\"", "\\" }, "string" },
|
||||
{ { "'", "'", "\\" }, "string" },
|
||||
{ { "`", "`", "\\" }, "string" },
|
||||
@@ -502,13 +504,15 @@ static void addJSON() {
|
||||
}
|
||||
|
||||
static void addTypeScript() {
|
||||
SyntaxDefinitionManager::instance()->add(
|
||||
SyntaxDefinition& ts = SyntaxDefinitionManager::instance()->add(
|
||||
{ "TypeScript",
|
||||
{ "%.ts$", "%.tsx$", "%.d.ts$" },
|
||||
{ "%.ts$", "%.d.ts$" },
|
||||
{
|
||||
{ { "//.-\n" }, "comment" },
|
||||
{ { "/%*", "%*/" }, "comment" },
|
||||
{ { "/[%+%-%*%^%!%=%&%|%?%:%;%,%(%[%{%<%>%\\]", "/[igm]?", "\\" }, "string" },
|
||||
{ { "/[%+%-%*%^%!%=%&%|%?%:%;%,%(%[%{%<%>%\\]", "/[igmsuyd][igmsuyd]?[igmsuyd]?",
|
||||
"\\" },
|
||||
"string" },
|
||||
{ { "\"", "\"", "\\" }, "string" },
|
||||
{ { "'", "'", "\\" }, "string" },
|
||||
{ { "`", "`", "\\" }, "string" },
|
||||
@@ -516,6 +520,8 @@ static void addTypeScript() {
|
||||
{ { "-?%d+[%d%.eE]*" }, "number" },
|
||||
{ { "-?%.?%d+" }, "number" },
|
||||
{ { "[%+%-=/%*%^%%<>!~|&]" }, "operator" },
|
||||
{ { "(interface%s)([%a_][%w_]*)" }, { "normal", "keyword", "keyword2" } },
|
||||
{ { "(type%s)([%a_][%w_]*)" }, { "normal", "keyword", "keyword2" } },
|
||||
{ { "[%a_][%w_$]*%f[(]" }, "function" },
|
||||
{ { "[%a_][%w_]*" }, "symbol" },
|
||||
},
|
||||
@@ -542,6 +548,12 @@ static void addTypeScript() {
|
||||
{ "var", "keyword" }, { "void", "keyword" }, { "while", "keyword" },
|
||||
{ "with", "keyword" }, { "yield", "keyword" }, { "unknown", "keyword2" } },
|
||||
"//" } );
|
||||
|
||||
SyntaxDefinition tsx( ts );
|
||||
tsx.setLanguageName( "TSX" );
|
||||
tsx.setFileTypes( { "%.tsx$" } );
|
||||
tsx.addPatternToFront( { { "return%s+%(", "%s*);" }, "keyword", "HTML" } );
|
||||
SyntaxDefinitionManager::instance()->add( std::move( tsx ) );
|
||||
}
|
||||
|
||||
static void addPython() {
|
||||
@@ -2688,6 +2700,7 @@ static void addJSX() {
|
||||
{ "JSX",
|
||||
{ "%.jsx$" },
|
||||
{
|
||||
{ { "return%s+%(", "%s*);" }, "keyword", "HTML" },
|
||||
{ { "//.-\n" }, "comment" },
|
||||
{ { "/%*", "%*/" }, "comment" },
|
||||
{ { "\"", "\"", "\\" }, "string" },
|
||||
@@ -3147,7 +3160,6 @@ static void addSass() {
|
||||
{ { "'", "'", "\\" }, "string" },
|
||||
{ { "$%w+" }, "keyword" },
|
||||
{ { "@%w+" }, "literal" },
|
||||
{ { "[#,]%w+" }, "function" },
|
||||
{ { "&" }, "keyword2" },
|
||||
{ { "[:%/%*%-]" }, "operator" },
|
||||
{ { "[%a][%w-]*%s*%f[:]" }, "keyword2" },
|
||||
@@ -3155,16 +3167,196 @@ static void addSass() {
|
||||
{ { "-?%d+[%d%.]*deg" }, "number" },
|
||||
{ { "-?%d+[%d%.]*[s%%]" }, "number" },
|
||||
{ { "-?%d+[%d%.]*" }, "number" },
|
||||
{ { "^%s*#[%a%_%-][%w%_%-]*" }, "keyword2" },
|
||||
{ { ",%s*#[%a%_%-][%w%_%-]*" }, "keyword2" },
|
||||
{ { "#%x%x?%x?%x?%x?%x?%x?%x?" }, "string" },
|
||||
{ { "#[%a%_%-][%w%_%-]*" }, "keyword2" },
|
||||
{ { "%-%-%a[%w%-%_]*" }, "keyword2" },
|
||||
{ { "-?%d+[%d%.]*p[xt]" }, "number" },
|
||||
{ { "-?%d+[%d%.]*deg" }, "number" },
|
||||
{ { "-?%d+[%d%.]*" }, "number" },
|
||||
{ { "@[%a][%w%_%-]*" }, "keyword2" },
|
||||
{ { "%.[%a%_%-][%w%_%-]*" }, "keyword2" },
|
||||
{ { "(:)(hover)" }, { "normal", "operator", "literal" } },
|
||||
{ { "(:)(focus%-within)" }, { "normal", "operator", "literal" } },
|
||||
{ { "(:)(focus)" }, { "normal", "operator", "literal" } },
|
||||
{ { "(:)(selected)" }, { "normal", "operator", "literal" } },
|
||||
{ { "(:)(pressed)" }, { "normal", "operator", "literal" } },
|
||||
{ { "(:)(disabled)" }, { "normal", "operator", "literal" } },
|
||||
{ { "(:)(checked)" }, { "normal", "operator", "literal" } },
|
||||
{ { "(:)(root)" }, { "normal", "operator", "link" } },
|
||||
{ { "(%a+)(%()" }, { "normal", "function", "normal" } },
|
||||
{ { "[%a][%w-]*%s*%f[:]" }, "keyword" },
|
||||
{ { "[{}:>~!]" }, "operator" },
|
||||
{ { "[#,]%w+" }, "function" },
|
||||
{ { "[%a_][%w_]*" }, "symbol" },
|
||||
},
|
||||
{
|
||||
{ "transparent", "literal" }, { "none", "literal" }, { "absolute", "literal" },
|
||||
{ "relative", "literal" }, { "solid", "literal" }, { "flex", "literal" },
|
||||
{ "flex-start", "literal" }, { "flex-end", "literal" }, { "row", "literal" },
|
||||
{ "center", "literal" }, { "column", "literal" }, { "pointer", "literal" },
|
||||
{ "ease", "literal" }, { "white", "function" }, { "black", "function" },
|
||||
{ "gray", "function" }, { "blue", "function" }, { "red", "function" },
|
||||
{ "purple", "function" }, { "green", "function" }, { "yellow", "function" },
|
||||
{ "true", "literal" },
|
||||
{ "false", "literal" },
|
||||
{ "transparent", "literal" },
|
||||
{ "none", "literal" },
|
||||
{ "center", "literal" },
|
||||
{ "arrow", "literal" },
|
||||
{ "hand", "literal" },
|
||||
{ "ibeam", "literal" },
|
||||
{ "wait", "literal" },
|
||||
{ "crosshair", "literal" },
|
||||
{ "waitarrow", "literal" },
|
||||
{ "sizenwse", "literal" },
|
||||
{ "sizenesw", "literal" },
|
||||
{ "sizewe", "literal" },
|
||||
{ "sizens", "literal" },
|
||||
{ "sizeall", "literal" },
|
||||
{ "nocursor", "literal" },
|
||||
{ "important", "literal" },
|
||||
{ "aliceblue", "literal" },
|
||||
{ "antiquewhite", "literal" },
|
||||
{ "aqua", "literal" },
|
||||
{ "aquamarine", "literal" },
|
||||
{ "azure", "literal" },
|
||||
{ "beige", "literal" },
|
||||
{ "bisque", "literal" },
|
||||
{ "black", "literal" },
|
||||
{ "blanchedalmond", "literal" },
|
||||
{ "blue", "literal" },
|
||||
{ "blueviolet", "literal" },
|
||||
{ "brown", "literal" },
|
||||
{ "burlywood", "literal" },
|
||||
{ "cadetblue", "literal" },
|
||||
{ "chartreuse", "literal" },
|
||||
{ "chocolate", "literal" },
|
||||
{ "coral", "literal" },
|
||||
{ "cornflowerblue", "literal" },
|
||||
{ "cornsilk", "literal" },
|
||||
{ "crimson", "literal" },
|
||||
{ "cyan", "literal" },
|
||||
{ "darkblue", "literal" },
|
||||
{ "darkcyan", "literal" },
|
||||
{ "darkgoldenrod", "literal" },
|
||||
{ "darkgray", "literal" },
|
||||
{ "darkgreen", "literal" },
|
||||
{ "darkgrey", "literal" },
|
||||
{ "darkkhaki", "literal" },
|
||||
{ "darkmagenta", "literal" },
|
||||
{ "darkolivegreen", "literal" },
|
||||
{ "darkorange", "literal" },
|
||||
{ "darkorchid", "literal" },
|
||||
{ "darkred", "literal" },
|
||||
{ "darksalmon", "literal" },
|
||||
{ "darkseagreen", "literal" },
|
||||
{ "darkslateblue", "literal" },
|
||||
{ "darkslategray", "literal" },
|
||||
{ "darkslategrey", "literal" },
|
||||
{ "darkturquoise", "literal" },
|
||||
{ "darkviolet", "literal" },
|
||||
{ "deeppink", "literal" },
|
||||
{ "deepskyblue", "literal" },
|
||||
{ "dimgray", "literal" },
|
||||
{ "dimgrey", "literal" },
|
||||
{ "dodgerblue", "literal" },
|
||||
{ "firebrick", "literal" },
|
||||
{ "floralwhite", "literal" },
|
||||
{ "forestgreen", "literal" },
|
||||
{ "fuchsia", "literal" },
|
||||
{ "gainsboro", "literal" },
|
||||
{ "ghostwhite", "literal" },
|
||||
{ "gold", "literal" },
|
||||
{ "goldenrod", "literal" },
|
||||
{ "gray", "literal" },
|
||||
{ "green", "literal" },
|
||||
{ "greenyellow", "literal" },
|
||||
{ "grey", "literal" },
|
||||
{ "honeydew", "literal" },
|
||||
{ "hotpink", "literal" },
|
||||
{ "indianred", "literal" },
|
||||
{ "indigo", "literal" },
|
||||
{ "ivory", "literal" },
|
||||
{ "khaki", "literal" },
|
||||
{ "lavender", "literal" },
|
||||
{ "lavenderblush", "literal" },
|
||||
{ "lawngreen", "literal" },
|
||||
{ "lemonchiffon", "literal" },
|
||||
{ "lightblue", "literal" },
|
||||
{ "lightcoral", "literal" },
|
||||
{ "lightcyan", "literal" },
|
||||
{ "lightgoldenrodyellow", "literal" },
|
||||
{ "lightgray", "literal" },
|
||||
{ "lightgreen", "literal" },
|
||||
{ "lightgrey", "literal" },
|
||||
{ "lightpink", "literal" },
|
||||
{ "lightsalmon", "literal" },
|
||||
{ "lightseagreen", "literal" },
|
||||
{ "lightskyblue", "literal" },
|
||||
{ "lightslategray", "literal" },
|
||||
{ "lightslategrey", "literal" },
|
||||
{ "lightsteelblue", "literal" },
|
||||
{ "lightyellow", "literal" },
|
||||
{ "lime", "literal" },
|
||||
{ "limegreen", "literal" },
|
||||
{ "linen", "literal" },
|
||||
{ "magenta", "literal" },
|
||||
{ "maroon", "literal" },
|
||||
{ "mediumaquamarine", "literal" },
|
||||
{ "mediumblue", "literal" },
|
||||
{ "mediumorchid", "literal" },
|
||||
{ "mediumpurple", "literal" },
|
||||
{ "mediumseagreen", "literal" },
|
||||
{ "mediumslateblue", "literal" },
|
||||
{ "mediumspringgreen", "literal" },
|
||||
{ "mediumturquoise", "literal" },
|
||||
{ "mediumvioletred", "literal" },
|
||||
{ "midnightblue", "literal" },
|
||||
{ "mintcream", "literal" },
|
||||
{ "mistyrose", "literal" },
|
||||
{ "moccasin", "literal" },
|
||||
{ "navajowhite", "literal" },
|
||||
{ "navy", "literal" },
|
||||
{ "oldlace", "literal" },
|
||||
{ "olive", "literal" },
|
||||
{ "olivedrab", "literal" },
|
||||
{ "orange", "literal" },
|
||||
{ "orangered", "literal" },
|
||||
{ "orchid", "literal" },
|
||||
{ "palegoldenrod", "literal" },
|
||||
{ "palegreen", "literal" },
|
||||
{ "paleturquoise", "literal" },
|
||||
{ "palevioletred", "literal" },
|
||||
{ "papayawhip", "literal" },
|
||||
{ "peachpuff", "literal" },
|
||||
{ "peru", "literal" },
|
||||
{ "pink", "literal" },
|
||||
{ "plum", "literal" },
|
||||
{ "powderblue", "literal" },
|
||||
{ "purple", "literal" },
|
||||
{ "red", "literal" },
|
||||
{ "rosybrown", "literal" },
|
||||
{ "royalblue", "literal" },
|
||||
{ "saddlebrown", "literal" },
|
||||
{ "salmon", "literal" },
|
||||
{ "sandybrown", "literal" },
|
||||
{ "seagreen", "literal" },
|
||||
{ "seashell", "literal" },
|
||||
{ "sienna", "literal" },
|
||||
{ "silver", "literal" },
|
||||
{ "skyblue", "literal" },
|
||||
{ "slateblue", "literal" },
|
||||
{ "slategray", "literal" },
|
||||
{ "slategrey", "literal" },
|
||||
{ "snow", "literal" },
|
||||
{ "springgreen", "literal" },
|
||||
{ "steelblue", "literal" },
|
||||
{ "tan", "literal" },
|
||||
{ "teal", "literal" },
|
||||
{ "thistle", "literal" },
|
||||
{ "tomato", "literal" },
|
||||
{ "turquoise", "literal" },
|
||||
{ "violet", "literal" },
|
||||
{ "wheat", "literal" },
|
||||
{ "white", "literal" },
|
||||
{ "whitesmoke", "literal" },
|
||||
{ "yellow", "literal" },
|
||||
{ "yellowgreen", "literal" },
|
||||
},
|
||||
"//",
|
||||
} );
|
||||
|
||||
2
src/thirdparty/efsw
vendored
2
src/thirdparty/efsw
vendored
Submodule src/thirdparty/efsw updated: 3fd18f71b5...5d0fa1b410
Reference in New Issue
Block a user