• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆-341  評(píng)論-2670  文章-0  trackbacks-0
                今天我終于實(shí)現(xiàn)了偉大的智能提示了,真是渾身上下都在發(fā)光啊。這次智能提示的代碼可以在Vczh Library+ 3.0的頁面上看到。我使用了上一篇文章所提到的技術(shù),在用戶輸入文字的時(shí)候,通過迅速獲得“當(dāng)前編輯語句”的語法樹,再加上舊的“當(dāng)前編輯語句”的作用域?qū)ο螅瑏砼袛嘤脩艟烤固幱谡荽a的什么地方,最后給出正確的提示。

                下面開始貼圖了哈。

                                                  


                整整兩天不容易啊,期間修掉了很多bug,因?yàn)檫@次整個(gè)parser都在面對(duì)一些殘缺不全的代碼。下一篇文章我會(huì)重點(diǎn)描述關(guān)于IDE里面處理兩顆有些時(shí)候不夠同步得樹的算法。 

                在這里遇到的問題一般都是如何確定一個(gè)語法樹節(jié)點(diǎn)覆蓋的源代碼的位置。當(dāng)然這個(gè)主要是語法分析器干的事情,不過實(shí)在是太復(fù)雜了,主要是我不想寫語法分析器,轉(zhuǎn)而寫了一個(gè)生成器,因此就不得不開發(fā)一個(gè)通用的算法出來。第二步就是,通過光標(biāo)的位置來判斷用戶接下來需要輸入的東西是什么,這一步也比較囧,因?yàn)樯婕暗胶芏嗲闆r。用戶輸入的代碼可能是殘缺不全的,因此語法樹的任何一個(gè)屬性(包括語法書自己)都有可能是null,稍微一不小心就會(huì)犯錯(cuò)誤了……
               
            posted on 2010-11-07 03:11 陳梓瀚(vczh) 閱讀(24679) 評(píng)論(23)  編輯 收藏 引用 所屬分類: 開發(fā)自己的IDE

            評(píng)論:
            # re: 開發(fā)自己的IDE(十),我終于搞定了智能提示了哇哈哈 2010-11-07 03:56 | 溪流
            哇~贊~!代碼變成了圖片,終于看得懂了= =  回復(fù)  更多評(píng)論
              
            # re: 開發(fā)自己的IDE(十),我終于搞定了智能提示了哇哈哈 2010-11-07 05:22 | DiryBoy
            # re: 開發(fā)自己的IDE(十),我終于搞定了智能提示了哇哈哈 2010-11-07 06:01 | lwch
            厲害啊...  回復(fù)  更多評(píng)論
              
            # re: 開發(fā)自己的IDE(十),我終于搞定了智能提示了哇哈哈 2010-11-07 18:29 | 陳昱(CY)
            # re: 開發(fā)自己的IDE(十),我終于搞定了智能提示了哇哈哈 2010-11-07 22:02 | 叫我老王吧
            頂一個(gè)  回復(fù)  更多評(píng)論
              
            # re: 開發(fā)自己的IDE(十),我終于搞定了智能提示了哇哈哈 2010-11-08 04:47 | Pear
            再次來膜拜  回復(fù)  更多評(píng)論
              
            # re: 開發(fā)自己的IDE(十),我終于搞定了智能提示了哇哈哈 2010-11-08 16:49 | 主打歌
            為什么不向visual assist取取經(jīng)呢?  回復(fù)  更多評(píng)論
              
            # re: 開發(fā)自己的IDE(十),我終于搞定了智能提示了哇哈哈 2010-11-08 17:52 | 潘孫友
            太牛X了。。。  回復(fù)  更多評(píng)論
              
            # re: 開發(fā)自己的IDE(十),我終于搞定了智能提示了哇哈哈 2010-11-08 18:08 | 溪流
            @主打歌
            我看著挺有VA的味道呀。。。不過智能提示也都差不多這樣子了。。。
            只是覺著“為什么不”是個(gè)讀起來讓人感覺不太友好的提問方式~  回復(fù)  更多評(píng)論
              
            # re: 開發(fā)自己的IDE(十),我終于搞定了智能提示了哇哈哈 2010-11-08 21:06 | dazhuang
            真讓人羨慕,能講解一下開發(fā)思路嗎  回復(fù)  更多評(píng)論
              
            # re: 開發(fā)自己的IDE(十),我終于搞定了智能提示了哇哈哈 2010-11-08 23:02 | 空明流轉(zhuǎn)
            @dazhuang
            簡(jiǎn)而言之,人肉。  回復(fù)  更多評(píng)論
              
            # re: 開發(fā)自己的IDE(十),我終于搞定了智能提示了哇哈哈 2010-11-09 11:01 | ooseven
            好像沒有看到函數(shù)調(diào)用參數(shù)提示  回復(fù)  更多評(píng)論
              
            # re: 開發(fā)自己的IDE(十),我終于搞定了智能提示了哇哈哈 2010-11-09 11:02 | ooseven
            好像沒有看到函數(shù)參數(shù)提示  回復(fù)  更多評(píng)論
              
            # re: 開發(fā)自己的IDE(十),我終于搞定了智能提示了哇哈哈 2010-11-09 16:42 | ooseven
            而且上面的提示信息好像都是c++系統(tǒng)本身的信息,復(fù)雜的動(dòng)態(tài)信息提示沒看到。比如多繼承類與模板類下的類函數(shù)提示。這個(gè)比較關(guān)鍵,連微軟與va都做不好。建議你做好后,移植幾個(gè)boost的庫(kù)到你的語言下,然后再試試,估計(jì)你會(huì)絕望!  回復(fù)  更多評(píng)論
              
            # re: 開發(fā)自己的IDE(十),我終于搞定了智能提示了哇哈哈 2010-11-09 16:43 | ooseven
            而且上面的提示信息好像都是語言系統(tǒng)本身的信息,復(fù)雜的動(dòng)態(tài)信息提示沒看到。比如多繼承類與模板類下的類函數(shù)提示。這個(gè)比較關(guān)鍵,連微軟與va都做不好。建議你做好后,移植幾個(gè)boost的庫(kù)到你的語言下,然后再試試,估計(jì)你會(huì)絕望!  回復(fù)  更多評(píng)論
              
            # re: 開發(fā)自己的IDE(十),我終于搞定了智能提示了哇哈哈 2010-11-09 16:44 | ooseven
            特別是模板類下的只能提示,不止絕望,連自殺的心情都有!  回復(fù)  更多評(píng)論
              
            # re: 開發(fā)自己的IDE(十),我終于搞定了智能提示了哇哈哈 2010-11-09 18:10 | 陳梓瀚(vczh)
            @ooseven
            我這是我自己設(shè)計(jì)的語言啊,不是C++,沒有類的,只有模板和concept,看清楚哈。  回復(fù)  更多評(píng)論
              
            # re: 開發(fā)自己的IDE(十),我終于搞定了智能提示了哇哈哈 2010-11-09 23:38 | CR蘇杭
            樓主你真的是渾身上下都在發(fā)光  回復(fù)  更多評(píng)論
              
            # re: 開發(fā)自己的IDE(十),我終于搞定了智能提示了哇哈哈 2010-11-10 01:18 | ooseven
            @陳梓瀚(vczh)
            我知道是你設(shè)計(jì)的語言,不過我印象中你的語言好像是支持類的,是我記錯(cuò)了,不過類,多態(tài)的支持應(yīng)該加上吧?這個(gè)含關(guān)鍵啊,加上了這個(gè)就可以很方便的設(shè)計(jì)類庫(kù)了。
              回復(fù)  更多評(píng)論
              
            # re: 開發(fā)自己的IDE(十),我終于搞定了智能提示了哇哈哈 2010-11-10 03:52 | 陳梓瀚(vczh)
            @ooseven
            這是在計(jì)劃中的,只是跟你的想象有點(diǎn)出入而已。  回復(fù)  更多評(píng)論
              
            # re: 開發(fā)自己的IDE(十),我終于搞定了智能提示了哇哈哈 2010-11-10 04:09 | 陳梓瀚(vczh)
            @ooseven
            你可能把我以前做過的語言跟這個(gè)混了吧……  回復(fù)  更多評(píng)論
              
            # re: 開發(fā)自己的IDE(十),我終于搞定了智能提示了哇哈哈 2010-11-10 20:04 | gaimor
            不錯(cuò) 年輕有為  回復(fù)  更多評(píng)論
              
            # re: 開發(fā)自己的IDE(十),我終于搞定了智能提示了哇哈哈 2010-11-11 01:08 | mm
            好強(qiáng)大好強(qiáng)大!!!  回復(fù)  更多評(píng)論
              
            蜜桃麻豆www久久国产精品| 久久丫忘忧草产品| 久久99精品国产| 99精品国产在热久久无毒不卡| 久久精品国产亚洲av高清漫画| www.久久99| 中文精品久久久久人妻| 2021国产精品午夜久久| 粉嫩小泬无遮挡久久久久久| 久久国产精品一区二区| 亚洲国产成人乱码精品女人久久久不卡 | 日产精品久久久久久久| 999久久久免费精品国产| 一本一本久久a久久精品综合麻豆| 久久婷婷五月综合97色直播| 国产∨亚洲V天堂无码久久久| 亚洲v国产v天堂a无码久久| 久久国产精品一区二区| 综合人妻久久一区二区精品| 国产激情久久久久影院老熟女免费| 久久久久久国产精品美女| 夜夜亚洲天天久久| 婷婷综合久久中文字幕蜜桃三电影| 久久久久亚洲精品中文字幕| 久久久国产精品福利免费 | 久久久精品人妻一区二区三区蜜桃| 久久精品18| segui久久国产精品| 国产一区二区三区久久精品| 亚洲va久久久噜噜噜久久男同| 亚洲Av无码国产情品久久| 久久精品无码免费不卡| 国产香蕉97碰碰久久人人| 青青草原综合久久| 国产99久久久国产精免费| 久久美女网站免费| 久久天堂电影网| 国产精品免费久久久久影院| 天天综合久久久网| 久久精品国产99久久丝袜| 久久精品国产色蜜蜜麻豆|