1/2页12 跳转到查看:7828
发新话题 回复该主题

高亮代码插件2.0(For Dnt2.0)

高亮代码插件2.0(For Dnt2.0)

Discuz!NT 2.0 高亮代码插件
作者:winson
版本:2.0
支持网站:http://bbs.szblogs.com
功能:
为论坛增加高亮代码显示,类似cnblogs的形式

此版主要是配合DNT2.0论坛的升级,之前一直没时间弄,今天终于有空来整理一下了,此版安装方法与1.1版的基本上完全一样,只是DNT2.0里的showtopic.aspx文件有所改动,以下是详细的安装方法:


1)进入相应的模板,然后修改 _editor 模板

2)、搜索“插入表格”,找到以下代码段:

<td><div class="editor_buttonnormal" id="posteditor_cmd_table" onclick="discuzcode('table')" onMouseOver="buttonContext(this, 'mouseover')" onMouseOut="buttonContext(this, 'mouseout')"><img src="editor/images/table.gif" width="21" height="20" title="插入表格" alt="插入表格" /></div></td>


在其下添加:

<td><div class="editor_buttonnormal" id="posteditor_cmd_wrap0_code" onclick="discuzcode('mycode')" onMouseOver="buttonContext(this, 'mouseover')" onMouseOut="buttonContext(this, 'mouseout')"><img src="editor/images/insertcode.gif" width="21" height="20" title="插入高亮代码" alt="插入高亮代码"></div></td>


3)修改 showtopic模板,在此模板第一行下加入

<%namespace Discuz.Plugin%>


4)提交此模板的修改,然后更新editpost、postreply、posttopic、showtopic四个模板文件,即对这几个模板生成新的页面

5)修改生成好的showtopic.aspx文件(这里即是与1.1版不同的地方),在你模板的目录下,找到

post.Message.ToString().Trim()


改为:

Writer.OutputCode(post.Message.ToString().Trim())


这里需要说明的一点是,我已原此OutputCode方法做了重载,如果你同时安装了LEE的手写板插件,此方法只需再添加一个模板ID的参数即可,具体方法看手写板插件说明吧

6)修改web.config文件,在< configuration >后面添加以下代码:

<!--配置代码高亮插件-->
<configSections>
<section name="codeHighlighter" requirePermission="false" type="ActiproSoftware.CodeHighlighter.CodeHighlighterConfigurationSectionHandler, ActiproSoftware.CodeHighlighter.Net20"/>
</configSections>
<!--定义代码高亮插件-->
<codeHighlighter>
<cache languageTimeout="3"/>
<keywordLinking enabled="true" target="_blank" defaultKeywordCollectionKey="ActiproKeywords">
<keywordCollection key="ActiproKeywords">
<explicitKeyword tokenKey="IdentifierToken" patternValue="Actipro" url="http://www.actiprosoftware.com" caseSensitive="false"/>
<explicitKeyword tokenKey="IdentifierToken" patternValue="CodeHighlighter" url="http://www.codehighlighter.com" caseSensitive="false"/>
</keywordCollection>
</keywordLinking>
<languages>
<language key="BatchFile" definitionPath="~/Languages/Lexers/ActiproSoftware.BatchFile.xml"/>
<language key="C#" definitionPath="~/Languages/Lexers/ActiproSoftware.CSharp.xml"/>
<language key="CSS" definitionPath="~/Languages/Lexers/ActiproSoftware.CSS.xml"/>
<language key="HTML" definitionPath="~/Languages/Lexers/ActiproSoftware.HTML.xml"/>
<language key="INIFile" definitionPath="~/Languages/Lexers/ActiproSoftware.INIFile.xml"/>
<language key="Java" definitionPath="~/Languages/Lexers/ActiproSoftware.Java.xml"/>
<language key="JScript" definitionPath="~/Languages/Lexers/ActiproSoftware.JScript.xml"/>
<language key="Lua" definitionPath="~/Languages/Lexers/ActiproSoftware.Lua.xml"/>
<language key="Pascal" definitionPath="~/Languages/Lexers/ActiproSoftware.Pascal.xml"/>
<language key="Perl" definitionPath="~/Languages/Lexers/ActiproSoftware.Perl.xml"/>
<language key="PHP" definitionPath="~/Languages/Lexers/ActiproSoftware.PHP.xml"/>
<language key="Python" definitionPath="~/Languages/Lexers/ActiproSoftware.Python.xml"/>
<language key="SQL" definitionPath="~/Languages/Lexers/ActiproSoftware.SQL.xml"/>
<language key="VB.NET" definitionPath="~/Languages/Lexers/ActiproSoftware.VBDotNet.xml"/>
<language key="VBScript" definitionPath="~/Languages/Lexers/ActiproSoftware.VBScript.xml"/>
<language key="XML" definitionPath="~/Languages/Lexers/ActiproSoftware.XML.xml"/>
</languages>
<lineNumberMargin foreColor="Teal" paddingCharacter=" " visible="true"/>
<outlining enabled="true" imagesPath="~/Images/OutliningIndicators/"/>
<spacesInTabs count="4"/>
</codeHighlighter>


5)将附件中安装文件目录里的文件均上传到你的论坛目录就OK啦!

附件

CodeHigh2.0.rar ()

2008-2-13 22:13:48


最后编辑winson 最后编辑于 2008-02-13 22:13:47
随风飘飘天地任逍遥!
代码部落
http://winsonet.cnblogs.com

TOP

 

回复:高亮代码插件2.0(For Dnt2.0)

你好,我按照你的方法做后,出现的是乱码,
http://www.xq168.cn/showtopic-100.aspx

不知道是怎么回事,请帮我看看,谢谢。
herobeast@163.com

TOP

 

回复:高亮代码插件2.0(For Dnt2.0)

呵,我看你的现在已OK啦
随风飘飘天地任逍遥!
代码部落
http://winsonet.cnblogs.com

TOP

 

回复:高亮代码插件2.0(For Dnt2.0)

很好 很强大

TOP

 

回复:高亮代码插件2.0(For Dnt2.0)

不错,但不支持firefox

TOP

 

回复:高亮代码插件2.0(For Dnt2.0)

如何让它支持个人空间

我在发帖的时候同时选中发表到个人空间 然后在个人空间就看到的是很复杂的代码 如何让这个高亮代码支持个人空间?

TOP

 

回复: 高亮代码插件2.0(For Dnt2.0)

这是哪里的空间啊,,真是慢的不得了了。

TOP

 

回复: 高亮代码插件2.0(For Dnt2.0)

int a;

TOP

 

回复: 高亮代码插件2.0(For Dnt2.0)



引用:
原帖由 loworth 于 2008-2-22 16:36:00 发表
如何让它支持个人空间

我在发帖的时候同时选中发表到个人空间 然后在个人空间就看到的是很复杂的代码 如何让这个高亮代码支持个人空间?


请看这里吧

http://bbs.szblogs.com/showtopic-1692.html
随风飘飘天地任逍遥!
代码部落
http://winsonet.cnblogs.com

TOP

 

回复:高亮代码插件2.0(For Dnt2.0)

把你的一套发给我好吗?
我想学学

TOP

 
1/2页12 跳转到
发表新主题 回复该主题