Xcode插件優缺點對比(推薦20款插件)

本文大體整理了本身用過的一些插件的使用感想(就是好很差用)。 在那以前先簡單貼兩條插件須知,知道的能夠忽略。html

一、Alcatraz

相似於管理第三方庫的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中都有效果圖。

1.VVDocumenter-Xcode 三道槓添加文檔註釋

 

https://github.com/onevcat/VVDocumenter-Xcode

全部插件裏這個是我最先使用的也應該是排第一的。 使用也很是方便可是用久了也許會發現自動生成的註釋是每個參數和返回值都會彈出一個塊,而咱們平常開發中大部分的參數和返回值都是一眼見分曉的,並不須要逐個標註,這也就使得我每次敲三道槓都還要手動刪除一部分,比較麻煩。 若是做者能提供下一種是現有的,另外一種敲法是隻有Description的那我會很是方便。  或者有個更燒腦的猜測,就是在現有基礎上判斷參數是不是基本數據類型仍是特殊類型,特殊類型的參數才生成註釋代碼塊。返回值若是是instancetype那就不須要生成註釋代碼塊,或者判斷參數名若是是一個經常使用單詞(time)仍是組合詞(categoryID),經常使用單詞就不生成註釋了也許會更好。也許是我想多了,反正這個插件是必用的,更況且如今連swift都支持了。

 

2. SCXcodeMiniMap  右邊顯示小地圖

 

https://github.com/stefanceriu/SCXcodeMiniMap

這是相似於sublime的功能,這是很是好用的。 而且右邊的代碼迷你地圖提供了不少可配置的地方,並且會高亮顯示宏和註釋部分,小地圖中點擊任何地方也會自動滾動至此。這在有的類代碼特別長時你寫着寫着都不知道本身在哪裏了 會頗有用。(若是你常常用 pragma mark那你當我沒說)

 

3.FuzzyAutocomplete  代碼補全支持模糊查詢

 

https://github.com/FuzzyAutocomplete/FuzzyAutocompletePlugin

代碼補全時能夠不用從頭開始敲,只要記得某個特定詞彙就能匹配到。 而且對於項目中有好幾種前綴的好比咱們之前有的事MT前綴有的是MTB前綴,這種就算你前綴敲漏了只要後面對了也能匹配的到。 固然也有弊端就是你敲一個很普通的方法下面都會匹配一大長串,看着有點冗餘並且xcode會比較卡,而且敲出來是好好地若是你想用delete一個個字符往回刪就可能會出現xcode,crash了(也許是和其餘某個插件產生了衝突,我錯怪他了)。用不用看我的喜愛吧,由於蘋果有不少詭異的api,好比Rect 他是CGRectMake ,可是到了Range 他又是NSMakeRange 用了這個插件就不會被他坑了。

 

4.KSImageNamed  用圖片時自動顯示圖片縮略圖

https://github.com/ksuther/KSImageNamed-Xcode

也是很是殘暴的一個功能,在開發中咱們的圖片名稱都是fb_poinum_high相似的,用這個插件敲出前綴就可以看到對應的一批圖片縮略圖再上下選擇很是方便。 不足之處也有,那就是已經敲完的代碼想看到圖片縮略圖必須先把imageNamed刪掉 再從新敲一次才能看到縮略圖,若是在@"fb_poinum_high" 圖片名中一修改就能看到圖片列表就更好了。

 

5.HOStringSense  能夠在彈出框寫NSString,所見及所得

https://github.com/holtwick/HOStringSense-for-Xcode

以前有幾回需求要寫換行的msg,有時候對不許,用這個插件很是方便。在彈出框裏寫完就是所見即所得。並且光標點到字符串的時候還會顯示字符串的長度,這個功能我也很經常使用。

 

6.GitDiff  簡單直觀的標記本次commit修改的部位

https://github.com/johnno1962/GitDiff

這個插件在企業級App的開發中,使用率很是高,效果很是好。 座標文件列表中的M,D,A,A+,? 能夠很快的顯示你有哪些文件修改了。 可是精確到文件裏 這個插件就能很好的展現,默認是新增的位置顯示綠色,修改的位置顯示紅色。 固然這些也都是可配置的。 (雖然xcode或終端也有不少方法能對比看diff可是沒有這樣簡單直觀)

 

7.xvim  把xcode的編輯頁面可支持vim操做

https://github.com/JugglerShu/XVim

引入這個插件以後,在xcode的正常代碼頁面的光標就會變成vim裏面的方塊了,熟悉vim指令的骨灰級攻城獅應該特別喜歡這款插件,dd直接刪除一行,dw刪一個單詞 用着的確是很爽。 用了一段時間發現其實對xcode的、原始的編碼方式改動(這裏也能夠說是侵入性)並不大,由於按下s就是編輯啊 就和xcode原來同樣了任何功能都很多,按下esc又切換到vim很是犀利。總之是特別好用,並且看github點星也有3000+吧,而且不斷有人提issue,如今已經很是完善了。

 

