武裝你的Xcode(三)- 代碼塊Snippets

1巫糙、認(rèn)識 Xcode 代碼塊

2犹菱、創(chuàng)建 Xcode 代碼塊

當(dāng)然焰望,代碼塊功能之所以強(qiáng)大,是因為你可以創(chuàng)建自定義的代碼塊已亥。
創(chuàng)建代碼塊的過程:用戶拖拽選中文本生成“剪切文本”熊赖。看下實(shí)際操作就很好理解:

用戶將自定義的代碼塊添加到庫里面后虑椎,可以雙擊列表中的塊去編輯震鹉。


  • Title 標(biāo)題 - 塊的名字(出現(xiàn)在代碼補(bǔ)全和代碼塊庫列表中)
  • Summary 簡介 - 簡單描述下它是干嘛的(只出現(xiàn)在代碼塊庫列表中)
  • Platform 平臺 - 限制可訪問該代碼塊的平臺。OS X捆姜,iOS传趾,或者(“全部”)
  • Language 語言 - 限制可訪問該代碼塊的語言。常見的有 C泥技,Objective-C浆兰,C++,或 Objective-C++
  • Completion Shortcut 輸入碼 - 快捷輸入碼珊豹。常用塊的輸入碼應(yīng)該非常簡練簸呈。Xcode 不會警告沖突 / 重復(fù)的輸入碼,所以一定要確保新添加的不要和已有的沖突店茶。
  • Completion Scopes 有效范圍 - 限制可訪問該代碼塊的范圍蜕便。if / else語句的自動補(bǔ)全應(yīng)該只在方法或者函數(shù)的實(shí)現(xiàn)中有效。下面這些選項可以任意組合:
    • 1贩幻、All 全部
    • 2轿腺、Class Implementation 類實(shí)現(xiàn)两嘴,范圍為.m文件,
      @implementation - @end的范圍
    • 3族壳、Class Interface Methods 類接口方法憔辫,范圍為.h文件的方法,@interface - @end的范圍仿荆,指的是定義的方法
    • 4贰您、Class Interface Variables 類接口變量,范圍為.h文件的屬性赖歌,@interface - @end的范圍
    • 5枉圃、Code Expression 代碼表達(dá)式,Method方法的一部分
    • 6功茴、Function or Method 函數(shù)或方法庐冯,指的是調(diào)用的方法,區(qū)別于2和3(定義的方法)
    • 7坎穿、Preprocessor Directive 預(yù)處理指令
    • 8展父、String or Comment 字符串或注釋
    • 9、Top Level 最高層

3玲昧、存儲地址

~/Library/Developer/Xcode/UserData/CodeSnippets/
目錄存放了所有 Xcode 代碼段的文件表示

4栖茉、占位符

在你使用其他代碼塊時你可能已經(jīng)注意到了這些占位符:



在 Xcode 中,占位符使用 <# 和 #>

5孵延、常用代碼塊(第三方代碼塊)

  • 你可以在 Xcode-Snippets 找到一些好用的代碼塊,包括(文件名就是代碼塊快捷鍵)
    - tableView數(shù)據(jù)源方法
    - tableView代理方法
    - 單例
    - init方法

  • 下載此項目XcodeCodeSnippets吕漂,把后綴為.codesnippet拖入代碼塊存儲地址,按標(biāo)題順序分為幾個大類:

    -  動畫 Animation
    -  類擴(kuò)展 Class Extension
    -  Blocks
    -  調(diào)試打印 DebugLog   
    -  GCD and queues(Async)
    -  通知 Notifications
    -  日期 Formatting
    -  方法分組 Section Header #pragma 
    -  表格類代理方法 UITableView or UICollectionView
    -  生命周期 LifeCycle
        補(bǔ)充(這個項目比較完整尘应,但是還是有遺漏惶凝,需要自己增加)
    -  屬性 Property
    -  初始化方法 Initialization
    -  單例
    

方法二:點(diǎn)擊運(yùn)行下圖的命令行即可自動導(dǎo)入代碼塊,同理犬钢,點(diǎn)擊運(yùn)行ClearSnippets.command可清楚代碼塊苍鲜。

  • 補(bǔ)充
  • 去除NS,UI等前綴玷犹,給代碼塊設(shè)置快捷鍵混滔。
    為了不和蘋果已有的沖突,或者避免和蘋果已有的混雜在一起歹颓,且簡單坯屿,將前綴(如NS,UI)去除巍扛,調(diào)用最方便愿伴。
    eg:關(guān)于所有的通知NSNotification取名為notification,關(guān)于所有的調(diào)試打印NSLog取名為Log电湘。

  • ** 屬性代碼塊**
    1 Title: Property Assign
    2 Completion Shortcut: @strong
    3 Completion Scopes: All
    4 @property (assign, nonatomic)

  • ** 初始化方法**

     1  Title: Initialization
     2  Completion Shortcut: @strong
     3  Completion Scopes: Class Implementation
     4 
     - (instancetype)init {
     self = [super init];
         if (!self) {      
        }
         return self;
     }
    
     - (instancetype)initWithFrame:(CGRect)frame {
         self = [super initWithFrame:frame];
         if (!self) {
     
         }
         return self;
     }
    

