2017-06-10 33 views
-1

我有興趣爲C#中的Android創建代碼編輯器應用程序(使用Xamarin)。很明顯,任何優秀的代碼編輯器都需要語法突出顯示廣泛的流行語言。我不想爲自己編寫所有這些語言的自定義標記器,所以我正在尋找一個已經有它們的語法的庫。我可以使用哪些庫來突出顯示C#中流行語言的語法?

從我上次瀏覽VSCode editor source code時,我知道某些語言有.tmLanguage(TextMate-style)或.cson(Atom-style)格式的許多預定義語法文件。例如,here是由Atom維護的一組語法,而here是由.NET Foundation維護的官方C#語法。

我最初尋找一個.NET庫來分析這些文件,並允許我將它們與表達式匹配,但AFAICS不存在。像vscode-textmatetextpow就像我在找的東西,但那些不是用.NET編寫的。

任何人都可以指向一個圖書館,可以幫助我達到這個目的嗎?另外,如果我找不到任何東西,使用.NET JavaScript engine來執行上述庫中的函數是不是一個好主意?通常我會毫不猶豫地使用引擎,但是恐怕延遲幾百毫秒對於語法突出顯示來說是不可接受的。

+0

這是一個Android的具體問題,所以你應該說清楚。 GitHub的Android客戶端開放源代碼使用一個控件,https://github.com/pockethub/PocketHub。您可能會檢查它們在Java中的具體含義,然後將其轉換爲C#和Xamarin。 –

回答