I code it

Code and Life

Utouch编辑器代码开源

utouch是一个基于wxpython中wx.StyledEditCtrl控件的简易编辑器,而wx.StyledEditCtrl又是基于scintilla的。utouch即使用到了python的便利性,又使用了了成熟而功能强大的scintilla。而从扩展性上而言,python几乎原生就支持的非常好。

utouch-editor

utouch的前身是一个公司内部使用的IDE的原型,在开发过程中,我对其进行了抽取,将编辑器部分独立出来。这样我在整个系统中就可以独立的创建多个类型的编辑器,比如日志编辑器,编译结果编辑器等。类结构图如下:

utouch-uml

TouchEditorBase提供界面的初始化,如字体的选择,大小,语法高亮,margin的定制,如何folding等等。NormalEditor提供资源的加载/保存/另存为等常规编辑器应该具备的功能集合。

目前的utouch的功能列表如下:

  • C语法高亮
  • 书签定义/跳转
  • 自动缩进
  • 简单的snippet支持
  • 跳转到指定行
  • 常规编辑功能
其中snippet功能是对TouchEditor的一个扩展,我将在下一篇文章中详细讨论。

Comments