我有一個導出Objective-C和Swift代碼的應用程序。使用Xcode的代碼高亮顏色格式化字符串
在此自動生成的代碼,我想格式化具有相同顏色的文本的Xcode的默認主題使用即綠色徵求意見,藍色的數字,紅色紫色字符串類名稱等預覽窗口
像PaintCode這樣的應用程序可以實現這一點。有沒有人知道圖書館或其他生產這種方式。
我有一個導出Objective-C和Swift代碼的應用程序。使用Xcode的代碼高亮顏色格式化字符串
在此自動生成的代碼,我想格式化具有相同顏色的文本的Xcode的默認主題使用即綠色徵求意見,藍色的數字,紅色紫色字符串類名稱等預覽窗口
像PaintCode這樣的應用程序可以實現這一點。有沒有人知道圖書館或其他生產這種方式。
您將需要一個詞法分裂文成部分:標識,符號,字符串和數字文字,評論等進一步閱讀有關lexers on Wikipedia。
然後你必須知道應用什麼顏色,包括不同類型的標識符:關鍵字,函數,變量,類型等。對於這些,你可以管理某種列表並查找它們。
對於分析,一個好的開始地點是NSScanner
或者只是簡單地逐個字符地遍歷文本。這就是我們在PaintCode中做到的。
對於着色本身,只需使用NSAttributedString
和NSForegroundColorAttributeName
。沒有必要進入核心文本。