Skip to main content
Chaque raccourci présenté sur cette page est défini par défaut : vous pouvez les réattribuer. Exécutez /shortcuts pour les parcourir et les réattribuer de manière interactive, ou modifiez directement la section keymap de votre fichier de configuration.

Raccourcis de saisie

Ces raccourcis fonctionnent pendant la saisie dans le prompt.
Sur macOS, Alt correspond à la touche Option. Certains raccourcis ci-dessous utilisent Alt (Option) comme touche modificatrice. Nous vous recommandons de configurer Option comme Meta pour une expérience optimale.
  • Nécessite un terminal compatible. Les terminaux qui ne prennent pas en charge le protocole clavier Kitty ne peuvent pas distinguer Shift+Enter de Enter. Utilisez Alt+Enter ou Ctrl+J à la place.

Raccourcis de mode et de modèle

Le mode Smart est déployé progressivement ; il est ignoré dans le cycle s’il n’est pas activé pour votre compte. Autonomous n’apparaît que dans les sessions sandbox, où il constitue le seul mode d’autorisation disponible.
Vous pouvez également changer de mode à l’aide de commandes slash : /normal, /accept-edits, /smart, /plan, /bypass ou /mode <name>. Utilisez /ask <question> comme commande oneshot pour poser des questions sans changer de mode.

Modifier les raccourcis

Exécutez /shortcuts pour ouvrir une liste interactive de tous les raccourcis, regroupés par catégorie. Saisissez du texte pour rechercher dans toutes les catégories, appuyez sur Enter sur une action pour la réattribuer, puis appuyez sur la combinaison de touches souhaitée. Chaque ligne affiche l’identifiant context.action de l’action (par exemple editor.accept_line) : c’est celui à utiliser lors de la modification manuelle du fichier de configuration. Toute réattribution effectuée depuis /shortcuts enregistre la nouvelle association dans votre configuration utilisateur. Pour définir directement des associations, ajoutez une section keymap à votre fichier de configuration :
Il est impossible de dissocier Ctrl+C : ce raccourci annule toujours l’agent en cours d’exécution.

Édition de texte

Le champ de saisie utilise des raccourcis clavier de type readline ou Emacs pour l’édition de texte.

Personnaliser les raccourcis clavier

Vous pouvez consulter tous les raccourcis clavier — et modifier la plupart d’entre eux — depuis la CLI ou via le fichier de configuration.

Parcourir les raccourcis avec /shortcuts

Exécutez /shortcuts pour ouvrir un sélecteur interactif répertoriant tous les raccourcis clavier, regroupés par catégorie (Saisie, Mode et modèle, Édition de texte, Listes et sélecteurs, Complétion, Prompts et panneaux, Éditeur de configuration, etc.). Chaque ligne affiche les touches actives, une description et l’identifiant context.action du raccourci (par ex. editor.insert_newline) — l’identifiant à utiliser pour définir des dérogations dans les fichiers de configuration. Saisissez du texte pour rechercher dans toutes les catégories.

Réattribution interactive

Dans /shortcuts, appuyez sur Entrée sur la ligne du raccourci, puis saisissez la nouvelle combinaison de touches :
La modification prend effet immédiatement et est enregistrée dans la section keymap de votre fichier de configuration utilisateur. Elle est donc conservée d’une session à l’autre. Appuyez sur Esc pour annuler sans rien modifier. Certaines touches « chrome » globales (effacer l’écran, l’afficheur de trace de raisonnement, forcer le redessinage complet) ne peuvent pas être réattribuées de manière interactive — le sélecteur affiche can't be rebound — car le prompt de réattribution doit capturer toutes les touches. Vous pouvez toutefois les remplacer via le fichier de configuration.

Réattribution via le fichier de configuration

Ajoutez une section keymap à votre configuration utilisateur (~/.config/devin/config.json ; %APPDATA%\devin\config.json sous Windows). Les dérogations sont organisées par contexte, puis par action :
  • Une valeur peut être une spécification de touche unique, une liste de spécifications (elles déclenchent toutes l’action) ou une liste vide [] pour désassocier l’action.
  • Les dérogations remplacent entièrement les valeurs par défaut intégrées pour cette action ; les actions non répertoriées conservent leurs valeurs par défaut.
  • Recherchez les noms context.action dans /shortcuts — chaque ligne affiche son identifiant.
Consultez la référence du fichier de configuration pour connaître la syntaxe complète des spécifications de touches.

Syntaxe des spécifications de touches

Une spécification de touche se compose de zéro ou plusieurs modificateurs séparés par des -, suivis d’un nom de touche, par exemple ctrl-shift-p, alt-enter, f5, K :

Validation et conflits

Les entrées non valides sont signalées comme des avertissements au démarrage et ignorées ; le reste de vos dérogations et de votre configuration continue de s’appliquer :
Cela couvre les noms de contextes/actions inconnus, les spécifications de touches mal formées, les valeurs de type incorrect et les dérogations qui entrent en conflit avec une autre liaison dans le même contexte (la dérogation en conflit revient à sa valeur par défaut). Ctrl+C (annuler) ne peut pas être dissocié.