Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
徽霖
Vscode
提交
0a08b58f
V
Vscode
项目概览
徽霖
/
Vscode
通知
9
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
V
Vscode
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
0a08b58f
编写于
8月 15, 2019
作者:
S
Sandeep Somavarapu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
do not look for executables in web
上级
dad6117f
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
10 addition
and
8 deletion
+10
-8
src/vs/workbench/contrib/extensions/electron-browser/extensionTipsService.ts
...ntrib/extensions/electron-browser/extensionTipsService.ts
+10
-8
未找到文件。
src/vs/workbench/contrib/extensions/electron-browser/extensionTipsService.ts
浏览文件 @
0a08b58f
...
...
@@ -22,7 +22,6 @@ import { IFileService } from 'vs/platform/files/common/files';
import
{
IExtensionsConfiguration
,
ConfigurationKey
,
ShowRecommendationsOnlyOnDemandKey
,
IExtensionsViewlet
,
IExtensionsWorkbenchService
,
EXTENSIONS_CONFIG
}
from
'
vs/workbench/contrib/extensions/common/extensions
'
;
import
{
IConfigurationService
,
ConfigurationTarget
}
from
'
vs/platform/configuration/common/configuration
'
;
import
{
ITelemetryService
}
from
'
vs/platform/telemetry/common/telemetry
'
;
import
*
as
os
from
'
os
'
;
import
{
flatten
,
distinct
,
shuffle
,
coalesce
}
from
'
vs/base/common/arrays
'
;
import
{
IEnvironmentService
}
from
'
vs/platform/environment/common/environment
'
;
import
{
guessMimeTypes
,
MIME_UNKNOWN
}
from
'
vs/base/common/mime
'
;
...
...
@@ -42,6 +41,7 @@ import { extname } from 'vs/base/common/resources';
import
{
IExeBasedExtensionTip
,
IProductService
}
from
'
vs/platform/product/common/product
'
;
import
{
timeout
}
from
'
vs/base/common/async
'
;
import
{
IWorkspaceStatsService
}
from
'
vs/workbench/contrib/stats/common/workspaceStats
'
;
import
{
Platform
}
from
'
vs/base/common/platform
'
;
const
milliSecondsInADay
=
1000
*
60
*
60
*
24
;
const
choiceNever
=
localize
(
'
neverShowAgain
'
,
"
Don't Show Again
"
);
...
...
@@ -982,11 +982,13 @@ export class ExtensionTipsService extends Disposable implements IExtensionTipsSe
/**
* If user has any of the tools listed in this.productService.productConfiguration.exeBasedExtensionTips, fetch corresponding recommendations
*/
private
fetchExecutableRecommendations
(
important
:
boolean
):
Promise
<
void
>
{
const
homeDir
=
os
.
homedir
();
let
foundExecutables
:
Set
<
string
>
=
new
Set
<
string
>
();
private
async
fetchExecutableRecommendations
(
important
:
boolean
):
Promise
<
void
>
{
if
(
Platform
.
Web
)
{
return
;
}
let
findExecutable
=
(
exeName
:
string
,
tip
:
IExeBasedExtensionTip
,
path
:
string
)
=>
{
const
foundExecutables
:
Set
<
string
>
=
new
Set
<
string
>
();
const
findExecutable
=
(
exeName
:
string
,
tip
:
IExeBasedExtensionTip
,
path
:
string
)
=>
{
return
this
.
fileService
.
exists
(
URI
.
file
(
path
)).
then
(
exists
=>
{
if
(
exists
&&
!
foundExecutables
.
has
(
exeName
))
{
foundExecutables
.
add
(
exeName
);
...
...
@@ -1002,7 +1004,7 @@ export class ExtensionTipsService extends Disposable implements IExtensionTipsSe
});
};
le
t
promises
:
Promise
<
void
>
[]
=
[];
cons
t
promises
:
Promise
<
void
>
[]
=
[];
// Loop through recommended extensions
forEach
(
this
.
productService
.
productConfiguration
.
exeBasedExtensionTips
,
entry
=>
{
if
(
typeof
entry
.
value
!==
'
object
'
||
!
Array
.
isArray
(
entry
.
value
[
'
recommendations
'
]))
{
...
...
@@ -1025,11 +1027,11 @@ export class ExtensionTipsService extends Disposable implements IExtensionTipsSe
promises
.
push
(
findExecutable
(
exeName
,
entry
.
value
,
windowsPath
));
}
else
{
promises
.
push
(
findExecutable
(
exeName
,
entry
.
value
,
join
(
'
/usr/local/bin
'
,
exeName
)));
promises
.
push
(
findExecutable
(
exeName
,
entry
.
value
,
join
(
homeDir
,
exeName
)));
promises
.
push
(
findExecutable
(
exeName
,
entry
.
value
,
join
(
this
.
environmentService
.
userHome
,
exeName
)));
}
});
return
Promise
.
all
(
promises
).
then
(()
=>
undefined
);
await
Promise
.
all
(
promises
);
}
/**
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录