Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
后端镜像
Tabby
提交
3039a657
T
Tabby
项目概览
后端镜像
/
Tabby
通知
37
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
Tabby
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
3039a657
编写于
2月 12, 2019
作者:
E
Eugene Pankov
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fixed conpty detection (fixes #653)
上级
714f181b
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
19 addition
and
14 deletion
+19
-14
terminus-terminal/src/components/shellSettingsTab.component.ts
...nus-terminal/src/components/shellSettingsTab.component.ts
+4
-7
terminus-terminal/src/services/sessions.service.ts
terminus-terminal/src/services/sessions.service.ts
+3
-1
terminus-terminal/src/services/uac.service.ts
terminus-terminal/src/services/uac.service.ts
+4
-6
terminus-terminal/src/utils.ts
terminus-terminal/src/utils.ts
+8
-0
未找到文件。
terminus-terminal/src/components/shellSettingsTab.component.ts
浏览文件 @
3039a657
import
*
as
os
from
'
os
'
import
{
Component
}
from
'
@angular/core
'
import
{
NgbModal
}
from
'
@ng-bootstrap/ng-bootstrap
'
import
{
Subscription
}
from
'
rxjs
'
...
...
@@ -6,7 +5,7 @@ import { ConfigService, ElectronService, HostAppService, Platform } from 'termin
import
{
EditProfileModalComponent
}
from
'
./editProfileModal.component
'
import
{
IShell
,
Profile
}
from
'
../api
'
import
{
TerminalService
}
from
'
../services/terminal.service
'
import
{
UACService
}
from
'
../services/uac.service
'
import
{
WIN_BUILD_CONPTY_SUPPORTED
,
WIN_BUILD_CONPTY_STABLE
,
isWindowsBuild
}
from
'
../utils
'
@
Component
({
template
:
require
(
'
./shellSettingsTab.component.pug
'
),
...
...
@@ -20,7 +19,6 @@ export class ShellSettingsTabComponent {
private
configSubscription
:
Subscription
constructor
(
uac
:
UACService
,
public
config
:
ConfigService
,
public
hostApp
:
HostAppService
,
private
electron
:
ElectronService
,
...
...
@@ -32,10 +30,9 @@ export class ShellSettingsTabComponent {
this
.
reload
()
})
this
.
reload
()
this
.
isConPTYAvailable
=
uac
.
isAvailable
this
.
isConPTYStable
=
hostApp
.
platform
===
Platform
.
Windows
&&
parseFloat
(
os
.
release
())
>=
10
&&
parseInt
(
os
.
release
().
split
(
'
.
'
)[
2
])
>=
18309
this
.
isConPTYAvailable
=
isWindowsBuild
(
WIN_BUILD_CONPTY_SUPPORTED
)
this
.
isConPTYStable
=
isWindowsBuild
(
WIN_BUILD_CONPTY_STABLE
)
}
async
ngOnInit
()
{
...
...
terminus-terminal/src/services/sessions.service.ts
浏览文件 @
3039a657
...
...
@@ -7,6 +7,7 @@ import { Injectable } from '@angular/core'
import
{
Logger
,
LogService
,
ConfigService
}
from
'
terminus-core
'
import
{
exec
}
from
'
mz/child_process
'
import
{
SessionOptions
}
from
'
../api
'
import
{
WIN_BUILD_CONPTY_SUPPORTED
,
isWindowsBuild
}
from
'
../utils
'
let
macOSNativeProcessList
try
{
...
...
@@ -118,7 +119,8 @@ export class Session extends BaseSession {
rows
:
options
.
height
||
30
,
cwd
,
env
:
env
,
experimentalUseConpty
:
this
.
config
.
store
.
terminal
.
useConPTY
&&
1
,
// `1` instead of `true` forces ConPTY even if unstable
experimentalUseConpty
:
(
isWindowsBuild
(
WIN_BUILD_CONPTY_SUPPORTED
)
&&
this
.
config
.
store
.
terminal
.
useConPTY
)
?
1
:
false
,
})
this
.
guessedCWD
=
cwd
...
...
terminus-terminal/src/services/uac.service.ts
浏览文件 @
3039a657
import
*
as
path
from
'
path
'
import
*
as
os
from
'
os
'
import
{
Injectable
}
from
'
@angular/core
'
import
{
ElectronService
,
HostAppService
,
Platform
}
from
'
terminus-core
'
import
{
ElectronService
}
from
'
terminus-core
'
import
{
SessionOptions
}
from
'
../api
'
import
{
WIN_BUILD_CONPTY_SUPPORTED
,
isWindowsBuild
}
from
'
../utils
'
@
Injectable
({
providedIn
:
'
root
'
})
export
class
UACService
{
isAvailable
=
false
constructor
(
hostApp
:
HostAppService
,
private
electron
:
ElectronService
,
)
{
this
.
isAvailable
=
hostApp
.
platform
===
Platform
.
Windows
&&
parseFloat
(
os
.
release
())
>=
10
&&
parseInt
(
os
.
release
().
split
(
'
.
'
)[
2
])
>=
17692
this
.
isAvailable
=
isWindowsBuild
(
WIN_BUILD_CONPTY_SUPPORTED
)
}
patchSessionOptionsForUAC
(
sessionOptions
:
SessionOptions
):
SessionOptions
{
...
...
terminus-terminal/src/utils.ts
0 → 100644
浏览文件 @
3039a657
import
*
as
os
from
'
os
'
export
const
WIN_BUILD_CONPTY_SUPPORTED
=
17692
export
const
WIN_BUILD_CONPTY_STABLE
=
18309
export
function
isWindowsBuild
(
build
:
number
):
boolean
{
return
process
.
platform
===
'
win32
'
&&
parseFloat
(
os
.
release
())
>=
10
&&
parseInt
(
os
.
release
().
split
(
'
.
'
)[
2
])
>=
build
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录