soft
Raccourcis clavier
Un raccourci clavier, affiché. Il se rend en <kbd> imbriqués, écrit ses glyphes selon la plateforme, et peut écouter la combinaison qu'il montre si vous le lui demandez.
Utilisation
Exemples
Ce qu'on peut écrire
keys est une simple chaîne, séparée par des +, où ni la casse ni les espaces ne comptent. mod est le modificateur qui appartient au système, Command sur un Mac et Ctrl partout ailleurs, là où meta nomme cette touche physique au sens littéral. Un jeton que le design system ne connaît pas est dessiné exactement tel qu'il a été écrit, et la touche + s'écrit plus.
| Vous écrivez | macOS | Windows et Linux |
|---|---|---|
mod | Raccourci clavier : Commande | Raccourci clavier : Ctrl |
metacmdcommandwinsuper | Raccourci clavier : Commande | Raccourci clavier : Win |
ctrlcontrol | Raccourci clavier : Ctrl | Raccourci clavier : Ctrl |
altoptionopt | Raccourci clavier : Alt | Raccourci clavier : Alt |
shift | Raccourci clavier : Maj | Raccourci clavier : Maj |
enterreturn | Raccourci clavier : Entrée | Raccourci clavier : Entrée |
escescape | Raccourci clavier : Échap | Raccourci clavier : Échap |
space | Raccourci clavier : Espace | Raccourci clavier : Espace |
backspace | Raccourci clavier : Retour arrière | Raccourci clavier : Retour arrière |
deletedel | Raccourci clavier : Suppr | Raccourci clavier : Suppr |
tab | Raccourci clavier : Tab | Raccourci clavier : Tab |
updownleftright | Raccourci clavier : Flèche hautRaccourci clavier : Flèche basRaccourci clavier : Flèche gaucheRaccourci clavier : Flèche droite | Raccourci clavier : Flèche hautRaccourci clavier : Flèche basRaccourci clavier : Flèche gaucheRaccourci clavier : Flèche droite |
plus | Raccourci clavier : + | Raccourci clavier : + |
kf5, | Raccourci clavier : KRaccourci clavier : F5Raccourci clavier : , | Raccourci clavier : KRaccourci clavier : F5Raccourci clavier : , |
Variantes
variant dessine les touches teintées, contourées ou surélevées. Il n'y a ni prop de ton ni prop de couleur : toutes les peintures dérivent de la couleur héritée.
outline
elevated
Tailles
size accepte xs ou sm, et compact retire 4px à l'une comme à l'autre. Une touche d'un seul caractère est carrée.
xs
sm
xs compact
sm compact
Attaché
attached déplace la décoration de chaque touche vers le raccourci entier, si bien que la combinaison se lit comme une seule touche. C'est purement visuel : le balisage, les touches et le nom annoncé sont identiques.
One cap per key
attached
attached, no separator
Plateforme
platform impose le système au lieu de le lire une fois le composant dans la page, ce dont a besoin un tableau montrant tous les systèmes.
macOS
Windows
Linux
Unknown
Séparateur
separator est ce qui s'écrit entre deux touches, + par défaut. Une chaîne vide laisse l'écart en place et donne la convention macOS.
The default
Raccourci clavier : Ctrl + Maj + KNothing, the macOS convention
Raccourci clavier : Ctrl + Maj + KA middle dot
Raccourci clavier : Ctrl + Maj + KA slash
Dans le texte et dans les composants
Une touche prend sa taille dans l'échelle size, xs par défaut, et se place au milieu de la ligne qui l'entoure. Ses places habituelles sont la fin d'une ligne de menu, une infobulle, et le contrôle dont le raccourci est un second chemin.
Press Raccourci clavier : Ctrl + K to open the command palette, then type the first letters of what you are after. Raccourci clavier : Échap puts it away again.
Écoute
listen fait guetter au composant la combinaison qu'il affiche et émettre trigger. Les modificateurs sont comparés exactement, si bien que mod+k et mod+shift+k peuvent coexister. allowDefault conserve le raccourci du navigateur, et allowInInput laisse le raccourci se déclencher pendant une saisie dans un champ. Échap est signalé mais jamais annulé, il ferme donc toujours les dialogues. La comparaison lit le caractère produit par la touche : un symbole tapé avec Maj (?), un chiffre sur un clavier AZERTY et Option + lettre sur macOS ne correspondent pas, préférez donc les lettres et les touches nommées.
Raccourci clavier : Ctrl + KPress it anywhere on the page. Fired 0 times.
Raccourci clavier : Ctrl + S With allowDefault, the browser still saves the page. Fired 0 times.
Raccourci clavier : Ctrl + JQuiet while a field has the focus: 0
Raccourci clavier : Ctrl + JWith allowInInput, it fires there too: 0
API
Props
| Prop | Type | Défaut |
|---|---|---|
keys | string | aucune |
La combinaison, séparée par + : mod+k, ctrl+shift+p, alt+enter. La casse et les espaces sont sans importance. mod est le modificateur multiplateforme, Commande sur macOS et Ctrl partout ailleurs, tandis que meta désigne la touche Commande ou Windows elle-même. Un jeton inconnu s'affiche tel qu'il a été déclaré, et la touche + s'écrit plus. | ||
variant | HotkeysVariant'soft' | 'outline' | 'elevated' | 'soft' |
| Comment une touche est dessinée : teintée, contourée, ou soulevée de la page. | ||
attached | boolean | false |
| Dessine toute la combinaison comme une seule touche plutôt que plusieurs, ce qui place le séparateur à l'intérieur de la touche au lieu de le mettre entre deux. C'est purement visuel : le balisage et le nom annoncé sont identiques dans les deux cas. | ||
size | HotkeysSize'xs' | 'sm' | 'xs' |
| La taille des touches. Un raccourci est du décor à côté d'un autre texte, il part donc de la plus petite. | ||
compact | boolean | false |
| Retire 4px à la hauteur, en laissant le rembourrage et le texte tels quels. | ||
platform | HotkeysPlatform'mac' | 'windows' | 'linux' | 'other' | aucune |
| Force le système d'exploitation du clavier au lieu de le détecter, pour un rendu déterministe ou un hôte qui le sait déjà. | ||
separator | string | '+' |
| Ce qui est écrit entre deux touches. Une chaîne vide donne la convention macOS, où les symboles se suivent simplement. | ||
listen | boolean | false |
| Écoute réellement la combinaison et la rapporte. Désactivé par défaut : un composant dont le métier est d'afficher un raccourci ne doit pas capturer le clavier de la page sans qu'on le lui demande. | ||
allowDefault | boolean | false |
| Pendant l'écoute, laisse le navigateur continuer de faire ce que la combinaison fait normalement. Sans lui, le navigateur est arrêté, ce qui est tout l'intérêt de reprendre une combinaison. Échap n'est jamais arrêté : il doit rester la demande de fermeture des dialogues. | ||
allowInInput | boolean | false |
| Pendant l'écoute, se déclenche même quand le lecteur est en train de saisir dans un champ. Désactivé par défaut, pour qu'un raccourci ne parte pas au milieu d'une phrase. | ||
label | string | aucune |
| Ce que les lecteurs d'écran annoncent. Il retombe sur le dictionnaire du design system, qui écrit les modificateurs en mots : le glyphe gagne à l'écran, le mot gagne dans le nom accessible. | ||
Événements
| Événement | Type |
|---|---|
trigger | [event: KeyboardEvent] |
La combinaison a été pressée, avec l'événement clavier d'origine. Cet événement ne part que si listen est posé. | |