免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2022 | 回复: 0
打印 上一主题 下一主题

Python应用:解析EditPlus的AS语法到FlashDevelop语法格式 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-03-12 12:44 |只看该作者 |倒序浏览
     FlashDevelop是最近偶尔发现的带代码提示功能的不错的轻量级AS编辑器。
    不过其语法定义(在一个XML中)跟平时用的EditPlus不大一样,所以这里就可以用一个Python程序来转化一下语法格式。
    一些主要的不同,就是EditPlus是每个关键字一行,FlashDevelop是若干个(约100个字符)一行,为尽可能与原格式保持一致,就用这个Py程序按照关键字分类重新组织一下:
[color="#008080"]# -=-=-=-=-=- read the file
[color="#000000"]sFnSrcStxFile[color="#00c600"]=[color="#000000"]r[color="#a6caf0"]"C:\Program Files\EditPlus 2\as2-dc_addLeapSter.stx"
[color="#000000"]fSrcStx[color="#00c600"]=[color="#808000"]file[color="#000000"](sFnSrcStxFile,[color="#a6caf0"]'r'[color="#000000"])
[color="#000000"]aSrcStx[color="#00c600"]=[color="#000000"]fSrcStx[color="#00c600"].[color="#808000"]readlines[color="#000000"]()
[color="#000000"]fSrcStx[color="#00c600"].[color="#808000"]close[color="#000000"]()
[color="#000000"]iLastLine[color="#00c600"]=[color="#000000"]796 [color="#008080"]# len(aSrcStx)-1
[color="#008080"]# -=-=-=-=-=- init the vars
[color="#000000"]iStartline[color="#00c600"]=[color="#000000"]42
[color="#000000"]iCurLine[color="#00c600"]=[color="#000000"]iStartline
[color="#000000"]sNewStx[color="#00c600"]=[color="#a6caf0"]''
[color="#000000"]iLineLenMax[color="#00c600"]=[color="#000000"]100
[color="#008080"]# -=-=-=-=-=- def
[color="#0000ff"]def [color="#000000"]produceByType():
        [color="#0000ff"]global [color="#000000"]sNewStx,iCurLine
        [color="#000000"]sNewStx[color="#00c600"]+=[color="#000000"]aSrcStx[iCurLine][color="#00c600"]+[color="#a6caf0"]'\n'
        [color="#000000"]iCurLine[color="#00c600"]+=[color="#000000"]1
        [color="#000000"]sLine[color="#00c600"]=[color="#a6caf0"]''
        [color="#0000ff"]while [color="#00c600"]True[color="#000000"]:
                [color="#0000ff"]print [color="#000000"]iLastLine
                [color="#0000ff"]if[color="#000000"](iCurLine[color="#00c600"]>[color="#000000"]iLastLine):
                        [color="#0000ff"]return
                [color="#0000ff"]if[color="#000000"](aSrcStx[iCurLine][color="#00c600"].[color="#800000"]find[color="#000000"]([color="#a6caf0"]"#KEYWORD"[color="#000000"])[color="#00c600"]==-[color="#000000"]1):
                        [color="#0000ff"]if[color="#000000"]([color="#808000"]len[color="#000000"](sLine)[color="#00c600"]+[color="#808000"]len[color="#000000"](aSrcStx[iCurLine])[color="#00c600"]-[color="#000000"]1)[color="#00c600"]


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/28253/showart_257291.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP