一个好用的 Xcode 扩展:GHWXcodeExtension

黑客技术
点击右侧关注,了解黑客的世界!

Java开发进阶
点击右侧关注,掌握进阶之路!

Python开发
点击右侧关注,探讨技术话题!

作者 | 黑化肥发灰 
来源 | 
Github:https://github.com/guohongwei719
来源公众号丨知识小集(zsxjtip)


在 Xcode8 以前,开发者可以在 Xccode 运行时通过注入代码来实现插件的功能。插件可以在Alcatraz 上面提交和分发。不过 Xcode8 禁止了该方式的插件安装,转而向开发者提供了Xcode Source Editor Extension(以下简称 Extension)的方式来做插件。平时写代码过程中发现有很多代码都是重复的,属于无脑代码,而且团队协作中统一的代码格式规范非常重要,因此试图通过 Extension 解决这些问题,从而开发了这个工具。

实现的功能:

• 初始化自定义view、UICollectionViewCell、UITableViewCell、viewController,自动删除无用代码和添加默认代码;
• 为属性自动添加懒加载代码、对应协议声明和协议方法,主要有 UITableViewUICollectionViewUIScrollViewUIButtonUILabelUIImageView;
• 选中一个类,文件顶部自动添加对应的 import;
• 给 import 分组排序去重,从上到下为 主类头文件、viewController、view、manager & logic、第三方库、model、category、其他。


实现的功能(注:均可配置快捷键,实现一键操作)


1) 初始化自定义view、UICollectionViewCell、UITableViewCell、viewController,自动删除无用代码和添加默认代码;


2) 为属性自动添加懒加载代码、对应协议声明和协议方法,主要有 

UITableViewUICollectionViewUIScrollViewUIButtonUILabelUIImageView;
注意:需要添加懒加载代码的属性需要被光标选中
3) 选中一个类,文件顶部自动添加对应的 import


4) 给 import 分组排序去重,从上到下为 主类头文件、viewController、view、manager & logic、第三方库、model、category、其他。


注意:

• viewController 后缀小写必须为 "controller.h"、"vc.h";
• view 后缀小写必须为 "view.h"、"bar.h"、"cell.h";
• manager & logic 后缀小写必须为"manager.h"、"logic.h"、"helper.h"、"services.h"、"service.h"。


安装配置方法


1) 将项目 clone 下来,如果不想 clone 项目,直接去 release 下面下载生成的 GHWXcodeExtension.zip,链接 https://github.com/guohongwei719/GHWXcodeExtension/releases/tag/v1.0.0 ,解压即可,然后跳到第三步,如下图


2) 将 clone 的项目编译成功,到 Products 下,选择 GHWXcodeExtension.app 右键,选择 Show in Finder


3) 将 GHWXcodeExtension 复制到应用程序下面,双击打开


4) 到 系统偏好设置 找到 扩展,选择 Xcode Source Editor,选中 GHWExtension


5) 打开项目以后,可以在 Xcode 菜单栏,选择 Editor, 可以看到 GHWExtension 出现在最下面


6) 选择 GHWExtension,出现可以使用的功能选项,顾名思义


7) 三个功能选项都可以配置快捷键,实现一键操作,推荐分别设置为 option+zoption+xoption+c,如下图


使用注意事项


使用 addLazyCode 功能的时候,如果添加了代码后想撤销,使用 command + z,这时候 Xcode 可能会 crash,这应该是 Xcode 本身的一个 bug,所以需要注意一下,正常情况下添加以后也不会撤销,如果要撤销手动删除也很方便,即使 crash 了再打开就行了,打开以后是删除状态。希望苹果能尽快修复这个 bug。

调试 GHWXcodeExtension


1) 选择 GHWExtension scheme


2) 运行,选择 xcode,点击 run

3) 选择一个项目


 推荐↓↓↓ 

?16个技术公众号】都在这里!

涵盖:程序员大咖、源码共读、程序员共读、数据结构与算法、黑客技术和网络安全、大数据科技、编程前端、Java、Python、Web编程开发、Android、iOS开发、Linux、数据库研发、幽默程序员等。

万水千山总是情,点个 “在看” 行不行
评论