Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
2f18a14a
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,发现更多精彩内容 >>
提交
2f18a14a
编写于
10月 29, 2018
作者:
M
Mine Starks
提交者:
Matt Bierner
10月 29, 2018
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Support configuring TypeScript plugins (#61756)
上级
26c3d8d8
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
30 addition
and
1 deletion
+30
-1
extensions/typescript-language-features/src/commands.ts
extensions/typescript-language-features/src/commands.ts
+12
-0
extensions/typescript-language-features/src/extension.ts
extensions/typescript-language-features/src/extension.ts
+1
-0
extensions/typescript-language-features/src/typescriptServiceClient.ts
...pescript-language-features/src/typescriptServiceClient.ts
+17
-1
未找到文件。
extensions/typescript-language-features/src/commands.ts
浏览文件 @
2f18a14a
...
...
@@ -105,6 +105,18 @@ export class JavaScriptGoToProjectConfigCommand implements Command {
}
}
export
class
ConfigurePluginCommand
implements
Command
{
public
readonly
id
=
'
_typescript.configurePlugin
'
;
public
constructor
(
private
readonly
lazyClientHost
:
Lazy
<
TypeScriptServiceClientHost
>
,
)
{
}
public
execute
(
pluginName
:
string
,
configuration
:
any
)
{
this
.
lazyClientHost
.
value
.
serviceClient
.
configurePlugin
(
pluginName
,
configuration
,
true
/* reconfigureOnRestart */
);
}
}
async
function
goToProjectConfig
(
clientHost
:
TypeScriptServiceClientHost
,
isTypeScriptProject
:
boolean
,
...
...
extensions/typescript-language-features/src/extension.ts
浏览文件 @
2f18a14a
...
...
@@ -108,6 +108,7 @@ function registerCommands(
commandManager
.
register
(
new
commands
.
RestartTsServerCommand
(
lazyClientHost
));
commandManager
.
register
(
new
commands
.
TypeScriptGoToProjectConfigCommand
(
lazyClientHost
));
commandManager
.
register
(
new
commands
.
JavaScriptGoToProjectConfigCommand
(
lazyClientHost
));
commandManager
.
register
(
new
commands
.
ConfigurePluginCommand
(
lazyClientHost
));
}
function
isSupportedDocument
(
...
...
extensions/typescript-language-features/src/typescriptServiceClient.ts
浏览文件 @
2f18a14a
...
...
@@ -71,6 +71,8 @@ export default class TypeScriptServiceClient extends Disposable implements IType
public
readonly
bufferSyncSupport
:
BufferSyncSupport
;
public
readonly
diagnosticsManager
:
DiagnosticsManager
;
private
pluginConfigurations
:
Map
<
string
,
any
>
;
constructor
(
private
readonly
workspaceState
:
vscode
.
Memento
,
private
readonly
onDidChangeTypeScriptVersion
:
(
version
:
TypeScriptVersion
)
=>
void
,
...
...
@@ -132,6 +134,7 @@ export default class TypeScriptServiceClient extends Disposable implements IType
this
.
telemetryReporter
=
this
.
_register
(
new
TelemetryReporter
(()
=>
this
.
_tsserverVersion
||
this
.
_apiVersion
.
versionString
));
this
.
typescriptServerSpawner
=
new
TypeScriptServerSpawner
(
this
.
versionProvider
,
this
.
logDirectoryProvider
,
this
.
pluginPathsProvider
,
this
.
logger
,
this
.
telemetryReporter
,
this
.
tracer
);
this
.
pluginConfigurations
=
new
Map
<
string
,
any
>
();
}
public
get
configuration
()
{
...
...
@@ -406,6 +409,11 @@ export default class TypeScriptServiceClient extends Disposable implements IType
if
(
resendModels
)
{
this
.
_onResendModelsRequested
.
fire
();
}
// Reconfigure any plugins
this
.
pluginConfigurations
.
forEach
((
config
,
pluginName
)
=>
{
this
.
configurePlugin
(
pluginName
,
config
);
});
}
private
setCompilerOptionsForInferredProjects
(
configuration
:
TypeScriptServiceConfiguration
):
void
{
...
...
@@ -719,8 +727,16 @@ export default class TypeScriptServiceClient extends Disposable implements IType
this
.
_apiVersion
=
API
.
defaultVersion
;
this
.
_tsserverVersion
=
undefined
;
}
}
public
configurePlugin
(
pluginName
:
string
,
configuration
:
any
,
reconfigureOnRestart
?:
boolean
):
any
{
this
.
executeWithoutWaitingForResponse
(
'
configurePlugin
'
,
{
pluginName
,
configuration
});
if
(
reconfigureOnRestart
)
{
// Remember the updated configuration so we can send the command again if TSServer restarts for any reason
this
.
pluginConfigurations
.
set
(
pluginName
,
configuration
);
}
}
}
function
getDignosticsKind
(
event
:
Proto
.
Event
)
{
switch
(
event
.
event
)
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录