2013-03-12 126 views
0

爲了教育目的,我想構建一個用於PHP編碼的IDE。將文本文件加載到內存並分析其內容

我做了一個表格應用程序,並添加OpenFileDialog ..(我的C#的知識是有益的,因爲它很容易...即使沒有智能感知!)

裝入一個文件,並從中讀取線基本上是相同的在每種語言(甚至PERL)中。

但我的目標是寫自制的智力。我不需要關於richtextBox和它生成的事件,endline,EOF等的信息。

我遇到的問題是,我該如何處理數據?線爲線?

  • 每行文本文件的結構?
  • 循環鏈表中的所有結構? ...
  • 同時更新richtextBox?
  • 尋找開啓和關閉括號,變量等,等

我認爲一個SQL類型的應用項目文件夾數據庫的微軟商店。 但是,你將如何跟蹤變量並以某種形式模擬它們?

我想知道如何在動態文本上有效地處理這個問題。

回答

1

從來沒有想過這件事通過之前,這聽起來像一個有趣的挑戰。個人而言,我認爲你必須實現一個詞法掃描器,將整個源文件標記爲源碼樹,每個標記也有關於它的信息,將標記映射到源文件內部的行/字符。

從那裏你可以看到你想要走多遠 - 當某人懸停在一個令牌上時,它可以使用它周圍的代碼上下文來更智能地處理你提供的「intellisense」。

將鼠標懸停在某個東西上會映射回您的源代碼樹,該代碼會在您構建它時加載任何要顯示的信息。

也許這是過度的,但它聽起來像一個有趣的項目。

+0

您在YouTube上觀看了一些關於「詞法掃描儀」的視頻之後,會關注我需要做的事情。 – NaturalDemon 2013-03-13 11:10:29

相關問題