使用易语言的人都知道,易语言IDE中的代码中有表格和流程线,不是一般的文本代码。把代码复制出来后再粘贴到编辑器中,就是纯文本的代码,跟IDE中相差十万八千里,而且非常不容易阅读。于是有不少人做了一些在网页上体现易语言IDE中原来样式的工具,用到了table表格,流程线用图片作为背景。虽然这样看起来跟IDE中几乎一模一样,但是却不能直接复制到IDE中使用,必须把原始代码加进去,通过点击按钮或链接来复制原始代码。
我个人认为,代码贴出来就是为了交流的,要体现出易读、易复制的特性,不能带上太多的附件。对于易语言这种特殊形式的代码,不需要完全按照它原来的样式来表现, 只要体现出那个意思就行了。这几天修改了以前做的一个易语言代码高亮工具,用CSS控制表格、流程线样式,做了一个还算过得去的模块。效果如下:
.子程序_启动子程序,整数型,,本子程序在程序启动后最先执行
.局部变量数字,整数型
.局部变量文本,文本型
.局部变量数组,文本型,,"0"
.局部变量m,整数型
.局部变量i,整数型
置随机数种子 (取启动时间 ())
数字 = 取随机数 (0, 10000)
数组 = { “个”, “十”, “百”, “千”, “万” }
m = 取文本长度 (到文本 (数字))
.计次循环首(m, i)
.如果真(i > 1)
文本 = “, ” + 文本
.如果真结束
文本 = 数组 [i] + “位:” + 取文本中间 (到文本 (数字), m - i + 1, 1) + 文本
.计次循环尾()
调试输出 (数字, 文本)
返回 (0) ' 可以根据您的需要返回任意数值
特点:
1、样式与html代码分离,减小格式化后的体积;
2、样式是独立出来的,可以自己修改高亮颜色以及列表形式;
3、 显示行号,也可以在css中修改行号的显示和隐藏;
4、可以选择显示或隐藏复制出来的版本号和支持库声明;
5、可以直接复制到易语言IDE中使用。
需要注意的几点:
1、 你知道的,这是易语言模块,必须在易语言中使用;
2、请特别注意:要把样式代码加入到CSS文件中或者对应的网页头部,否则无法显示效果;
3、 格式化之前的原始代码最好是从IDE中直接复制出来的,以免导致格式化出现错位的现象;
4、子程序等表格头可能会被超长的备注文字撑开,可以在CSS中修改表头长度;
5、 “.如果结束”、“.判断结束”等语句是通过设置颜色隐藏的,如果网页设置了阴影样式,会导致其显示;
6、复制到IDE中时要把代码选择完整,不能丢失 “.如果结束”等隐藏的行。
另外格式化后的代码底部有我的版权信息,你可以选择保留或者隐藏该信息,但不能换成其他版权信息。
附样式代码:
.e_c0 {display:inline-block;width:6px;color:#FAFAFA;font-size:6px;}/*圆点*/
.e_c1 {color:#104E8B;}/*声明*/
.e_c2 {color:#0000FF;}/*类型*/
.e_c3 {color:#AA0000;}/*方法*/
.e_c4 {color:#EE00EE;}/*字串*/
.e_c5 {color:#00A800;}/*注释*/
.e_c6 {color:#FF0000;}/*数字*/
.e_c7 {color:#5830E0;}/*属性*/
.e_c8 {color:#0000A0;}/*名称*/
.e_c9 {color:#000000;}/*常规*/
.e_ca {display:inline-block;width:6px;color:#E4EDE4;font-size:6px;}/*子程序表逗号*/
.e_cb {display:inline-block;width:6px;color:#F4F7F4;font-size:6px;}/*参数变量表逗号*/
.e_cc {padding:02px010px;border-left:1pxdotted#A6A6A6;color:#00A800;}/*表中备注*/
.e_s0 {display:inline-block;width:18px;border-left:1pxdashed#A6A6A6;}/*标志前缩进*/
.e_s1 {display:inline-block;width:24px;border-left:1pxdashed#A6A6A6;}/*语句前缩进*/
.e_s2 {display:inline-block;width:24px;border-top:0pxdashed#A6A6A6;}/*标志尾语句前缩进*/
.e_s3 {color:#FAFAFA;}/*标志尾语句*/
.e_s4 {display:inline-block;width:460px;line-height:20px;padding:3px10px0 0;background-color:#E4EDE4;border-top:1pxsolidgreen;white-space:nowrap;}/*子程序等表格*/
.e_s5 {display:inline-block;width:460px;line-height:20px;padding:010px0 0;background-color:#F0F7F0;white-space:nowrap;}/*参数、变量等表格*/
.e_url {text-decoration:none;}/*网站链接*/
.e_div {font-family:"Courier New",Courier,mono;font-size:12px;background-color:#FAFAFA;border:1pxsolid#D1D7DC;width:100%;min-width:580px;overflow:auto;margin:0;}/*主体*/
.e_div ol {padding:10px10px2px2px;color:#2B91AF;}/*主体列表*/
.e_div ol li {border-left:1pxsolid#D1D7DC;padding-left:24px;line-height:20px;}/*主体行*/
.e_div ol li.e_ht {border-left:1pxsolid#D1D7DC;padding-left:18px;line-height:20px;}/*表头行*/
.e_div ol li.e_hb {border-left:1pxsolid#D1D7DC;padding-left:18px;line-height:20px;}/*标志头行*/
.e_from {list-style-type:none;text-align:right;color:#FAFAFA;padding:10px0 0 0;}/*末尾版权声明*/