xcode修改系統(tǒng)的代碼塊樣式codesnippet_第1頁
xcode修改系統(tǒng)的代碼塊樣式codesnippet_第2頁
xcode修改系統(tǒng)的代碼塊樣式codesnippet_第3頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、xcode 修改系統(tǒng)的代碼塊樣式 codesnippetXcode 在編碼的時候,系統(tǒng)代碼塊給我們提供了很大的 便利。然而,有時候,也給我們帶來很大的困擾。 例如,系統(tǒng)的 if 代碼塊,大括號是緊跟括號之后的。但是現(xiàn)在呢,公司的代碼規(guī)范是要求另起一行。 那每次都得手動去調(diào),的確是件很影響心情的事?,F(xiàn)在,就教大家怎么去修改系統(tǒng)的代碼塊樣式。xcode 內(nèi)置代碼模板Xcode 的所有代碼模板是用一個 plist 格式 xml 文件描述的,這文件存儲在 Xcode 的安裝目錄:/Applications/Xcode.app/Contents/Frameworks/IDEKit.framew ork/

2、Versions/A/Resources/SystemCodeSnippets.codesnippets注意: Xcode5.1 之前是在這個目錄下/Applications/Xcode.app/Contents/PlugIns/IDECodeSnippetLib rary.ideplugin/Contents/Resources/?SystemCodeSnippets.codesnippets用任意文本編輯打開這個文件,如下顯示: 這個文件是沒 有權(quán)限去修改的。在這里就是所有的 Xcode 代碼塊的配置, 包括常見的 if , if else , switch , dispatch 等相關(guān)代

3、碼塊。 每一個 key 所對應(yīng)的意義也很好理解。下面教你如何去理 解。在此之前, 你應(yīng)該知道 Xcode 左下角有個花括號的頁簽, 這里面存儲了很多代碼提示模板,就是以上所配置的。 如 果是自己拖拽進去的會有 User 標志。 自定義代碼模塊關(guān)于拖拽進代碼塊的操作這里不作敘述,有不會的可以上網(wǎng) 查查或者留言回復我再告之。自己定義的代碼塊是在以下目錄下:/Library/Developer/Xcode/UserData/CodeSnippets/ 注意:只有自己定義過代碼塊, 才會在 UserData 目錄下存在 CodeSnippets 文件夾,否則是不存在的。你可以試試寫個 randomCo

4、lor('self.view.backgroundColor = UIColorcolorWithRed:arc4random()%255/256.0f green:arc4random()%255/256.0f blue:arc4random()%255/256.0f alpha:1.0f) 的代碼塊,拖進去, 你會發(fā)現(xiàn)在 CodeSnippets 文件夾下多了這么一個文件。 這 兒的名字是可以更改的,后綴要寫成 .codesnippet 。 所以我把它更改成如下名字,便于分辨。 用任意文本編輯 器打開,和 Xcode 左下角對比,很容易明白各個 key 所對應(yīng) 的意思。這里要注意的

5、是以下幾個 key 。IDECodeSnippetIdentifier 是唯一標識符,其中 if 模板的唯 一標記是 D70E6D11-0297-4BAB-88AA-86D5D5CBBC5D ,不 能重名,重名即會覆蓋。這也是我們更改系統(tǒng)代碼塊樣式的核心思想! ! IDECodeSnippetVersion 是版本號,一般系統(tǒng)的都是 1,我們 自己定義的寫成 2。保持默認 1 也沒多大問題,只是 Xcode 有時會自動用標識符替換你的自定義命名,所以用 2 是比較 合適的。剩下的很重要的一步,如果是自定義的,一定要加以下這個 key, IDECodeSnippetUserSnippet ,定義

6、為 true 。如果是 自定義的而沒有這個字段, Xcode 是會崩潰的。 現(xiàn)在用 if 代 碼塊對比一下系統(tǒng)的和自定義的區(qū)別。系統(tǒng)的是IDECodeSnippetVersion1IDECodeSnippetCompletionPrefixifIDECodeSnippetContentsif (<#condition#>) <#statements#>IDECodeSnippetIdentifierD70E6D11-0297-4BAB-88AA-86D5D5CBBC5DIDECodeSnippetLanguageXcode.SourceC

7、odeLanguage.CIDECodeSnippetSummaryExecute code only when a certain condition is true.IDECodeSnippetTitleIf StatementIDECodeSnippetCompletionScopesCodeBlock12345678910111213141516171819202122自定義的是IDECodeSnippetVersion2IDECodeSnippetUserSnippetIDECodeSnippetCompletionPrefixifIDECodeSnippetContentsif (

8、<#condition#>)<#statements#>IDECodeSnippetIdentifierD70E6D11-0297-4BAB-88AA-86D5D5CBBC5DIDECodeSnippetLanguageXcode.SourceCodeLanguage.CIDECodeSnippetSummaryExecute code only when a certain condition is true.IDECodeSnippetTitleIf StatementIDECodeSnippetCompletionScopesCod

9、eBlock12345678910111213141516171819202122232425 看到這兒,到底如何去修改系統(tǒng)的代碼塊樣式呢?1. 前往文件夾/Library/Developer/Xcode/UserData/CodeSnippets2. 創(chuàng)建 if.codesnippet 文件3. 復制以下模板:123454. 找到系統(tǒng)的 if 代碼塊,粘貼 過來。5. 修改 IDECodeSnippetVersion 從 1 變成 2。6. 增加 IDECodeSnippetUserSnippet 為 true。7. 保存,關(guān)閉。退出 Xcode ,再打開, 輸入 if ,看看此時的 if

10、樣式,大功告成! !最后修改的 if 配置文件應(yīng)是如下:IDECodeSnippetVersionIDECodeSnippetUserSnippetIDECodeSnippetCompletionPrefixifIDECodeSnippetContentsif (<#condition#>)<#statements#>IDECodeSnippetIdentifierD70E6D11-0297-4BAB-88AA-86D5D5CBBC5DIDECodeSnippetLanguageXcode.SourceCodeLanguage.CIDECodeSnippetSummaryExecute code only when a certain condition is true.IDECodeSnippetTitleIf StatementIDECodeSnippetCompletionScopesCodeBlock1234567891011121314151617181920212223242526272829總結(jié)根據(jù) if 的配置邏輯,完全

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論