怎么用Js 写一个 代码风格排版引擎?(征求意见...)

btbtd 2007-07-31 03:44:34

主要是想用OOP 的方法写一个代码风格排版引擎...

目前还没进行编码, 不过几个主要问题貌似在思考中解决了...
但肯定还有更多问题没思考到...

比如, 流派分 类C, 类Basic

先实现类C, 类Basic 暂不实现.

类C 主要对付的是 转义符和字符串, 解决这两个问题, 其他的好办.

转义符目前 打算使用数组存储原字符, 再有规律命名数组标记字符.
字符串和转义符一样处理, 步骤较转义符慢.

到了最后再还原转义符...

........等等


并且打算 分为 UI 和 Engine 两个文件...

有经验的给点启发...
谢谢.
...全文
610 49 打赏 收藏 转发到动态 举报
写回复
用AI写文章
49 条回复
切换为时间正序
请发表友善的回复…
发表回复
muxrwc 2007-08-13
  • 打赏
  • 举报
回复
- -
你这也太差劲了。。。
philoo 2007-08-07
  • 打赏
  • 举报
回复
学习
btbtd 2007-08-07
  • 打赏
  • 举报
回复
不是...
是编码风格...

不过俺也弄了几个与源代码高亮相关的东西....
cuixiping 2007-08-07
  • 打赏
  • 举报
回复
楼主说的,是不是“源代码高亮”?
源代码高亮,我最喜欢Editplus的,认为比其他编辑器实现的都要更好、更漂亮,只是不支持折叠。
btbtd 2007-08-07
  • 打赏
  • 举报
回复
结帐, 以后俺的铁一楼满分...
btbtd 2007-08-06
  • 打赏
  • 举报
回复
v1.0 完全版完成。。。

提供下载:
http://files.myopera.com/btbtd/javascript/class/Styler/Styler_v1-0.7z

预览:
http://files.myopera.com/btbtd/javascript/class/Styler/Styler_v1-0.htm
btbtd 2007-08-05
  • 打赏
  • 举报
回复
呼呼 ....

v1.0 预览版完成...
http://files.myopera.com/btbtd/javascript/class/Styler/Beta/Styler_v1-0.htm

1.0 完全版这一两天内完成...
1.1 实现 css
1.2 实现 xml
1.3 实现 为 basic
btbtd 2007-08-03
  • 打赏
  • 举报
回复
...好了, 弄了个体验版...
http://shawl.qiu.googlepages.com/Styler.htm
btbtd 2007-08-03
  • 打赏
  • 举报
回复
倒...
那个步骤...在那时还没弄, 不过现在已经OK...
但没全弄好, 弄好了俺会发布滴...
dshj 2007-08-03
  • 打赏
  • 举报
回复
发现问题:

原代码
function ChangeSel()
{
var chk = document.getElementById("chkSelAll");
var table = document.getElementById("dgFreeUpload");
var all = true;

chk.checked = all;
}
执行后
function ChangeSel()
{
var chk = document.getElementById(SQCLIKESTRINGMARKER0);
var table = document.getElementById(SQCLIKESTRINGMARKER1);
var all = true;
chk.checked = all;
}

"chkSelAll" 怎么变成 SQCLIKESTRINGMARKER0了
btbtd 2007-08-02
  • 打赏
  • 举报
回复
呵呵, 是的, 代码缩进....
看起来很简单, 不过弄起来确实不容易...
不过方法已经有了, 类似 huffman jpeg 算法....
Ischema 2007-08-02
  • 打赏
  • 举报
回复
高转速的,关注下~
btbtd 2007-08-02
  • 打赏
  • 举报
回复
疯, 肯定早有准备的, 要不然俺是不会弄这个东西的..
接下来的东西在流程图有逐步实现...不难了...

再广告一下...
下一步俺会把之前写的高亮类也作成一个引擎...
哈哈...
muxrwc 2007-08-02
  • 打赏
  • 举报
回复
强?什么东西啊?
墙?...........
muxrwc 2007-08-02
  • 打赏
  • 举报
回复
强?什么东西啊?
这些处理起来还算不麻烦。。主要就是都放到一起后,在处理那些万恶的函数,方法什么的。那就麻烦了。。加若干多的判断后,效率自然就低了。。。所以还是要开始做的时候规划下思路。。不然。。就哭了。。
btbtd 2007-08-02
  • 打赏
  • 举报
回复
貌似刚才咱们伟大的墙又升级了, 几个工具都瘫了...
btbtd 2007-08-02
  • 打赏
  • 举报
回复
这个应该比较像某种对称算法....
btbtd 2007-08-02
  • 打赏
  • 举报
回复
哈哈...我可没这意思, 不过要解决某种特殊问题还是要使用特殊方法...

这不...实现了..
http://shawl.qiu.googlepages.com/Styler.htm

而且效率也很X比...
后面的事情现在应该跟切菜一样容易了...
muxrwc 2007-08-02
  • 打赏
  • 举报
回复
/tx
是你总弄大一大大大堆的code压人。。。谁敢看啊。。。。
muxrwc 2007-08-02
  • 打赏
  • 举报
回复
我还是没看懂。。这个意思?

<script type="text/javascript">
var parse = function (str, obj) {
var wc = { val : [], num : [] }, value, i;
for (i = 0 ; i < str.length ; i ++) {
value = wc.val[i] = str.charAt(i);
if (value == "{") {
wc.num.push(i);
} else if (value == "}") {
obj.innerHTML += wc.val.slice(wc.num.pop()).join("") + "<br \/>";
}
}
};
window.onload = function () {
parse("xxxxxx{{{{}}}{}{}}{{{{}}}}{}{}{}{}{}{{}}{{{}}}{", wc);
};
</script>
<div id="wc"></div>
加载更多回复(29)

87,903

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