Interception des commandes du Service de langage héritéIntercepting Legacy Language Service Commands

Avec Visual StudioVisual Studio, vous pouvez avoir les commandes d’intercept de service de langage qui serait autrement en charge l’affichage de texte.With Visual StudioVisual Studio, you can have the language service intercept commands that the text view would otherwise handle. Cela est utile pour le comportement spécifique au langage qui ne gère pas de l’affichage de texte.This is useful for language-specific behavior that the text view does not manage. Vous pouvez intercepter ces commandes en ajoutant un ou plusieurs filtres de commande pour l’affichage de texte à partir de votre service de langage.You can intercept these commands by adding one or more command filters to the text view from your language service.

Mise en route et le routage de la commandeGetting and Routing the Command

Un filtre de commande est un IOleCommandTarget objet qui surveille certaines séquences de caractères ou les commandes de touches.A command filter is an IOleCommandTarget object that monitors certain character sequences or key commands. Vous pouvez associer plusieurs filtres de commande à une vue de texte unique.You can associate more than one command filter with a single text view. Chaque vue de texte conserve une chaîne de commande de filtres.Each text view maintains a chain of command filters. Après avoir créé un nouveau filtre de commande, vous ajoutez le filtre à la chaîne pour l’affichage de texte appropriée.After you create a new command filter, you add the filter to the chain for the appropriate text view.

Appelez le AddCommandFilter méthode sur le IVsTextView pour ajouter le filtre de commande à la chaîne.Call the AddCommandFilter method on the IVsTextView to add your command filter to the chain. Lorsque vous appelez AddCommandFilter, Visual StudioVisual Studio retourne un autre filtre de commande à laquelle vous pouvez passer les commandes qui ne gère pas de filtre de votre commande.When you call AddCommandFilter, Visual StudioVisual Studio returns another command filter to which you can pass the commands that your command filter does not handle.

Vous disposez des options suivantes pour la gestion des commandes :You have the following options for command handling:

  • Gérer la commande, puis passer la commande une session sur le filtre de la commande suivante dans la chaîne.Handle the command and then pass the command on to the next command filter in the chain.

  • Gérer la commande et ne passez pas de la commande une session sur le filtre de commande suivant.Handle the command and do not pass the command on to the next command filter.

  • Ne gèrent pas la commande, mais passer la commande une session sur le filtre de commande suivant.Do not handle the command, but pass the command on to the next command filter.

  • Ignorer la commande.Ignore the command. Ne les gèrent pas dans le filtre actuel et ne le passez pas une session sur le filtre suivant.Do not handle it in the current filter, and do not pass it on to the next filter.

    Pour plus d’informations sur les commandes qui doit gérer votre service de langage, consultez commandes Important pour les filtres de Service de langage.For information about which commands your language service should handle, see Important Commands for Language Service Filters.