2010-01-12 46 views
1

我使用flex作爲詞法分析器和野牛作爲解析器生成器,但兩者的結果都是 控制檯窗口,並且我想爲它創建一個gui(如ide) 那麼該怎麼做。 謝謝如何爲我的編譯器創建一個gui?

+0

請注意Flex標籤是爲adobe產品。至於你如何提供一個gui,當然,你設計和編寫一個gui。請讓你的問題更具體。 – 2010-01-12 11:04:56

+0

尼爾他的問題很好。他正在討論如何爲編譯器特別創建一個GUI。不是如何創建一個GUI。 – 2010-01-13 11:33:09

回答

3

不要。將編譯器留作命令行應用程序,而是教一些現有的IDE如何調用它並解析其輸出。

+0

解析命令行輸出?呸。如何爲第三方提供一個API來獲得解析的AST或評估代碼等等。 – 2010-01-12 11:22:05

+0

公平的建議,但是大多數開源IDE沒有太多辦法來處理這種事情。 – 2010-01-12 11:24:44

1

如果您將它作爲命令行來使用,您可以使用開源GUI並將您的編譯器插入它 - 免費爲您的編譯器獲得一個精彩的IDE;)。

對於IDE的,可以用自定義語言順利:

您將有一個很多無論如何編寫你的自定義插件是有趣的,但它會比編寫一個你想要的IDE少很多如果。

但是,另一個話題是爲你的語言寫一個解釋器,但我認爲這不是你想要的。如果是這樣,但是,您應該瞭解readline

如果你是真的確定要編寫一個簡單的IDE你的語言(寫一個複雜的是老少咸宜的任務),嘗試至少使用適合於快速GUI語言開發(C#,Java,其他),併爲基礎獲得一個類似Notepad的應用程序。你可以從那裏開始。

但請記住,幾乎所有已知的編譯器都是命令行 - IDE只是執行並解析結果。這是有原因的,你知道。

理由命令行:

  • 容易插入任何多用途IDE
  • 易於實現自動化編譯(生成文件等)
  • 易於實現自動化的其他任務(批量建設,發佈,部署,測試)
1

你在什麼操作系統?我會假設linux bc我很難在Windows上運行野牛,儘管我可以在Windows中編譯我的野牛輸出。

我沒有IDE。我在VMWare中使用了linux(所以我在windows7窗口或windows7窗口下有linux窗口),並使用程序員記事本編輯這些文件作爲我的首選簡單IDE。它有一些自動完成等。對於我的Windows編譯我的編譯器我可以設置一個批處理文件到Pnotepad,並在更改源時,我可以按F5運行bat文件並編譯我的來源,它有輸出。然而開發編譯器我使用alt-tab切換到我的linux終端並在那裏運行構建。

當我在linux上構建編譯器時,它會運行自動化腳本來查看是否有任何事情發生,並且我的linux編譯器以不同的顏色生成輸出錯誤。我不需要IDE。我希望我可以爲視覺工作室製作一些語言插件,我已經看過。它看起來很難,但是這傢伙在視覺工作室Native PHP support in Visual Studio 2010?

相關問題