Coding with passion

首页 新随笔 联系 订阅 管理

在博客上写文章,粘贴代码的时候如何格式化好,是我经常碰到的一个问题。用博客园提供的那些格式化工具倒也很方便,不过要做些更改的话就比较麻烦。而且像我这样比较喜欢直接编辑 HTML 的不是很喜欢使用这些工具。因为要使用这些工具,必须换到可视化编辑状态。而再换回到 HTML 状态的时候,原来格式化好的 HTML 可能就被编辑器给弄得乱七八糟了 :(所以我就打算用 javascript 写一个格式化代码的工具。

现在总算把这个格式化代码的小工具做的差不多了!修正了以前的几个bug,也添加了一些新的功能。另外,我也把这个脚本放到一个类库的工程里面,写成了一个控件;这样大家也可以直接在后台代码里面操作了。

这是现在最新的文件:

现阶段这个格式化工具的主要功能包括:

  • 添加行号
  • 为一些指定的语言类型高亮关键字、字符串以及注释等。这些语言包括 C#、C/C++、JavaScript、Java。 HTML、XML和一般的编程语言的高亮模式不太一样,这里我还没有实现
大家可以访问这个页面看看当前的效果:http://www.cnblogs.com/Kellin/archive/2007/09/04/882005.html

要使用这个小东东,有两种方法。一是直接引用 CodeFormatter.js 这个脚本文件:

  • 将要格式化的代码放在一个 PRE 元素里面,并添加一个 SourceCode 的属性(指定代码的语言类型)。注意:需要将 PRE 元素代码中的一些特殊字符转换一下(将 & 换成 & 等,或者使用 HttpUtility.HtmlEncode(str) 方法)。如:
    <pre sourcecode="html">
    public class MyClass
    {
        public MyClass()
        {
            System.Console.WriteLine( "Hello world!" );
        }
    }
    </pre>
    
  • 在你的博客中添加下面这段 javascript 语句:
    <script src="https://files.cnblogs.com/Kellin/CodeFormatter.js" type="text/javascript"></script>
    

二是使用编译好的类库中的 Kellin.Web.UI.WebControls.CodeFormatter 控件。大家可以从这里下载这个类库工程:https://files.cnblogs.com/Kellin/CodeFormatter.rar

posted on 2007-10-06 23:38  Kellin  阅读(3315)  评论(18编辑  收藏  举报