4

我发现我的许多未解决问题的解决方案是在代码上运行一个 perl 脚本来执行一些使用正则表达式很难甚至不可能完成的更改,或者比我得到的一些建议更简单地连接到 DaVik。

因此,如果我一步一步地告诉你我是如何做到的,这将是一个自我回答的问题。我希望这将帮助人们解决他们的一些问题。

4

1 回答 1

4

目标是在 Eclipse 中对我当前打开的文件运行以下命令行并刷新它以查看结果:

perl -S -pi.bak myscript.pl

我将使用外部工具配置。本指南基于 Eclipse 3.7.1

  1. 打开运行->外部工具->外部工具配置 ... (或者,您可以从运行图标中打开它,角上有红色的小工具箱)
  2. 选择程序
  3. 添加新的启动配置(右上角带有小加号的第一个图标或右键单击 Program -> New
  4. 你应该看到这个: 外部工具配置对话框
  5. 填写姓名
  6. 在该位置放置您要启动的工具的路径(在本例中为 perl:C:\Perl\bin\perl.exe
  7. 在工作目录中选择Variables...${container_loc}是当前在 IDE 上的文件的目录
  8. 作为参数:-S -pi.bak ${file_prompt:Select Perl Script:D:\marcelo\Perl\bin\myscript.pl} ${container_name}
    同样你不必输入 ${container_name} 或 ${ file_prompt...} 你可以从变量中选择它...
  9. 应用
    你现在应该看到这个: 在此处输入图像描述
  10. 转到刷新选项卡并检查完成后刷新资源并从选项中选择所选资源
  11. 转到“构建”选项卡并取消选中“启动前构建”

我们完成了,现在有几个注释:

  • 常用选项卡中,您可以检查添加到收藏夹菜单下的外部工具,您的脚本将出现在外部工具子菜单中,而无需先运行它。
  • 您可能注意到还有很多其他选项,请随意尝试
  • 这个例子只是修改了 IDE 中的文件。myscript.pl 的内容是:

下一个除非/Log.i/;
s/\bint\s+(\w+)/int n_$1/g;
s/\bString\s+(\w+)/字符串 s_$1/g;

  • ${ file_prompt :Select Perl Script:D:\marcelo\Perl\bin\myscript.pl}打开一个对话框,您可以在其中选择要运行的 perl 脚本。
  • 如果您想始终运行相同的脚本,只需将${file_prompt...}替换为脚本名称
  • 我在 Eclipse 上安装了EPIC 插件,所以我也可以编辑 perl 文件

  • 您不受限制修改您的资源。您可以只运行从当前文件生成输出的脚本。脚本的输出以及遇到的任何错误都会显示在控制台
    中提示:在 perl 中,如果您既想写出新文件,又想为用户打印一条消息,请使用 STDERR 打印出消息并使用 STDOUT 到打印出文件。

于 2012-06-09T11:27:27.827 回答