Puis-je enregistrer / lire des macros dans Visual Studio 2012/2013/2015/2017/2019?

193

Apparemment, les macros ont été supprimées de Visual Studio 2012.

Existe-t-il un plugin / extension / outil qui me permettra d'enregistrer et de jouer des macros de clavier (un peu comme la macro temporaire d'enregistrement / lecture dans Visual Studio 2010)?

Par exemple, j'utilise généralement une macro lors de la conversion de code d'une langue vers une autre ou pour générer rapidement des propriétés à partir d'une liste de textes, etc.

laktak
la source
1
Il semble que vous souhaitiez peut-être examiner les modèles T4, au moins pour vos scénarios de génération de code.
John Saunders
Visual Studio 2012 et macros - viva64.com/en/b/0175
2013 ne prend toujours pas en charge les macros! - voir bharry blogs.msdn.com/b/bharry/archive/2013/06/03/…
laktak
3
MISE À JOUR: Ils sont de retour! Une nouvelle extension pour VS2013 a été publiée permettant aux utilisateurs «d'enregistrer la plupart des commandes dans Visual Studio, y compris les opérations d'édition de texte». (détails ici: visualstudiogallery.msdn.microsoft.com/… )
kmote
1
À lire sur la réaction de Jon Robbins de
Jason Evans

Réponses:

177

Vous pouvez essayer l' extension Macros de texte pour Visual Studio 2012-2019 (je suis l'auteur). Il fait essentiellement la même chose que les macros Notepad ++ (édition de texte, pas d'automatisation de l'interface utilisateur).

Le code est open source ( GitHub ), alors n'hésitez pas à apporter des améliorations :-)

Xavier Poinas
la source
20
+1 Que Dieu vous bénisse. Il y a quelques minutes, j'ai été horrifié de découvrir l'omission des macros par VS2012, et vous l'avez posté 11 heures avant d'arriver ici!
Shaul Behr
3
Xavier, je viens d'installer votre extension, et il manque une prise en charge pour la capture des opérations de recherche (comme F3 pour trouver la prochaine instance de texte). Ceci est très utile pour opérer sur du texte que vous ne pouvez pas utiliser uniquement avec les mouvements de curseur standard. Y a-t-il une chance d'ajouter ceci?
pxb
2
@pxb bon point, je n'ai jamais pensé à les utiliser mais je peux les voir utiles. J'ai créé un problème et j'y reviendrai certainement.
Xavier Poinas
Impressionnant! Merci beaucoup. Je mourais sans support de macro.
Sam Woods
J'aime cela! C'est tellement plus agréable que l'implémentation lente des macros dans VS2010!
Vlad Iliescu
159

Dans cette version de Visual Studio, bien qu'il y ait littéralement des centaines de fonctionnalités, nous en avons en fait retiré certaines. L'un d'eux est la fonction d'automatisation des macros, y compris l'enregistrement / la relecture de macro, les projets de macro et l'IDE de macros. Bien que nous sachions que les macros ont été utiles à ceux qui les utilisent, nos données d'utilisation montrent malheureusement que moins de 1% des développeurs de Visual Studio profitent de cette fonctionnalité. Par conséquent, nous nous sommes retrouvés à investir plus profondément dans les zones Visual Studio qui sont utilisées tous les jours et nous n'avons pas mis à jour les macros pour plusieurs versions.

Source: Macros dans Visual Studio 11 Developer Preview

J'ai commencé à contourner ce problème (bien que cela ne soit pas pratique) en coupant / collant dans Notepad ++ , en y enregistrant et en exécutant la macro, puis en la coupant / collant dans Visual Studio 2012.

Gars
la source
186
Couper le code de votre IDE de classe mondiale pour le coller dans Notepad ++ pour enregistrer et lire une macro simple est un échec clair de Microsoft. Cependant, je conviens que c'est la solution actuellement la plus simple à cela. Triste mais vrai.
mattmc3
69
Moins de 1% est définitivement fou, tous les développeurs (VS / C #) que je connais ont utilisé des macros, je suis d'accord pas tous les jours.
Sanjeevakumar Hiremath
13
Une autre raison de rester avec VS2010 - ou de demander qu'il soit ramené ici visualstudio.uservoice.com/forums/121579-visual-studio/…
Mister Cook du
14
C'est incroyable ... 1% ??? Cela ne peut pas être vrai! Cette fonctionnalité doit être ajoutée à nouveau - J'ai utilisé des macros constamment en 2010.
Rockdocta
44
@SanjeevakumarHiremath Je suis d'accord que le nombre semble faible (pas sûr qu'il soit composé), mais c'est un argument en faveur de toujours cocher cette case lorsque vous installez un produit Microsoft qui dit "envoyer des statistiques d'utilisation anonymes pour aider à améliorer les produits MS."
Michael
48

Démarquez-vous et votez pour ramener les macros!

http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/2650757-bring-back-macros

MISE À JOUR (04/10/2013):

Yay! Grâce à vos votes, les macros sont désormais envisagées pour le retour! Continuer à pousser!

Nous examinons actuellement la faisabilité de fournir une capacité de script dans une future version de Visual Studio. Veuillez continuer à nous faire part de vos commentaires sur la capacité de script que nous devrions offrir pendant que nous recherchons cette suggestion.

Tony Goodhew, gestionnaire de programme, VS Pro.

