@codingame/monaco-vscode-keybindings-service-override 3.2.3 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/keybindings.js +6 -6
  2. package/package.json +9 -9
  3. package/vscode/src/vs/workbench/browser/contextkeys.js +6 -4
  4. package/vscode/src/vs/platform/keyboardLayout/common/keyboardConfig.js +0 -50
  5. package/vscode/src/vs/platform/keyboardLayout/common/keyboardMapper.js +0 -24
  6. package/vscode/src/vs/workbench/contrib/commands/common/commands.contribution.js +0 -146
  7. package/vscode/src/vs/workbench/contrib/keybindings/browser/keybindings.contribution.js +0 -29
  8. package/vscode/src/vs/workbench/contrib/preferences/browser/keybindingsEditorContribution.js +0 -250
  9. package/vscode/src/vs/workbench/contrib/preferences/common/smartSnippetInserter.js +0 -126
  10. package/vscode/src/vs/workbench/services/actions/common/menusExtensionPoint.js +0 -1558
  11. package/vscode/src/vs/workbench/services/commands/common/commandService.js +0 -79
  12. package/vscode/src/vs/workbench/services/keybinding/browser/keybindingService.js +0 -946
  13. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayoutService.js +0 -502
  14. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/_.contribution.js +0 -14
  15. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/cz.win.js +0 -163
  16. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/de-swiss.win.js +0 -163
  17. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/de.darwin.js +0 -126
  18. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/de.linux.js +0 -181
  19. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/de.win.js +0 -163
  20. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/dk.win.js +0 -163
  21. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/dvorak.darwin.js +0 -126
  22. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en-belgian.win.js +0 -163
  23. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en-ext.darwin.js +0 -126
  24. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en-in.win.js +0 -163
  25. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en-intl.darwin.js +0 -126
  26. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en-intl.win.js +0 -163
  27. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en-uk.darwin.js +0 -126
  28. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en-uk.win.js +0 -163
  29. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en.darwin.js +0 -134
  30. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en.linux.js +0 -183
  31. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en.win.js +0 -168
  32. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/es-latin.win.js +0 -163
  33. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/es.darwin.js +0 -126
  34. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/es.linux.js +0 -181
  35. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/es.win.js +0 -163
  36. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/fr.darwin.js +0 -126
  37. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/fr.linux.js +0 -181
  38. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/fr.win.js +0 -163
  39. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/hu.win.js +0 -163
  40. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/it.darwin.js +0 -126
  41. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/it.win.js +0 -163
  42. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/jp-roman.darwin.js +0 -126
  43. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/jp.darwin.js +0 -126
  44. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/ko.darwin.js +0 -126
  45. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/layout.contribution.darwin.js +0 -17
  46. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/layout.contribution.linux.js +0 -6
  47. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/layout.contribution.win.js +0 -23
  48. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/no.win.js +0 -163
  49. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/pl.darwin.js +0 -126
  50. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/pl.win.js +0 -163
  51. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/pt-br.win.js +0 -163
  52. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/pt.darwin.js +0 -126
  53. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/pt.win.js +0 -163
  54. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/ru.darwin.js +0 -126
  55. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/ru.linux.js +0 -181
  56. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/ru.win.js +0 -163
  57. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/sv.win.js +0 -165
  58. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/thai.win.js +0 -163
  59. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/tr.win.js +0 -163
  60. package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/zh-hans.darwin.js +0 -126
  61. package/vscode/src/vs/workbench/services/keybinding/common/keybindingIO.js +0 -74
  62. package/vscode/src/vs/workbench/services/keybinding/common/keymapInfo.js +0 -110
  63. package/vscode/src/vs/workbench/services/keybinding/common/macLinuxKeyboardMapper.js +0 -888
  64. package/vscode/src/vs/workbench/services/keybinding/common/windowsKeyboardMapper.js +0 -352
