支持连接识别、字体、颜色、表情了 ! (0分)

  • 主题发起人 主题发起人 yysun
  • 开始时间 开始时间
[brown]Test[/brown]
[:D]
 
[red]关于代码语法显示的好消息![/red]
今天发现一个很酷的工具 SynEdit, http://yynedit.sourceforge.net
我已经把他做成 ASP Component, 并选择支持了 19 种语言:
DELPHI, C++, JAVA, VB, HTML, VBSCRIPT, JSCRIPT, PHP, PERL, PYTHON, SQL,
FOXPRO, FORTRAN, CSS, BAT, INI, DFM, SML, ASM
不久您就可以用
[Delphi] ... [/Delphi] 来显示 Delphi 程序,
[C++] ... [/C++] 来显示 C++ 程序,
[Java] ... [Java] 来显示 C++ 程序,
......
以此类推, 使之被语法加亮显示 (Syntax Highlighted)
 
失败[:(]再来
  • 呵呵……[/*]
  • 哈哈……[/*]
  • 看到没……[/*]
    [/list=a]
    1. 呵呵……[/*]
    2. 哈哈……[/*]
    3. 看到没……[/*]
      [/list=1]
 
[8D] [8D] [8D][8D][8D]
[8D] [8D] [8D]
[8D][8D]][8D]][8D][8D] [8D]
[8D] [8D] [8D]
[8D] [8D] [8D]
[8D] [8D] [8D][8D][8D][8D][8D]
[8D] [8D] [8D]
[8D][8D] [8D]
[8D] [8D]
[8D][8D] [8D]
[8D] [8D] [8D]
[8D] [8D] [8D] [8D]
[8D] [8D] [8D] [8D]
[8D] [8D] [8D]
 
又找到了一个很酷的 Delphi 正则表达式控件, 俄国人写的 TRegExpr
http://anso.virtualave.net/index.htm
这下做 ubb 语法分析也可以放到 COM Object 中, 以加快速度. [8D]
 
有不少衍生的问题需要解决了,不过我已经有了方案。
 
想到另外一个问题,就是以前有很多帖子用了html语法帖子我们也应该保留原来帖子
的风格啊。
我们定个时间,这个时间以前的全部采用原格式。这个格式以后的全部采用DFW标记
格式。
诸君以为如何啊。
 
我一气删了100多个试验各种标记的贴子。[}:)] 不过,尽量为每个人留下一贴,以便大家收到 email 通知。
soul,如果我们支持有限的 html 语法,例如 <font>, <a>, <b> 和 <i>,就不用担心以前
的 html 语法帖子了。[:)] (<script>是要坚决封杀的)
我突然又发现了用 xml+xsl 的另外一大好处:[red]XSLT 是支持正则表达式的[/red],
这样很多 ubb 的 Tag 都能扔到客户端去解释了。 COM 也免了,服务器负担减轻了,
太好了!明天就去试验。[green]谁叫我们用了 XML 呢?[/green]
 
我觉得还是客户端少些script好,很慢的。
其实现在服务器负担重主要是因为很多工作反复在做,完全可以发帖子时候后数据入库,
然后再生成一个xml,存成文件或放在字段中,这样就两全其美了。
 
[:o)] [h3][red]cool[/red][/h3] [:o)]
 
SynEdit是个很不错的控件,可惜不支持自动换行。如果用它来显示语法,
可能要多测试一下,有些highlighter跟中文(MBCS)还是不兼容的,我
以前修改过HTML、Pascal、C++和PHP的Highlighter,其他没有用到,所
以不清楚会不会有这种问题。
 
[:X][:X][:X][:X][:X]
 
DreamTiger: 您说得对. SynEdit是有中文问题. 不过不是与 MBCS 不兼容, 而是HTML 转意符号处理不当.
在我现在下载的版本中,SynExportHTML.pas 105行的转意符号表与中文冲突, 从&amp;copyright开始注释掉就行了.
另外, SynEditExport.pas 的 420 行那个地方是矛盾的, 它先做转意解释再做MBCS处理, 实际上
MBCS处理已经没有用了. 考究些这里也可以改改.
 
[:)]
dfwlogo.gif
 
一些做客户端 ubb tag 处理时, 关于兼容性的考虑:
1.最好用 xslt 的 regular expressions 功能
可是发现 xslt 2.0 才有, W3C 还没有完成呢. 放弃!
2.用 xslt 1.0
又发现必须使用两个 MS 专有的 xslt tag <xsl:eval> <xsl:script>
有一定的移植危险性. 放弃!
3.用 IE 5.5 的 element behavior (dhtml custom tag)
又发现用 IE 5 的比例挺高. 放弃!
4.IE 5 是底线了, 再低可能连正则表达式引擎也没有了,
但是需要解决 xml+xsl 处理结果再调用 javascript 的问题,
应该可以用 IE 5 的 dhtml behavior, 正在实验中...
 
建议老版开设一个试验田或者叫水库或者通俗地说叫灌水区,以后大家不要在这里试验了.
OK? [|)]
 
试一下[:)]
http://www.sina.com
 
[delphi]program file1;
begin
writeln('hello');
end.
[/delphi]
 
后退
顶部