• <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>

            悲情土仔一生

              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
              14 隨筆 :: 0 文章 :: 74 評論 :: 0 Trackbacks

            讓UltraEdit完美支持Lua語法

            作者:Tuuzed(土仔)   發(fā)表于:2008年12月27日
            版權(quán)聲明:可以任意轉(zhuǎn)載,轉(zhuǎn)載時請務(wù)必以超鏈接形式標明文章原始出處和作者信息及本聲明
            http://m.shnenglu.com/tuuzed/archive/2008/12/27/70516.html




                 最近在研究Lua腳本語言(個人覺得它是Basic、C、C++的結(jié)合體),可是“強大”的UltraEdit默認安裝后是不支持Lua語法高亮顯示的,滿屏幕“黑黑”的雞腸字符讓人感覺編程是那么的索然無味,沒有了靈感。
                 終于有一天GOOGLE了一下,發(fā)現(xiàn)了很多解決辦法,最好的辦法就是:先去UltraEdit的官網(wǎng)下載支持Lua的Wordfiles文件(這里),是個文本文件(lua.txt)。打開UltraEdit安裝目錄下的wordfile.txt,把lua.txt文件中的內(nèi)容拷貝粘貼到wordfile.txt的末尾,存盤,OK,于是UltraEdit語法高亮項多出Lua一項,可以選擇使用了。比起網(wǎng)上說的02年版的lua.txt,這個04版(也是很舊)已經(jīng)完美支持“注釋塊”和“注釋行”高亮了,所以無需在改它的第一行。
                 但是,使用一段時間后,還是發(fā)現(xiàn)有問題,比如:有部分關(guān)鍵字沒有加亮(如:os,pair, ipair等);不支持代碼折疊(不能很好地知道結(jié)束關(guān)鍵字end是屬于哪個while、for、function等);對UltraEdit的F8(函數(shù)列表)功能支持得不完美。還好,看了UltraEdit幫助后,自己修改了一下,解決了上述問題,下面就貼出我的lua.txt在這里下載修改后的Lua.txt

             1 /L20"Lua" Line Comment = -- Block Comment On = [[ Block Comment Off = ]] String Chars = "' Escape Char = \ File Extensions = LUA BIN
             2 /Delimiters = ~!@%^&*()-+=|\/{}[]:;"'<> ,    .?
             3 /Function String 1 = "function[ ]++[a-zA-Z]*)"
             4 /Function String 2 = "function[ ]++([ a-zA-Z]*)"
             5 /Open Fold Strings = "function" "if" "while" "for"
             6 /Close Fold Strings = "end"
             7 /C1 "key words"
             8 and
             9 break
            10 do
            11 else 
            12 elseif 
            13 end
            14 function
            15 if in
            16 local
            17 nil not
            18 or
            19 repeat return
            20 then
            21 until
            22 while
            23 /C2
            24 abs acos appendto ascii asin assert atan atan2
            25 call ceil clock collectgarbage copytagmethods cos
            26 date deg dofile dostring
            27 error execute exit
            28 false find floor foreach foreachvar format frexp
            29 getbinmethod getenv getglobal gettagmethod gfind gmatch gsub
            30 insert ipairs
            31 ldexp log log10
            32 match max min mod
            33 newtag next nextvar
            34 os
            35 pairs print
            36 rad random randomseed rawgetglobal rawgettable rawsetglobal rawsettable read
            37 readfrom remove rename
            38 seterrormethod setglobal setlocale settag settagmethod sin sqrt strbyte sub
            39 strchar strfind string strlen strlower strrep strsub strupper
            40 table tag tan tmpname tonumber tostring true type
            41 write writeto
            42 /C3
            43 $debug
            44 $else
            45 $end
            46 $endinput
            47 $if
            48 $ifnot
            49 $nodebug
            50 /C4
            51 PI
            52 _INPUT _OUTPUT _STDERR _STDIN _STDOUT
            53 /C5
            54 +
            55 -
            56 *
            57 // /
            58 ^
            59 <
            60 >
            61 =
            62 ~
            63 %
            64 .
            65 :
            66 /C6
            67 ;
            68 ,
            69 (
            70 )
            71 {
            72 }
            73 [
            74 ]
            75 /C7
            76 cgi cgilua cgilua_url char2hexa chdir
            77 dbluaerrorfb dblua_escape decode default_script
            78 encodecgi encodetable escape
            79 filetype
            80 getvalue
            81 hexa hexa2char html_mask
            82 includehtml insertfield
            83 lua_mask
            84 maketable map mkurl
            85 nopipe
            86 preprocess
            87 redirect relativeurl relative_url
            88 saveluavar savestate script_path script_pdir script_vdir stateerrormethod
            89 statefile stdin strsplit
            90 unescape
            91 /C8
            92 DBClose DBExec DBOpen DBRow

                
                 支持UltraEdit的F8(函數(shù)列表)功能的是3、4行;支持代碼折疊的是5、6行;增加了部分關(guān)鍵字(io,pair,ipair等),但還不完整,可以根據(jù)以后編程需要自己再添加,添加時一定要按字母排列順序“插”對位置!


            posted on 2008-12-27 17:19 土仔 閱讀(7854) 評論(5)  編輯 收藏 引用 所屬分類: 土仔編程

            評論

            # re: 讓UltraEdit完美支持Lua語法 2008-12-27 22:34 5193
            轉(zhuǎn)載文章的時候需要加版權(quán)...

            順便問一句
            你的ultraedit有版權(quán)么...  回復(fù)  更多評論
              

            # re: 讓UltraEdit完美支持Lua語法 2008-12-28 10:03 土仔
            @5193
            回答問題:此文章為原創(chuàng);UltraEdit是公司買的license。  回復(fù)  更多評論
              

            # re: 讓UltraEdit完美支持Lua語法 2008-12-28 13:14 Xw.Y
            支持原創(chuàng)
            支持正版

            可惜偶等窮人只能用emacs……  回復(fù)  更多評論
              

            # re: 讓UltraEdit完美支持Lua語法[未登錄] 2009-01-30 15:35 Betty
            非常感謝,很有用~~  回復(fù)  更多評論
              

            # re: 讓UltraEdit完美支持Lua語法[未登錄] 2011-10-06 09:58 阿炳
            棒棒的,贊一個,已經(jīng)使用中  回復(fù)  更多評論
              

            久久久91人妻无码精品蜜桃HD | 久久精品国产一区二区三区不卡 | 成人久久精品一区二区三区| 精品久久久一二三区| 精品久久久久久久国产潘金莲| 久久人与动人物a级毛片| 久久久久高潮综合影院| 国产午夜免费高清久久影院| 久久青草国产精品一区| 久久综合亚洲色HEZYO社区| 日日躁夜夜躁狠狠久久AV| 91精品免费久久久久久久久| 热久久视久久精品18| 久久久精品人妻一区二区三区蜜桃 | 久久精品国产一区二区三区日韩| 狠狠精品久久久无码中文字幕 | 久久婷婷五月综合成人D啪 | 久久久WWW免费人成精品| 久久亚洲精品国产精品| 欧美久久久久久午夜精品| 国产成人无码久久久精品一| 久久综合成人网| 国产精品成人99久久久久 | 亚洲色欲久久久久综合网| 欧美va久久久噜噜噜久久| 亚洲精品无码久久久久AV麻豆| 久久99国产精品久久99果冻传媒| 免费无码国产欧美久久18| 久久精品国产一区二区| 99久久成人18免费网站| 亚洲欧美日韩久久精品第一区| 久久亚洲天堂| 久久嫩草影院免费看夜色| 国产福利电影一区二区三区久久老子无码午夜伦不 | 日韩AV毛片精品久久久| 久久国产成人| 久久久91人妻无码精品蜜桃HD | 亚洲色欲久久久综合网东京热| 亚洲另类欧美综合久久图片区| 久久综合五月丁香久久激情| 国产午夜精品理论片久久|