qt creator原始碼全方面分析(2-0)
目錄
- Extending Qt Creator Manual
- 生成領域特定的程式碼和模板
- 程式碼片段
- 檔案和專案模板
- 自定義嚮導
- 支援其他檔案型別
- MIME型別
- 高亮和縮排
- 自定義文字編輯器
- 其他自定義編輯器
- 執行外部工具
- 簡單的外部工具
- 複雜的外部工具
- 所有主題
- 生成領域特定的程式碼和模板
Extending Qt Creator Manual
Qt Creator是為Qt開發人員的需求量身定製的跨平臺整合開發環境(IDE)。
Qt Creator可以通過多種方式擴充套件。 例如,Qt Creator架構基於外掛載入器,這意味著外掛載入器以外的所有功能都在外掛中實現。 但是,您可以擴充套件和調整Qt Creator的許多部分,而無需求助於C++編碼,以及實現這樣的外掛。
本文件概述了擴充套件Qt Creator的各種方法,根據您要實現的目標,併為您提供了相關的文件。
生成領域特定的程式碼和模板
如果您經常需要編寫相同的程式碼,無論是小的程式碼片段,整個檔案還是分佈在多個檔案中的類,還是完整的專案,都可以為此目的建立程式碼片段,模板和嚮導。
程式碼片段
通常,片段包含幾行程式碼(儘管它們也可以是純文字),您通常希望將其插入到更大的程式碼主體中,但不想每次都鍵入一遍。 例如,while和for迴圈,if-else和try-catch構造以及類框架。 片段的觸發方式與普通程式碼編寫一樣(請參閱提供程式碼輔助)。Qt Creator包含一組預配置的程式碼片段,您可以在其中新增自己的片段。
> Snippets User Interface (翻譯)
檔案和專案模板
您可以擴充套件檔案>新建檔案或專案中的嚮導, 通過為自己的檔案和專案模板編寫JSON定義檔案來擴充套件。
- Adding New Custom Wizards
- User Interface Text Guidelines(翻譯)
自定義嚮導
如果上述程式碼片段和模板的方法,還不能滿足您的使用,那麼你可以建立一個自定義的Qt Creator外掛。 這使您在嚮導之外可以完全自主控制,但這需要您自己編寫大部分UI和邏輯程式碼。
- Creating Plugins(翻譯)
- Qt Creator Coding Rules(翻譯)
- Creating Wizards in Code(翻譯)
- User Interface Text Guidelines(翻譯)
支援其他檔案型別
如果您有擴充套件檔案或MIME型別檔案,而Qt Creator預設不處理,你可以編輯MIME型別定義,新增高亮定義檔案,並建立你自己的文字編輯器。
MIME型別
你可能會發現Qt Creator可以處理您的特定檔案,如果知道其內容的型別的話。 例如,對Qt Creator來說,未知的C++標頭檔案或原始檔副檔名。你可以修改Qt Creator中的MIME型別定義,來適應你的特定設定,通過新增或刪除副檔名,並指定魔術頭(magic headers)。
- Editing MIME Types(翻譯)
- MIME Type Specification Files
高亮和縮排
對於文字檔案,Qt Creator提供了一種簡單的方法,來為預設情況下未知的檔案型別,新增高亮和縮排。常規高亮是基於Kate Editor提供的高亮定義檔案。 您可以下載高亮定義檔案,用於Qt Creator,而且也可以建立自己的定義檔案。
- Generic Highlighting(翻譯)
- Writing a Syntax Highlighting File
自定義文字編輯器
除上述MIME型別和高亮功能外,如果您需要其他高階功能,例如自定義文字補全或語義分析功能,你可以使用自己的文字編輯器擴充套件Qt Creator。 Qt Creator提供了特殊的API,為你的文字編輯器提供基礎,從根本上消除了實現文字編輯器的痛苦。
- Creating Plugins(翻譯)
- Qt Creator Coding Rules(翻譯)
- Providing Code Assist
其他自定義編輯器
您還可以新增完全自定義的編輯器,徹底掌控其外觀和行為。
- Creating Plugins(翻譯)
- Qt Creator Coding Rules(翻譯)
執行外部工具
大多數軟體專案和開發過程都需要各種外部工具。 Qt Creator中集成了一些外部工具,例如流行的版本控制系統和構建工具鏈。 但是,一個工具不可能涵蓋所有用例,因此您可以將其他工具整合到Qt Creator中。
簡單的外部工具
在Qt Creator中,您可以指定工具,然後可以從選單或使用你設定的鍵盤快捷,來執行這些工具。 這使您可以完成某些事情,但有一些限制。 您指定要執行的命令,附加的引數和輸入,以及如何處理輸出。 要指定值,可以使用一組內部Qt Creator變數,例如當前文件或專案的檔名,或文字編輯器中當前選擇的文字。 如果發現缺少變數,請毫不猶豫地填寫功能建議。 工具描述將另存為可以共享的XML檔案。
複雜的外部工具
當您計劃整合更復雜的工具時,請仔細考慮,將工具緊密整合到Qt Creator中,或主要通過提供一種使用適當引數啟動工具的方法來進行鬆散整合,那種更有好處。
鬆散整合工具
如果Qt Creator和外部工具之間不需要互動,啟動外部程式,並使用其自帶使用者介面,會更好。這樣可以避免Qt Creator使用者介面混亂,而且即使完全不使用Qt Creator,該工具也具有良好的介面。
通常,您可以使用外部工具規範檔案來啟動工具。如果啟動該工具,處理其輸出,需要更復雜的邏輯,則可以通過外掛在Qt Creator中新增選單項。如果需要在Qt Creator中配置工具,則可以為其新增選項頁面。
- Using External Tools(翻譯)
- External Tool Specification Files(翻譯)
- Creating Plugins(翻譯)
- Qt Creator Coding Rules(翻譯)
與工具輸出進行互動
在某些情況下,執行外部工具不需要與Qt Creator緊密整合,但是研究該工具的輸出可能會從中受益。 例如,某些工具在專案的一部分檔案中生成問題列表,而某些工具建立與程式碼相關的輸出。 對於這些工具,在輸出和相應的程式碼之間進行互動切換非常有用。
處理該問題的一種方法是讓該工具建立一個輸出檔案,然後在Qt Creator中開啟該檔案。 您提供了一個用於處理此檔案的編輯器(可能是隻讀的)。 對於問題列表,請考慮建立任務列表檔案,這些檔案顯示在問題輸出窗格中。
- Showing Task List Files in the Issues Pane(翻譯)
- Creating Plugins(翻譯)
- Qt Creator Coding Rules(翻譯)
所有主題
- 開發Qt Creator外掛
- Creating Plugins
- Creating Wizards in Code
- 參考
- MIME Type Specification Files
- External Tool Specification Files
- Highlight Definition Files
- Qt Creator Variables
- User Interface Text Guidelines
- Writing Documentation
- Qt Creator Coding Rules
- Qt Creator API Reference
原創造福大家,共享改變世界
獻出一片愛心,溫暖作者心靈
<