keymap-inspector 0.1.0 → 0.1.1

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 (2) hide show
  1. package/README.md +415 -0
  2. package/package.json +1 -1
package/README.md ADDED
@@ -0,0 +1,415 @@
1
+ # 🔍 Keymap Inspector
2
+
3
+ [![npm version](https://badge.fury.io/js/keymap-inspector.svg)](https://badge.fury.io/js/keymap-inspector)
4
+ [![npm downloads](https://img.shields.io/npm/dm/keymap-inspector.svg)](https://www.npmjs.com/package/keymap-inspector)
5
+
6
+ *[🇺🇸 English](#english) | [🇷🇺 Русский](#русский) | [🇩🇪 Deutsch](#deutsch) | [🇫🇷 Français](#français) | [🇪🇸 Español](#español) | [🇺🇦 Українська](#українська) | [🇮🇱 עברית](#עברית)*
7
+
8
+ ---
9
+
10
+ ## English
11
+
12
+ Inspect keyboard events and characters across different layouts. Find which physical key corresponds to a character and see what characters are on that key in other keyboard layouts.
13
+
14
+ ### 🚀 Features
15
+
16
+ - **7 keyboard layouts**: English, Russian, German, French, Spanish, Ukrainian, Hebrew
17
+ - **Bidirectional mapping**: Character → Key info, Key code → Characters
18
+ - **CLI tool** for quick inspections
19
+ - **TypeScript** support with full type definitions
20
+ - **Lightweight**: Only 6.5KB package size
21
+
22
+ ### 📦 Installation
23
+
24
+ ```bash
25
+ # Install globally for CLI usage
26
+ npm install -g keymap-inspector
27
+
28
+ # Install locally for library usage
29
+ npm install keymap-inspector
30
+ ```
31
+
32
+ ### 🖥️ CLI Usage
33
+
34
+ ```bash
35
+ keymap-inspector a
36
+ # Output:
37
+ {
38
+ "char": "a",
39
+ "keyDefinition": {
40
+ "key": "a",
41
+ "code": "KeyA",
42
+ "keyCode": 65
43
+ },
44
+ "layouts": {
45
+ "en": "a",
46
+ "ru": "ф",
47
+ "de": "a",
48
+ "fr": "q",
49
+ "es": "a",
50
+ "ua": "ф",
51
+ "he": "ש"
52
+ }
53
+ }
54
+ ```
55
+
56
+ ### 📚 Library Usage
57
+
58
+ ```javascript
59
+ import { KeymapInspector, en, ru, de, fr, es, ua, he } from 'keymap-inspector';
60
+
61
+ const inspector = new KeymapInspector({ en, ru, de, fr, es, ua, he });
62
+
63
+ // Inspect a character
64
+ const result = inspector.inspect('a');
65
+ console.log(result);
66
+
67
+ // Find by key code
68
+ const byCode = inspector.inspectByCode('KeyA');
69
+ console.log(byCode);
70
+
71
+ // Find by keyCode number
72
+ const byKeyCode = inspector.inspectByKeyCode(65);
73
+ console.log(byKeyCode);
74
+ ```
75
+
76
+ ---
77
+
78
+ ## Русский
79
+
80
+ Инспектор клавиатурных раскладок. Определяет, какая физическая клавиша соответствует символу, и показывает, какие символы находятся на этой клавише в других раскладках.
81
+
82
+ ### 🚀 Возможности
83
+
84
+ - **7 раскладок клавиатуры**: английская, русская, немецкая, французская, испанская, украинская, иврит
85
+ - **Двустороннее сопоставление**: символ → информация о клавише, код клавиши → символы
86
+ - **CLI утилита** для быстрых проверок
87
+ - **TypeScript** поддержка с полными определениями типов
88
+ - **Легковесный**: размер пакета всего 6.5KB
89
+
90
+ ### 📦 Установка
91
+
92
+ ```bash
93
+ # Глобальная установка для CLI
94
+ npm install -g keymap-inspector
95
+
96
+ # Локальная установка для библиотеки
97
+ npm install keymap-inspector
98
+ ```
99
+
100
+ ### 🖥️ Использование CLI
101
+
102
+ ```bash
103
+ keymap-inspector ф
104
+ # Вывод:
105
+ {
106
+ "char": "ф",
107
+ "keyDefinition": {
108
+ "key": "ф",
109
+ "code": "KeyA",
110
+ "keyCode": 65
111
+ },
112
+ "layouts": {
113
+ "en": "a",
114
+ "ru": "ф",
115
+ "de": "a",
116
+ "fr": "q",
117
+ "es": "a",
118
+ "ua": "ф",
119
+ "he": "ש"
120
+ }
121
+ }
122
+ ```
123
+
124
+ ---
125
+
126
+ ## Deutsch
127
+
128
+ Tastaturlayout-Inspektor. Ermittelt, welche physische Taste einem Zeichen entspricht und zeigt, welche Zeichen sich auf dieser Taste in anderen Tastaturlayouts befinden.
129
+
130
+ ### 🚀 Features
131
+
132
+ - **7 Tastaturlayouts**: Englisch, Russisch, Deutsch, Französisch, Spanisch, Ukrainisch, Hebräisch
133
+ - **Bidirektionale Zuordnung**: Zeichen → Tasteninformationen, Tastencode → Zeichen
134
+ - **CLI-Tool** für schnelle Inspektionen
135
+ - **TypeScript** Unterstützung mit vollständigen Typdefinitionen
136
+ - **Leichtgewichtig**: Nur 6.5KB Paketgröße
137
+
138
+ ### 📦 Installation
139
+
140
+ ```bash
141
+ # Global installieren für CLI-Nutzung
142
+ npm install -g keymap-inspector
143
+
144
+ # Lokal installieren für Bibliotheksnutzung
145
+ npm install keymap-inspector
146
+ ```
147
+
148
+ ### 🖥️ CLI-Nutzung
149
+
150
+ ```bash
151
+ keymap-inspector ä
152
+ # Ausgabe:
153
+ {
154
+ "char": "ä",
155
+ "keyDefinition": {
156
+ "key": "ä",
157
+ "code": "Quote",
158
+ "keyCode": 222
159
+ },
160
+ "layouts": {
161
+ "en": "'",
162
+ "ru": "э",
163
+ "de": "ä",
164
+ "fr": "ù",
165
+ "es": "´",
166
+ "ua": "є",
167
+ "he": ","
168
+ }
169
+ }
170
+ ```
171
+
172
+ ---
173
+
174
+ ## Français
175
+
176
+ Inspecteur de dispositions de clavier. Détermine quelle touche physique correspond à un caractère et montre quels caractères se trouvent sur cette touche dans d'autres dispositions de clavier.
177
+
178
+ ### 🚀 Fonctionnalités
179
+
180
+ - **7 dispositions de clavier**: Anglais, Russe, Allemand, Français, Espagnol, Ukrainien, Hébreu
181
+ - **Mappage bidirectionnel**: Caractère → Informations de touche, Code de touche → Caractères
182
+ - **Outil CLI** pour des inspections rapides
183
+ - **Support TypeScript** avec des définitions de types complètes
184
+ - **Léger**: Seulement 6.5KB de taille de paquet
185
+
186
+ ### 📦 Installation
187
+
188
+ ```bash
189
+ # Installer globalement pour l'usage CLI
190
+ npm install -g keymap-inspector
191
+
192
+ # Installer localement pour l'usage de bibliothèque
193
+ npm install keymap-inspector
194
+ ```
195
+
196
+ ### 🖥️ Usage CLI
197
+
198
+ ```bash
199
+ keymap-inspector é
200
+ # Sortie:
201
+ {
202
+ "char": "é",
203
+ "keyDefinition": {
204
+ "key": "é",
205
+ "code": "Digit2",
206
+ "keyCode": 50
207
+ },
208
+ "layouts": {
209
+ "en": "2",
210
+ "ru": "2",
211
+ "de": "2",
212
+ "fr": "é",
213
+ "es": "2",
214
+ "ua": "2",
215
+ "he": "2"
216
+ }
217
+ }
218
+ ```
219
+
220
+ ---
221
+
222
+ ## Español
223
+
224
+ Inspector de distribuciones de teclado. Determina qué tecla física corresponde a un carácter y muestra qué caracteres están en esa tecla en otras distribuciones de teclado.
225
+
226
+ ### 🚀 Características
227
+
228
+ - **7 distribuciones de teclado**: Inglés, Ruso, Alemán, Francés, Español, Ucraniano, Hebreo
229
+ - **Mapeo bidireccional**: Carácter → Información de tecla, Código de tecla → Caracteres
230
+ - **Herramienta CLI** para inspecciones rápidas
231
+ - **Soporte TypeScript** con definiciones de tipos completas
232
+ - **Ligero**: Solo 6.5KB de tamaño de paquete
233
+
234
+ ### 📦 Instalación
235
+
236
+ ```bash
237
+ # Instalar globalmente para uso CLI
238
+ npm install -g keymap-inspector
239
+
240
+ # Instalar localmente para uso de biblioteca
241
+ npm install keymap-inspector
242
+ ```
243
+
244
+ ### 🖥️ Uso CLI
245
+
246
+ ```bash
247
+ keymap-inspector ñ
248
+ # Salida:
249
+ {
250
+ "char": "ñ",
251
+ "keyDefinition": {
252
+ "key": "ñ",
253
+ "code": "Semicolon",
254
+ "keyCode": 186
255
+ },
256
+ "layouts": {
257
+ "en": ";",
258
+ "ru": "ж",
259
+ "de": "ö",
260
+ "fr": "m",
261
+ "es": "ñ",
262
+ "ua": "ж",
263
+ "he": "ף"
264
+ }
265
+ }
266
+ ```
267
+
268
+ ---
269
+
270
+ ## Українська
271
+
272
+ Інспектор клавіатурних розкладок. Визначає, яка фізична клавіша відповідає символу, та показує, які символи знаходяться на цій клавіші в інших розкладках клавіатури.
273
+
274
+ ### 🚀 Можливості
275
+
276
+ - **7 розкладок клавіатури**: англійська, російська, німецька, французька, іспанська, українська, іврит
277
+ - **Двостороннє зіставлення**: символ → інформація про клавішу, код клавіші → символи
278
+ - **CLI утиліта** для швидких перевірок
279
+ - **TypeScript** підтримка з повними визначеннями типів
280
+ - **Легкий**: розмір пакету лише 6.5KB
281
+
282
+ ### 📦 Встановлення
283
+
284
+ ```bash
285
+ # Глобальне встановлення для CLI
286
+ npm install -g keymap-inspector
287
+
288
+ # Локальне встановлення для бібліотеки
289
+ npm install keymap-inspector
290
+ ```
291
+
292
+ ### 🖥️ Використання CLI
293
+
294
+ ```bash
295
+ keymap-inspector і
296
+ # Вивід:
297
+ {
298
+ "char": "і",
299
+ "keyDefinition": {
300
+ "key": "і",
301
+ "code": "KeyS",
302
+ "keyCode": 83
303
+ },
304
+ "layouts": {
305
+ "en": "s",
306
+ "ru": "ы",
307
+ "de": "s",
308
+ "fr": "s",
309
+ "es": "s",
310
+ "ua": "і",
311
+ "he": "ד"
312
+ }
313
+ }
314
+ ```
315
+
316
+ ---
317
+
318
+ ## עברית
319
+
320
+ בודק פריסות מקלדת. קובע איזה מקש פיזי מתאים לתו ומראה אילו תווים נמצאים על המקש הזה בפריסות מקלדת אחרות.
321
+
322
+ ### 🚀 תכונות
323
+
324
+ - **7 פריסות מקלדת**: אנגלית, רוסית, גרמנית, צרפתית, ספרדית, אוקראינית, עברית
325
+ - **מיפוי דו-כיווני**: תו ← מידע על מקש, קוד מקש ← תווים
326
+ - **כלי CLI** לבדיקות מהירות
327
+ - **תמיכה ב-TypeScript** עם הגדרות טיפוסים מלאות
328
+ - **קל משקל**: גודל חבילה של 6.5KB בלבד
329
+
330
+ ### 📦 התקנה
331
+
332
+ ```bash
333
+ # התקנה גלובלית לשימוש CLI
334
+ npm install -g keymap-inspector
335
+
336
+ # התקנה מקומית לשימוש ספרייה
337
+ npm install keymap-inspector
338
+ ```
339
+
340
+ ### 🖥️ שימוש ב-CLI
341
+
342
+ ```bash
343
+ keymap-inspector ש
344
+ # פלט:
345
+ {
346
+ "char": "ש",
347
+ "keyDefinition": {
348
+ "key": "ש",
349
+ "code": "KeyA",
350
+ "keyCode": 65
351
+ },
352
+ "layouts": {
353
+ "en": "a",
354
+ "ru": "ф",
355
+ "de": "a",
356
+ "fr": "q",
357
+ "es": "a",
358
+ "ua": "ф",
359
+ "he": "ש"
360
+ }
361
+ }
362
+ ```
363
+
364
+ ---
365
+
366
+ ## 🔧 API Reference
367
+
368
+ ### KeymapInspector
369
+
370
+ ```typescript
371
+ interface KeyDefinition {
372
+ key?: string;
373
+ code: string;
374
+ keyCode: number;
375
+ shiftKey?: boolean;
376
+ location?: number;
377
+ }
378
+
379
+ interface InspectionResult {
380
+ char: string;
381
+ keyDefinition: KeyDefinition;
382
+ layouts: {
383
+ [layoutName: string]: string | null;
384
+ };
385
+ }
386
+
387
+ class KeymapInspector {
388
+ constructor(layouts: { [name: string]: Keymap });
389
+ inspect(char: string): InspectionResult | null;
390
+ inspectByCode(code: string): InspectionResult | null;
391
+ inspectByKeyCode(keyCode: number): InspectionResult | null;
392
+ }
393
+ ```
394
+
395
+ ### Available Layouts
396
+
397
+ - `en` - English (QWERTY)
398
+ - `ru` - Russian (ЙЦУКЕН)
399
+ - `de` - German (QWERTZ)
400
+ - `fr` - French (AZERTY)
401
+ - `es` - Spanish (QWERTY)
402
+ - `ua` - Ukrainian (ЙЦУКЕН)
403
+ - `he` - Hebrew
404
+
405
+ ## 📄 License
406
+
407
+ MIT © [mikyviz](https://github.com/MikyViz)
408
+
409
+ ## 🤝 Contributing
410
+
411
+ Contributions are welcome! Please feel free to submit a Pull Request.
412
+
413
+ ## 🐛 Issues
414
+
415
+ Found a bug? Please [open an issue](https://github.com/MikyViz/keymap-inspector/issues).
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "keymap-inspector",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "Inspect keyboard events and characters across different layouts.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",