Можно ли записывать / воспроизводить макросы в Visual Studio 2012/2013/2015/2017/2019?


194

Видимо, макросы были удалены из Visual Studio 2012.

Существует ли плагин / расширение / инструмент, который позволит мне записывать и воспроизводить клавиатурные макросы (так же, как временные макросы для записи / воспроизведения в Visual Studio 2010)?

Например, я обычно использовал бы макрос при преобразовании кода с одного языка на другой или для быстрой генерации свойств из текстового списка и т. Д.


1
Похоже, что вы, возможно, захотите взглянуть на шаблоны T4, по крайней мере, для ваших сценариев генерации кода.
Джон Сондерс

Visual Studio 2012 и макросы - viva64.com/ru/b/0175

2013 все еще не поддерживает макросы! - см. bharry blogs.msdn.com/b/bharry/archive/2013/06/03/…
laktak

3
ОБНОВЛЕНИЕ: они вернулись! Вышло новое расширение для VS2013, позволяющее пользователям «записывать большинство команд в Visual Studio, включая операции редактирования текста». (подробности здесь: visualstudiogallery.msdn.microsoft.com/… )
kmote

1
Стоит прочитать о реакции Джона Роббинса на
Джейсон Эванс

Ответы:


177

Вы можете попробовать текстовые макросы для расширения Visual Studio 2012-2019 (я автор). Он в основном делает то же самое, что и макросы Notepad ++ (редактирование текста, без автоматизации пользовательского интерфейса).

Код с открытым исходным кодом ( GitHub ), так что не стесняйтесь вносить улучшения :-)


20
+1 Бог благословит тебя. Всего несколько минут назад я с ужасом обнаружил отсутствие макросов в VS2012, и вы опубликовали это за 11 часов до того, как я попал сюда!
Шауль Бер

3
Ксавье, я только что установил ваше расширение, и единственное, чего не хватает, - это поддержки захвата операций поиска (например, F3 для поиска следующего экземпляра текста). Это очень полезно для работы с текстом, который вы не можете получить, используя только стандартные перемещения курсора. Есть ли шанс добавить это?
pxb

2
@pxb хорошая мысль, я никогда не использовал их, но вижу их полезными. Я создал проблему и обязательно буду ее изучать.
Ксавье Поинас

Потрясающие! Огромное спасибо. Я умирал без поддержки макросов.
Сэм Вудс

Я люблю это! Это намного приятнее, чем медленная реализация макроса в VS2010!
Влад Илиеску

160

В этой версии Visual Studio, хотя есть буквально сотни функций, есть некоторые, которые мы фактически убрали. Одним из них является функция автоматизации макросов, включая запись / воспроизведение макросов, макропроекты и макросы IDE. Хотя мы знаем, что макросы были полезны для тех, кто их использует, к сожалению, наши данные об использовании показывают, что менее 1% разработчиков Visual Studio используют эту функцию. Поэтому мы обнаружили, что вкладываем больше средств в области Visual Studio, которые используются каждый день, и не обновляли макросы для нескольких выпусков.

Источник: Макросы в Visual Studio 11 Developer Preview.

Я начал обходить это (хотя и неудобно), вырезая / вставляя в Notepad ++ , записывая и запуская там макрос, а затем вырезая / вставляя его обратно в Visual Studio 2012.


187
Вырезать код из вашей IDE мирового класса для вставки в Notepad ++ для записи и воспроизведения простого макроса - явная ошибка Microsoft. Тем не менее, я согласен, что в настоящее время это самое простое решение для этого. Грустно, но верно.
mattmc3