8.XAlign   提供各類自動對齊方案

https://github.com/qfish/XAlign

這個插件實現了不少種自動對齊的功能,很是殘暴。支持「=」 「@」 和property 的自動對齊。 安裝以後就趕忙把項目全部牽扯到的地方都用快捷鍵敲一下吧。說意見的話就是暫時還不支持大括號和縮進自動對齊。

 

9. BBUDebuggerTuckAway   敲代碼時debug視圖自動隱藏

https://github.com/neonichu/BBUDebuggerTuckAway

提供微操的插件,功能簡單,可是很是實用。敲代碼敲快了的人,或者是在改Bug時,RUN一下再調試幾行這種操做是會循環屢次進行的。這個時候就會了解到這麼不起眼的功能帶來了多大的驚喜。

 

10.Backlight-for-XCode  高亮顯示正在編輯的行

https://github.com/limejelly/Backlight-for-XCode

也是一個微操的插件,功能簡單,就是你正在編輯的這行代碼高亮顯示。而且這個顏色和顯示方案都是可配置的。這個插件有兩個很大的好處一是在滾輪上下尋找代碼時有一個方向指引知道本身正在編輯的方法在什麼位置,二是有的一行代碼很長折行成了兩三行可是實際上仍是一行代碼,那這一坨都會高亮顯示。不足之處就是做者可能沒有設定好默認值,你剛安裝後發現沒有效果,要去菜單把功能打開纔有效果而且坐着設置的默認高亮色是白色 =。=

 

11. cocoapods-xcode-plugin  pod相關的操做能夠在xcode菜單進行

https://github.com/kattrali/cocoapods-xcode-plugin

通常App在pod穩定了以後應該會不多修改,可是這個庫提供的功能也是極好的,能夠實現pod install,新建/修改 podfile,新建/修改 podspec文件。用習慣了終端iterm的人可能不太適應,習慣用source tree的人可能會以爲這個插件很爽~

 

12.ColorSense  輸入顏色時有一個色板給你選

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之類的用這個插件能夠。

 

13.SCXcodeSwitchExpander   switch枚舉的時候會自動生成代碼

https://github.com/stefanceriu/SCXcodeSwitchExpander

若是你的項目中有使用枚舉會很是方便,自動生成了全部可能,而且每種裏面都包含代碼塊,能夠直接tab切換。  雖然使用率不會特別高可是用到的時候仍是很是方便的。之前偷懶時我都寫case:1 case:2  如今能夠走向規範了。

 

14.DerivedData Exterminator   一鍵刪除Derived Data

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中顯示,用來調試數據緩存的,這個庫若是集成了這個功能就更好了。

 

15.XcodeColors  控制檯打印彩色log

https://github.com/robbiehanson/XcodeColors

有的人會說彩色log 能夠用DDLog啊,這個插件和DDLog是能夠共同做用的, 也能夠只用這個插件。 至少我用這個插件仍是以爲挺好用的。自定義一個宏就能夠在適當的敵地方彩色答應了 比較輕量級。不足之處也有,就是若是你項目中寫了不少這樣的代碼,可是若是用別人沒有裝這個插件的xcode來跑 那就沒有效果了啊。不過也無妨頂多就是調試欄不顯示顏色罷了。

 

16.OMQuickHelp  option+點擊會直接用dash打開

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) (你要是問我爲何不用百度雲? 我想說百度雲呵呵)

 

17.DXXcodeConsoleUnicodePlugin  debug欄打印時自動把/ueo6轉化成漢字

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

 

18.XToDo  快捷鍵標記,和統一查看

https://github.com/trawor/XToDo

以前設置TODO 和標記某處??? 我都是手敲一個特定的符號,而後找的時候再去全文搜索。 有了這個插件,能夠用快捷鍵添加TODO 和 FIXME (額這裏若是用代碼塊也是能夠相同實現的)。而後提供了TODOList 快速查看本身各處的標記。等因而省去了一個搜索的步驟。 可是不足就是,ToDoList的對話框是一個懸浮的而不是像上面的SCXcodeMiniMap或是GitDiff那樣是嵌入在xcode裏面的,這樣在來回點的時候xcode的焦點和對話框的焦點會來回切換,雖然你是置頂的但仍是比較影響體驗。我用搜索的話就不用來回切焦點了。 可是這個插件自己仍是很不錯的。

 

19.XActivatePowerMode  敲代碼時屏幕抖動火花迸濺效果

https://github.com/qfish/XActivatePowerMode

這是裝逼插件,模仿sublime的一款 敲代碼火花迸濺效果的插件。也許有的人以爲只有火花不須要有抖動,固然這些效果均可以在菜單裏打開和關閉。可是有問題就是,這個插件和上面的FuzzyAutocomplete共同做用時,會很卡,直接xcodecrash,因此慎入。

 

20.ActivatePowerMode  敲代碼時屏幕抖動火花迸濺效果

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也是能夠恢復正常的。

 

轉載需註明出處  原文連接

相關文章
相關標籤/搜索