Lier des raccourcis clavier aux éléments de menu
Pour lier un raccourci clavier à une commande de menu personnalisée, ajoutez simplement une entrée au fichier .vsct pour le package. Cette rubrique explique comment mapper un raccourci clavier à un bouton personnalisé, un élément de menu ou une commande de barre d’outils, et comment appliquer le mappage de clavier dans l’éditeur par défaut ou le limiter à un éditeur personnalisé.
Pour affecter des raccourcis clavier à des éléments de menu Visual Studio existants, consultez Identifier et personnaliser les raccourcis clavier.
Choisir une combinaison de touches
De nombreux raccourcis clavier sont déjà utilisés dans Visual Studio. Vous ne devez pas affecter le même raccourci à plusieurs commandes, car les liaisons en double sont difficiles à détecter et peuvent également entraîner des résultats imprévisibles. Par conséquent, il est judicieux de vérifier la disponibilité d’un raccourci avant de l’affecter.
Pour vérifier la disponibilité d’un raccourci clavier
Dans la fenêtre Environnement options>des outils>, sélectionnez Clavier.
Assurez-vous que l’utilisation du nouveau raccourci est définie sur Global.
Dans la zone Appuyer sur les touches de raccourci, tapez le raccourci clavier que vous souhaitez utiliser.
Si le raccourci est déjà utilisé dans Visual Studio, le raccourci actuellement utilisé par la zone affiche la commande que le raccourci appelle actuellement.
Essayez différentes combinaisons de clés jusqu’à ce que vous trouviez celle qui n’est pas mappée.
Remarque
Les raccourcis clavier qui utilisent Alt peuvent ouvrir un menu et ne pas exécuter directement une commande. Par conséquent, le raccourci actuellement utilisé par la zone peut être vide lorsque vous tapez un raccourci incluant Alt. Vous pouvez vérifier que le raccourci n’ouvre pas de menu en fermant la boîte de dialogue Options, puis en appuyant sur les touches.
La procédure suivante suppose que vous disposez d’un VSPackage existant avec une commande de menu. Si vous avez besoin d’aide pour cela, consultez Créer une extension avec une commande de menu.
Pour affecter un raccourci clavier à une commande
Ouvrez le fichier .vsct pour votre package.
Créez une section vide
<KeyBindings>
après celle-ci<Commands>
si elle n’est pas déjà présente.Avertissement
Pour plus d’informations sur les liaisons de clés, consultez Keybinding.
Dans la
<KeyBindings>
section, créez une<KeyBinding>
entrée.Définissez les attributs et
id
lesguid
attributs sur ceux de la commande que vous souhaitez appeler.Définissez l’attribut
mod1
sur Control, Alt ou Maj.La section KeyBindings doit ressembler à ceci :
<KeyBindings> <KeyBinding guid="<name of command set>" id="<name of command id>" editor="guidVSStd97" key1="1" mod1="CONTROL"/> </KeyBindings>
Si votre raccourci clavier nécessite plus de deux touches, définissez les attributs et
key2
lesmod2
attributs.Dans la plupart des cas, Shift ne doit pas être utilisé sans deuxième modificateur, car le fait d’appuyer dessus entraîne déjà la plupart des touches alphanumériques à taper une lettre majuscule ou un symbole.
Les codes de clé virtuelle vous permettent d’accéder à des clés spéciales qui n’ont pas de caractère associé à ces clés, par exemple les touches de fonction et la clé Backspace . Pour plus d’informations, consultez les codes de clé virtuelle.
Pour rendre la commande disponible dans l’éditeur Visual Studio, définissez l’attribut
editor
surguidVSStd97
.Pour rendre la commande disponible uniquement dans un éditeur personnalisé, définissez l’attribut sur le
editor
nom de l’éditeur personnalisé généré par le modèle de package Visual Studio lorsque vous avez créé le VSPackage qui inclut l’éditeur personnalisé. Pour rechercher la valeur du nom, recherchez dans la section un nœud dontname
l’attribut<Symbols>
se termine par «editorfactory
».<GuidSymbol>
Il s’agit du nom de l’éditeur personnalisé.
Exemple 1
Cet exemple lie le raccourci clavier Ctrl+Alt+C à une commande nommée cmdidMyCommand
dans un package nommé .MyPackage
<CommandTable>
. . .
<Commands>
. . .
</Commands>
<KeyBindings>
<KeyBinding guid="guidMyPackageCmdSet" id="cmdidMyCommand"
key1="C" mod1="CONTROL" mod2="ALT" editor="guidVSStd97" />
</KeyBindings>
. . .
</CommandTable>
Exemple 2
Cet exemple lie le raccourci clavier Ctrl+B à une commande nommée cmdidBold
dans un projet nommé .TestEditor
La commande est disponible uniquement dans l’éditeur personnalisé et non dans d’autres éditeurs.
<KeyBinding guid="guidVSStd97" id="cmdidBold" editor="guidTestEditorEditorFactory" key1="B" mod1="Control" />