69
Менее 1% определенно составлено, каждый (VS / C #) разработчик, которого я знаю, использовал макросы, я согласен не каждый день.
Сандживакумар Хиремат

13
Еще одна причина придерживаться VS2010 - или просить, чтобы его привезли сюда. Visualstudio.uservoice.com/forums/121579-visual-studio/…
Мистер Кук,

14
Это невероятно ... 1% ??? Это не может быть правдой! Эту функцию нужно добавить обратно - я постоянно использовал макросы в 2010 году.
Rockdocta

44
@SanjeevakumarHiremath Я согласен, что число звучит низко (не уверен, что оно составлено), но это аргумент в пользу того, чтобы всегда устанавливать этот флажок при установке продукта Microsoft, который говорит «отправлять анонимную статистику использования, чтобы помочь лучшим продуктам MS».
Майкл

48

Выделись и проголосуй за возвращение макросов!

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

ОБНОВЛЕНИЕ (04.10.2013):

Ура! Благодаря вашим голосам макросы теперь считаются для возврата! Продолжать настаивать!

В настоящее время мы рассматриваем возможность предоставления возможностей сценариев в будущей версии Visual Studio. Пожалуйста, продолжайте предлагать свои комментарии о том, какие возможности сценариев мы должны предлагать при изучении этого предложения.

Тони Гудхью, менеджер программ, VS Pro.


1
Проголосовал +3. Тем не менее, я сделал то же самое для поддержки Bluetooth SPP в WP7 (которая была запрошенной функцией # 1), и им потребовалось более двух лет, чтобы внедрить ограниченную версию SPP. :(
eduncan911

24

Так как с помощью Sublime Text я обнаружил, что на самом деле есть лучшие способы редактирования текста, чем с помощью макросов.

Sublime позволяет редактировать текст несколькими курсорами одновременно. Это сложно объяснить, но есть несколько анимаций, которые демонстрируют это на http://www.sublimetext.com

Возвышенный скриншот

Я также добавил Sublime как внешний инструмент для Visual Studio:

  • открыть Инструменты / Внешние инструменты
  • add: Sublime, выберите exe и используйте следующие аргументы: $ (ItemPath): $ (CurLine): $ (CurCol)
  • (также переместите его наверх, поскольку это облегчает следующий шаг, в противном случае запомните его положение)
  • затем перейдите к настройке / Клавиатура, найдите Tools.ExternalCommand1 и добавьте предпочитаемое сочетание клавиш.

Это откроет текущий документ в Sublime в той же позиции курсора, что и в VS.

(также Sublime может делать макросы, если они вам все еще нужны)


3
Вот отличное расширение для VS2012 +, которое добавляет этот тип редактирования, оно мне очень пригодилось: visualstudiogallery.msdn.microsoft.com/…
Duane

2
Тем не менее, бывают случаи, когда макросы удобны, например, необходимо выполнить одно и то же действие в нескольких файлах.
Дуэйн

19

МАКРОС НАЗАД!

На рассмотрении → Завершено

Мы услышали ваши отзывы громко и ясно, и мы работали над решением. Поэтому мы очень рады объявить, что мы выпустили версию макросов, которая поддерживает как Visual Studio 2015, так и Visual Studio 2013.

Пока мы занимались этим, мы воспользовались возможностью, чтобы исправить пару ошибок и улучшили сочетания клавиш. Надеемся, вам понравится.

Для получения дополнительной информации см. Сообщение в блоге здесь: http://aka.ms/vsmacros

Мы также открыли исходный код под лицензией MIT. Если у вас есть какие-либо предложения или предложения, не стесняйтесь создавать проблемы или выдвигать запросы в новом репозитории GitHub: http://github.com/Microsoft/VS-Macros

Джастин Кларебурт Старший менеджер программы

Макросы для Visual Studio

Макросы для Visual Studio - это расширение для Visual Studio 2013 и Visual Studio 2015, которое позволяет использовать макросы для автоматизации повторяющихся задач в среде IDE. Расширение может записывать большинство команд в Visual Studio, включая операции редактирования текста. Характеристики

  • Запись и воспроизведение активных операций с документами и команд Visual Studio IDE
  • Воспроизведение несколько раз
  • Управляйте макросами и сохраняйте их с помощью Macro Explorer
  • Назначить привязки клавиатуры к любому макросу
  • Макросы, записанные в виде файлов JavaScript, которые вызывают API-интерфейсы VS DTE
  • Редактирование макросов в Visual Studio с помощью DTE IntelliSense
  • Остановить воспроизведение
  • Образцы макросов

введите описание изображения здесь


Этот плагин очень глючит. В конце концов я начал работать над VS2017, но через пару часов он перестал работать. Отзывы в основном отрицательные.
StuartN

Обратите внимание, что, хотя исходный код является открытым исходным кодом, «это расширение изначально было создано группой стажеров в команде Visual Studio. Оно больше не поддерживается»
Янн Дуран,

16

Расширение Visual Commander (разработанное мной) поддерживает редактирование кода записи и воспроизведения макросов в Visual Studio 2015/2017/2019.


Это расширение превосходно! Это GreaseMonkey для Visual Studio! Я хорошо поработал над этим (заставил WebEssentials скомпилировать все файлы LESS в моем проекте), а также привел к хаосу в проекте! Большое спасибо за эту отличную программу.
Ашраф Сабри

Я попробовал это с VS2015, и он не записывает действия REPLACE: '(
Gabrielizalo

5

Я только что привлек мое внимание к тому, что Microsoft выпустила расширение для Visual Studio 2013 для поддержки макроса снова:

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

Я бы посоветовал еще проголосовать за эту функцию, чтобы поощрить их сделать расширение доступным и для Visual Studio 2015: https://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/2650757-bring-back- макрос


Это звучало довольно хорошо, но клавиши CTRL-M, P обязаны «перестать выделяться». Даже после удаления этой привязки воспроизведение по умолчанию не работает.
Wheezil


2

VSScript позволяет записывать, записывать и редактировать макросы в Lua , хотя я пока не смог заставить его работать с Visual Studio 2015 (командная кнопка неактивна; в документации сказано, что Visual Studio 2005 до 2015 RC поддерживается).

Это в настоящее время выпущено как бесплатное программное обеспечение.


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.