Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
8a33db65
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,发现更多精彩内容 >>
提交
8a33db65
编写于
3月 20, 2017
作者:
A
Alex Dima
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add Inspect Key Mapppings action
上级
0ebecd5c
变更
6
隐藏空白更改
内联
并排
Showing
6 changed file
with
60 addition
and
1 deletion
+60
-1
src/vs/workbench/parts/codeEditor/codeEditor.contribution.ts
src/vs/workbench/parts/codeEditor/codeEditor.contribution.ts
+1
-0
src/vs/workbench/parts/codeEditor/electron-browser/inspectKeybindings.ts
...h/parts/codeEditor/electron-browser/inspectKeybindings.ts
+42
-0
src/vs/workbench/services/keybinding/common/keyboardMapper.ts
...vs/workbench/services/keybinding/common/keyboardMapper.ts
+1
-0
src/vs/workbench/services/keybinding/common/macLinuxKeyboardMapper.ts
...ench/services/keybinding/common/macLinuxKeyboardMapper.ts
+6
-1
src/vs/workbench/services/keybinding/common/windowsKeyboardMapper.ts
...bench/services/keybinding/common/windowsKeyboardMapper.ts
+6
-0
src/vs/workbench/services/keybinding/electron-browser/keybindingService.ts
...services/keybinding/electron-browser/keybindingService.ts
+4
-0
未找到文件。
src/vs/workbench/parts/codeEditor/codeEditor.contribution.ts
浏览文件 @
8a33db65
...
...
@@ -7,3 +7,4 @@ import './electron-browser/toggleRenderControlCharacter';
import
'
./electron-browser/toggleRenderWhitespace
'
;
import
'
./electron-browser/toggleWordWrap
'
;
import
'
./electron-browser/wordWrapMigration
'
;
import
'
./electron-browser/inspectKeybindings
'
;
src/vs/workbench/parts/codeEditor/electron-browser/inspectKeybindings.ts
0 → 100644
浏览文件 @
8a33db65
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
'
use strict
'
;
import
*
as
nls
from
'
vs/nls
'
;
import
{
ICommonCodeEditor
}
from
'
vs/editor/common/editorCommon
'
;
import
{
editorAction
,
ServicesAccessor
,
EditorAction
}
from
'
vs/editor/common/editorCommonExtensions
'
;
import
{
IKeybindingService
}
from
'
vs/platform/keybinding/common/keybinding
'
;
import
{
WorkbenchKeybindingService
}
from
'
vs/workbench/services/keybinding/electron-browser/keybindingService
'
;
import
{
IWorkbenchEditorService
}
from
'
vs/workbench/services/editor/common/editorService
'
;
import
{
IUntitledEditorService
}
from
'
vs/workbench/services/untitled/common/untitledEditorService
'
;
import
URI
from
'
vs/base/common/uri
'
;
import
{
UntitledEditorInput
}
from
'
vs/workbench/common/editor/untitledEditorInput
'
;
@
editorAction
class
InspectKeyMap
extends
EditorAction
{
constructor
()
{
super
({
id
:
'
workbench.action.inspectKeyMappings
'
,
label
:
nls
.
localize
(
'
workbench.action.inspectKeyMap
'
,
"
Developer: Inspect Key Mapppings
"
),
alias
:
'
Developer: Inspect Key Mapppings
'
,
precondition
:
null
});
}
public
run
(
accessor
:
ServicesAccessor
,
editor
:
ICommonCodeEditor
):
void
{
const
keybindingService
=
accessor
.
get
(
IKeybindingService
);
const
editorService
=
accessor
.
get
(
IWorkbenchEditorService
);
const
untitledEditorService
=
accessor
.
get
(
IUntitledEditorService
);
if
(
keybindingService
instanceof
WorkbenchKeybindingService
)
{
console
.
log
(
keybindingService
.
dumpDebugInfo
());
const
resource
=
URI
.
from
({
scheme
:
UntitledEditorInput
.
SCHEMA
,
path
:
`KeyMap`
});
const
input
=
untitledEditorService
.
createOrGet
(
resource
,
null
,
keybindingService
.
dumpDebugInfo
());
editorService
.
openEditor
(
input
,
{
pinned
:
true
});
}
}
}
src/vs/workbench/services/keybinding/common/keyboardMapper.ts
浏览文件 @
8a33db65
...
...
@@ -9,6 +9,7 @@ import { Keybinding, ResolvedKeybinding } from 'vs/base/common/keyCodes';
import
{
IKeyboardEvent
}
from
'
vs/platform/keybinding/common/keybinding
'
;
export
interface
IKeyboardMapper
{
dumpRawDebugInfo
():
string
;
dumpDebugInfo
():
string
;
resolveKeybinding
(
keybinding
:
Keybinding
):
ResolvedKeybinding
[];
resolveKeyboardEvent
(
keyboardEvent
:
IKeyboardEvent
):
ResolvedKeybinding
;
...
...
src/vs/workbench/services/keybinding/common/macLinuxKeyboardMapper.ts
浏览文件 @
8a33db65
...
...
@@ -153,6 +153,7 @@ interface IHardwareCodeMapping {
export
class
MacLinuxKeyboardMapper
implements
IKeyboardMapper
{
private
readonly
_rawMappings
:
IMacLinuxKeyboardMapping
;
private
readonly
_OS
:
OperatingSystem
;
private
readonly
_codeInfo
:
IHardwareCodeMapping
[];
private
readonly
_hwToKb
:
number
[]
=
[];
...
...
@@ -161,7 +162,7 @@ export class MacLinuxKeyboardMapper implements IKeyboardMapper {
private
readonly
_kbToHw
:
number
[][]
=
[];
constructor
(
rawMappings
:
IMacLinuxKeyboardMapping
,
OS
:
OperatingSystem
)
{
this
.
_rawMappings
=
rawMappings
;
this
.
_OS
=
OS
;
this
.
_hwToKb
=
[];
...
...
@@ -283,6 +284,10 @@ export class MacLinuxKeyboardMapper implements IKeyboardMapper {
}
}
public
dumpRawDebugInfo
():
string
{
return
JSON
.
stringify
(
this
.
_rawMappings
,
null
,
'
\t
'
);
}
public
dumpDebugInfo
():
string
{
let
result
:
string
[]
=
[];
...
...
src/vs/workbench/services/keybinding/common/windowsKeyboardMapper.ts
浏览文件 @
8a33db65
...
...
@@ -177,12 +177,14 @@ export class WindowsNativeResolvedKeybinding extends ResolvedKeybinding {
export
class
WindowsKeyboardMapper
implements
IKeyboardMapper
{
private
readonly
_rawMappings
:
IWindowsKeyboardMapping
;
private
readonly
_codeInfo
:
IHardwareCodeMapping
[];
private
readonly
_hwToKb
:
KeyCode
[];
private
readonly
_kbToLabel
:
string
[]
=
[];
private
readonly
_kbExists
:
boolean
[];
constructor
(
rawMappings
:
IWindowsKeyboardMapping
)
{
this
.
_rawMappings
=
rawMappings
;
this
.
_hwToKb
=
[];
this
.
_kbToLabel
=
[];
this
.
_kbExists
=
[];
...
...
@@ -241,6 +243,10 @@ export class WindowsKeyboardMapper implements IKeyboardMapper {
}
}
public
dumpRawDebugInfo
():
string
{
return
JSON
.
stringify
(
this
.
_rawMappings
,
null
,
'
\t
'
);
}
public
dumpDebugInfo
():
string
{
let
result
:
string
[]
=
[];
...
...
src/vs/workbench/services/keybinding/electron-browser/keybindingService.ts
浏览文件 @
8a33db65
...
...
@@ -186,6 +186,10 @@ export class WorkbenchKeybindingService extends AbstractKeybindingService {
});
}
public
dumpDebugInfo
():
string
{
return
this
.
_keyboardMapper
.
dumpDebugInfo
()
+
`\n\n\nraw info: \n`
+
this
.
_keyboardMapper
.
dumpRawDebugInfo
();
}
private
_safeGetConfig
():
IUserFriendlyKeybinding
[]
{
let
rawConfig
=
this
.
userKeybindings
.
getConfig
();
if
(
Array
.
isArray
(
rawConfig
))
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录