录制宏的IDE优势是什么?

录制宏的IDE优势是什么?,ide,macros,Ide,Macros,正如标题所说,我看到许多编辑吹捧宏录制是一项功能,但我自己找不到一种方法来利用这些功能。那么你能用它做什么呢?可以记录鼠标移动和/或击键的类型?这真的对外面的人有帮助吗?具体来说,我处理的是Eclipse,它有许多内置的“填充”函数,所以我真的看不出有什么好处。waaa回过头来,我使用了一个宏来生成函数头/注释。除此之外,我没有用过 基本上,您可以“自动化”您经常做的单调乏味的事情,而这些事情并没有内置的方式来完成您经常做的任务。这是一种灵活的方式,可以赋予人们很多权力,使他们能够更高效地工作。

正如标题所说,我看到许多编辑吹捧宏录制是一项功能,但我自己找不到一种方法来利用这些功能。那么你能用它做什么呢?可以记录鼠标移动和/或击键的类型?这真的对外面的人有帮助吗?具体来说,我处理的是Eclipse,它有许多内置的“填充”函数,所以我真的看不出有什么好处。

waaa回过头来,我使用了一个宏来生成函数头/注释。除此之外,我没有用过


基本上,您可以“自动化”您经常做的单调乏味的事情,而这些事情并没有内置的方式来完成您经常做的任务。这是一种灵活的方式,可以赋予人们很多权力,使他们能够更高效地工作。

我一直在使用它们。比如说,我想在一个列表中,按4缩进并添加一个“|*”。在EMACS中,我点击
C-x(
开始录制,执行一个示例行以查看它是否符合我的要求,以
C-n C-a
结束移动到下一行,并以
C-x)结束宏。
。然后,
C-xe
逐行重复,并且
C-u
number
C-xe
多次重复。我发现它在microsoft excel中非常有用。我可以录制一个宏来完成我想要的大部分功能,而不必通过查看文档来查找我需要调用的每个对象和函数,然后将代码修改为更精细的控制。

在Visual Studio中,我使用宏有许多不同的用途。其中最有价值的一个是调试Windows服务。我可以使用宏引擎启动,然后连接到Windows服务,只需单击一个按钮

此外,有时我使用需要分解成代码的自定义定义——有点像C/C++宏


科尔比非洲取决于你在做什么以及你使用的语言。作为一个简单的例子,现在我正在使用一个包含大量查询的Visual Basic.NET应用程序。我通常在Toad中处理查询,但是Visual Basic.NET在处理长字符串时有一个恼人的语法,即:

Public Const SelectData As String = _
"SELECT * " & _
"FROM myTable " & _ 
"WHERE myField = :SOMETHING"
因为我真的不喜欢在我将查询从代码中复制或粘贴回代码时编辑查询,所以我有一些宏可以自动格式化或删除它们的格式


此外,一些宏还可用于自动化在工作时围绕IDE执行的常见任务。您经常看到自己执行的任何命令序列都可以转换为宏,只需单击一下即可完成。

我也不在Eclipse中使用它们。 原因如下:

  • Eclipse有许多强大的内置函数和重构。因此,对于代码,它不是必需的

  • Eclipse宏没有那么好。您可以录制它们,但很难调整它们并完全按照您的意愿进行操作

  • 宏在修改非代码文件等方面变得更加有用。为此,我倾向于使用vim之类的东西。此外,您还必须实际练习使用宏来识别它们何时会有所帮助


  • 那么,宏是长期失效的IDE遗留下来的吗?我看着SlickEdit,注意到其中一个被吹捧的功能是宏录制。看到你几乎可以用键盘快捷键做任何事情,我想知道用户记录的击键是否有任何用处。也许,但它们仍然有很好的用途。能够记录击键非常棒,因此您可以自定义自己的工具,减少击键和繁琐的编辑器操作,甚至可以更好地使用Excel-记录您正在尝试执行的基本宏,并清理记录,以便更好地工作。对于我为一些同事编写的一些小宏,它将一个可能需要一小时的任务变成大约15分钟。使用宏完成的大部分工作都可以通过regexp search/replace完成。但是,在某些情况下(嵌套括号、多行数据块、需要在另一个窗口中进行查找),宏是必不可少的。有时它们只是比相应的regexp简单。啊,我想这是它们的一个用途。在我看来,由于IDE本身的功能得到了增强,现在用于较新语言的IDE基本上不再需要宏了。尽管如此,我仍然可以看到宏正在处理一些格式化问题。++有时您只需要反复执行相同的一组按键。这正是宏的用途。regex-replace也很方便,但我喜欢宏,因为您可以“通过示例”执行它们——确保您正在执行您想要的操作。顺便说一下,您可以将正则表达式搜索保存到emacs宏中实际上,我做的不是每件事都是代码。