Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
f14dceaf
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,发现更多精彩内容 >>
提交
f14dceaf
编写于
1月 23, 2019
作者:
D
Daniel Imms
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Fix terminal process env variables
上级
f053101c
变更
3
显示空白变更内容
内联
并排
Showing
3 changed file
with
5 addition
and
12 deletion
+5
-12
src/vs/workbench/api/electron-browser/mainThreadTerminalService.ts
...rkbench/api/electron-browser/mainThreadTerminalService.ts
+0
-7
src/vs/workbench/api/node/extHostTerminalService.ts
src/vs/workbench/api/node/extHostTerminalService.ts
+4
-3
src/vs/workbench/parts/terminal/electron-browser/terminalProcessManager.ts
...parts/terminal/electron-browser/terminalProcessManager.ts
+1
-2
未找到文件。
src/vs/workbench/api/electron-browser/mainThreadTerminalService.ts
浏览文件 @
f14dceaf
...
@@ -12,7 +12,6 @@ import { extHostNamedCustomer } from 'vs/workbench/api/electron-browser/extHostC
...
@@ -12,7 +12,6 @@ import { extHostNamedCustomer } from 'vs/workbench/api/electron-browser/extHostC
export
class
MainThreadTerminalService
implements
MainThreadTerminalServiceShape
{
export
class
MainThreadTerminalService
implements
MainThreadTerminalServiceShape
{
private
_proxy
:
ExtHostTerminalServiceShape
;
private
_proxy
:
ExtHostTerminalServiceShape
;
private
_remoteAuthority
:
string
|
null
;
private
_toDispose
:
IDisposable
[]
=
[];
private
_toDispose
:
IDisposable
[]
=
[];
private
_terminalProcesses
:
{
[
id
:
number
]:
ITerminalProcessExtHostProxy
}
=
{};
private
_terminalProcesses
:
{
[
id
:
number
]:
ITerminalProcessExtHostProxy
}
=
{};
private
_terminalOnDidWriteDataListeners
:
{
[
id
:
number
]:
IDisposable
}
=
{};
private
_terminalOnDidWriteDataListeners
:
{
[
id
:
number
]:
IDisposable
}
=
{};
...
@@ -23,7 +22,6 @@ export class MainThreadTerminalService implements MainThreadTerminalServiceShape
...
@@ -23,7 +22,6 @@ export class MainThreadTerminalService implements MainThreadTerminalServiceShape
@
ITerminalService
private
readonly
terminalService
:
ITerminalService
@
ITerminalService
private
readonly
terminalService
:
ITerminalService
)
{
)
{
this
.
_proxy
=
extHostContext
.
getProxy
(
ExtHostContext
.
ExtHostTerminalService
);
this
.
_proxy
=
extHostContext
.
getProxy
(
ExtHostContext
.
ExtHostTerminalService
);
this
.
_remoteAuthority
=
extHostContext
.
remoteAuthority
;
this
.
_toDispose
.
push
(
terminalService
.
onInstanceCreated
((
instance
)
=>
{
this
.
_toDispose
.
push
(
terminalService
.
onInstanceCreated
((
instance
)
=>
{
// Delay this message so the TerminalInstance constructor has a chance to finish and
// Delay this message so the TerminalInstance constructor has a chance to finish and
// return the ID normally to the extension host. The ID that is passed here will be used
// return the ID normally to the extension host. The ID that is passed here will be used
...
@@ -204,11 +202,6 @@ export class MainThreadTerminalService implements MainThreadTerminalServiceShape
...
@@ -204,11 +202,6 @@ export class MainThreadTerminalService implements MainThreadTerminalServiceShape
}
}
private
_onTerminalRequestExtHostProcess
(
request
:
ITerminalProcessExtHostRequest
):
void
{
private
_onTerminalRequestExtHostProcess
(
request
:
ITerminalProcessExtHostRequest
):
void
{
// Only allow processes on remote ext hosts
if
(
!
this
.
_remoteAuthority
)
{
return
;
}
this
.
_terminalProcesses
[
request
.
proxy
.
terminalId
]
=
request
.
proxy
;
this
.
_terminalProcesses
[
request
.
proxy
.
terminalId
]
=
request
.
proxy
;
const
shellLaunchConfigDto
:
ShellLaunchConfigDto
=
{
const
shellLaunchConfigDto
:
ShellLaunchConfigDto
=
{
name
:
request
.
shellLaunchConfig
.
name
,
name
:
request
.
shellLaunchConfig
.
name
,
...
...
src/vs/workbench/api/node/extHostTerminalService.ts
浏览文件 @
f14dceaf
...
@@ -405,13 +405,14 @@ export class ExtHostTerminalService implements ExtHostTerminalServiceShape {
...
@@ -405,13 +405,14 @@ export class ExtHostTerminalService implements ExtHostTerminalServiceShape {
// TODO: Pull in and resolve config settings
// TODO: Pull in and resolve config settings
// // Resolve env vars from config and shell
// // Resolve env vars from config and shell
// const lastActiveWorkspaceRoot = this._workspaceContextService.getWorkspaceFolder(lastActiveWorkspaceRootUri);
// const lastActiveWorkspaceRoot = this._workspaceContextService.getWorkspaceFolder(lastActiveWorkspaceRootUri);
// const platformKey = platform.isWindows ? 'windows' : (platform.isMacintosh ? 'osx' : 'linux');
const
platformKey
=
platform
.
isWindows
?
'
windows
'
:
(
platform
.
isMacintosh
?
'
osx
'
:
'
linux
'
);
// const envFromConfig = terminalEnvironment.resolveConfigurationVariables(this._configurationResolverService, { ...this._configHelper.config.env[platformKey] }, lastActiveWorkspaceRoot);
// const envFromConfig = terminalEnvironment.resolveConfigurationVariables(this._configurationResolverService, { ...terminalConfig.env[platformKey] }, lastActiveWorkspaceRoot);
const
envFromConfig
=
{
...
terminalConfig
.
env
[
platformKey
]
};
// const envFromShell = terminalEnvironment.resolveConfigurationVariables(this._configurationResolverService, { ...shellLaunchConfig.env }, lastActiveWorkspaceRoot);
// const envFromShell = terminalEnvironment.resolveConfigurationVariables(this._configurationResolverService, { ...shellLaunchConfig.env }, lastActiveWorkspaceRoot);
// Merge process env with the env from config
// Merge process env with the env from config
const
env
=
{
...
process
.
env
};
const
env
=
{
...
process
.
env
};
//
terminalEnvironment.mergeEnvironments(env, envFromConfig);
terminalEnvironment
.
mergeEnvironments
(
env
,
envFromConfig
);
terminalEnvironment
.
mergeEnvironments
(
env
,
shellLaunchConfig
.
env
);
terminalEnvironment
.
mergeEnvironments
(
env
,
shellLaunchConfig
.
env
);
// Sanitize the environment, removing any undesirable VS Code and Electron environment
// Sanitize the environment, removing any undesirable VS Code and Electron environment
...
...
src/vs/workbench/parts/terminal/electron-browser/terminalProcessManager.ts
浏览文件 @
f14dceaf
...
@@ -90,14 +90,13 @@ export class TerminalProcessManager implements ITerminalProcessManager {
...
@@ -90,14 +90,13 @@ export class TerminalProcessManager implements ITerminalProcessManager {
cols
:
number
,
cols
:
number
,
rows
:
number
rows
:
number
):
void
{
):
void
{
let
launchRemotely
=
false
;
let
launchRemotely
=
false
;
if
(
shellLaunchConfig
.
cwd
&&
typeof
shellLaunchConfig
.
cwd
===
'
object
'
)
{
if
(
shellLaunchConfig
.
cwd
&&
typeof
shellLaunchConfig
.
cwd
===
'
object
'
)
{
launchRemotely
=
!!
getRemoteAuthority
(
shellLaunchConfig
.
cwd
);
launchRemotely
=
!!
getRemoteAuthority
(
shellLaunchConfig
.
cwd
);
shellLaunchConfig
.
cwd
=
shellLaunchConfig
.
cwd
.
fsPath
;
shellLaunchConfig
.
cwd
=
shellLaunchConfig
.
cwd
.
fsPath
;
}
else
{
}
else
{
launchRemotely
=
!!
this
.
_windowService
.
getConfiguration
().
remoteAuthority
;
launchRemotely
=
!!
this
.
_windowService
.
getConfiguration
().
remoteAuthority
||
(
this
.
_configHelper
.
config
as
any
).
extHostProcess
;
}
}
if
(
launchRemotely
)
{
if
(
launchRemotely
)
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录