Dicter
La touche push-to-talk, maintenir ou taper, ce qu'affiche la pilule, comment le texte est inséré, et là où Keebye refuse d'écrire.
Appuyez sur votre touche push-to-talk, parlez, relâchez. La transcription se fait sur la phrase entière après le relâchement, et le texte est inséré dans l'app au premier plan.
La touche push-to-talk
Settings › Push-to-talk hotkey : "Hold this key to dictate; release to insert." Les changements s'appliquent immédiatement.
- Fn / Globe
- ⌘ gauche
- ⌘ droite (par défaut)
- ⌥ gauche
- ⌥ droite
Maintenir ou taper
- Appuyer sur la touche démarre l'enregistrement immédiatement.
- Relâcher après 400 ms ou plus : maintien pour parler. L'enregistrement s'arrête et le texte est inséré.
- Relâcher avant 400 ms : tap. L'enregistrement continue. Un second tap arrête et insère.
- Esc annule un enregistrement en cours. Rien n'est inséré.
- Une phrase seule est plafonnée à 300 secondes (5 minutes) ; ensuite l'enregistrement s'arrête et insère automatiquement.
La pilule
La pilule est un petit panneau toujours visible et traversant les clics, en bas au centre de votre écran principal, à 96 pt du bord inférieur. Elle apparaît sur tous les Spaces et ne prend jamais le focus.
- Au repos : un glyphe de micro.
- "Downloading speech model… NN%" pendant le téléchargement d'un modèle, ou "Model download failed — reopen Keebye to retry".
- "Listening…" → "Transcribing…" → "Inserting…" pendant une dictée.
- Messages courts pendant environ 2,6 secondes : "Couldn't insert: <reason>", "Text left on clipboard — paste manually" ou "Dictation paused: secure input on (<App>)".
Comment le texte est inséré
Paste (fast), le mode par défaut : Keebye photographie votre presse-papiers, écrit la transcription comme un élément de pasteboard éphémère que les gestionnaires de presse-papiers ignorent, synthétise ⌘V, puis au bout de 250 ms restaure votre presse-papiers précédent si Keebye possède toujours le pasteboard. "Restore clipboard after paste" est activé par défaut.
Dans Terminal.app, iTerm2, Warp, WezTerm et kitty, le collage est découpé en blocs de 2000 bytes au maximum, avec 50 ms d'intervalle.
Typing (terminals / SSH / any layout) : Keebye envoie des frappes Unicode par blocs de 16 caractères, à 4 ms d'intervalle, sans toucher au presse-papiers. C'est indépendant de la disposition clavier et ça fonctionne en SSH et dans tmux. Si la frappe échoue, le texte reste dans le presse-papiers et la pilule affiche "Text left on clipboard — paste manually".
Champs de mot de passe et saisie sécurisée
Si la saisie sécurisée est active, ou si l'élément qui a le focus est un champ de mot de passe, Keebye n'écrit rien dans le presse-papiers et affiche "Couldn't insert: Secure input is active (<App>) — dictation is blocked" ou "Couldn't insert: A password field is focused — dictation is blocked". Ces dictées ne sont jamais enregistrées dans l'historique. Une vérification toutes les 5 secondes avertit aussi "Dictation paused: secure input on (<App>)" tant que la saisie sécurisée reste active.
Le micro au chaud
Le flux du micro démarre à votre première dictée puis reste actif pendant toute la vie de l'app : l'indicateur de micro de macOS reste donc allumé après la première utilisation. Un pré-enregistrement glissant de 500 ms est ajouté au début de chaque phrase. La première dictée d'une session peut tout de même payer la latence de démarrage du flux, et des mots prononcés avant ce tampon de 500 ms peuvent encore être tronqués. L'audio est ré-échantillonné en 16 kHz mono et un changement de périphérique est détecté en moins d'une seconde.