本文大体整理了本身用过的一些插件的使用感想(就是好很差用)。 在那以前先简单贴两条插件须知,知道的能够忽略。html
相似于管理第三方库的cocoapods,管理插件也有个Alcatraz。 git
安装的方法也很简单,若是你之前没有安装过那执行下面指令github
curl -fsSL https://raw.github.com/alcatraz/Alcatraz/master/Scripts/install.sh | sh
若是以前安装过可是Xcode最新版本不能用了,那就先卸载旧的再安装下新的。chrome
卸载的方法是:json
rm -rf ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins/Alcatraz.xcplugin rm -rf ~/Library/Application\ Support/Alcatraz/
注:也许并非全部人都使用了Alcatraz,而是平时都喜欢上github下载一个跑一下 而后load Bundle这种方法的, 若是以前安装了不少插件,如今刚刚使用Alcatraz的也没问题,安装Alcatraz以后以前安装的也会自动集成进来不用担忧。swift
还有就算你使用了这个工具xcode也是须要重启才能应用插件的并不能把这一步给省了。vim
无论你是用直接download zip的方法安装插件的仍是用Alcatraz安装的插件若是插件自己没有最新xcode的支持,那在你的Xcode更新一个版本后,Xcode插件就会失效了。 这个问题就是没有把最新版本xcode的DVTPlugInCompatibilityUUID配到插件的支持列表中。后端
先获取,终端中输入api
defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilityUUID
而后按照以下目录~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins数组
找到插件列表,选中对应的插件显示包内容,并打开info.plist文件 在这个数组中添加最新的UUID便可
也有更犀利的作法就是:
find ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins -name Info.plist -maxdepth 3 | xargs -I{} defaults write {} DVTPlugInCompatibilityUUIDs -array-add UUID
最后面的UUID是前面获取到的。
下面进入正题,说说我喜欢用的插件,基本算是一个使用心得吧。 全都附上了链接,没贴动图以避免太乱,基本链接的github中都有效果图。
https://github.com/onevcat/VVDocumenter-Xcode
全部插件里这个是我最先使用的也应该是排第一的。 使用也很是方便可是用久了也许会发现自动生成的注释是每个参数和返回值都会弹出一个块,而咱们平常开发中大部分的参数和返回值都是一眼见分晓的,并不须要逐个标注,这也就使得我每次敲三道杠都还要手动删除一部分,比较麻烦。 若是做者能提供下一种是现有的,另外一种敲法是只有Description的那我会很是方便。 或者有个更烧脑的猜测,就是在现有基础上判断参数是不是基本数据类型仍是特殊类型,特殊类型的参数才生成注释代码块。返回值若是是instancetype那就不须要生成注释代码块,或者判断参数名若是是一个经常使用单词(time)仍是组合词(categoryID),经常使用单词就不生成注释了也许会更好。也许是我想多了,反正这个插件是必用的,更况且如今连swift都支持了。
https://github.com/stefanceriu/SCXcodeMiniMap
这是相似于sublime的功能,这是很是好用的。 而且右边的代码迷你地图提供了不少可配置的地方,并且会高亮显示宏和注释部分,小地图中点击任何地方也会自动滚动至此。这在有的类代码特别长时你写着写着都不知道本身在哪里了 会颇有用。(若是你常常用 pragma mark那你当我没说)
https://github.com/FuzzyAutocomplete/FuzzyAutocompletePlugin
代码补全时能够不用从头开始敲,只要记得某个特定词汇就能匹配到。 而且对于项目中有好几种前缀的好比咱们之前有的事MT前缀有的是MTB前缀,这种就算你前缀敲漏了只要后面对了也能匹配的到。 固然也有弊端就是你敲一个很普通的方法下面都会匹配一大长串,看着有点冗余并且xcode会比较卡,而且敲出来是好好地若是你想用delete一个个字符往回删就可能会出现xcode,crash了(也许是和其余某个插件产生了冲突,我错怪他了)。用不用看我的喜爱吧,由于苹果有不少诡异的api,好比Rect 他是CGRectMake ,可是到了Range 他又是NSMakeRange 用了这个插件就不会被他坑了。
https://github.com/ksuther/KSImageNamed-Xcode
也是很是残暴的一个功能,在开发中咱们的图片名称都是fb_poinum_high相似的,用这个插件敲出前缀就可以看到对应的一批图片缩略图再上下选择很是方便。 不足之处也有,那就是已经敲完的代码想看到图片缩略图必须先把imageNamed删掉 再从新敲一次才能看到缩略图,若是在@"fb_poinum_high" 图片名中一修改就能看到图片列表就更好了。
https://github.com/holtwick/HOStringSense-for-Xcode
以前有几回需求要写换行的msg,有时候对不许,用这个插件很是方便。在弹出框里写完就是所见即所得。并且光标点到字符串的时候还会显示字符串的长度,这个功能我也很经常使用。
https://github.com/johnno1962/GitDiff
这个插件在企业级App的开发中,使用率很是高,效果很是好。 坐标文件列表中的M,D,A,A+,? 能够很快的显示你有哪些文件修改了。 可是精确到文件里 这个插件就能很好的展现,默认是新增的位置显示绿色,修改的位置显示红色。 固然这些也都是可配置的。 (虽然xcode或终端也有不少方法能对比看diff可是没有这样简单直观)
https://github.com/JugglerShu/XVim
引入这个插件以后,在xcode的正常代码页面的光标就会变成vim里面的方块了,熟悉vim指令的骨灰级攻城狮应该特别喜欢这款插件,dd直接删除一行,dw删一个单词 用着的确是很爽。 用了一段时间发现其实对xcode的、原始的编码方式改动(这里也能够说是侵入性)并不大,由于按下s就是编辑啊 就和xcode原来同样了任何功能都很多,按下esc又切换到vim很是犀利。总之是特别好用,并且看github点星也有3000+吧,而且不断有人提issue,如今已经很是完善了。
https://github.com/qfish/XAlign
这个插件实现了不少种自动对齐的功能,很是残暴。支持“=” “@” 和property 的自动对齐。 安装以后就赶忙把项目全部牵扯到的地方都用快捷键敲一下吧。说意见的话就是暂时还不支持大括号和缩进自动对齐。
https://github.com/neonichu/BBUDebuggerTuckAway
提供微操的插件,功能简单,可是很是实用。敲代码敲快了的人,或者是在改Bug时,RUN一下再调试几行这种操做是会循环屡次进行的。这个时候就会了解到这么不起眼的功能带来了多大的惊喜。
https://github.com/limejelly/Backlight-for-XCode
也是一个微操的插件,功能简单,就是你正在编辑的这行代码高亮显示。而且这个颜色和显示方案都是可配置的。这个插件有两个很大的好处一是在滚轮上下寻找代码时有一个方向指引知道本身正在编辑的方法在什么位置,二是有的一行代码很长折行成了两三行可是实际上仍是一行代码,那这一坨都会高亮显示。不足之处就是做者可能没有设定好默认值,你刚安装后发现没有效果,要去菜单把功能打开才有效果而且坐着设置的默认高亮色是白色 =。=
https://github.com/kattrali/cocoapods-xcode-plugin
通常App在pod稳定了以后应该会不多修改,可是这个库提供的功能也是极好的,能够实现pod install,新建/修改 podfile,新建/修改 podspec文件。用习惯了终端iterm的人可能不太适应,习惯用source tree的人可能会以为这个插件很爽~
https://github.com/omz/ColorSense-for-Xcode
在使用colorWithRGB的时候,能够点出一个颜色选择框直接选择颜色,可是这个功能在使用了Wonderful或是企业级App里用处不大,由于是个项目都有视觉规范,应该都写成一个特定的宏了,就算没有视觉规范,那好歹也有个RGB(r,g,b,a) 这种宏吧。 [UIColor colorWithRed:233/255.0 Green:213/255.0 Blue:12/255.0 alpha] 这种代码仍是很不美观的。若是是测试demo之类的用这个插件能够。
https://github.com/stefanceriu/SCXcodeSwitchExpander
若是你的项目中有使用枚举会很是方便,自动生成了全部可能,而且每种里面都包含代码块,能够直接tab切换。 虽然使用率不会特别高可是用到的时候仍是很是方便的。之前偷懒时我都写case:1 case:2 如今能够走向规范了。
https://github.com/kattrali/deriveddata-exterminator
使用此插件以后,view菜单里多了一些操做,能够一键删除Derived Data。有时候在调试,启动图,launch screen,navgationBar appearance,之类的功能可能须要常常删derived data来调试。之前的方案应该是须要打开xcode偏好 locations 里面去删除,如今方便了很多。 不足之处就是删除这个项目的Derived Data 和删除All Derived Data 直接放在一块儿,手一滑就点错了。有的人电脑性能慢,项目大你一下把别的项目的Derived Data也删了 之后从新Build一下就太慢了。还有记得之前有小工具就是可以把正在运行的工程的主目录在find中显示,用来调试数据缓存的,这个库若是集成了这个功能就更好了。
https://github.com/robbiehanson/XcodeColors
有的人会说彩色log 能够用DDLog啊,这个插件和DDLog是能够共同做用的, 也能够只用这个插件。 至少我用这个插件仍是以为挺好用的。自定义一个宏就能够在适当的敌地方彩色答应了 比较轻量级。不足之处也有,就是若是你项目中写了不少这样的代码,可是若是用别人没有装这个插件的xcode来跑 那就没有效果了啊。不过也无妨顶多就是调试栏不显示颜色罢了。
https://github.com/omz/Dash-Plugin-for-Xcode
dash是一个很是强大的查看api和文档的工具,在这个里面能下载和看到各个平台的文档。 普通的option+点击会弹出一个小悬浮窗显示api相关信息,若是用了这个插件会直接在dash中打开相应的文档,前提是dash中已经下载过xcode对应的文档,再前提是你得安装了dash。 dash在苹果商店是卖几十块钱的,并且中国区域也搜不到dash。这里提供一个dash破解版的下载地址:http://share.weiyun.com/6fe485efbd9fc160dbc815639b65085b (密码:xzGP) (你要是问我为何不用百度云? 我想说百度云呵呵)
https://github.com/dhcdht/DXXcodeConsoleUnicodePlugin
在咱们先后端联调接口的时候,通常都是url贴到浏览器json数据到了chrome自动转化(前提是你安装了jsonformater插件)。可是有时候好比POST请求结果不能在浏览器中看到,只能在debug中打断点了打印了若是遇到 msg:/ue06/ud07/ug08 这种会很蛋疼。这个插件安装后就是能让你在debug的console里面把这些uinicode转化成汉字显示。 这里说到了console的优化 我也顺便提个小技巧就是让console里能够po出 id类型的信息(正常状况你po id类型的对象会显示error)在终端依次输入下面三行指令
touch ~/.lldbinit echo display @import UIKit >> ~/.lldbinit echo target stop-hook add -o \"target stop-hook disable\" >> ~/.lldbinit
https://github.com/trawor/XToDo
以前设置TODO 和标记某处??? 我都是手敲一个特定的符号,而后找的时候再去全文搜索。 有了这个插件,能够用快捷键添加TODO 和 FIXME (额这里若是用代码块也是能够相同实现的)。而后提供了TODOList 快速查看本身各处的标记。等因而省去了一个搜索的步骤。 可是不足就是,ToDoList的对话框是一个悬浮的而不是像上面的SCXcodeMiniMap或是GitDiff那样是嵌入在xcode里面的,这样在来回点的时候xcode的焦点和对话框的焦点会来回切换,虽然你是置顶的但仍是比较影响体验。我用搜索的话就不用来回切焦点了。 可是这个插件自己仍是很不错的。
https://github.com/qfish/XActivatePowerMode
这是装逼插件,模仿sublime的一款 敲代码火花迸溅效果的插件。也许有的人以为只有火花不须要有抖动,固然这些效果均可以在菜单里打开和关闭。可是有问题就是,这个插件和上面的FuzzyAutocomplete共同做用时,会很卡,直接xcodecrash,因此慎入。
https://github.com/poboke/ActivatePowerMode
功能和上面的类似而且更狠,还带响声。可是让xcode变卡的问题一样存在。 并且这个插件比上面高端之处在于迸溅的火花的颜色和编辑位置的代码颜色相同,做者找到了配色方案返回颜色的私有api获得代码颜色。 迸溅效果更接近sublime上的效果。有人由于又用机械键盘 又带响致使手被剁了,因此这个也慎入。
其实还有一些插件也很火,好比codepilot3至关于xcode中的Aifred可是升级xcode7以后就不能使用了,也许是按键冲突仍是什么,他们官网就是无脑CMD+Shift+x打开搜索框。可是若是按下无效呢?也没有个菜单让这个快捷键能够设置,看代码库也的确是好久没更新了; 还有插件能让你的xcode直接跳到github显示代码对比这些,感受并无必要啊,并且有时候github打开很慢,很没有连贯性啊; 还有插件可以你在.m写完方法的实现以后自动给你在.h文件生成方法声明,也是以为多此一举 这些等等多是我我的用起来不爽这里就都不提了。
还有插件不建议装的太多,以为从上面挑些本身有用的装5~8个便可,多了xcode会很卡,并且会常常crash。若是真的遇到xcode常常crash的问题也没事不用担忧,把那个插件目录下的插件所有清除,无需重装xcode也是能够恢复正常的。
转载需注明出处 原文连接。