上週忽然萌生了一個想法:咱們須要的能夠不是一個三維可視化的前處理軟件,而能夠是一個功能強大的文本編輯器。這樣一來能夠克服可視化前處理開發週期長、工做量大、擴展性差的缺點,二來使用時其實能夠很方便的,而且很是有本身的特點。編輯器
花了一些考察調研這個想法,初步的需求包括:編碼
-正常編輯,支持中英文,支持各類常見編碼格式;
-語法高亮
-代碼塊收縮
-查詢、替換
-塊註釋
-按鍵定義 ci
-補全、關鍵詞提示
-幫助詞典
-動態顯示模型錯誤
-與後處理交互
-轉到定義
-*動態模型條目樹
其中前面是如今編輯器(如UtraEdit)有的功能,然後面是在它們之上很難實現的功能。
調研了一下,發現開源的程序包挺豐富,C++裏有QScintilla,C#裏有QScintillaNET、AvalonEdit等等。而後又是一番抉擇,很差選。開發
首先是語言的選擇,C#無疑開發會比較容易,工做量和難度都小一些,可是如今後處理是C++、Qt,之後要交互的話,都使用C++會更方便一些。另外,C#的Ribbon界面以前使用過DotNETRibbon,是收費的。如今咱們已經買了QTitanRibbon.C++,因此C++也會好一點。可是查了一下QScintilla的資料,發現資料挺好的,擔憂是否是比較小衆。固然,話說真正有需求使用一個相似這樣的包的,其實真是很是少很是少的。it
另外QScintilla的License是GPL的,商業的話須要購買商業的許可,對於未來,這也是一筆開銷。可視化
暫時先這樣,等過一陣子再詳細策劃。擴展