ps:恶魔岛在xcode7以后会引起xcode卡顿,所以解决办法就是装完所需要的插件后将恶魔岛删除,两全其美
安装命令: curl -fsSL https://raw.githubusercontent.com/supermarin/Alcatraz/master/Scripts/install.sh | sh
删除命令:rm -rf ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins/Alcatraz.xcplugin
清理缓存:rm -rf ~/Library/Application\ Support/Alcatraz
点错了不显示运行defaults delete com.apple.dt.Xcode DVTPlugInManagerNonApplePlugIns-Xcode-7.0
7.4 插件失效问题的解决
Xcode插件存放在~/Library/Application Support/Developer/Shared/Xcode/Plug-ins目录下,为.xcpluging格式.通过里面的显示包内容会有一个Info.plist文件,打开文件,可以看到一个字段叫DVTPlugInCompatibilityUUIDs,这个字段存储能使用次插件的Xcode的UUID。如果当前版本的插件失效,那就将当前Xcode版本的UUID加入到DVTPlugInCompatibilityUUIDs中。
查看Xcodee的信息可以通过打开Xcode的包内容中的plist文件查看DVTPlugInCompatibilityUUIDs。我们可以通过命令find ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins -name Info.plist -maxdepth 3 | xargs -I{} defaults write {} DVTPlugInCompatibilityUUIDs -array-add `defaults read /Applications/Xcode.app/Contents/Info.plist DVTPlugInCompatibilityUUID`批量向插件增加UUID。
参考资料:http://blog.devtang.com/2014/03/05/use-alcatraz-to-manage-xcode-plugins/
安装成功后重启 Xcode,就可以在 Xcode 的顶部菜单中的 “Window”->“Package Manager” 中找到 Alcatraz。点击 “Package Manager”,即可启动插件列表页面。你可以在右上角搜索插件,对于想安装的插件,点击其左边的图标,即可下载安装
安装完成后,再次点击插件左边的图标,可以将该插件删除。
以下所有介绍的插件均可用该方法来安装或删掉,就不另行介绍了。
KSImageNamed(https://github.com/ksuther/KSImageNamed-Xcode)是一个帮助你输入 [UIImage imageNamed:] 中的资源名的插件。当你输入[UIImage imageNamed:]时,会自动的弹出上下文菜单,供你选择你需要输入的图片资源名字,另外在选择图片资源时,还可以在左侧预览该资源。如下图所示:
XVim(https://github.com/JugglerShu/XVim)是一个 Xcode 的 vim 插件,可以在 Xcode 的编辑窗口中开启 vim 模式。
vim 模式最大的好处是可以全键盘操作,可以方便地移动光标以及复制、粘贴代码。XVim 对于 Xcode 的分栏模式也有很好的支持,与 vim 自带的分栏模式一样,可以用快捷键ctrl + w来切换当前编辑的分栏。
FuzzyAutocompletePlugin (https://github.com/FuzzyAutocomplete/FuzzyAutocompletePlugin) 允许使用模糊的方式来进行代码自动补全。
举个例子,如果我们要重载viewDidAppear:方法,那么我们必须依次建入 view、did、appear 才能得到相应的补全信息,使用 FuzzyAutocompletePlugin 之后,我们可以建入 vda (view、did、appear 三个单词的首字母),或任意符合 viewDidAppear 整个单词出现顺序的子串 (例如 vdapp, adear 等),即可匹配到该方法。
XToDo(https://github.com/trawor/XToDo)是一个查找项目中所有的带有TODO,FIXME,???,!!!标记的注释。
通常我们在项目开发中,由于种种原因,一些事情需要以后处理,这个时候为了防止遗忘,加上TODO或FIXME注释是非常有必要的,但是上线或提交代码前要寻找这些未解决的事项却稍显麻烦。XToDo 可以提供一个汇总的界面,集中显示所有的未完成的TODO和FIXME标记。
BBUDebuggerTuckAway(https://github.com/neonichu/BBUDebuggerTuckAway)是一个非常小的工具,可以在你编辑代码的时候自动隐藏底部的调试窗口。因为通常情况下,调试的时候是加断点或监控变量变化,或者在 Console 窗口用po来输出一些调试信息。如果开始编辑代码了,说明已经调试结束了,这个时候隐藏调试窗口,可以给编辑界面更多空间,方便我们修改代码。
SCXcodeSwitchExpander(https://github.com/stefanceriu/SCXcodeSwitchExpander)帮助你迅速地在switch语句中填充枚举类型的每种可能的取值。
例如,当你输入switch,然后键入一个NSTableViewAnimationOptions类时,该插件会将其可能的取值补全在每一个case之后,如下图所示:
deriveddata-exterminator(https://github.com/kattrali/deriveddata-exterminator)是一个清除 Xcode 缓存目录的插件。
有些时候 Xcode 会出各种奇怪的问题,最常见的是在某些复杂操作下(例如同一个项目,来回切换到各种分支版本),会造成 Xcode 显示一些编译的错误或警告,但是最终却又可以编译通过。新手遇到这种问题常常束手无策,而熟悉 Xcode 的人就知道,通常清除 Xcode 缓存就可以解决这类问题。该插件在 Xcode 菜单上增加了一个清除缓存按钮,可以一键方便地清楚缓存内容。
VVDocumenter(https://github.com/onevcat/VVDocumenter-Xcode)是一个自动生成代码注释的工具,可以方便地将函数的参数名和返回值提取出来,这样结合上一节介绍的appledoc命令,就可以方便地将帮助文档输出。
ClangFormat(https://github.com/travisjeffery/ClangFormat-Xcode)是一个自动调整代码风格(Code Style)的工具。Xcode 本身的代码缩进自动调整功能比较弱,特别是对于 JSON 格式,常常产生非常丑陋的默认缩进效果。ClangFormat-Xcode 可以更好地对代码进行重新排版,并且内置了各种排版风格,也支持自定义风格。
ColorSense(https://github.com/omz/ColorSense-for-Xcode)是一个UIColor颜色输入辅助工具,可以帮助你在编写UIColor代码时,实时预览相应的颜色,如下图所示:
XcodeBoost(https://github.com/fortinmike/XcodeBoost)包含多个辅助修改代码的小功能,比如:
可以在 .m 文件中复制方法实现,然后将该方法的定义粘贴到对应的 .h 文件中
可以在某一个源文件中直接输入正则表达式查找
可以复制粘贴代码时不启用 Xcode 的自动缩进功能(Xcode 的自动缩进经常出问题,造成已经调整好的代码缩进,因为粘贴时被 Xcode 调整坏了)
ZLGotoSandbox
AllTargets