2012-07-26 85 views
7

我需要基於javascript/html的代碼編輯器,我將自定義非常簡單的自定義編碼語言。基於JavaScript的自定義語言語法的代碼編輯器

此編輯工具需要在離線解決方案中工作,所以源代碼必須是可下載或打開。 即使沒有變量,語言語法也會看起來像非常簡化的java腳本 我將爲自定義語言定義'if then'和'built in function name'。

所以它必須有一個自定義的編碼語言語法配置支持

如果你可以參考一些準備使用的解決方案,這將是這樣的幫助

+0

可能重複[jQ uery插件的HTML編輯器與語法着色](http://stackoverflow.com/questions/1232764/jquery-plugin-for-html-editor-with-syntax-coloring) – 2013-09-09 17:45:05

回答

3

我找到了解決方案,我自己的問題

我使用的代碼鏡

http://codemirror.net/

它內置支持大量的作弄語言包括JavaScript/C#/ VB/C/C++/CSS/etc

並根據語言文件還可以修改支持的關鍵字列表

-1

我不知道你是否會考慮這是一個「代碼編輯器」,但您可以使用gedit。您可以創建一個新的語言定義並將其放入「mylanguage.lang」文件中,並將其用於語法着色(請參閱here)。

你也可以爲gedit製作插件,讓它爲你的語言做更多的事情,比如構建一個AST或編譯你的代碼等等。插件是用Python編寫的(無論好壞)。看看this page

Here's one example Gedit插件的整潔程度如何。這是Gedit的一個插件,它與Clang(一種C/C++/ObjC編譯器)接口,爲程序員提供即時警告和錯誤代碼。所以,你可以製作一個插件,可以分析你的新語言的代碼,並檢查問題/提供代碼完成等。

雖然這看起來有點乏味,但我不認爲你會找到一個現成的解決方案你的問題。由於您的語言在語法上與其他語言在技術上不同(儘管可能類似於其他語言),您不會找到一個神奇地知道您的語法的編輯器。但如果你想要的只是代碼着色,那麼Gedit不會難以設置。不幸的是,編輯器的更強大的功能並不容易,但絕對有可能!