Modificateurs et minutage
Un déclencheur de geste peut exiger des modificateurs : des touches du clavier ou des boutons de souris supplémentaires que vous maintenez ou enfoncez pendant le geste. La même forme tracée peut alors exécuter une action différente avec chaque modificateur. Cette page énonce les règles exactes. Les déclencheurs de raccourci ont aussi des modificateurs, avec des règles plus simples (voir Modificateurs d'un raccourci).
Choisir les modificateurs
Les modificateurs font partie d'un déclencheur de geste dans l'éditeur d'actions.
- Ouvrez l'action sur la page Actions et développez son déclencheur de geste.
- Sous Modificateurs, cliquez sur chaque touche ou bouton dont le geste a besoin ①. Cliquez de nouveau pour le retirer.
- En mode Avancé, choisissez le Moment ② : Avant, Après ou L'un ou l'autre.
- En mode Avancé, si un modificateur clavier est choisi, choisissez ce qui arrive aux touches maintenues pendant l'exécution de l'action ③ (voir Touches de modification maintenues).
Les modificateurs que vous pouvez choisir :
| Modificateur | Compte comme |
|---|---|
| Ctrl, Shift, Alt, Win | L'une ou l'autre touche de la paire : Ctrl gauche et Ctrl droite sont toutes deux Ctrl. |
| Bouton gauche, Bouton du milieu, Bouton droit, Bouton latéral 1, Bouton latéral 2 | Un bouton de souris autre que celui avec lequel vous tracez. |
Lorsque Windows a inversé les boutons de la souris, les noms des boutons suivent Windows : le bouton droit est celui qui ouvre les menus contextuels.
Mode Avancé. Moment et Touches de modification maintenues ne s'affichent qu'en mode Avancé. En mode Simple, un nouveau déclencheur de geste utilise L'un ou l'autre et Relâcher, puis rétablir. Le mode Simple ne modifie jamais une valeur définie en mode Avancé.
La règle de correspondance exacte
Un geste enregistre deux ensembles de modificateurs pendant que vous le tracez :
- Maintenus avant : les touches et boutons de souris maintenus au moment où vous appuyez sur le bouton de tracé, plus un cran de molette récent (Crans de molette).
- Enfoncés pendant : chaque touche et bouton de souris enfoncé après le début du geste. Une touche reste dans cet ensemble même si vous la relâchez avant la fin. Une touche que vous mainteniez déjà avant l'appui ne compte pas comme enfoncée pendant, quelle que soit la durée de maintien.
Les modificateurs d'un déclencheur doivent être égaux à l'un de ces ensembles exactement. Un sous-ensemble ne suffit pas, et les touches en trop ne sont pas ignorées :
- Un déclencheur qui exige Shift ne correspond pas pendant que vous maintenez Maj et Alt.
- Un déclencheur qui exige Shift et Alt ne correspond pas pendant que vous maintenez seulement Maj.
Les deux ensembles ne sont jamais combinés. Maintenir Maj avant et appuyer sur Ctrl pendant donne « Maj » avant et « Ctrl » pendant. Aucun des deux ensembles n'est « Maj et Ctrl » : un déclencheur qui exige les deux touches ne correspond donc pas.
Moment
Le moment indique lequel des deux ensembles un déclencheur vérifie :
| Moment | Le déclencheur correspond quand |
|---|---|
| Avant | Les touches maintenues avant sont égales à ses modificateurs. Ce que vous enfoncez pendant n'a pas d'importance. |
| Après | Les touches enfoncées pendant sont égales à ses modificateurs. Ce que vous mainteniez avant n'a pas d'importance. |
| L'un ou l'autre | L'un des deux ensembles est égal à ses modificateurs. |
Un nouveau déclencheur de geste créé dans la fenêtre de configuration utilise L'un ou l'autre. Un déclencheur de geste écrit dans le fichier de configuration sans moment utilise Avant.
Aucun modificateur signifie aucun du tout
Un déclencheur sans modificateur est l'exception à la règle du moment. Il ne correspond que lorsque les deux ensembles sont vides : rien de maintenu quand vous avez appuyé sur le bouton de tracé, rien d'enfoncé pendant le tracé, et aucun cran de molette récent. Son moment n'a pas d'importance.
Un geste simple ne l'emporte donc jamais sur sa variante avec modificateur. Si une action a un Balayer vers la gauche simple et une autre Balayer vers la gauche avec Ctrl, Après, appuyer sur Ctrl pendant le tracé exécute toujours la seconde, quelle que soit celle qui vient en premier dans la liste.
Chronologies
Dans ces exemples, le bouton de tracé est le bouton droit, et Ctrl est une touche de modification ignorée, comme par défaut (Touches de modification ignorées).
| Ce que vous faites | Maintenus avant | Enfoncés pendant | Correspond | Ne correspond pas |
|---|---|---|---|---|
| Maintenir Maj. Appuyer sur le bouton droit, tracer, relâcher. Relâcher Maj. | Maj | (aucun) | Maj Avant, Maj L'un ou l'autre | Maj Après, aucun modificateur |
| Appuyer sur le bouton droit, commencer à tracer, appuyer sur Ctrl et le relâcher, terminer, relâcher. | (aucun) | Ctrl | Ctrl Après, Ctrl L'un ou l'autre | Ctrl Avant, aucun modificateur |
| Maintenir Maj. Appuyer sur le bouton droit, appuyer sur Alt pendant le tracé, relâcher. | Maj | Alt | Maj Avant, Alt Après, Maj L'un ou l'autre, Alt L'un ou l'autre | Maj et Alt (tout moment) |
| Maintenir Maj et Alt. Appuyer sur le bouton droit, tracer, relâcher. | Maj, Alt | (aucun) | Maj et Alt Avant ou L'un ou l'autre | Maj Avant |
| Appuyer sur le bouton droit, tracer, appuyer sur Maj et le relâcher, puis appuyer sur Alt, relâcher. | (aucun) | Maj, Alt | Maj et Alt Après ou L'un ou l'autre | Maj Après, Alt Après |
| Maintenir Ctrl. Appuyer sur le bouton droit. | Rien : Ctrl est une touche de modification ignorée, le clic droit va donc à la fenêtre comme un clic normal et aucun geste ne démarre. | |||
| Maintenir le bouton gauche. Appuyer sur le bouton droit, tracer, relâcher. | Bouton gauche | (aucun) | Bouton gauche Avant ou L'un ou l'autre | aucun modificateur |
| Appuyer sur le bouton droit, tracer, cliquer avec le bouton du milieu, relâcher. | (aucun) | Bouton du milieu | Bouton du milieu Après ou L'un ou l'autre | aucun modificateur |
| Tourner la molette, puis appuyer sur le bouton droit dans la demi-seconde et tracer. | Molette | (aucun) | Aucun déclencheur créé dans la fenêtre de configuration | aucun modificateur |
Quand plusieurs déclencheurs du même groupe d'applications correspondent, comme à la troisième ligne, le premier dans l'ordre de reconnaissance s'exécute (Reconnaissance).
Les boutons de souris comme modificateurs
- Maintenus avant. Un bouton de souris maintenu quand vous appuyez sur le bouton de tracé. L'appui sur ce bouton a déjà atteint la fenêtre sous le pointeur, puisqu'aucun geste n'était encore en cours.
- Enfoncés pendant. Un bouton de souris enfoncé pendant le tracé. Son appui et son relâchement sont tenus à l'écart de la fenêtre sous le pointeur et ne comptent que pour le geste. Cela inclut un second bouton de tracé : enfoncé pendant un geste, c'est un modificateur, pas le début d'un nouveau geste.
Un événement global de bouton de souris se déclenche quand même pour un bouton enfoncé pendant un geste (Événements globaux).
Les touches que vous ne pouvez pas maintenir avant un geste
Deux sortes de modificateurs ne peuvent jamais être maintenues avant le début d'un geste :
- Une touche de modification ignorée. La maintenir quand vous appuyez sur le bouton de tracé signifie « pas de geste cette fois » : le geste ne démarre donc jamais (Touches de modification ignorées).
- Un bouton de tracé. Appuyer sur un bouton de tracé démarre son propre geste : il ne peut donc pas être maintenu en attendant un autre geste.
Avec le moment Avant, le sélecteur de modificateurs refuse les deux et affiche la raison quand vous pointez sur la puce refusée. Avec Après ou L'un ou l'autre, vous pouvez les choisir, car les enfoncer pendant le geste fonctionne. Un déclencheur déjà configuré ainsi (par exemple dans le fichier de configuration) affiche sa puce en rouge avec la raison en dessous, et ne correspond jamais par l'ensemble avant.
Crans de molette
Tourner la molette de la souris peu avant d'appuyer sur un bouton de tracé compte comme un modificateur maintenu avant : Fenêtre de modificateur de molette sur la page Général définit ce délai (500 ms par défaut). Tourner la molette pendant le tracé compte comme enfoncé pendant. Molette vers le haut et molette vers le bas sont des modificateurs distincts.
Le moteur reconnaît les modificateurs de molette, mais le sélecteur de modificateurs ne les propose pas : un déclencheur créé dans la fenêtre de configuration n'en a donc jamais. Un tel déclencheur ne correspond pas à un geste que vous commencez dans la fenêtre de modificateur de molette après avoir fait défiler : le cran de molette récent est un modificateur que le déclencheur ne liste pas. C'est voulu. Si vous tracez souvent juste après avoir fait défiler, réduisez Fenêtre de modificateur de molette (mode Avancé) ; à 0, les crans de molette antérieurs ne comptent pas. Les crans de molette dans une zone d'exclusion qui couvre la molette ne comptent jamais.
Touches de modification maintenues
Quand une action démarre, les touches que vous mainteniez pour son déclencheur peuvent être encore enfoncées. Une action qui tape du texte ou appuie sur des touches les enverrait alors avec Ctrl ou Alt toujours maintenue. Touches de modification maintenues détermine ce qui se passe :
- Relâcher, puis rétablir (par défaut pour un nouveau déclencheur). Avant l'exécution de l'action, le moteur relâche les touches de modification que le déclencheur a reconnues. Une fois l'action terminée, y compris les éventuelles actions avant et après, il n'enfonce de nouveau que les touches que vous maintenez encore physiquement. Pendant qu'elles sont relâchées, leur répétition automatique est retenue, pour qu'une touche maintenue ne se réenfonce pas au milieu de l'action. Une touche que vous avez vous-même relâchée puis réenfoncée est laissée à votre charge.
- Laisser enfoncées. Rien n'est relâché. Le script de l'action gère lui-même les touches. Un déclencheur écrit dans le fichier de configuration sans ce paramètre utilise Laisser enfoncées.
Pour un geste, seuls les modificateurs clavier sont relâchés ; un bouton de souris maintenu ne l'est jamais. Le choix ne s'affiche que si le déclencheur a un modificateur clavier. Si la gestion des saisies s'arrête pendant l'exécution de l'action (par exemple si le moteur est désactivé), rien n'est réenfoncé.
Comment les modificateurs déterminent l'action exécutée
Les modificateurs sont une condition d'un déclencheur, vérifiée en même temps que le geste, le bouton de tracé, le profil actif et, si le groupe d'applications les utilise, ses zones. Ils ne changent jamais le groupe d'applications dont les actions sont essayées en premier :
- Le groupe d'applications de la fenêtre où le geste commence est essayé en premier. Une action de ce groupe dont le déclencheur correspond s'exécute, même si une action de Global correspondrait aussi.
- Au sein du groupe, les actions sont essayées dans l'ordre de reconnaissance, et le premier déclencheur qui correspond l'emporte ; avec des zones, le déclencheur qui correspond avec le moins de cellules l'emporte, et l'ordre départage les égalités (Portée et repli).
- Ce n'est que si rien ne correspond dans le groupe que le geste se rabat sur Global, si le repli est activé (Portée et repli).
L'éditeur d'actions signale deux déclencheurs d'un même groupe que le même geste peut satisfaire, sauf si le premier est le plus restrictif des deux, et indique lequel l'emporte.
Modificateurs d'un raccourci
Les modificateurs d'un raccourci sont Ctrl, Maj, Alt et Windows, et ils doivent correspondre exactement : Ctrl+K ne s'exécute pas pour Ctrl+Maj+K. Un raccourci n'a ni moment ni modificateurs de bouton de souris. Voir Raccourcis.