【发布时间】:2016-08-21 09:12:41
【问题描述】:
我想重构一些我写得很糟糕的本地Perl packages,但是我在散布在目录树中的一堆脚本中调用了它们的子例程。
我需要一个编辑器来允许我跳转到子程序声明并找到实现/用法。
我已经尝试过https://github.com/Camelcade/Perl5-IDEA 和Notepad++ SourceCookiefier。
SourceCookiefier 不是真正的解决方案,它找不到实现,您必须手动指定您希望它索引的文件。
另一方面,Perl5-IDEA 似乎更能胜任这项工作,但是当我指定模块的根文件夹时,它会开始索引它找到的所有内容,直到它挂起/内存不足。
除了那些.pl/.pm 脚本之外,我还有很多其他数据文件,我暂时无法将它们与这些目录分开。我需要一个排除类型的过滤器。我在IntelliJ + Perl5-IDEA plugin 中找不到排除过滤器。
那么,您知道我可以使用什么编辑器从go to declaration / go to implementations 中受益,并且能够从指定根目录的子目录导入.pl/.pm 文件吗?
【问题讨论】:
-
你试过
ctags for vim(支持Perl)和/或Perl的模块Perl::Tags吗? -
我没有。我在 Windows 上。
-
我相信所有这些都可以在 Windows 上使用。使用
ctags是一种非常古老、传统(且有效)的方法,可以随心所欲。另一方面,我认为主要的集成环境具有该功能。有没有看Padre,ActiveState 在这方面的表现如何? -
我不知道如何在没有额外不需要的东西的情况下安装 Padre。我已经安装了 StrawberryPerl,所以我不需要另一个。 ActiveState 也需要安装它自己的 Perl 风格。在新的 Perl 安装中重新安装我需要的所有 CPAN 模块需要一天的时间。
-
我没有意识到 Padre for Windows 只是一个大捆绑包。至于 ActiveState,它有一个单独的编辑器,有两个版本,“Komodo Edit”(免费)和“Komodo IDE”。您需要的功能可能不在免费版本中(我不知道),但另一个有 21 天的试用期。这是一个非常好的编辑器。但是,从我的第一条评论来看,ctags-with-gvim 和 Perl 模块肯定可以帮助您。我不知道你选择的编辑器是什么,但 Perl::Tags 似乎不依赖于此..
标签: perl intellij-idea ide editor helpers