Как следует из названия, я вижу, что многие редакторы рекламируют запись макросов как функцию, но не могут найти способ воспользоваться этими функциями самостоятельно. Итак, для чего вы можете его использовать? Тип, в котором вы можете записывать движения мыши и/или нажатия клавиш? Действительно ли это так полезно для людей? В частности, я имею дело с Eclipse, в котором есть ряд встроенных функций «заполнения», поэтому я действительно не вижу, в чем могут быть преимущества.
Каковы преимущества записанных макросов для IDE?
Ответы (6)
Я использую их все время. Скажем, например, я хочу перейти вниз по списку, сделав отступ на 4 и добавив "|*". В EMACS я нажимаю C-x (
, чтобы начать запись, делаю одну примерную строку, чтобы убедиться, что это то, что мне нужно, заканчивая C-n C-a
, чтобы перейти к следующей строке, и заканчиваю макрос C-x )
. Затем C-x e
повторяет это построчно, а C-u
число C-x e
делает это много раз.
Зависит от того, что вы делаете и на каком языке вы работаете. Простой пример: прямо сейчас я работаю с приложением Visual Basic .NET, в котором есть ряд запросов. Обычно я выполняю всю свою работу с запросами в Toad, но Visual Basic .NET имеет раздражающий синтаксис, когда речь идет о длинных строках, а именно:
Public Const SelectData As String = _
"SELECT * " & _
"FROM myTable " & _
"WHERE myField = :SOMETHING"
Поскольку мне действительно не нравится редактировать запросы, когда я копирую их из кода или вставляю обратно, у меня есть несколько макросов, которые автоматически форматируют или удаляют из них форматирование.
Кроме того, некоторые макросы можно использовать для автоматизации общих задач, которые необходимо выполнять в среде IDE во время работы. Любую последовательность команд, которую вы часто выполняете, можно превратить в макрос и выполнить одним щелчком мыши.
Waaaay назад я использовал макрос, чтобы сделать заголовок/комментарии функции. В остальном я ими не пользовался.
По сути, вы можете «автоматизировать» утомительные вещи, которые вы часто делаете, но не имеет встроенных способов выполнения часто выполняемых задач. Это гибкий способ дать людям много власти, чтобы они могли работать более эффективно.
Я нахожу это очень полезным в Microsoft Excel. Вместо того, чтобы просматривать документацию, чтобы найти каждый объект и функцию, которые мне нужно вызвать, я могу записать макрос, который делает большую часть того, что я хочу, взять этот код и изменить его, чтобы дать мне более точный контроль.
В Visual Studio я использую макросы для самых разных целей. Один из самых ценных возникает при отладке службы Windows. Я могу использовать механизм макросов для запуска, а затем подключиться к службе Windows одним нажатием кнопки.
Кроме того, иногда я использую пользовательские DEFINES, которые нужно преобразовать в код — что-то вроде макросов C/C++.
Колби Африка
Я тоже не использую их в Eclipse. Вот почему:
Eclipse имеет множество мощных встроенных функций и рефакторингов. Так что с кодом это не обязательно.
Макросы Eclipse не так хороши. Вы можете записать их, но их сложно настроить и сделать именно то, что вы хотите.
Макросы становятся более полезными в таких вещах, как изменение файлов, которые не являются кодом. Для этого я обычно использую что-то вроде vim. Кроме того, вы должны попрактиковаться в использовании макросов, чтобы понять, когда они помогут.