Compare commits

...

2 Commits

Author SHA1 Message Date
csh 5e53e96bff Merge branch 'lsp-server' 2025-07-02 14:39:21 +08:00
csh b66c626310 2.0.1 2025-06-30 17:33:52 +08:00
4 changed files with 52 additions and 9 deletions

View File

@ -67,8 +67,6 @@ select distinct ["test"] from table where ['a'] = 1 end;
a := array(1, 2); a := array(1, 2);
b := array((1, 2), (3, 4)); b := array((1, 2), (3, 4));
// 换行字符串
sql += "update ts_xbcheck result set isvalid = "$status$remark$" where checkid in ('"$array2str sql += "update ts_xbcheck result set isvalid = "$status$remark$" where checkid in ('"$array2str
(checkid[(io1)*len:], "','")$"');\r\n" (checkid[(i-1)*len:], "','")$"');\r\n"
sql +=

View File

@ -10,6 +10,10 @@ Notable changes to the `TSL` extension will be documented in this file.
- 更换`LSP`日志模块,启动参数`verbose -> trace` - 更换`LSP`日志模块,启动参数`verbose -> trace`
## [2.0.1]: 2025-06-30
- 修复:变量类型声明误匹配问题,如`len:], "','")$"');`
## [2.0.0]: 2025-06-22 ## [2.0.0]: 2025-06-22
- 初步支持`LSP`--关键字补全 - 初步支持`LSP`--关键字补全

View File

@ -2,7 +2,10 @@
"$schema": "https://raw.githubusercontent.com/martinring/tmlanguage/master/tmlanguage.json", "$schema": "https://raw.githubusercontent.com/martinring/tmlanguage/master/tmlanguage.json",
"name": "TSL", "name": "TSL",
"scopeName": "source.tsl", "scopeName": "source.tsl",
"fileTypes": ["tsl", "tsf"], "fileTypes": [
"tsl",
"tsf"
],
"patterns": [ "patterns": [
{ {
"include": "#comments" "include": "#comments"
@ -189,7 +192,7 @@
}, },
"variable-declarations": { "variable-declarations": {
"name": "meta.variable.declaration.tsl", "name": "meta.variable.declaration.tsl",
"match": "(?<!\\?\\s*)(\\w+)\\s*(:)(?!=)\\s*([^;?]*)(;)?", "match": "(?<!\\?\\s*)(\\w+)\\s*(:)(?!=)\\s*((?:array\\s*(?:\\[[^\\]]*\\])?\\s+of\\s+)?[a-zA-Z_][a-zA-Z0-9_]*(?:\\.[a-zA-Z_][a-zA-Z0-9_]*)*)\\s*(;)?",
"captures": { "captures": {
"1": { "1": {
"name": "variable.other.declaration.tsl" "name": "variable.other.declaration.tsl"
@ -318,22 +321,50 @@
{ {
"name": "string.quoted.single.tsl", "name": "string.quoted.single.tsl",
"begin": "[uU]?'", "begin": "[uU]?'",
"end": "'", "end": "'|(?=\\s*$)",
"beginCaptures": {
"0": {
"name": "punctuation.definition.string.begin.tsl"
}
},
"endCaptures": {
"0": {
"name": "punctuation.definition.string.end.tsl"
}
},
"patterns": [ "patterns": [
{ {
"name": "constant.character.escape.tsl", "name": "constant.character.escape.tsl",
"match": "\\\\." "match": "\\\\."
},
{
"name": "constant.character.escape.newline.tsl",
"match": "\\\\\\r?\\n"
} }
] ]
}, },
{ {
"name": "string.quoted.double.tsl", "name": "string.quoted.double.tsl",
"begin": "[uU]?\"", "begin": "[uU]?\"",
"end": "\"", "end": "\"|(?=\\s*$)",
"beginCaptures": {
"0": {
"name": "punctuation.definition.string.begin.tsl"
}
},
"endCaptures": {
"0": {
"name": "punctuation.definition.string.end.tsl"
}
},
"patterns": [ "patterns": [
{ {
"name": "constant.character.escape.tsl", "name": "constant.character.escape.tsl",
"match": "\\\\." "match": "\\\\."
},
{
"name": "constant.character.escape.newline.tsl",
"match": "\\\\\\r?\\n"
} }
] ]
}, },
@ -341,6 +372,16 @@
"name": "string.quoted.raw.tsl", "name": "string.quoted.raw.tsl",
"begin": "[uU]?[rR](['\"])", "begin": "[uU]?[rR](['\"])",
"end": "\\1", "end": "\\1",
"beginCaptures": {
"0": {
"name": "punctuation.definition.string.begin.tsl"
}
},
"endCaptures": {
"0": {
"name": "punctuation.definition.string.end.tsl"
}
},
"patterns": [ "patterns": [
{ {
"name": "constant.character.escape.tsl", "name": "constant.character.escape.tsl",

Binary file not shown.