mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-02-11 10:38:31 -05:00
Merge from vscode 64980ea1f3f532c82bb6c28d27bba9ef2c5b4463 (#7206)
* Merge from vscode 64980ea1f3f532c82bb6c28d27bba9ef2c5b4463 * fix config changes * fix strictnull checks
This commit is contained in:
@@ -26,7 +26,6 @@ import { ResolvedKeybindingItem } from 'vs/platform/keybinding/common/resolvedKe
|
||||
import { INotificationService } from 'vs/platform/notification/common/notification';
|
||||
import { Registry } from 'vs/platform/registry/common/platform';
|
||||
import { ITelemetryService } from 'vs/platform/telemetry/common/telemetry';
|
||||
import { keybindingsTelemetry } from 'vs/platform/telemetry/common/telemetryUtils';
|
||||
import { ExtensionMessageCollector, ExtensionsRegistry } from 'vs/workbench/services/extensions/common/extensionsRegistry';
|
||||
import { IUserKeybindingItem, KeybindingIO, OutputBuilder } from 'vs/workbench/services/keybinding/common/keybindingIO';
|
||||
import { IKeyboardMapper } from 'vs/workbench/services/keybinding/common/keyboardMapper';
|
||||
@@ -226,7 +225,6 @@ export class WorkbenchKeybindingService extends AbstractKeybindingService {
|
||||
}
|
||||
}));
|
||||
|
||||
keybindingsTelemetry(telemetryService, this);
|
||||
let data = this.keymapService.getCurrentKeyboardLayout();
|
||||
/* __GDPR__
|
||||
"keyboardLayout" : {
|
||||
@@ -602,10 +600,12 @@ let commandsSchemas: IJSONSchema[] = [];
|
||||
let commandsEnum: string[] = [];
|
||||
let commandsEnumDescriptions: (string | undefined)[] = [];
|
||||
let schema: IJSONSchema = {
|
||||
'id': schemaId,
|
||||
'type': 'array',
|
||||
'title': nls.localize('keybindings.json.title', "Keybindings configuration"),
|
||||
'definitions': {
|
||||
id: schemaId,
|
||||
type: 'array',
|
||||
title: nls.localize('keybindings.json.title', "Keybindings configuration"),
|
||||
allowsTrailingCommas: true,
|
||||
allowComments: true,
|
||||
definitions: {
|
||||
'editorGroupsSchema': {
|
||||
'type': 'array',
|
||||
'items': {
|
||||
@@ -623,7 +623,7 @@ let schema: IJSONSchema = {
|
||||
}
|
||||
}
|
||||
},
|
||||
'items': {
|
||||
items: {
|
||||
'required': ['key'],
|
||||
'type': 'object',
|
||||
'defaultSnippets': [{ 'body': { 'key': '$1', 'command': '$2', 'when': '$3' } }],
|
||||
|
||||
@@ -495,7 +495,7 @@ class UserKeyboardLayout extends Disposable {
|
||||
}
|
||||
|
||||
class BrowserKeymapService extends Disposable implements IKeymapService {
|
||||
public _serviceBrand: any;
|
||||
public _serviceBrand: undefined;
|
||||
|
||||
private readonly _onDidChangeKeyboardMapper = new Emitter<void>();
|
||||
public readonly onDidChangeKeyboardMapper: Event<void> = this._onDidChangeKeyboardMapper.event;
|
||||
|
||||
@@ -20,7 +20,7 @@ import { IConfigurationService } from 'vs/platform/configuration/common/configur
|
||||
import { ContextKeyExpr } from 'vs/platform/contextkey/common/contextkey';
|
||||
import { IEnvironmentService } from 'vs/platform/environment/common/environment';
|
||||
import { IFileService } from 'vs/platform/files/common/files';
|
||||
import { ServiceIdentifier, createDecorator } from 'vs/platform/instantiation/common/instantiation';
|
||||
import { createDecorator } from 'vs/platform/instantiation/common/instantiation';
|
||||
import { IUserFriendlyKeybinding } from 'vs/platform/keybinding/common/keybinding';
|
||||
import { ResolvedKeybindingItem } from 'vs/platform/keybinding/common/resolvedKeybindingItem';
|
||||
import { ITextFileService } from 'vs/workbench/services/textfile/common/textfiles';
|
||||
@@ -30,7 +30,7 @@ export const IKeybindingEditingService = createDecorator<IKeybindingEditingServi
|
||||
|
||||
export interface IKeybindingEditingService {
|
||||
|
||||
_serviceBrand: ServiceIdentifier<any>;
|
||||
_serviceBrand: undefined;
|
||||
|
||||
editKeybinding(keybindingItem: ResolvedKeybindingItem, key: string, when: string | undefined): Promise<void>;
|
||||
|
||||
@@ -41,7 +41,7 @@ export interface IKeybindingEditingService {
|
||||
|
||||
export class KeybindingsEditingService extends Disposable implements IKeybindingEditingService {
|
||||
|
||||
public _serviceBrand: any;
|
||||
public _serviceBrand: undefined;
|
||||
private queue: Queue<void>;
|
||||
|
||||
private resource: URI = this.environmentService.keybindingsResource;
|
||||
@@ -259,4 +259,4 @@ export class KeybindingsEditingService extends Disposable implements IKeybinding
|
||||
}
|
||||
}
|
||||
|
||||
registerSingleton(IKeybindingEditingService, KeybindingsEditingService, true);
|
||||
registerSingleton(IKeybindingEditingService, KeybindingsEditingService, true);
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
import { Event } from 'vs/base/common/event';
|
||||
import { isWindows, isLinux } from 'vs/base/common/platform';
|
||||
import { createDecorator, ServiceIdentifier } from 'vs/platform/instantiation/common/instantiation';
|
||||
import { createDecorator } from 'vs/platform/instantiation/common/instantiation';
|
||||
import { DispatchConfig } from 'vs/workbench/services/keybinding/common/dispatchConfig';
|
||||
import { IKeyboardMapper } from 'vs/workbench/services/keybinding/common/keyboardMapper';
|
||||
import { IKeyboardEvent } from 'vs/platform/keybinding/common/keybinding';
|
||||
@@ -94,7 +94,7 @@ export type IKeyboardLayoutInfo = (IWindowsKeyboardLayoutInfo | ILinuxKeyboardLa
|
||||
export const IKeymapService = createDecorator<IKeymapService>('keymapService');
|
||||
|
||||
export interface IKeymapService {
|
||||
_serviceBrand: ServiceIdentifier<any>;
|
||||
_serviceBrand: undefined;
|
||||
onDidChangeKeyboardMapper: Event<void>;
|
||||
getKeyboardMapper(dispatchConfig: DispatchConfig): IKeyboardMapper;
|
||||
getCurrentKeyboardLayout(): IKeyboardLayoutInfo | null;
|
||||
|
||||
@@ -239,6 +239,7 @@ export class WindowsKeyboardMapper implements IKeyboardMapper {
|
||||
}
|
||||
|
||||
let producesLetter: boolean[] = [];
|
||||
let producesLetters = false;
|
||||
|
||||
this._codeInfo = [];
|
||||
for (let strCode in rawMappings) {
|
||||
@@ -301,11 +302,13 @@ export class WindowsKeyboardMapper implements IKeyboardMapper {
|
||||
if (charCode >= CharCode.a && charCode <= CharCode.z) {
|
||||
const upperCaseValue = CharCode.A + (charCode - CharCode.a);
|
||||
producesLetter[upperCaseValue] = true;
|
||||
producesLetters = true;
|
||||
this._keyCodeToLabel[keyCode] = String.fromCharCode(CharCode.A + (charCode - CharCode.a));
|
||||
}
|
||||
|
||||
else if (charCode >= CharCode.A && charCode <= CharCode.Z) {
|
||||
producesLetter[charCode] = true;
|
||||
producesLetters = true;
|
||||
this._keyCodeToLabel[keyCode] = value;
|
||||
}
|
||||
|
||||
@@ -348,6 +351,30 @@ export class WindowsKeyboardMapper implements IKeyboardMapper {
|
||||
_registerLetterIfMissing(CharCode.X, KeyCode.KEY_X);
|
||||
_registerLetterIfMissing(CharCode.Y, KeyCode.KEY_Y);
|
||||
_registerLetterIfMissing(CharCode.Z, KeyCode.KEY_Z);
|
||||
|
||||
if (!producesLetters) {
|
||||
// Since this keyboard layout produces no latin letters at all, most of the UI will use the
|
||||
// US kb layout equivalent for UI labels, so also try to render other keys with the US labels
|
||||
// for consistency...
|
||||
const _registerLabel = (keyCode: KeyCode, charCode: CharCode): void => {
|
||||
// const existingLabel = this._keyCodeToLabel[keyCode];
|
||||
// const existingCharCode = (existingLabel ? existingLabel.charCodeAt(0) : CharCode.Null);
|
||||
// if (existingCharCode < 32 || existingCharCode > 126) {
|
||||
this._keyCodeToLabel[keyCode] = String.fromCharCode(charCode);
|
||||
// }
|
||||
};
|
||||
_registerLabel(KeyCode.US_SEMICOLON, CharCode.Semicolon);
|
||||
_registerLabel(KeyCode.US_EQUAL, CharCode.Equals);
|
||||
_registerLabel(KeyCode.US_COMMA, CharCode.Comma);
|
||||
_registerLabel(KeyCode.US_MINUS, CharCode.Dash);
|
||||
_registerLabel(KeyCode.US_DOT, CharCode.Period);
|
||||
_registerLabel(KeyCode.US_SLASH, CharCode.Slash);
|
||||
_registerLabel(KeyCode.US_BACKTICK, CharCode.BackTick);
|
||||
_registerLabel(KeyCode.US_OPEN_SQUARE_BRACKET, CharCode.OpenSquareBracket);
|
||||
_registerLabel(KeyCode.US_BACKSLASH, CharCode.Backslash);
|
||||
_registerLabel(KeyCode.US_CLOSE_SQUARE_BRACKET, CharCode.CloseSquareBracket);
|
||||
_registerLabel(KeyCode.US_QUOTE, CharCode.SingleQuote);
|
||||
}
|
||||
}
|
||||
|
||||
public dumpDebugInfo(): string {
|
||||
|
||||
@@ -132,7 +132,7 @@ export class KeyboardMapperFactory {
|
||||
}
|
||||
|
||||
class NativeKeymapService extends Disposable implements IKeymapService {
|
||||
public _serviceBrand: any;
|
||||
public _serviceBrand: undefined;
|
||||
|
||||
private readonly _onDidChangeKeyboardMapper = new Emitter<void>();
|
||||
public readonly onDidChangeKeyboardMapper: Event<void> = this._onDidChangeKeyboardMapper.event;
|
||||
|
||||
@@ -46,14 +46,14 @@ import { Schemas } from 'vs/base/common/network';
|
||||
import { DiskFileSystemProvider } from 'vs/platform/files/node/diskFileSystemProvider';
|
||||
import { URI } from 'vs/base/common/uri';
|
||||
import { FileUserDataProvider } from 'vs/workbench/services/userData/common/fileUserDataProvider';
|
||||
import { parseArgs } from 'vs/platform/environment/node/argv';
|
||||
import { parseArgs, OPTIONS } from 'vs/platform/environment/node/argv';
|
||||
import { WorkbenchEnvironmentService } from 'vs/workbench/services/environment/node/environmentService';
|
||||
import { IWindowConfiguration } from 'vs/platform/windows/common/windows';
|
||||
|
||||
class TestEnvironmentService extends WorkbenchEnvironmentService {
|
||||
|
||||
constructor(private _appSettingsHome: URI) {
|
||||
super(parseArgs(process.argv) as IWindowConfiguration, process.execPath);
|
||||
super(parseArgs(process.argv, OPTIONS) as IWindowConfiguration, process.execPath);
|
||||
}
|
||||
|
||||
get appSettingsHome() { return this._appSettingsHome; }
|
||||
|
||||
@@ -68,7 +68,7 @@ export function assertMapping(writeFileIfDifferent: boolean, mapper: IKeyboardMa
|
||||
let expected = buff.toString();
|
||||
const actual = mapper.dumpDebugInfo();
|
||||
if (actual !== expected && writeFileIfDifferent) {
|
||||
const destPath = filePath.replace(/vscode\/out\/vs/, 'vscode/src/vs');
|
||||
const destPath = filePath.replace(/vscode[\/\\]out[\/\\]vs/, 'vscode/src/vs');
|
||||
writeFile(destPath, actual);
|
||||
}
|
||||
|
||||
|
||||
@@ -78,9 +78,9 @@ suite('keyboardMapper - MAC fallback', () => {
|
||||
test('resolveUserBinding Cmd+[Comma] Cmd+/', () => {
|
||||
assertResolveUserBinding(
|
||||
mapper, [
|
||||
new ScanCodeBinding(false, false, false, true, ScanCode.Comma),
|
||||
new SimpleKeybinding(false, false, false, true, KeyCode.US_SLASH),
|
||||
],
|
||||
new ScanCodeBinding(false, false, false, true, ScanCode.Comma),
|
||||
new SimpleKeybinding(false, false, false, true, KeyCode.US_SLASH),
|
||||
],
|
||||
[{
|
||||
label: '⌘, ⌘/',
|
||||
ariaLabel: 'Command+, Command+/',
|
||||
@@ -183,9 +183,9 @@ suite('keyboardMapper - LINUX fallback', () => {
|
||||
test('resolveUserBinding Ctrl+[Comma] Ctrl+/', () => {
|
||||
assertResolveUserBinding(
|
||||
mapper, [
|
||||
new ScanCodeBinding(true, false, false, false, ScanCode.Comma),
|
||||
new SimpleKeybinding(true, false, false, false, KeyCode.US_SLASH),
|
||||
],
|
||||
new ScanCodeBinding(true, false, false, false, ScanCode.Comma),
|
||||
new SimpleKeybinding(true, false, false, false, KeyCode.US_SLASH),
|
||||
],
|
||||
[{
|
||||
label: 'Ctrl+, Ctrl+/',
|
||||
ariaLabel: 'Control+, Control+/',
|
||||
@@ -201,8 +201,8 @@ suite('keyboardMapper - LINUX fallback', () => {
|
||||
test('resolveUserBinding Ctrl+[Comma]', () => {
|
||||
assertResolveUserBinding(
|
||||
mapper, [
|
||||
new ScanCodeBinding(true, false, false, false, ScanCode.Comma),
|
||||
],
|
||||
new ScanCodeBinding(true, false, false, false, ScanCode.Comma),
|
||||
],
|
||||
[{
|
||||
label: 'Ctrl+,',
|
||||
ariaLabel: 'Control+,',
|
||||
|
||||
@@ -752,9 +752,9 @@ suite('keyboardMapper - LINUX de_ch', () => {
|
||||
test('resolveUserBinding Ctrl+[Comma] Ctrl+/', () => {
|
||||
assertResolveUserBinding(
|
||||
mapper, [
|
||||
new ScanCodeBinding(true, false, false, false, ScanCode.Comma),
|
||||
new SimpleKeybinding(true, false, false, false, KeyCode.US_SLASH),
|
||||
],
|
||||
new ScanCodeBinding(true, false, false, false, ScanCode.Comma),
|
||||
new SimpleKeybinding(true, false, false, false, KeyCode.US_SLASH),
|
||||
],
|
||||
[{
|
||||
label: 'Ctrl+, Ctrl+Shift+7',
|
||||
ariaLabel: 'Control+, Control+Shift+7',
|
||||
@@ -1135,9 +1135,9 @@ suite('keyboardMapper - LINUX en_us', () => {
|
||||
test('resolveUserBinding Ctrl+[Comma] Ctrl+/', () => {
|
||||
assertResolveUserBinding(
|
||||
mapper, [
|
||||
new ScanCodeBinding(true, false, false, false, ScanCode.Comma),
|
||||
new SimpleKeybinding(true, false, false, false, KeyCode.US_SLASH),
|
||||
],
|
||||
new ScanCodeBinding(true, false, false, false, ScanCode.Comma),
|
||||
new SimpleKeybinding(true, false, false, false, KeyCode.US_SLASH),
|
||||
],
|
||||
[{
|
||||
label: 'Ctrl+, Ctrl+/',
|
||||
ariaLabel: 'Control+, Control+/',
|
||||
@@ -1153,8 +1153,8 @@ suite('keyboardMapper - LINUX en_us', () => {
|
||||
test('resolveUserBinding Ctrl+[Comma]', () => {
|
||||
assertResolveUserBinding(
|
||||
mapper, [
|
||||
new ScanCodeBinding(true, false, false, false, ScanCode.Comma)
|
||||
],
|
||||
new ScanCodeBinding(true, false, false, false, ScanCode.Comma)
|
||||
],
|
||||
[{
|
||||
label: 'Ctrl+,',
|
||||
ariaLabel: 'Control+,',
|
||||
|
||||
@@ -203,15 +203,15 @@
|
||||
| Ctrl+Alt+Equal | --- | Ctrl+Alt+= | Ctrl+Alt+= | ctrl+alt+oem_plus | NO |
|
||||
| Ctrl+Shift+Alt+Equal | --- | Ctrl+Shift+Alt+= | Ctrl+Shift+Alt+= | ctrl+shift+alt+oem_plus | NO |
|
||||
-----------------------------------------------------------------------------------------------------------------------------------------
|
||||
| BracketLeft | х | [ | х | oem_4 | NO |
|
||||
| Shift+BracketLeft | Х | Shift+[ | Shift+х | shift+oem_4 | NO |
|
||||
| Ctrl+Alt+BracketLeft | --- | Ctrl+Alt+[ | Ctrl+Alt+х | ctrl+alt+oem_4 | NO |
|
||||
| Ctrl+Shift+Alt+BracketLeft | --- | Ctrl+Shift+Alt+[ | Ctrl+Shift+Alt+х | ctrl+shift+alt+oem_4 | NO |
|
||||
| BracketLeft | х | [ | [ | oem_4 | NO |
|
||||
| Shift+BracketLeft | Х | Shift+[ | Shift+[ | shift+oem_4 | NO |
|
||||
| Ctrl+Alt+BracketLeft | --- | Ctrl+Alt+[ | Ctrl+Alt+[ | ctrl+alt+oem_4 | NO |
|
||||
| Ctrl+Shift+Alt+BracketLeft | --- | Ctrl+Shift+Alt+[ | Ctrl+Shift+Alt+[ | ctrl+shift+alt+oem_4 | NO |
|
||||
-----------------------------------------------------------------------------------------------------------------------------------------
|
||||
| BracketRight | ъ | ] | ъ | oem_6 | NO |
|
||||
| Shift+BracketRight | Ъ | Shift+] | Shift+ъ | shift+oem_6 | NO |
|
||||
| Ctrl+Alt+BracketRight | --- | Ctrl+Alt+] | Ctrl+Alt+ъ | ctrl+alt+oem_6 | NO |
|
||||
| Ctrl+Shift+Alt+BracketRight | --- | Ctrl+Shift+Alt+] | Ctrl+Shift+Alt+ъ | ctrl+shift+alt+oem_6 | NO |
|
||||
| BracketRight | ъ | ] | ] | oem_6 | NO |
|
||||
| Shift+BracketRight | Ъ | Shift+] | Shift+] | shift+oem_6 | NO |
|
||||
| Ctrl+Alt+BracketRight | --- | Ctrl+Alt+] | Ctrl+Alt+] | ctrl+alt+oem_6 | NO |
|
||||
| Ctrl+Shift+Alt+BracketRight | --- | Ctrl+Shift+Alt+] | Ctrl+Shift+Alt+] | ctrl+shift+alt+oem_6 | NO |
|
||||
-----------------------------------------------------------------------------------------------------------------------------------------
|
||||
| Backslash | \ | \ | \ | oem_5 | NO |
|
||||
| Shift+Backslash | / | Shift+\ | Shift+\ | shift+oem_5 | NO |
|
||||
@@ -225,35 +225,35 @@
|
||||
-----------------------------------------------------------------------------------------------------------------------------------------
|
||||
| HW Code combination | Key | KeyCode combination | UI label | User settings | WYSIWYG |
|
||||
-----------------------------------------------------------------------------------------------------------------------------------------
|
||||
| Semicolon | ж | ; | ж | oem_1 | NO |
|
||||
| Shift+Semicolon | Ж | Shift+; | Shift+ж | shift+oem_1 | NO |
|
||||
| Ctrl+Alt+Semicolon | --- | Ctrl+Alt+; | Ctrl+Alt+ж | ctrl+alt+oem_1 | NO |
|
||||
| Ctrl+Shift+Alt+Semicolon | --- | Ctrl+Shift+Alt+; | Ctrl+Shift+Alt+ж | ctrl+shift+alt+oem_1 | NO |
|
||||
| Semicolon | ж | ; | ; | oem_1 | NO |
|
||||
| Shift+Semicolon | Ж | Shift+; | Shift+; | shift+oem_1 | NO |
|
||||
| Ctrl+Alt+Semicolon | --- | Ctrl+Alt+; | Ctrl+Alt+; | ctrl+alt+oem_1 | NO |
|
||||
| Ctrl+Shift+Alt+Semicolon | --- | Ctrl+Shift+Alt+; | Ctrl+Shift+Alt+; | ctrl+shift+alt+oem_1 | NO |
|
||||
-----------------------------------------------------------------------------------------------------------------------------------------
|
||||
| Quote | э | ' | э | oem_7 | NO |
|
||||
| Shift+Quote | Э | Shift+' | Shift+э | shift+oem_7 | NO |
|
||||
| Ctrl+Alt+Quote | --- | Ctrl+Alt+' | Ctrl+Alt+э | ctrl+alt+oem_7 | NO |
|
||||
| Ctrl+Shift+Alt+Quote | --- | Ctrl+Shift+Alt+' | Ctrl+Shift+Alt+э | ctrl+shift+alt+oem_7 | NO |
|
||||
| Quote | э | ' | ' | oem_7 | NO |
|
||||
| Shift+Quote | Э | Shift+' | Shift+' | shift+oem_7 | NO |
|
||||
| Ctrl+Alt+Quote | --- | Ctrl+Alt+' | Ctrl+Alt+' | ctrl+alt+oem_7 | NO |
|
||||
| Ctrl+Shift+Alt+Quote | --- | Ctrl+Shift+Alt+' | Ctrl+Shift+Alt+' | ctrl+shift+alt+oem_7 | NO |
|
||||
-----------------------------------------------------------------------------------------------------------------------------------------
|
||||
| Backquote | ё | ` | ё | oem_3 | NO |
|
||||
| Shift+Backquote | Ё | Shift+` | Shift+ё | shift+oem_3 | NO |
|
||||
| Ctrl+Alt+Backquote | --- | Ctrl+Alt+` | Ctrl+Alt+ё | ctrl+alt+oem_3 | NO |
|
||||
| Ctrl+Shift+Alt+Backquote | --- | Ctrl+Shift+Alt+` | Ctrl+Shift+Alt+ё | ctrl+shift+alt+oem_3 | NO |
|
||||
| Backquote | ё | ` | ` | oem_3 | NO |
|
||||
| Shift+Backquote | Ё | Shift+` | Shift+` | shift+oem_3 | NO |
|
||||
| Ctrl+Alt+Backquote | --- | Ctrl+Alt+` | Ctrl+Alt+` | ctrl+alt+oem_3 | NO |
|
||||
| Ctrl+Shift+Alt+Backquote | --- | Ctrl+Shift+Alt+` | Ctrl+Shift+Alt+` | ctrl+shift+alt+oem_3 | NO |
|
||||
-----------------------------------------------------------------------------------------------------------------------------------------
|
||||
| Comma | б | , | б | oem_comma | NO |
|
||||
| Shift+Comma | Б | Shift+, | Shift+б | shift+oem_comma | NO |
|
||||
| Ctrl+Alt+Comma | --- | Ctrl+Alt+, | Ctrl+Alt+б | ctrl+alt+oem_comma | NO |
|
||||
| Ctrl+Shift+Alt+Comma | --- | Ctrl+Shift+Alt+, | Ctrl+Shift+Alt+б | ctrl+shift+alt+oem_comma | NO |
|
||||
| Comma | б | , | , | oem_comma | NO |
|
||||
| Shift+Comma | Б | Shift+, | Shift+, | shift+oem_comma | NO |
|
||||
| Ctrl+Alt+Comma | --- | Ctrl+Alt+, | Ctrl+Alt+, | ctrl+alt+oem_comma | NO |
|
||||
| Ctrl+Shift+Alt+Comma | --- | Ctrl+Shift+Alt+, | Ctrl+Shift+Alt+, | ctrl+shift+alt+oem_comma | NO |
|
||||
-----------------------------------------------------------------------------------------------------------------------------------------
|
||||
| Period | ю | . | ю | oem_period | NO |
|
||||
| Shift+Period | Ю | Shift+. | Shift+ю | shift+oem_period | NO |
|
||||
| Ctrl+Alt+Period | --- | Ctrl+Alt+. | Ctrl+Alt+ю | ctrl+alt+oem_period | NO |
|
||||
| Ctrl+Shift+Alt+Period | --- | Ctrl+Shift+Alt+. | Ctrl+Shift+Alt+ю | ctrl+shift+alt+oem_period | NO |
|
||||
| Period | ю | . | . | oem_period | NO |
|
||||
| Shift+Period | Ю | Shift+. | Shift+. | shift+oem_period | NO |
|
||||
| Ctrl+Alt+Period | --- | Ctrl+Alt+. | Ctrl+Alt+. | ctrl+alt+oem_period | NO |
|
||||
| Ctrl+Shift+Alt+Period | --- | Ctrl+Shift+Alt+. | Ctrl+Shift+Alt+. | ctrl+shift+alt+oem_period | NO |
|
||||
-----------------------------------------------------------------------------------------------------------------------------------------
|
||||
| Slash | . | / | . | oem_2 | NO |
|
||||
| Shift+Slash | , | Shift+/ | Shift+. | shift+oem_2 | NO |
|
||||
| Ctrl+Alt+Slash | --- | Ctrl+Alt+/ | Ctrl+Alt+. | ctrl+alt+oem_2 | NO |
|
||||
| Ctrl+Shift+Alt+Slash | --- | Ctrl+Shift+Alt+/ | Ctrl+Shift+Alt+. | ctrl+shift+alt+oem_2 | NO |
|
||||
| Slash | . | / | / | oem_2 | NO |
|
||||
| Shift+Slash | , | Shift+/ | Shift+/ | shift+oem_2 | NO |
|
||||
| Ctrl+Alt+Slash | --- | Ctrl+Alt+/ | Ctrl+Alt+/ | ctrl+alt+oem_2 | NO |
|
||||
| Ctrl+Shift+Alt+Slash | --- | Ctrl+Shift+Alt+/ | Ctrl+Shift+Alt+/ | ctrl+shift+alt+oem_2 | NO |
|
||||
-----------------------------------------------------------------------------------------------------------------------------------------
|
||||
| HW Code combination | Key | KeyCode combination | UI label | User settings | WYSIWYG |
|
||||
-----------------------------------------------------------------------------------------------------------------------------------------
|
||||
|
||||
@@ -280,9 +280,9 @@ suite('keyboardMapper - WINDOWS de_ch', () => {
|
||||
test('resolveUserBinding Ctrl+[Comma] Ctrl+/', () => {
|
||||
assertResolveUserBinding(
|
||||
mapper, [
|
||||
new ScanCodeBinding(true, false, false, false, ScanCode.Comma),
|
||||
new SimpleKeybinding(true, false, false, false, KeyCode.US_SLASH),
|
||||
],
|
||||
new ScanCodeBinding(true, false, false, false, ScanCode.Comma),
|
||||
new SimpleKeybinding(true, false, false, false, KeyCode.US_SLASH),
|
||||
],
|
||||
[{
|
||||
label: 'Ctrl+, Ctrl+§',
|
||||
ariaLabel: 'Control+, Control+§',
|
||||
@@ -351,9 +351,9 @@ suite('keyboardMapper - WINDOWS en_us', () => {
|
||||
test('resolveUserBinding Ctrl+[Comma] Ctrl+/', () => {
|
||||
assertResolveUserBinding(
|
||||
mapper, [
|
||||
new ScanCodeBinding(true, false, false, false, ScanCode.Comma),
|
||||
new SimpleKeybinding(true, false, false, false, KeyCode.US_SLASH),
|
||||
],
|
||||
new ScanCodeBinding(true, false, false, false, ScanCode.Comma),
|
||||
new SimpleKeybinding(true, false, false, false, KeyCode.US_SLASH),
|
||||
],
|
||||
[{
|
||||
label: 'Ctrl+, Ctrl+/',
|
||||
ariaLabel: 'Control+, Control+/',
|
||||
@@ -369,8 +369,8 @@ suite('keyboardMapper - WINDOWS en_us', () => {
|
||||
test('resolveUserBinding Ctrl+[Comma]', () => {
|
||||
assertResolveUserBinding(
|
||||
mapper, [
|
||||
new ScanCodeBinding(true, false, false, false, ScanCode.Comma),
|
||||
],
|
||||
new ScanCodeBinding(true, false, false, false, ScanCode.Comma),
|
||||
],
|
||||
[{
|
||||
label: 'Ctrl+,',
|
||||
ariaLabel: 'Control+,',
|
||||
|
||||
Reference in New Issue
Block a user