我有一堆我要重命名的课程.其中一些名称很小,名称在其他类名称中重复使用,我不希望更改名称.其中大部分都存在于Python代码中,但我们也有一些引用类名的XML代码.
简单的搜索和替换只能让我到目前为止.在我的情况下,我想将AdminAction重命名为AdminActionPlug和AdminActionLogger为AdminActionLoggerPlug,因此第一个的搜索和替换也会错误地击中第二个.
有没有人有Python重构工具的经验?如果他们也可以修复XML文档中的类名,则可以获得奖励积分.
与此同时,我尝试了两种与vim集成的工具.
第一个是Rope,一个带有Vim(和emacs)插件的python重构库.我尝试了一些重命名,这肯定按预期工作.它允许我将重构预览为差异,这很好.它有点文字驱动,但对我来说没关系,只需要更长的时间来学习.
第二个是自行车修理工,我猜这个名字会赢得积分.也插入vim和emacs.还没玩过多少,但我记得很久以前就试过了.
还没有玩过足够的,或尝试过更多类型的重构,但我会对它们进行更多的黑客攻击.
我强烈推荐PyCharm - 不仅仅是重构.自几年前PyCharm的第一个答案发布在这里以来,PyCharm的重构支持已大大改善.
PyCharm中提供Python重构(最后检查2016/7/27 PyCharm 2016.2)
更改签名
转换为Python包/模块
复制
提取重构
排队
反转布尔值
制作顶级功能
移动重构
推送会员
拉各位议员
重命名重构
安全删除
XML重构(我在XML文件的上下文菜单中检查):
改名
移动
复制
将子查询提取为CTE
排队
Javascript重构:
在JavaScript中提取参数
在JavaScript中更改签名
在JavaScript中提取变量
WingIDE 4.0(WingIDE是我选择的python IDE)将支持一些重构,但我刚尝试了最新的测试版,beta6,以及......还有很多工作要做.Retract方法很好地工作,但Rename Symbol没有.
更新:4.0版本修复了所有重构工具.他们现在工作得很好.