代码片断管理工具 - CodeLib2

代码片段管理工具 - CodeLib2

前段时间在找代码片段的管理工具, 找不到满意的, 遂决定自己做一个. 因为在编码的过程中时常发现某个功能以前做过了, 想去找原来的代码, 但是原来的代码早不知道扔哪去了, 所以我希望有个工具能帮我管理这些代码片段, 以便需要的时候可以快速找到它们.

 

其实代码复用的最好方式应该是组件化, 但是有些代码, 或是配置之类的东西没法组件化, 只能以片段的形式存在, 于是找到它们变成一个头痛的问题. 两年前做过一个类似的东西, 只是功能弱了点, 我自己也很少用, 所以这个算是2.0版本了.

 


代码片断管理工具 - CodeLib2

 

2.0的主要功能:

  • 实时快速查找(类似 eclipse 里 preferences 的 filter, 支持多线程, 10万条上限为10k的随机字符数据查找不超过2秒, 我的cpu是 i5-2430m), 按 esc 可以在任何位置快速复位
  • 支持代码折叠, 以及二十多种语言的语法高亮, 语法高亮方案将参考第一个关键字, 具体支持哪些语言呢, 有兴趣的朋友自己去试试吧
  • 代码编辑框可以支持 eclipse 的一些快捷键, 貌似可以把它当代码编辑器来用
  • 支持给每个片段条目加附件, 主要是考虑到有些代码会关联一些非文本数据
  • 支持把某些片段条目导出为 html 文件, 这样也方便交流. 导出的html在IE下显示不正常, 代码无法换行, 这是因为IE不把 textarea 里的 \n 当作换行符处理, 试过好些方法都不奏效, 遂决定不处理了, 有代码收集意识的开发人员应该不会用IE吧
  • 保存的 zcl2 库文件有压缩处理, 因为文本的压缩潜力很大
  • 功能提示都会在状态栏或 tooltips 里出现, 更多功能可以慢慢挖掘, 发现彩蛋是件令人兴奋的事.

 

 

导出的 html:


代码片断管理工具 - CodeLib2

 

 

受BOSS影响, 做这工具时更多地考虑了UE. 大家要是有什么想法可以给我留言. 顺便附带项目源码, 项目使用 netbeans + eclipse + maven + jdk7(用到7的特性) 开发. 一同事极力推荐github, 也许过一阵子会放到那里去.

 

Thanks for

  • Minimal Icons (icon resources)
  • Fifesoft (RSyntaxTextArea)

 

1 楼 yuhui0531 2012-07-23  
请问怎么使用,能否作为eclipse的插件来使用呢?
在使用的时候能否指定某个目录下的代码?
2 楼 mysh 2012-07-23  
yuhui0531 写道
请问怎么使用,能否作为eclipse的插件来使用呢?
在使用的时候能否指定某个目录下的代码?

目前是一个独立的程序,你可以把它想象成代码数据库,可以把代码丢进去,可以快速找到你想要的代码。
“指定目录”:后面会考虑增加导入代码目录的功能。
3 楼 hxwabc 2012-07-23  
代码片断管理工具 - CodeLib2
4 楼 mazhiyuan 2012-07-24  
请问哪里用到了JDK7的特性,我之前也有一个想法做类似的东西,不过是在线版的,看看你的代码能不能有所参考,谢谢
5 楼 mysh 2012-07-25  
mazhiyuan 写道
请问哪里用到了JDK7的特性,我之前也有一个想法做类似的东西,不过是在线版的,看看你的代码能不能有所参考,谢谢

用了 try(resources), switch(string), underscores in numeric literals..., 大多在我自己的组件包里.
我原来也想过用做成web的, 不过服务端压力会比较大, 如果做成面向团队的工具, 做成分布式的工具还好点