Code highlight for BlogEngine.net
之前有寫一個簡單的 Code Highlight CSModule ,現在轉個方向,套用在 BlogEngine.Net 上,雖然 BE.Net 原本已經有內建一個 CodeFormatterExtension ( 作者: www.manoli.net ),不過好像支援的語言很少,而且出來的格式也不合我胃口,既然已經寫好一個 CSModule 了,要套用在 BE.Net 上其實修改的很少
最主要就是把呼叫的方法改了一下
1
2
3
4
5
6
7
8
9
10
|
public CodeHighlightExtension()
{
Page.Serving += new EventHandler<ServingEventArgs>(ServingContent);
Post.Serving += new EventHandler<ServingEventArgs>(ServingContent);
}
private void ServingContent(object sender, ServingEventArgs e)
{
e.Body = SourceCodeMarkup(e.Body);
} |
不過在 BE.Net 出來的原始碼和 CS 不太一樣,如果用原本的 language="xml" 會又要處理 " 的問題,乾脆改成 language=xml 就好,另外 BE.Net 換行會有 <br />\r\n ,這樣會造成一行變兩行,所以送入轉格HTML前,先把 <br />\r\n 轉成 \n 就好,沒幾下就完成了這個 BlogEngine.NET Extension
另外發現有些人會忘了改 web.config ,乾脆先把預設值內建在程式裡,這樣不改 web.config 也能用了
下載: http://update.to/be/codehighlight/CodeHighlight_10.zip
專案網頁: http://update.to/be/codehighlight/