Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
70696746
V
vscode
项目概览
xxadev
/
vscode
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
V
vscode
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
70696746
编写于
1月 09, 2019
作者:
P
Pine Wu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Address feedback
上级
9d8216ae
变更
2
显示空白变更内容
内联
并排
Showing
2 changed file
with
11 addition
and
23 deletion
+11
-23
extensions/css-language-features/server/src/cssServerMain.ts
extensions/css-language-features/server/src/cssServerMain.ts
+8
-22
extensions/css-language-features/server/src/utils/languageFacts.ts
...s/css-language-features/server/src/utils/languageFacts.ts
+3
-1
未找到文件。
extensions/css-language-features/server/src/cssServerMain.ts
浏览文件 @
70696746
...
...
@@ -10,12 +10,12 @@ import URI from 'vscode-uri';
import
*
as
fs
from
'
fs
'
;
import
{
TextDocument
,
CompletionList
}
from
'
vscode-languageserver-types
'
;
import
{
getCSSLanguageService
,
getSCSSLanguageService
,
getLESSLanguageService
,
LanguageSettings
,
LanguageService
,
Stylesheet
}
from
'
vscode-css-languageservice
'
;
import
{
getCSSLanguageService
,
getSCSSLanguageService
,
getLESSLanguageService
,
LanguageSettings
,
LanguageService
,
Stylesheet
,
CSSData
}
from
'
vscode-css-languageservice
'
;
import
{
getLanguageModelCache
}
from
'
./languageModelCache
'
;
import
{
getPathCompletionParticipant
}
from
'
./pathCompletion
'
;
import
{
formatError
,
runSafe
}
from
'
./utils/runner
'
;
import
{
getDocumentContext
}
from
'
./utils/documentContext
'
;
import
{
parseCSSData
}
from
'
./languageFacts
'
;
import
{
parseCSSData
}
from
'
./
utils/
languageFacts
'
;
export
interface
Settings
{
css
:
LanguageSettings
;
...
...
@@ -67,26 +67,12 @@ connection.onInitialize((params: InitializeParams): InitializeResult => {
const
dataPaths
:
string
[]
=
params
.
initializationOptions
.
dataPaths
;
let
customData
=
{
customProperties
:
[],
customAtDirectives
:
[],
customPseudoElements
:
[],
customPseudoClasses
:
[]
};
const
customDataCollections
:
CSSData
[]
=
[];
dataPaths
.
forEach
(
p
=>
{
if
(
fs
.
existsSync
(
p
))
{
const
{
properties
,
atDirectives
,
pseudoClasses
,
pseudoElements
}
=
parseCSSData
(
fs
.
readFileSync
(
p
,
'
utf-8
'
));
customData
.
customProperties
=
customData
.
customProperties
.
concat
(
properties
);
customData
.
customAtDirectives
=
customData
.
customAtDirectives
.
concat
(
atDirectives
);
customData
.
customPseudoClasses
=
customData
.
customPseudoClasses
.
concat
(
pseudoClasses
);
customData
.
customPseudoElements
=
customData
.
customPseudoElements
.
concat
(
pseudoElements
);
const
data
=
parseCSSData
(
fs
.
readFileSync
(
p
,
'
utf-8
'
));
customDataCollections
.
push
(
data
);
}
else
{
return
;
}
...
...
@@ -107,9 +93,9 @@ connection.onInitialize((params: InitializeParams): InitializeResult => {
scopedSettingsSupport
=
!!
getClientCapability
(
'
workspace.configuration
'
,
false
);
foldingRangeLimit
=
getClientCapability
(
'
textDocument.foldingRange.rangeLimit
'
,
Number
.
MAX_VALUE
);
languageServices
.
css
=
getCSSLanguageService
(
customData
);
languageServices
.
scss
=
getSCSSLanguageService
(
customData
);
languageServices
.
less
=
getLESSLanguageService
(
customData
);
languageServices
.
css
=
getCSSLanguageService
(
{
customDataCollections
}
);
languageServices
.
scss
=
getSCSSLanguageService
(
{
customDataCollections
}
);
languageServices
.
less
=
getLESSLanguageService
(
{
customDataCollections
}
);
const
capabilities
:
ServerCapabilities
=
{
// Tell the client that the server works in FULL text document sync mode
...
...
extensions/css-language-features/server/src/languageFacts.ts
→
extensions/css-language-features/server/src/
utils/
languageFacts.ts
浏览文件 @
70696746
...
...
@@ -3,7 +3,9 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
export
function
parseCSSData
(
source
:
string
)
{
import
{
CSSData
}
from
'
vscode-css-languageservice
'
;
export
function
parseCSSData
(
source
:
string
):
CSSData
{
let
rawData
:
any
;
try
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录