说到Sharp Development,可能很多人都不知道。这里简单介绍下,Sharp Development是一个轻量级的开源IDE,支持Python,CSharp等多种语言的程序开发。支持Silverlight、WPF的开发。同时也具备Debug功能,可以方便的调试代码。虽然它的Debug不如Visual Studio的强大,但是作为开源免费的IDE来说,还是相当不错了。
既然Sharp Development是开源的,你当然可以免费使用并下载一份它的源代码来慢慢研究。Sharp Development的官方地址为:http://www.icsharpcode.net/OpenSource/SD/ 。你可以在这里下载到各个版本的Sharp Development,以及他们的源代码。
下面进入主题,我们来探讨下如何修改Sharp Development的源代码,让它的AvalonEditor支持sql的语法。AvalonEditor默认已经支持多种语法了,详细列表如下:ASP.NET,Boo,Coco/R grammars,C++,C#,HTML,Java,JavaScript,Patch files,PHP,TeX,VB以及XML。
1.从网站上下载sql语法文件,文件后缀名为xshd。其实就是一个XML文件。你可以从以下两个网站获取到这个文件:
http://www.koders.com/noncode/fid4DD63AAA64622BDAECFE0C5B94AE3FB3B4FD0B77.aspx
http://minisqlquery.codeplex.com/SourceControl/changeset/view/50578#977605
如果觉得这两个文件都不完美,也可以根据实际情况,自己做一个xshd文件,格式可以参照这两个文件的格式。
从Sharp Development的网站上下载Sharp Development的源代码并解压。然后进入以下文件夹:
解压文件路径\src\Libraries\AvalonEdit\ICSharpCode.AvalonEdit\Highlighting\Resources
将准备好的xshd文件拷贝到这个目录下。
用你习惯的文本编辑器打开:解压文件路径\src\Libraries\AvalonEdit\ICSharpCode.AvalonEdit目录下的ICSharpCode.AvalonEdit.csproj文件。在文件中找到如下字符串:<EmbeddedResource Include="Highlighting\Resources\XmlDoc.xshd" />。然后在这句之后回车新增一行,填写以下内容:<EmbeddedResource Include="Highlighting\Resources\Tsql-Mode.xshd" />,注意,这里的Tsql-Mode.xshd是我给文件取的文件名,前面的Highlighting\Resources表示文件的相对路径。
别忘记保存文件哦。
2.2 修改代码文件,让AvalonEdit控件认识我们新增的语法文件
用你习惯的文本编辑器打开:解压文件路径\src\Libraries\AvalonEdit\ICSharpCode.AvalonEdit\Highlighting\Resources目录下的Resources.cs文件。找到以下函数:internal static void RegisterBuiltInHighlightings(HighlightingManager.DefaultHighlightingManager hlm)。然后在函数中新增一行:
hlm.RegisterHighlighting("sql",new[] { ".sql" },"Tsql-Mode.xshd");
这一行的代码的意思,是在highlightmodel里面,注册一个hightlight类型,文件类型是.sql,model名称是sql,对应的xshd语法文件为Tsql-Mode.xshd。
别忘记保存文件哦。
好了,文件修改完了,接下来就是激动人心的时刻。没错,就是开始编译源代码。仔细看你解压后的源代码文件的根目录,你会看到4个bat文件。分别是:buildSetupAndRunTest.bat,clean.bat,debugbuild.bat,releeasebuild.bat.没错,这4个文件就是我们编译源代码需要的指令。从文件名,一眼就能看出各个文件的用途了。这么简单的事情,不用我在这里多介绍了吧?
OK,直接开始。如果你以前没有运行过这几个bat文件中的任意一个,那么你可以直接运行debugbuild.bat或者是releasebuild.bat。推荐运行releasebuild.bat,呵呵。运行之后,bat文件会自动打开windows控制台窗口,在里面会输出很多很多看不懂的信息。不用管这些信息,当编译完成后,它会告诉你结果的。
编辑完成了之后,就可以去找我们的劳动成果了。编译后的dll文件在bin目录下哦。ICSharpCode.AvalonEdit.dll这个文件,就是我们修改源代码并编译了的结果了。
怎么用不用我提醒了吧?直接参考以下网页:
http://www.codeproject.com/KB/edit/AvalonEdit.aspx
好了,到这里我们的工作就完成了。是不是很简单啊?
最后,如果你实在是不想自己动手,就去下载我编译好了的文件吧。CSDN下载地址:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。