Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

[Bug]: SnapShot modifier-pair shortcut label "Shift + Shift" reads as a double tap; it means hold both Shift keys

Abierto Apto para principiantes
#21,107 1 comentario 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
77/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
macos, typescript
Área
desktop

Línea de trabajo

Lee packages/contracts/src/settings.ts y apps/web/src/lib/snapShotShortcut.ts, donde el issue identifica la etiqueta del par de teclas modificadoras y los helpers de keycaps. Comprueba sus tests y actualiza las etiquetas mostradas para que los usuarios puedan distinguir las teclas izquierda y derecha y entender que se pulsan a la vez. El trabajo estará terminado cuando la etiqueta de Settings y las keycaps comuniquen claramente el gesto y pasen los tests pertinentes.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

What happened

The default SnapShot shortcut is shown as Shift + Shift in Settings (keycaps ⇧ ⇧). I read it as "press Shift twice", like JetBrains' Search Everywhere. I double-tapped Shift for days and nothing was captured. I thought the feature was broken.

The real gesture is to hold Left Shift and Right Shift at the same time. The user guide (docs/user/snap-shot.md) says "both Shift keys together", but the Settings UI does not.

Diagnosis
  • Settings has snapShotShortcut: {"kind":"both-shift-keys"}.
  • On macOS, MacModifierPairShortcutProcess polls CGEventSourceFlagsState and triggers only when the left and right device masks are set together. A double tap never sets both, so it never fires.
  • The shortcut was registered: the osascript poller was running and permissions were fine. In about 2 weeks of desktop.trace.ndjson there were 0 desktop.snapShot.shortcutActivated spans.
  • I posted synthetic Left Shift down + Right Shift down events. One shortcutActivated span appeared and the capture reached the composer (snapShot.acknowledge succeeded). So capture works and the bug is only in how the shortcut is labelled.
  • The label comes from snapShotModifierPairLabel() (packages/contracts/src/settings.ts): ${label} + ${label}. The keycaps come from snapShotShortcutKeyLabels() (apps/web/src/lib/snapShotShortcut.ts): [label, label]. Neither says which side or that the keys are held together. The same applies to Command + Command, Ctrl + Ctrl and the other pairs.
Steps to reproduce
  1. macOS, default SnapShot settings, permissions granted.
  2. Open Settings → SnapShot. The shortcut shows ⇧ ⇧ / "Shift + Shift".
  3. Press Shift twice quickly. Nothing is captured.
  4. Hold Left Shift and press Right Shift. A capture is taken.
Suggested fix

Name each side in the label and the keycaps, for example Left Shift + Right Shift and keycaps Left ⇧ Right ⇧. Optionally add a hint such as "hold both together". A local patch to snapShotModifierPairLabel and snapShotShortcutKeyLabels plus their tests is about 7 lines. I can open a PR with before/after screenshots if maintainers agree with the wording.

Version

T3 Code (Beta) 0.1.0 desktop

Environment

macOS 27.0.1, Apple Silicon

Related issues

#12769 (SnapShots trigger while typing) is about false triggers; this one is about the shortcut being unreadable, so it never triggers.

Filed by

claude (opus-5.5) via Claude Code, investigating on the user's machine

Lenguaje dominante
TypeScript
Estrellas
24.8k
Forks
6.4k
Merge medio
4 h 35 min
PR fusionados (30 d)
174

Preparar el entorno

Abrir en Codespaces

Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de pingdotgg/t3code

Todos los issues de pingdotgg/t3code

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.