@@ -1,352 +0,0 @@
1
- import { KeyCodeUtils, IMMUTABLE_CODE_TO_KEY_CODE, ScanCodeUtils, NATIVE_WINDOWS_KEY_CODE_TO_KEY_CODE } from 'vscode/vscode/vs/base/common/keyCodes';
2
- import { ScanCodeChord, KeyCodeChord } from 'vscode/vscode/vs/base/common/keybindings';
3
- import { UILabelProvider } from 'vscode/vscode/vs/base/common/keybindingLabels';
4
- import { BaseResolvedKeybinding } from 'vscode/vscode/vs/platform/keybinding/common/baseResolvedKeybinding';
5
- import { toEmptyArrayIfContainsNull } from 'vscode/vscode/vs/platform/keybinding/common/resolvedKeybindingItem';
6
-
7
- class WindowsNativeResolvedKeybinding extends BaseResolvedKeybinding {
8
- constructor(mapper, chords) {
9
- super(1 , chords);
10
- this._mapper = mapper;
11
- }
12
- _getLabel(chord) {
13
- if (chord.isDuplicateModifierCase()) {
14
- return '';
15
- }
16
- return this._mapper.getUILabelForKeyCode(chord.keyCode);
17
- }
18
- _getUSLabelForKeybinding(chord) {
19
- if (chord.isDuplicateModifierCase()) {
20
- return '';
21
- }
22
- return ( KeyCodeUtils.toString(chord.keyCode));
23
- }
24
- getUSLabel() {
25
- return UILabelProvider.toLabel(this._os, this._chords, (keybinding) => this._getUSLabelForKeybinding(keybinding));
26
- }
27
- _getAriaLabel(chord) {
28
- if (chord.isDuplicateModifierCase()) {
29
- return '';
30
- }
31
- return this._mapper.getAriaLabelForKeyCode(chord.keyCode);
32
- }
33
- _getElectronAccelerator(chord) {
34
- return this._mapper.getElectronAcceleratorForKeyBinding(chord);
35
- }
36
- _getUserSettingsLabel(chord) {
37
- if (chord.isDuplicateModifierCase()) {
38
- return '';
39
- }
40
- const result = this._mapper.getUserSettingsLabelForKeyCode(chord.keyCode);
41
- return (result ? result.toLowerCase() : result);
42
- }
43
- _isWYSIWYG(chord) {
44
- return this.__isWYSIWYG(chord.keyCode);
45
- }
46
- __isWYSIWYG(keyCode) {
47
- if (keyCode === 15
48
- || keyCode === 16
49
- || keyCode === 17
50
- || keyCode === 18 ) {
51
- return true;
52
- }
53
- const ariaLabel = this._mapper.getAriaLabelForKeyCode(keyCode);
54
- const userSettingsLabel = this._mapper.getUserSettingsLabelForKeyCode(keyCode);
55
- return (ariaLabel === userSettingsLabel);
56
- }
57
- _getChordDispatch(chord) {
58
- if (chord.isModifierKey()) {
59
- return null;
60
- }
61
- let result = '';
62
- if (chord.ctrlKey) {
63
- result += 'ctrl+';
64
- }
65
- if (chord.shiftKey) {
66
- result += 'shift+';
67
- }
68
- if (chord.altKey) {
69
- result += 'alt+';
70
- }
71
- if (chord.metaKey) {
72
- result += 'meta+';
73
- }
74
- result += ( KeyCodeUtils.toString(chord.keyCode));
75
- return result;
76
- }
77
- _getSingleModifierChordDispatch(chord) {
78
- if (chord.keyCode === 5 && !chord.shiftKey && !chord.altKey && !chord.metaKey) {
79
- return 'ctrl';
80
- }
81
- if (chord.keyCode === 4 && !chord.ctrlKey && !chord.altKey && !chord.metaKey) {
82
- return 'shift';
83
- }
84
- if (chord.keyCode === 6 && !chord.ctrlKey && !chord.shiftKey && !chord.metaKey) {
85
- return 'alt';
86
- }
87
- if (chord.keyCode === 57 && !chord.ctrlKey && !chord.shiftKey && !chord.altKey) {
88
- return 'meta';
89
- }
90
- return null;
91
- }
92
- static getProducedCharCode(chord, mapping) {
93
- if (!mapping) {
94
- return null;
95
- }
96
- if (chord.ctrlKey && chord.shiftKey && chord.altKey) {
97
- return mapping.withShiftAltGr;
98
- }
99
- if (chord.ctrlKey && chord.altKey) {
100
- return mapping.withAltGr;
101
- }
102
- if (chord.shiftKey) {
103
- return mapping.withShift;
104
- }
105
- return mapping.value;
106
- }
107
- static getProducedChar(chord, mapping) {
108
- const char = this.getProducedCharCode(chord, mapping);
109
- if (char === null || char.length === 0) {
110
- return ' --- ';
111
- }
112
- return ' ' + char + ' ';
113
- }
114
- }
115
- class WindowsKeyboardMapper {
116
- constructor(_isUSStandard, rawMappings, _mapAltGrToCtrlAlt) {
117
- this._isUSStandard = _isUSStandard;
118
- this._mapAltGrToCtrlAlt = _mapAltGrToCtrlAlt;
119
- this._keyCodeToLabel = [];
120
- this._scanCodeToKeyCode = [];
121
- this._keyCodeToLabel = [];
122
- this._keyCodeExists = [];
123
- this._keyCodeToLabel[0 ] = ( KeyCodeUtils.toString(0 ));
124
- for (let scanCode = 0 ; scanCode < 193 ; scanCode++) {
125
- const immutableKeyCode = IMMUTABLE_CODE_TO_KEY_CODE[scanCode];
126
- if (immutableKeyCode !== -1 ) {
127
- this._scanCodeToKeyCode[scanCode] = immutableKeyCode;
128
- this._keyCodeToLabel[immutableKeyCode] = ( KeyCodeUtils.toString(immutableKeyCode));
129
- this._keyCodeExists[immutableKeyCode] = true;
130
- }
131
- }
132
- const producesLetter = [];
133
- let producesLetters = false;
134
- this._codeInfo = [];
135
- for (const strCode in rawMappings) {
136
- if (rawMappings.hasOwnProperty(strCode)) {
137
- const scanCode = ScanCodeUtils.toEnum(strCode);
138
- if (scanCode === 0 ) {
139
- continue;
140
- }
141
- const rawMapping = rawMappings[strCode];
142
- const immutableKeyCode = IMMUTABLE_CODE_TO_KEY_CODE[scanCode];
143
- if (immutableKeyCode !== -1 ) {
144
- const keyCode = NATIVE_WINDOWS_KEY_CODE_TO_KEY_CODE[rawMapping.vkey] || 0 ;
145
- if (keyCode === 0 || immutableKeyCode === keyCode) {
146
- continue;
147
- }
148
- if (scanCode !== 134 ) {
149
- continue;
150
- }
151
- }
152
- const value = rawMapping.value;
153
- const withShift = rawMapping.withShift;
154
- const withAltGr = rawMapping.withAltGr;
155
- const withShiftAltGr = rawMapping.withShiftAltGr;
156
- const keyCode = NATIVE_WINDOWS_KEY_CODE_TO_KEY_CODE[rawMapping.vkey] || 0 ;
157
- const mapping = {
158
- scanCode: scanCode,
159
- keyCode: keyCode,
160
- value: value,
161
- withShift: withShift,
162
- withAltGr: withAltGr,
163
- withShiftAltGr: withShiftAltGr,
164
- };
165
- this._codeInfo[scanCode] = mapping;
166
- this._scanCodeToKeyCode[scanCode] = keyCode;
167
- if (keyCode === 0 ) {
168
- continue;
169
- }
170
- this._keyCodeExists[keyCode] = true;
171
- if (value.length === 0) {
172
- this._keyCodeToLabel[keyCode] = null;
173
- }
174
- else if (value.length > 1) {
175
- this._keyCodeToLabel[keyCode] = value;
176
- }
177
- else {
178
- const charCode = value.charCodeAt(0);
179
- if (charCode >= 97 && charCode <= 122 ) {
180
- const upperCaseValue = 65 + ((charCode - 97) );
181
- producesLetter[upperCaseValue] = true;
182
- producesLetters = true;
183
- this._keyCodeToLabel[keyCode] = String.fromCharCode(65 + ((charCode - 97) ));
184
- }
185
- else if (charCode >= 65 && charCode <= 90 ) {
186
- producesLetter[charCode] = true;
187
- producesLetters = true;
188
- this._keyCodeToLabel[keyCode] = value;
189
- }
190
- else {
191
- this._keyCodeToLabel[keyCode] = value;
192
- }
193
- }
194
- }
195
- }
196
- const _registerLetterIfMissing = (charCode, keyCode) => {
197
- if (!producesLetter[charCode]) {
198
- this._keyCodeToLabel[keyCode] = String.fromCharCode(charCode);
199
- }
200
- };
201
- _registerLetterIfMissing(65 , 31 );
202
- _registerLetterIfMissing(66 , 32 );
203
- _registerLetterIfMissing(67 , 33 );
204
- _registerLetterIfMissing(68 , 34 );
205
- _registerLetterIfMissing(69 , 35 );
206
- _registerLetterIfMissing(70 , 36 );
207
- _registerLetterIfMissing(71 , 37 );
208
- _registerLetterIfMissing(72 , 38 );
209
- _registerLetterIfMissing(73 , 39 );
210
- _registerLetterIfMissing(74 , 40 );
211
- _registerLetterIfMissing(75 , 41 );
212
- _registerLetterIfMissing(76 , 42 );
213
- _registerLetterIfMissing(77 , 43 );
214
- _registerLetterIfMissing(78 , 44 );
215
- _registerLetterIfMissing(79 , 45 );
216
- _registerLetterIfMissing(80 , 46 );
217
- _registerLetterIfMissing(81 , 47 );
218
- _registerLetterIfMissing(82 , 48 );
219
- _registerLetterIfMissing(83 , 49 );
220
- _registerLetterIfMissing(84 , 50 );
221
- _registerLetterIfMissing(85 , 51 );
222
- _registerLetterIfMissing(86 , 52 );
223
- _registerLetterIfMissing(87 , 53 );
224
- _registerLetterIfMissing(88 , 54 );
225
- _registerLetterIfMissing(89 , 55 );
226
- _registerLetterIfMissing(90 , 56 );
227
- if (!producesLetters) {
228
- const _registerLabel = (keyCode, charCode) => {
229
- this._keyCodeToLabel[keyCode] = String.fromCharCode(charCode);
230
- };
231
- _registerLabel(85 , 59 );
232
- _registerLabel(86 , 61 );
233
- _registerLabel(87 , 44 );
234
- _registerLabel(88 , 45 );
235
- _registerLabel(89 , 46 );
236
- _registerLabel(90 , 47 );
237
- _registerLabel(91 , 96 );
238
- _registerLabel(92 , 91 );
239
- _registerLabel(93 , 92 );
240
- _registerLabel(94 , 93 );
241
- _registerLabel(95 , 39 );
242
- }
243
- }
244
- dumpDebugInfo() {
245
- const result = [];
246
- const immutableSamples = [
247
- 88 ,
248
- 104
249
- ];
250
- let cnt = 0;
251
- result.push(`-----------------------------------------------------------------------------------------------------------------------------------------`);
252
- for (let scanCode = 0 ; scanCode < 193 ; scanCode++) {
253
- if (IMMUTABLE_CODE_TO_KEY_CODE[scanCode] !== -1 ) {
254
- if (immutableSamples.indexOf(scanCode) === -1) {
255
- continue;
256
- }
257
- }
258
- if (cnt % 6 === 0) {
259
- result.push(`| HW Code combination | Key | KeyCode combination | UI label | User settings | WYSIWYG |`);
260
- result.push(`-----------------------------------------------------------------------------------------------------------------------------------------`);
261
- }
262
- cnt++;
263
- const mapping = this._codeInfo[scanCode];
264
- const strCode = ( ScanCodeUtils.toString(scanCode));
265
- const mods = [0b000, 0b010, 0b101, 0b111];
266
- for (const mod of mods) {
267
- const ctrlKey = (mod & 0b001) ? true : false;
268
- const shiftKey = (mod & 0b010) ? true : false;
269
- const altKey = (mod & 0b100) ? true : false;
270
- const scanCodeChord = ( new ScanCodeChord(ctrlKey, shiftKey, altKey, false, scanCode));
271
- const keyCodeChord = this._resolveChord(scanCodeChord);
272
- const strKeyCode = (keyCodeChord ? ( KeyCodeUtils.toString(keyCodeChord.keyCode)) : null);
273
- const resolvedKb = (keyCodeChord ? ( new WindowsNativeResolvedKeybinding(this, [keyCodeChord])) : null);
274
- const outScanCode = `${ctrlKey ? 'Ctrl+' : ''}${shiftKey ? 'Shift+' : ''}${altKey ? 'Alt+' : ''}${strCode}`;
275
- const ariaLabel = (resolvedKb ? resolvedKb.getAriaLabel() : null);
276
- const outUILabel = (ariaLabel ? ariaLabel.replace(/Control\+/, 'Ctrl+') : null);
277
- const outUserSettings = (resolvedKb ? resolvedKb.getUserSettingsLabel() : null);
278
- const outKey = WindowsNativeResolvedKeybinding.getProducedChar(scanCodeChord, mapping);
279
- const outKb = (strKeyCode ? `${ctrlKey ? 'Ctrl+' : ''}${shiftKey ? 'Shift+' : ''}${altKey ? 'Alt+' : ''}${strKeyCode}` : null);
280
- const isWYSIWYG = (resolvedKb ? resolvedKb.isWYSIWYG() : false);
281
- const outWYSIWYG = (isWYSIWYG ? ' ' : ' NO ');
282
- result.push(`| ${this._leftPad(outScanCode, 30)} | ${outKey} | ${this._leftPad(outKb, 25)} | ${this._leftPad(outUILabel, 25)} | ${this._leftPad(outUserSettings, 25)} | ${outWYSIWYG} |`);
283
- }
284
- result.push(`-----------------------------------------------------------------------------------------------------------------------------------------`);
285
- }
286
- return result.join('\n');
287
- }
288
- _leftPad(str, cnt) {
289
- if (str === null) {
290
- str = 'null';
291
- }
292
- while (str.length < cnt) {
293
- str = ' ' + str;
294
- }
295
- return str;
296
- }
297
- getUILabelForKeyCode(keyCode) {
298
- return this._getLabelForKeyCode(keyCode);
299
- }
300
- getAriaLabelForKeyCode(keyCode) {
301
- return this._getLabelForKeyCode(keyCode);
302
- }
303
- getUserSettingsLabelForKeyCode(keyCode) {
304
- if (this._isUSStandard) {
305
- return KeyCodeUtils.toUserSettingsUS(keyCode);
306
- }
307
- return KeyCodeUtils.toUserSettingsGeneral(keyCode);
308
- }
309
- getElectronAcceleratorForKeyBinding(chord) {
310
- return KeyCodeUtils.toElectronAccelerator(chord.keyCode);
311
- }
312
- _getLabelForKeyCode(keyCode) {
313
- return this._keyCodeToLabel[keyCode] || ( KeyCodeUtils.toString(0 ));
314
- }
315
- resolveKeyboardEvent(keyboardEvent) {
316
- const ctrlKey = keyboardEvent.ctrlKey || (this._mapAltGrToCtrlAlt && keyboardEvent.altGraphKey);
317
- const altKey = keyboardEvent.altKey || (this._mapAltGrToCtrlAlt && keyboardEvent.altGraphKey);
318
- const chord = ( new KeyCodeChord(
319
- ctrlKey,
320
- keyboardEvent.shiftKey,
321
- altKey,
322
- keyboardEvent.metaKey,
323
- keyboardEvent.keyCode
324
- ));
325
- return ( new WindowsNativeResolvedKeybinding(this, [chord]));
326
- }
327
- _resolveChord(chord) {
328
- if (!chord) {
329
- return null;
330
- }
331
- if (chord instanceof KeyCodeChord) {
332
- if (!this._keyCodeExists[chord.keyCode]) {
333
- return null;
334
- }
335
- return chord;
336
- }
337
- const keyCode = this._scanCodeToKeyCode[chord.scanCode] || 0 ;
338
- if (keyCode === 0 || !this._keyCodeExists[keyCode]) {
339
- return null;
340
- }
341
- return ( new KeyCodeChord(chord.ctrlKey, chord.shiftKey, chord.altKey, chord.metaKey, keyCode));
342
- }
343
- resolveKeybinding(keybinding) {
344
- const chords = toEmptyArrayIfContainsNull(( keybinding.chords.map(chord => this._resolveChord(chord))));
345
- if (chords.length > 0) {
346
- return [( new WindowsNativeResolvedKeybinding(this, chords))];
347
- }
348
- return [];
349
- }
350
- }
351
-
352
- export { WindowsKeyboardMapper, WindowsNativeResolvedKeybinding };