@jjlmoya/utils-hardware 1.24.0 → 1.25.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.
- package/package.json +2 -1
- package/src/category/index.ts +3 -1
- package/src/entries.ts +7 -1
- package/src/index.ts +2 -0
- package/src/tests/locale_completeness.test.ts +2 -2
- package/src/tests/tool_validation.test.ts +2 -2
- package/src/tool/keyboardChatterTest/bibliography.astro +15 -0
- package/src/tool/keyboardChatterTest/bibliography.ts +20 -0
- package/src/tool/keyboardChatterTest/component.astro +353 -0
- package/src/tool/keyboardChatterTest/entry.ts +30 -0
- package/src/tool/keyboardChatterTest/i18n/de.ts +232 -0
- package/src/tool/keyboardChatterTest/i18n/en.ts +232 -0
- package/src/tool/keyboardChatterTest/i18n/es.ts +232 -0
- package/src/tool/keyboardChatterTest/i18n/fr.ts +232 -0
- package/src/tool/keyboardChatterTest/i18n/id.ts +232 -0
- package/src/tool/keyboardChatterTest/i18n/it.ts +232 -0
- package/src/tool/keyboardChatterTest/i18n/ja.ts +232 -0
- package/src/tool/keyboardChatterTest/i18n/ko.ts +232 -0
- package/src/tool/keyboardChatterTest/i18n/nl.ts +232 -0
- package/src/tool/keyboardChatterTest/i18n/pl.ts +232 -0
- package/src/tool/keyboardChatterTest/i18n/pt.ts +232 -0
- package/src/tool/keyboardChatterTest/i18n/ru.ts +232 -0
- package/src/tool/keyboardChatterTest/i18n/sv.ts +232 -0
- package/src/tool/keyboardChatterTest/i18n/tr.ts +232 -0
- package/src/tool/keyboardChatterTest/i18n/zh.ts +232 -0
- package/src/tool/keyboardChatterTest/index.ts +12 -0
- package/src/tool/keyboardChatterTest/keyboard-chatter-test.css +512 -0
- package/src/tool/keyboardChatterTest/logic.ts +23 -0
- package/src/tool/keyboardChatterTest/seo.astro +16 -0
- package/src/tool/keyboardChatterTest/ui.ts +34 -0
- package/src/tool/webBluetoothBleScanner/bibliography.astro +14 -0
- package/src/tool/webBluetoothBleScanner/bibliography.ts +16 -0
- package/src/tool/webBluetoothBleScanner/component.astro +339 -0
- package/src/tool/webBluetoothBleScanner/entry.ts +29 -0
- package/src/tool/webBluetoothBleScanner/i18n/de.ts +233 -0
- package/src/tool/webBluetoothBleScanner/i18n/en.ts +233 -0
- package/src/tool/webBluetoothBleScanner/i18n/es.ts +233 -0
- package/src/tool/webBluetoothBleScanner/i18n/fr.ts +233 -0
- package/src/tool/webBluetoothBleScanner/i18n/id.ts +233 -0
- package/src/tool/webBluetoothBleScanner/i18n/it.ts +233 -0
- package/src/tool/webBluetoothBleScanner/i18n/ja.ts +233 -0
- package/src/tool/webBluetoothBleScanner/i18n/ko.ts +233 -0
- package/src/tool/webBluetoothBleScanner/i18n/nl.ts +233 -0
- package/src/tool/webBluetoothBleScanner/i18n/pl.ts +233 -0
- package/src/tool/webBluetoothBleScanner/i18n/pt.ts +233 -0
- package/src/tool/webBluetoothBleScanner/i18n/ru.ts +233 -0
- package/src/tool/webBluetoothBleScanner/i18n/sv.ts +233 -0
- package/src/tool/webBluetoothBleScanner/i18n/tr.ts +233 -0
- package/src/tool/webBluetoothBleScanner/i18n/zh.ts +233 -0
- package/src/tool/webBluetoothBleScanner/index.ts +11 -0
- package/src/tool/webBluetoothBleScanner/logic.ts +79 -0
- package/src/tool/webBluetoothBleScanner/seo.astro +15 -0
- package/src/tool/webBluetoothBleScanner/ui.ts +41 -0
- package/src/tool/webBluetoothBleScanner/web-bluetooth-ble-scanner.css +406 -0
- package/src/tools.ts +3 -1
|
@@ -0,0 +1,232 @@
|
|
|
1
|
+
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { KeyboardChatterTestUI } from '../ui';
|
|
4
|
+
import { bibliography } from '../bibliography';
|
|
5
|
+
|
|
6
|
+
const slug = 'test-chatter-teclado';
|
|
7
|
+
const title = 'Test de Chatter de Teclado';
|
|
8
|
+
const description = 'Detecta chattering en teclados mecánicos, doble escritura y rebote de interruptor defectuoso comprobando cuán rápido aparece la misma tecla dos veces.';
|
|
9
|
+
|
|
10
|
+
const faqData = [
|
|
11
|
+
{
|
|
12
|
+
question: '¿Qué es el chattering de teclado?',
|
|
13
|
+
answer: 'El chattering de teclado es un fallo de hardware donde una pulsación física se registra como múltiples pulsaciones. Es común en interruptores mecánicos sucios, desgastados, oxidados o mal debounced.',
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
question: '¿Cómo funciona este test de chattering de teclado?',
|
|
17
|
+
answer: 'Presiona la misma tecla sospechosa lentamente, una pulsación a la vez. Si el registro muestra pulsaciones repetidas a solo unos milisegundos de distancia, el interruptor puede estar rebotando y produciendo dobles letras.',
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
question: '¿Qué delta significa que mi teclado está haciendo doble escritura?',
|
|
21
|
+
answer: 'Una pulsación repetida por debajo de 30 ms es fuertemente sospechosa de chattering. Repeticiones de 30 a 50 ms merecen atención. Las repeticiones intencionadas normales suelen estar por encima de 50 ms para la mayoría de usuarios.',
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
question: '¿Por qué la primera pulsación no muestra delta?',
|
|
25
|
+
answer: 'Un delta necesita una pulsación previa de la misma tecla. La primera pulsación establece la línea base, y las posteriores muestran el intervalo de tiempo en milisegundos.',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
question: '¿Puede el software arreglar el chattering de teclado?',
|
|
29
|
+
answer: 'El software de debounce puede ocultar algunos síntomas, pero no repara el interruptor. Limpiar, reasentar interruptores hot-swap, reemplazar el interruptor o reparar la PCB del teclado puede ser necesario.',
|
|
30
|
+
},
|
|
31
|
+
];
|
|
32
|
+
|
|
33
|
+
const howToData = [
|
|
34
|
+
{
|
|
35
|
+
name: 'Abre la herramienta y presiona teclas normalmente',
|
|
36
|
+
text: 'No hay botón de inicio. Haz clic en la herramienta si es necesario, luego presiona la tecla que ha estado escribiendo doble.',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: 'Pulsa la tecla sospechosa de una en una',
|
|
40
|
+
text: 'Presiona la tecla que escribe doble. Si una pulsación física crea varias filas en el registro con deltas diminutos, el interruptor probablemente está haciendo chattering.',
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
name: 'Lee el código de colores',
|
|
44
|
+
text: 'Verde significa normal por encima de 50 ms, amarillo significa sospechoso de 30 a 50 ms y rojo significa chattering detectado por debajo de 30 ms.',
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
name: 'Exporta el registro si es necesario',
|
|
48
|
+
text: 'Usa el botón de descarga para guardar un registro CSV que puede ayudar a comparar teclas o documentar un fallo intermitente.',
|
|
49
|
+
},
|
|
50
|
+
];
|
|
51
|
+
|
|
52
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
53
|
+
'@context': 'https://schema.org',
|
|
54
|
+
'@type': 'FAQPage',
|
|
55
|
+
mainEntity: faqData.map((item) => ({
|
|
56
|
+
'@type': 'Question',
|
|
57
|
+
name: item.question,
|
|
58
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
59
|
+
})),
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
const howToSchema: WithContext<HowTo> = {
|
|
63
|
+
'@context': 'https://schema.org',
|
|
64
|
+
'@type': 'HowTo',
|
|
65
|
+
name: title,
|
|
66
|
+
description,
|
|
67
|
+
step: howToData.map((step, i) => ({
|
|
68
|
+
'@type': 'HowToStep',
|
|
69
|
+
position: i + 1,
|
|
70
|
+
name: step.name,
|
|
71
|
+
text: step.text,
|
|
72
|
+
})),
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
76
|
+
'@context': 'https://schema.org',
|
|
77
|
+
'@type': 'SoftwareApplication',
|
|
78
|
+
name: title,
|
|
79
|
+
description,
|
|
80
|
+
applicationCategory: 'UtilityApplication',
|
|
81
|
+
operatingSystem: 'All',
|
|
82
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'USD' },
|
|
83
|
+
inLanguage: 'es',
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
export const content: ToolLocaleContent<KeyboardChatterTestUI> = {
|
|
87
|
+
slug,
|
|
88
|
+
title,
|
|
89
|
+
description,
|
|
90
|
+
faq: faqData,
|
|
91
|
+
bibliography,
|
|
92
|
+
howTo: howToData,
|
|
93
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
94
|
+
seo: [
|
|
95
|
+
{
|
|
96
|
+
type: 'title',
|
|
97
|
+
text: 'Test de Doble Escritura de Teclado Mecánico',
|
|
98
|
+
level: 2,
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
type: 'paragraph',
|
|
102
|
+
html: 'Este test de chattering de teclado ayuda a diagnosticar un teclado mecánico que escribe dos letras de una pulsación, pierde liberaciones limpias o produce caracteres repetidos sin que pulses dos veces intencionalmente. Úsalo antes de limpiar interruptores, cambiar la configuración de debounce del firmware, abrir una reclamación de garantía o reemplazar un interruptor hot-swap.',
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
type: 'diagnostic',
|
|
106
|
+
variant: 'info',
|
|
107
|
+
title: 'Cómo leer el resultado',
|
|
108
|
+
badge: 'Umbrales de delta',
|
|
109
|
+
html: '<p><strong>Normal</strong> significa que la repetición fue superior a 50 ms y suele ser intencionada. <strong>Sospechoso</strong> significa 30-50 ms y debe volver a probarse en la misma tecla. <strong>Chattering detectado</strong> significa por debajo de 30 ms, lo que probablemente es una pulsación física que rebota en múltiples contactos eléctricos.</p>',
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
type: 'title',
|
|
113
|
+
text: 'Por Qué los Interruptores Mecánicos Hacen Chattering',
|
|
114
|
+
level: 3,
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
type: 'paragraph',
|
|
118
|
+
html: 'Un interruptor mecánico no se cierra como una señal digital perfectamente limpia. Los contactos metálicos pueden rebotar durante unos milisegundos antes de asentarse. El firmware del teclado normalmente filtra ese rebote con una ventana de debounce. El chattering ocurre cuando el contacto está sucio, desgastado, oxidado, flojo, agrietado o mal ajustado hasta el punto de que el teclado reporta pulsaciones extra después de que el filtro de debounce debería haberlas manejado.',
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
type: 'table',
|
|
122
|
+
headers: ['Síntoma', 'Causa probable', 'Qué intentar primero'],
|
|
123
|
+
rows: [
|
|
124
|
+
['Una tecla escribe la misma letra dos veces', 'Contacto del interruptor sucio o desgastado', 'Retira la tecla, sopla el polvo y prueba de nuevo antes de reemplazar el interruptor.'],
|
|
125
|
+
['Varias teclas hot-swap hacen chattering tras una construcción', 'Pines del interruptor no asentados correctamente', 'Extrae y reasienta el interruptor, verificando pines doblados o un socket flojo.'],
|
|
126
|
+
['Solo ocurre después de derrames o humedad', 'Oxidación o residuos en los contactos', 'Desconecta el teclado y limpia según la guía del fabricante.'],
|
|
127
|
+
['Muchas teclas muestran deltas diminutos', 'Debounce del firmware demasiado bajo o problema de escaneo', 'Compara en otro puerto USB y revisa la configuración de debounce del firmware si está disponible.'],
|
|
128
|
+
],
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
type: 'title',
|
|
132
|
+
text: 'Método de Prueba que Reduce Falsos Positivos',
|
|
133
|
+
level: 3,
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
type: 'list',
|
|
137
|
+
items: [
|
|
138
|
+
'Prueba una tecla sospechosa a la vez en lugar de escribir frases completas.',
|
|
139
|
+
'Presiona la tecla una vez, suéltala completamente y espera un momento antes de la siguiente pulsación.',
|
|
140
|
+
'Compara la tecla sospechosa con una tecla cercana que se sienta sana.',
|
|
141
|
+
'Ignora la primera fila de una tecla porque no tiene una pulsación previa con la que comparar.',
|
|
142
|
+
'Si la misma tecla muestra repetidamente filas rojas por debajo de 30 ms con pulsaciones únicas, trátalo como un fallo de hardware.',
|
|
143
|
+
'Si solo aparecen filas amarillas, repite la prueba más despacio y comprueba si tu ritmo de tecleo está causando el intervalo corto.',
|
|
144
|
+
],
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
type: 'title',
|
|
148
|
+
text: 'Chattering vs. Escritura Rápida Intencionada',
|
|
149
|
+
level: 3,
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
type: 'comparative',
|
|
153
|
+
columns: 3,
|
|
154
|
+
items: [
|
|
155
|
+
{
|
|
156
|
+
title: 'Chattering',
|
|
157
|
+
description: 'Agrupado en una tecla, a menudo por debajo de 30 ms, y aparece cuando pretendías una sola pulsación.',
|
|
158
|
+
points: ['Inspecciona el interruptor o socket.', 'Compara con una tecla sana cercana.'],
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
title: 'Escritura rápida',
|
|
162
|
+
description: 'Afecta a muchas teclas, sigue tu ritmo y tiende a situarse por encima de 50 ms entre pulsaciones repetidas de la misma tecla.',
|
|
163
|
+
points: ['Generalmente uso normal.', 'Vuelve a probar con pulsaciones únicas más lentas.'],
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
title: 'Repetición de tecla del SO',
|
|
167
|
+
description: 'Aparece al mantener una tecla presionada y generalmente se repite con un ritmo regular establecido por tu sistema operativo.',
|
|
168
|
+
points: ['Suelta completamente entre pulsaciones.', 'Verifica la configuración de repetición de teclado por separado.'],
|
|
169
|
+
},
|
|
170
|
+
],
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
type: 'title',
|
|
174
|
+
text: 'Qué Hacer Cuando una Tecla Falla',
|
|
175
|
+
level: 3,
|
|
176
|
+
},
|
|
177
|
+
{
|
|
178
|
+
type: 'list',
|
|
179
|
+
items: [
|
|
180
|
+
'Guarda un registro CSV antes de cambiar nada para poder comparar resultados antes y después.',
|
|
181
|
+
'Retira la tecla e inspecciona si hay suciedad, residuos de líquido o un vástago que no retorna suavemente.',
|
|
182
|
+
'Para teclados hot-swap, reasienta o reemplaza el interruptor y prueba la misma posición de nuevo.',
|
|
183
|
+
'Para teclados soldados, compara las opciones de debounce del firmware antes de asumir que la PCB necesita reparación.',
|
|
184
|
+
'Prueba otro cable y puerto USB si múltiples teclas no relacionadas muestran deltas imposibles.',
|
|
185
|
+
'Para soporte de garantía, incluye la tecla afectada, los valores delta repetidos, el modelo de teclado, la versión de firmware y si el fallo sigue al interruptor o al socket de la PCB.',
|
|
186
|
+
],
|
|
187
|
+
},
|
|
188
|
+
{
|
|
189
|
+
type: 'summary',
|
|
190
|
+
title: 'Regla rápida',
|
|
191
|
+
items: [
|
|
192
|
+
'Una sola fila roja es una pista, no un veredicto.',
|
|
193
|
+
'Filas rojas repetidas por debajo de 30 ms en la misma tecla física son fuerte evidencia de chattering de teclado.',
|
|
194
|
+
'Usa pulsaciones únicas deliberadas y compara el interruptor sospechoso con una tecla sana cercana antes de reemplazar hardware.',
|
|
195
|
+
],
|
|
196
|
+
},
|
|
197
|
+
],
|
|
198
|
+
ui: {
|
|
199
|
+
statusIdle: 'Presiona cualquier tecla',
|
|
200
|
+
statusListening: 'Midiendo deltas de tecla',
|
|
201
|
+
statusChatter: 'Chattering detectado',
|
|
202
|
+
totalPresses: 'Pulsaciones totales',
|
|
203
|
+
chatterEvents: 'Eventos de chattering',
|
|
204
|
+
worstDelta: 'Peor delta',
|
|
205
|
+
watchWindow: 'Filas conservadas',
|
|
206
|
+
keyColumn: 'Tecla',
|
|
207
|
+
deltaColumn: 'Delta',
|
|
208
|
+
verdictColumn: 'Veredicto',
|
|
209
|
+
timeColumn: 'Tiempo',
|
|
210
|
+
normal: 'Normal',
|
|
211
|
+
suspect: 'Sospechoso',
|
|
212
|
+
chatter: 'Chattering',
|
|
213
|
+
waiting: 'Esperando',
|
|
214
|
+
clear: 'Limpiar registro',
|
|
215
|
+
exportLog: 'Exportar CSV',
|
|
216
|
+
hint: 'El registro conserva las 80 filas más recientes para que las sesiones largas sean rápidas. La repetición de tecla mantenida se ignora; las filas rojas provienen de pulsaciones separadas que ocurrieron demasiado juntas.',
|
|
217
|
+
captureNotice: 'Sin botón de inicio. Pulsa una tecla sospechosa una vez y observa el delta desde su pulsación anterior.',
|
|
218
|
+
keyboardAriaLabel: 'Actividad reciente de teclas',
|
|
219
|
+
logAriaLabel: 'Registro de eventos de chattering de teclado',
|
|
220
|
+
escapeKey: 'Esc',
|
|
221
|
+
backspaceKey: 'Retro',
|
|
222
|
+
tabKey: 'Tab',
|
|
223
|
+
enterKey: 'Enter',
|
|
224
|
+
capsLockKey: 'Mayús',
|
|
225
|
+
shiftKey: 'Shift',
|
|
226
|
+
controlKey: 'Ctrl',
|
|
227
|
+
metaKey: 'Meta',
|
|
228
|
+
altKey: 'Alt',
|
|
229
|
+
spaceKey: 'Espacio',
|
|
230
|
+
csvHeader: 'tecla,código,delta_ms,gravedad,hora',
|
|
231
|
+
},
|
|
232
|
+
};
|
|
@@ -0,0 +1,232 @@
|
|
|
1
|
+
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { KeyboardChatterTestUI } from '../ui';
|
|
4
|
+
import { bibliography } from '../bibliography';
|
|
5
|
+
|
|
6
|
+
const slug = 'test-rebond-clavier';
|
|
7
|
+
const title = 'Test de Rebond de Clavier';
|
|
8
|
+
const description = 'Détectez le rebond des claviers mécaniques, la double frappe et les rebonds de contact défectueux en vérifiant la rapidité avec laquelle la même touche apparaît deux fois.';
|
|
9
|
+
|
|
10
|
+
const faqData = [
|
|
11
|
+
{
|
|
12
|
+
question: 'Qu\'est-ce que le rebond de clavier ?',
|
|
13
|
+
answer: 'Le rebond de clavier est un défaut matériel où une pression physique est enregistrée comme plusieurs pressions. Il est courant sur les interrupteurs mécaniques sales, usés, oxydés ou mal anti-rebondis.',
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
question: 'Comment fonctionne ce test de rebond de clavier ?',
|
|
17
|
+
answer: 'Appuyez lentement sur la même touche suspecte, une pression à la fois. Si le journal montre des pressions répétées à seulement quelques millisecondes d\'intervalle, l\'interrupteur rebondit peut-être et produit des doubles lettres.',
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
question: 'Quel delta signifie que mon clavier fait de la double frappe ?',
|
|
21
|
+
answer: 'Une pression répétée en dessous de 30 ms est fortement suspecte de rebond. Les répétitions de 30 à 50 ms méritent attention. Les répétitions intentionnelles normales sont généralement au-dessus de 50 ms pour la plupart des utilisateurs.',
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
question: 'Pourquoi la première pression n\'affiche-t-elle pas de delta ?',
|
|
25
|
+
answer: 'Un delta nécessite une pression précédente de la même touche. La première pression établit la ligne de base, et les pressions suivantes montrent l\'écart de temps en millisecondes.',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
question: 'Les logiciels peuvent-ils corriger le rebond de clavier ?',
|
|
29
|
+
answer: 'Un logiciel anti-rebond peut masquer certains symptômes, mais il ne répare pas l\'interrupteur. Nettoyer, réinsérer les interrupteurs hot-swap, remplacer l\'interrupteur ou réparer le PCB du clavier peut être nécessaire.',
|
|
30
|
+
},
|
|
31
|
+
];
|
|
32
|
+
|
|
33
|
+
const howToData = [
|
|
34
|
+
{
|
|
35
|
+
name: 'Ouvrez l\'outil et appuyez normalement sur les touches',
|
|
36
|
+
text: 'Il n\'y a pas de bouton de démarrage. Cliquez dans l\'outil si nécessaire, puis appuyez sur la touche qui a tapé en double.',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: 'Appuyez une seule fois sur la touche suspecte',
|
|
40
|
+
text: 'Appuyez sur la touche qui tape en double. Si une pression physique crée plusieurs lignes de journal avec de petits deltas, l\'interrupteur rebondit probablement.',
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
name: 'Lisez le code couleur',
|
|
44
|
+
text: 'Vert signifie normal au-dessus de 50 ms, jaune signifie suspect de 30 à 50 ms et rouge signifie rebond détecté en dessous de 30 ms.',
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
name: 'Exportez le journal si nécessaire',
|
|
48
|
+
text: 'Utilisez le bouton de téléchargement pour enregistrer un journal CSV qui peut aider à comparer les touches ou documenter un défaut intermittent.',
|
|
49
|
+
},
|
|
50
|
+
];
|
|
51
|
+
|
|
52
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
53
|
+
'@context': 'https://schema.org',
|
|
54
|
+
'@type': 'FAQPage',
|
|
55
|
+
mainEntity: faqData.map((item) => ({
|
|
56
|
+
'@type': 'Question',
|
|
57
|
+
name: item.question,
|
|
58
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
59
|
+
})),
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
const howToSchema: WithContext<HowTo> = {
|
|
63
|
+
'@context': 'https://schema.org',
|
|
64
|
+
'@type': 'HowTo',
|
|
65
|
+
name: title,
|
|
66
|
+
description,
|
|
67
|
+
step: howToData.map((step, i) => ({
|
|
68
|
+
'@type': 'HowToStep',
|
|
69
|
+
position: i + 1,
|
|
70
|
+
name: step.name,
|
|
71
|
+
text: step.text,
|
|
72
|
+
})),
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
76
|
+
'@context': 'https://schema.org',
|
|
77
|
+
'@type': 'SoftwareApplication',
|
|
78
|
+
name: title,
|
|
79
|
+
description,
|
|
80
|
+
applicationCategory: 'UtilityApplication',
|
|
81
|
+
operatingSystem: 'All',
|
|
82
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'USD' },
|
|
83
|
+
inLanguage: 'fr',
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
export const content: ToolLocaleContent<KeyboardChatterTestUI> = {
|
|
87
|
+
slug,
|
|
88
|
+
title,
|
|
89
|
+
description,
|
|
90
|
+
faq: faqData,
|
|
91
|
+
bibliography,
|
|
92
|
+
howTo: howToData,
|
|
93
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
94
|
+
seo: [
|
|
95
|
+
{
|
|
96
|
+
type: 'title',
|
|
97
|
+
text: 'Test de Double Frappe de Clavier Mécanique',
|
|
98
|
+
level: 2,
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
type: 'paragraph',
|
|
102
|
+
html: 'Ce test de rebond de clavier aide à diagnostiquer un clavier mécanique qui tape deux lettres à partir d\'une pression, rate des relâchements nets ou produit des caractères répétés sans que vous tapiez intentionnellement deux fois. Utilisez-le avant de nettoyer des interrupteurs, de modifier les paramètres anti-rebond du firmware, d\'ouvrir une réclamation de garantie ou de remplacer un interrupteur hot-swap.',
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
type: 'diagnostic',
|
|
106
|
+
variant: 'info',
|
|
107
|
+
title: 'Comment lire le résultat',
|
|
108
|
+
badge: 'Seuils de delta',
|
|
109
|
+
html: '<p><strong>Normal</strong> signifie que la répétition était au-dessus de 50 ms et est généralement intentionnelle. <strong>Suspect</strong> signifie 30-50 ms et doit être retesté sur la même touche. <strong>Rebond détecté</strong> signifie en dessous de 30 ms, ce qui est très probablement une pression physique rebondissant en plusieurs contacts électriques.</p>',
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
type: 'title',
|
|
113
|
+
text: 'Pourquoi les Interrupteurs Mécaniques Rebondissent',
|
|
114
|
+
level: 3,
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
type: 'paragraph',
|
|
118
|
+
html: 'Un interrupteur mécanique ne se ferme pas comme un signal numérique parfaitement propre. Les contacts métalliques peuvent rebondir pendant quelques millisecondes avant de se stabiliser. Le firmware du clavier filtre normalement ce rebond avec une fenêtre anti-rebond. Le rebondissement se produit lorsque le contact est sale, usé, oxydé, desserré, fissuré ou mal réglé au point que le clavier signale des pressions supplémentaires après que le filtre anti-rebond aurait dû les gérer.',
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
type: 'table',
|
|
122
|
+
headers: ['Symptôme', 'Cause probable', 'Que tester en premier'],
|
|
123
|
+
rows: [
|
|
124
|
+
['Une touche tape la même lettre deux fois', 'Contact d\'interrupteur sale ou usé', 'Retirez le capuchon, soufflez la poussière et testez à nouveau avant de remplacer l\'interrupteur.'],
|
|
125
|
+
['Plusieurs touches hot-swap rebondissent après un montage', 'Broches d\'interrupteur mal insérées', 'Retirez et réinsérez l\'interrupteur, en vérifiant les broches tordues ou un socket desserré.'],
|
|
126
|
+
['Se produit seulement après des déversements ou de l\'humidité', 'Oxydation ou résidus sur les contacts', 'Débranchez le clavier et nettoyez selon les instructions du fabricant.'],
|
|
127
|
+
['De nombreuses touches montrent de petits deltas', 'Anti-rebond du firmware trop bas ou problème de scan', 'Comparez sur un autre port USB et examinez les paramètres anti-rebond du firmware si disponibles.'],
|
|
128
|
+
],
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
type: 'title',
|
|
132
|
+
text: 'Méthode de Test Qui Réduit les Faux Positifs',
|
|
133
|
+
level: 3,
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
type: 'list',
|
|
137
|
+
items: [
|
|
138
|
+
'Testez une touche suspecte à la fois au lieu de taper des phrases complètes.',
|
|
139
|
+
'Appuyez une fois sur la touche, relâchez-la complètement et attendez un moment avant la pression suivante.',
|
|
140
|
+
'Comparez la touche suspecte avec une touche voisine qui semble saine.',
|
|
141
|
+
'Ignorez la première ligne pour une touche car il n\'y a pas de pression précédente à comparer.',
|
|
142
|
+
'Si la même touche montre à plusieurs reprises des lignes rouges sous 30 ms avec des pressions simples, traitez-la comme un défaut matériel.',
|
|
143
|
+
'Si seules des lignes jaunes apparaissent, répétez le test plus lentement et vérifiez si votre rythme de frappe cause l\'intervalle court.',
|
|
144
|
+
],
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
type: 'title',
|
|
148
|
+
text: 'Rebond vs. Frappe Rapide Intentionnelle',
|
|
149
|
+
level: 3,
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
type: 'comparative',
|
|
153
|
+
columns: 3,
|
|
154
|
+
items: [
|
|
155
|
+
{
|
|
156
|
+
title: 'Rebond',
|
|
157
|
+
description: 'Concentré sur une touche, souvent en dessous de 30 ms, et apparaît lorsque vous vouliez une seule pression.',
|
|
158
|
+
points: ['Inspectez l\'interrupteur ou le socket.', 'Comparez avec une touche saine voisine.'],
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
title: 'Frappe rapide',
|
|
162
|
+
description: 'Affecte de nombreuses touches, suit votre rythme et tend à se situer au-dessus de 50 ms entre les pressions répétées de la même touche.',
|
|
163
|
+
points: ['Généralement une utilisation normale.', 'Retestez avec des pressions simples plus lentes.'],
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
title: 'Répétition de touche du système',
|
|
167
|
+
description: 'Apparaît en maintenant une touche enfoncée et se répète généralement à un rythme régulier défini par votre système d\'exploitation.',
|
|
168
|
+
points: ['Relâchez complètement entre les pressions.', 'Vérifiez les paramètres de répétition du clavier séparément.'],
|
|
169
|
+
},
|
|
170
|
+
],
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
type: 'title',
|
|
174
|
+
text: 'Que Faire Quand une Touche Échoue',
|
|
175
|
+
level: 3,
|
|
176
|
+
},
|
|
177
|
+
{
|
|
178
|
+
type: 'list',
|
|
179
|
+
items: [
|
|
180
|
+
'Enregistrez un journal CSV avant de changer quoi que ce soit pour pouvoir comparer les résultats avant et après.',
|
|
181
|
+
'Retirez le capuchon de touche et inspectez la saleté, les résidus de liquide ou une tige qui ne revient pas en douceur.',
|
|
182
|
+
'Pour les claviers hot-swap, réinsérez ou remplacez l\'interrupteur et testez à nouveau la même position.',
|
|
183
|
+
'Pour les claviers soudés, comparez les options anti-rebond du firmware avant de supposer que le PCB a besoin de réparation.',
|
|
184
|
+
'Essayez un autre câble et port USB si plusieurs touches non liées montrent des deltas impossibles.',
|
|
185
|
+
'Pour le support de garantie, incluez la touche affectée, les valeurs delta répétées, le modèle de clavier, la version du firmware et si le défaut suit l\'interrupteur ou le socket PCB.',
|
|
186
|
+
],
|
|
187
|
+
},
|
|
188
|
+
{
|
|
189
|
+
type: 'summary',
|
|
190
|
+
title: 'Règle rapide',
|
|
191
|
+
items: [
|
|
192
|
+
'Une seule ligne rouge est un indice, pas un verdict.',
|
|
193
|
+
'Des lignes rouges répétées en dessous de 30 ms sur la même touche physique sont une preuve forte de rebond de clavier.',
|
|
194
|
+
'Utilisez des pressions simples délibérées et comparez l\'interrupteur suspect avec une touche saine voisine avant de remplacer le matériel.',
|
|
195
|
+
],
|
|
196
|
+
},
|
|
197
|
+
],
|
|
198
|
+
ui: {
|
|
199
|
+
statusIdle: 'Appuyez sur une touche',
|
|
200
|
+
statusListening: 'Mesure des deltas de touche',
|
|
201
|
+
statusChatter: 'Rebond détecté',
|
|
202
|
+
totalPresses: 'Pressions totales',
|
|
203
|
+
chatterEvents: 'Événements de rebond',
|
|
204
|
+
worstDelta: 'Pire delta',
|
|
205
|
+
watchWindow: 'Lignes conservées',
|
|
206
|
+
keyColumn: 'Touche',
|
|
207
|
+
deltaColumn: 'Delta',
|
|
208
|
+
verdictColumn: 'Verdict',
|
|
209
|
+
timeColumn: 'Temps',
|
|
210
|
+
normal: 'Normal',
|
|
211
|
+
suspect: 'Suspect',
|
|
212
|
+
chatter: 'Rebond',
|
|
213
|
+
waiting: 'En attente',
|
|
214
|
+
clear: 'Effacer le journal',
|
|
215
|
+
exportLog: 'Exporter CSV',
|
|
216
|
+
hint: 'Le journal conserve les 80 lignes les plus récentes pour que les longues sessions restent rapides. La répétition de touche maintenue est ignorée ; les lignes rouges proviennent de pressions séparées trop rapprochées.',
|
|
217
|
+
captureNotice: 'Pas de bouton de démarrage. Appuyez une fois sur une touche suspecte et observez le delta par rapport à sa pression précédente.',
|
|
218
|
+
keyboardAriaLabel: 'Activité récente des touches',
|
|
219
|
+
logAriaLabel: 'Journal des événements de rebond de clavier',
|
|
220
|
+
escapeKey: 'Échap',
|
|
221
|
+
backspaceKey: 'Retour',
|
|
222
|
+
tabKey: 'Tab',
|
|
223
|
+
enterKey: 'Entrée',
|
|
224
|
+
capsLockKey: 'Verr Maj',
|
|
225
|
+
shiftKey: 'Maj',
|
|
226
|
+
controlKey: 'Ctrl',
|
|
227
|
+
metaKey: 'Meta',
|
|
228
|
+
altKey: 'Alt',
|
|
229
|
+
spaceKey: 'Espace',
|
|
230
|
+
csvHeader: 'touche,code,delta_ms,gravité,heure',
|
|
231
|
+
},
|
|
232
|
+
};
|