6隔节、同步備份

  • 使用ACCodeSnippetRepositoryPlugin插件
  • 將代碼塊打包鹅经,拷入其他電腦Xcode中
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市怎诫,隨后出現(xiàn)的幾起案子瘾晃,更是在濱河造成了極大的恐慌,老刑警劉巖幻妓,帶你破解...
    沈念sama閱讀 221,430評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件蹦误,死亡現(xiàn)場離奇詭異,居然都是意外死亡肉津,警方通過查閱死者的電腦和手機(jī)强胰,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,406評論 3 398
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來妹沙,“玉大人偶洋,你說我怎么就攤上這事【嗵牵” “怎么了玄窝?”我有些...
    開封第一講書人閱讀 167,834評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長悍引。 經(jīng)常有香客問我恩脂,道長,這世上最難降的妖魔是什么趣斤? 我笑而不...
    開封第一講書人閱讀 59,543評論 1 296
  • 正文 為了忘掉前任俩块,我火速辦了婚禮,結(jié)果婚禮上浓领,老公的妹妹穿的比我還像新娘玉凯。我一直安慰自己,他們只是感情好镊逝,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,547評論 6 397
  • 文/花漫 我一把揭開白布壮啊。 她就那樣靜靜地躺著,像睡著了一般撑蒜。 火紅的嫁衣襯著肌膚如雪歹啼。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,196評論 1 308
  • 那天座菠,我揣著相機(jī)與錄音狸眼,去河邊找鬼。 笑死浴滴,一個胖子當(dāng)著我的面吹牛拓萌,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播升略,決...
    沈念sama閱讀 40,776評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼微王,長吁一口氣:“原來是場噩夢啊……” “哼屡限!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起炕倘,我...
    開封第一講書人閱讀 39,671評論 0 276
  • 序言:老撾萬榮一對情侶失蹤钧大,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后罩旋,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體啊央,經(jīng)...
    沈念sama閱讀 46,221評論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,303評論 3 340
  • 正文 我和宋清朗相戀三年涨醋,在試婚紗的時候發(fā)現(xiàn)自己被綠了瓜饥。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,444評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡浴骂,死狀恐怖乓土,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情靠闭,我是刑警寧澤帐我,帶...
    沈念sama閱讀 36,134評論 5 350
  • 正文 年R本政府宣布坎炼,位于F島的核電站愧膀,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏谣光。R本人自食惡果不足惜檩淋,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,810評論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望萄金。 院中可真熱鬧蟀悦,春花似錦、人聲如沸氧敢。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,285評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽孙乖。三九已至浙炼,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間唯袄,已是汗流浹背弯屈。 一陣腳步聲響...
    開封第一講書人閱讀 33,399評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留恋拷,地道東北人资厉。 一個月前我還...
    沈念sama閱讀 48,837評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像蔬顾,于是被迫代替她去往敵國和親宴偿。 傳聞我的和親對象是個殘疾皇子湘捎,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,455評論 2 359

推薦閱讀更多精彩內(nèi)容

  • 1、認(rèn)識 Xcode 代碼塊 2窄刘、創(chuàng)建 Xcode 代碼塊 當(dāng)然消痛,代碼塊功能之所以強(qiáng)大,是因為你可以創(chuàng)建自定義的代...
    沬日十七閱讀 5,482評論 0 4
  • 好萊塢電影里經(jīng)扯伎蓿看到黑客們手指在鍵盤上飛速跳躍,同時終端上的代碼也隨著飛舞秩伞。如果你也想像電影里那樣,那么你來對地方...
    陽春是你閱讀 2,240評論 0 4
  • Code Snippets 通過code snippets,我們可以創(chuàng)建一些可重用的代碼塊,并且在任何需要的地方很...
    Jisen閱讀 1,199評論 1 2
  • 很多事都不受控制的在發(fā)生著改變穆趴,或許從一份新工作開始脸爱,又或許從多一個人介入開始。 你卻很清楚有些事情它遲早會變未妹,只...
    滿漫慢閱讀 634評論 0 0
  • 聽聽络它, 秋的聲音族檬, 石榴裂開大嘴, "哈哈" 這是豐收的聲音化戳。 聽聽单料, 秋的聲音, 青蛙跳進(jìn)田里点楼, "呱呱" 這是...
    潘子諳閱讀 539評論 4 4