Trident D'Gao
la source
1
A voté +3. Cependant, j'ai fait de même pour la prise en charge Bluetooth SPP dans WP7 (qui était la fonctionnalité demandée n ° 1), et il leur a fallu plus de deux ans pour implémenter une version limitée de SPP. :(
eduncan911
24

Depuis que j'utilise Sublime Text, j'ai découvert qu'il existe en fait de meilleures façons de modifier du texte qu'en utilisant des macros.

Sublime vous permet de modifier votre texte avec plusieurs curseurs à la fois. C'est difficile à expliquer mais il y a plusieurs animations qui le montrent sur http://www.sublimetext.com

Capture d'écran sublime

J'ai également ajouté Sublime en tant qu'outil externe à Visual Studio:

  • ouvrir Outils / Outils externes
  • ajouter: Sublime, sélectionnez l'exe et utilisez ces arguments: $ (ItemPath): $ (CurLine): $ (CurCol)
  • (déplacez-le également vers le haut car cela facilite la prochaine étape, sinon souvenez-vous de sa position)
  • Ensuite, allez dans Personnaliser / Clavier, recherchez Tools.ExternalCommand1 et ajoutez votre raccourci clavier préféré.

Cela ouvrira le document actuel dans Sublime à la même position du curseur que vous étiez dans VS.

(aussi, Sublime peut faire des macros au cas où vous en auriez encore besoin)

laktak
la source
3
Voici une grande extension pour VS2012 + qui ajoute ce type de montage, elle m'a été très utile: visualstudiogallery.msdn.microsoft.com/…
Duane
2
Cela dit, il y a des moments où les macros sont pratiques, comme devoir effectuer la même action dans plusieurs fichiers.
Duane
19

LES MACROS SONT DE RETOUR!

En cours de révision → Terminé

Nous avons entendu vos commentaires haut et fort et nous avons travaillé sur une solution. Nous sommes donc très heureux d'annoncer que nous avons maintenant publié une version de macros qui prend en charge Visual Studio 2015 et Visual Studio 2013.

Pendant que nous y étions, nous en avons profité pour corriger quelques bugs et améliorer les raccourcis clavier. Nous espérons que vous l'apprécierez.

Pour plus d'informations, consultez l'article de blog ici: http://aka.ms/vsmacros

Nous avons également ouvert le code sous la licence MIT. Si vous avez des suggestions ou des contributions, n'hésitez pas à créer un problème ou une demande d'extraction dans le nouveau référentiel GitHub: http://github.com/Microsoft/VS-Macros

Justin Clareburt Gestionnaire de programme principal

Macros pour Visual Studio

Macros pour Visual Studio est une extension pour Visual Studio 2013 et Visual Studio 2015 qui permet l'utilisation de macros pour automatiser les tâches répétitives dans l'EDI. L'extension peut enregistrer la plupart des commandes dans Visual Studio, y compris les opérations d'édition de texte. Caractéristiques

  • Enregistrer et lire les opérations de document actives et les commandes Visual Studio IDE
  • Lecture plusieurs fois
  • Gérer et conserver des macros avec un explorateur de macros
  • Attribuer des liaisons de clavier à n'importe quelle macro
  • Macros enregistrées en tant que fichiers JavaScript qui appellent les API VS DTE
  • Édition de macros dans Visual Studio avec DTE IntelliSense
  • Arrêter la lecture
  • Exemples de macros

entrez la description de l'image ici

laktak
la source
Ce plugin est très buggé. Je l'ai finalement fait fonctionner sur VS2017, mais il a cessé de fonctionner quelques heures plus tard. Les avis sont largement négatifs.
StuartN
Veuillez noter que bien que le code source soit open source, "Cette extension a été initialement créée par un groupe de stagiaires de l'équipe Visual Studio. Elle n'est plus maintenue"
Yann Duran
16

L' extension Visual Commander (développée par mes soins) prend en charge l'enregistrement et la lecture de macro de modification de code dans Visual Studio 2015/2017/2019.

Sergey Vlasov
la source
Cette extension est superbe! C'est GreaseMonkey pour Visual Studio! J'ai fait du bon travail avec lui (j'ai fait que WebEssentials compile tous les fichiers MOINS de mon projet), et j'ai aussi fait des ravages dans le projet! Merci beaucoup pour cet excellent logiciel.
Ashraf Sabry
Je l'ai essayé avec VS2015 et il n'enregistre pas les actions de REMPLACEMENT: '(
Gabrielizalo
5

Je viens d'être informé que Microsoft a publié une extension de Visual Studio 2013 pour prendre en charge à nouveau les macros:

https://visualstudiogallery.msdn.microsoft.com/d3fbf133-e51b-41a2-b86f-9560a96ff62b

Je conseillerais de voter pour la fonctionnalité afin de les encourager à rendre l'extension également disponible pour Visual studio 2015: https://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/2650757-bring-back- macros

codetuner
la source
Cela sonnait plutôt bien, mais les touches CTRL-M, P sont vouées à "arrêter le contour". Même après avoir supprimé cette liaison, la lecture par défaut ne semble pas fonctionner.
Wheezil
2

VSScript permet d'enregistrer, d'écrire et de modifier des macros dans Lua , même si je n'ai pas encore pu le faire fonctionner avec Visual Studio 2015 (le bouton de commande est grisé; la documentation indique que Visual Studio 2005 à 2015 RC est pris en charge).

Il est actuellement publié en tant que freeware.

Erwin Mayer
la source
2

L' extension Visual Commander vous permet d'automatiser les tâches répétitives dans Visual Studio.

alexanoïde
la source