原文連結:http://blog.csdn.net/zhangxaochen/article/details/8104034
在 windows 下寫 Lua, 我能找到的最好的編輯器就是 luaForWindows 項目裡帶的 scite。 npp (即 notepad++ ) 也將就著能用, 不過只有代碼高亮和簡單的單詞/函數提示, 跟 scite 比起來實在是簡陋。很多人說 vim 是最好的, 可是不知道為啥我比較疏遠 vim, 就是不大喜歡, 以後有需要的時候再摸索vim吧。
用 scite 實在不錯, 你可以做到對 lua 代碼的單步調試, 設定斷點, 查看變數值, 棧追蹤, 代碼提示(比 npp 要強大)。 調試方面, luaForWindows 裡的 scite 都已經配好了, 主要是預設的代碼提示還需要改進。
預設情況下, scite 只有函數參數列表提示。 當你輸入 print 並按 '(' 時, 會彈出提示
但是假如我不知道 print 這個函數, 不知道是 print, 還是 printf, 希望 scite 能夠有提示怎麼辦?
只需要改動 SciTEGlobal.properties 這個檔案, 在檔案裡添一句:
autocomplete.*.start.characters=.$(chars.alpha)
意思是說, 當按下句點 '.', 以及字母鍵的時候, 彈出自動完成提示。 這時候只要你按下 'p', 就會彈出提示 'pairs, pcall, print' 可選。 可以看到標準庫裡沒有 printf。
當然,這個提示是可以自己定製的。 lua.properties 檔案中指定了 api 檔案:
api.$(file.patterns.lua)=$(SciteDefaultHome)\lualib5_annot.api
開啟 lualib5_annot.api這個檔案, 可以看到這樣一行:
print (e1, e2, ...) prints values to stdout using tostring
這就是所謂的代碼提示內容啦。
如果要寫自己的 api 檔案, 先在設定檔加上自訂的檔案名稱 xxx.api, 如此:
api.$(file.patterns.lua)=$(SciteDefaultHome)\lualib5_annot.api;$(SciteDefaultHome)\xxx.api
注意兩個api 檔案路徑用 分號分割, 分號後不要空格
然後就可以在 xxx.api 裡寫自己的代碼提示了
另外, SciTEGlobal.properties 檔案裡可以加上這麼一句:
autocomplete.*.fillups=(
本來代碼提示出來之後要按一下 tab 鍵補全, 現在直接按左括弧 '(', 省掉了按 tab 這一下, 略緩解小拇指疲勞啊
原文連結:http://blog.csdn.net/zhangxaochen/article/details/8104034
{{OVER}}