[20071020更新下载地址]hypersrc-6.0-beta1 代码浏览&编辑器

Vim、Emacs配置和使用
头像
lvjinhua
帖子: 436
注册时间: 2006-02-23 14:46
来自: 上海
送出感谢: 0
接收感谢: 1 次
联系:

[20071020更新下载地址]hypersrc-6.0-beta1 代码浏览&编辑器

#1

帖子 lvjinhua » 2006-11-10 3:49

各位观众,经过很长一段时间的封闭开发和内部测试, 源码编辑器 hypersrc 终于可以拿出来见人了, 虽然现在还是不太完善, 但已经可以使用, 并且功能十分诱人哟! 它以后将作为 Dubuntu 的默认源码编辑器.

http://ftp.ubuntu.org.cn/dubuntu/hypers ... ta1.tar.gz
http://ftp.ubuntu.org.cn/dubuntu/hypers ... 1_i386.deb
用户名:ubuntu
密码:ubuntuftp
邮件列表: http://groups.google.com/group/hypersrc ( 有什么想法, 欢迎大家到这里面讨论)

安装: 当前的版本只在 Dubuntu-6.06 和 Ubuntu-6.06 上进行了测试, 其它版本的Linux还没来得及, 必竟现在还不是最终版本, 下载到上边的 .deb 包后, 可直接安装, 安装后还要加装 ctags 才能正常工作

代码: 全选

dpkg -i hypersrc_6.0-beta1_i386.deb
sudo apt-get install ctags
您也可以直接从源代码编译安装, 不过这需要安装许多开发库, 安装开发库最简单的方法是:
sudo apt-get install gnome-devel
安装完后, 解压源码, 在源码所在目录执行:
make && make install 
好, 安装完成 ( 如果有问题, 欢迎讨论)

代码: 全选

运行方法:
在你需要浏览或修改的源代码所在目录, 输入命令:
Hypersrc.pl
需要说明的一点:
本次测试的主要目的是为了从大家的使用过程中征集一些意见和查找一些Bug, 以便后续的开发能有明确的方向.

我可以保证, 用它来阅读源代码是非常棒的, 它有类似 source insight 的交叉索引等功能, 即点即得, 函数之间调用关系等 ( 但当前的编辑功能还比较弱, 是下一阶段的重点 )
现在的主要缺点是:当源代码被修改后, 可能会出现自动定位不准确的现象, 需后续解决.

Hypersrc 6.0 以前的版本是基于 GTK+-1.2 开发的, 主要优点是快速, 不过有如下的缺点:
1)gtk+-1.2对文字的显示是比较原始,完全没有字体平滑的说法;
2)对国际化支持不够,显示非 ASCII 字符非常困难;
3)不支持文件编辑;
4)原作者已经停止对其进行更新;
4)其它

现在展现在大家面向的版本的 hypersrc 是在其最后一个 release 版本5.4.18的基础上进行开发完善的,目前已经完成的工作:
1)gtk+-2.0 支持;
2)国际化支持;
3)增加文件编辑功能;
4)重新进行界面布局;
5) 参考了许多 source insight 的编辑器特性
6) 增加打印功能
7) 初步集成 devhelp 开发者帮助文档库
附件
Screenshot4.png
注意一下工具栏的下拉列表, 它里面是当前文件所定义的函数.
Screenshot3.png
帮助菜单中的快捷键提示
hypersrc2.png
一个运行时截图, 当然编辑器的字体和颜色是可以自己修改的.
hypersrc1.png
运行 Hypersrc 的方法: 进入欲查看或修改的源码所在目录, 键入 Hypersrc.pl 命令即可( 注意:不是命令 hypersrc ,它是不能直接运行的).
上次由 lvjinhua 在 2007-10-20 21:58,总共编辑 3 次。
====
dubuntu-6.06-livecd-i386正式版正式完工!
====
*支持LiveCD硬盘启动
*Linux 2.6.15-23-686
*永中Office 2007
*LumaQQ+OpenQ+cycloneQQ
**N 多的编程及调试工具**
kevert
帖子: 8
注册时间: 2006-11-04 13:49
送出感谢: 0
接收感谢: 0

#2

帖子 kevert » 2006-11-10 8:34

期待很久了,谢谢。
虽然用过5.4,不过感觉还不是很方便,希望这个项目可以一直持续下去,成为linux平台下最好的源码浏览软件。
搂主辛苦了。
kevert
帖子: 8
注册时间: 2006-11-04 13:49
送出感谢: 0
接收感谢: 0

#3

帖子 kevert » 2006-11-10 8:46

建议:
在tag浏览(左侧窗口里面可不可以象sourceinsight一样弄一个搜索栏)
在我的ubuntu6.06中,字体对话框中改变字体后点击确定该对话框不消失,要点击取消才消失。
希望窗口布局可以随意改变(也就是可以自定义拖动放置组合)。
还有,有时候似乎在被调里面双击函数无反应
浏览源代码时,双击源码里面的一个函数时,窗口突然回滚,然后崩溃。
有时候在源码里面选择了一个函数时,鼠标下滚的时候会选择很多行。
在源代码浏览窗口中双击字符串出现无法选中的现象。
附件
Screenshot-1.png
Screenshot.png
头像
lvjinhua
帖子: 436
注册时间: 2006-02-23 14:46
来自: 上海
送出感谢: 0
接收感谢: 1 次
联系:

#4

帖子 lvjinhua » 2006-11-10 19:23

kevert 写了:建议:
在tag浏览(左侧窗口里面可不可以象sourceinsight一样弄一个搜索栏)
在我的ubuntu6.06中,字体对话框中改变字体后点击确定该对话框不消失,要点击取消才消失。
希望窗口布局可以随意改变(也就是可以自定义拖动放置组合)。
还有,有时候似乎在被调里面双击函数无反应
浏览源代码时,双击源码里面的一个函数时,窗口突然回滚,然后崩溃。
有时候在源码里面选择了一个函数时,鼠标下滚的时候会选择很多行。
在源代码浏览窗口中双击字符串出现无法选中的现象。
关于tag列表增加搜索, 是计划内的, 另外,对于文件浏览列表也要增加搜索.

随意改变窗口位置难度比较大, 这个暂且不考虑, 不过会设计一些快速隐藏窗口的快捷键.

在主代码窗口中无法双击选择函数, 是因为单击函数后, 在附窗口中选中了该函数, 而GTK+程序不能同时选中两个地方的文字, 因此这是GTK的一个特性所致, 不过可以考虑不选中附窗口中的文字.

字体选择窗口的问题已经修正, 这是 i18n 所至.

谢谢!
====
dubuntu-6.06-livecd-i386正式版正式完工!
====
*支持LiveCD硬盘启动
*Linux 2.6.15-23-686
*永中Office 2007
*LumaQQ+OpenQ+cycloneQQ
**N 多的编程及调试工具**
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙
送出感谢: 4 次
接收感谢: 256 次

#5

帖子 eexpress » 2006-11-10 20:15

tag不错。

没打开文件的功能,仅仅当前目录的文件不够哦,有时候tag也关联到其他目录的文件了。编辑模式的图标在不同状态不变的。没自动成员补全。只有函数的层次关系,没变量的,而且函数的有时候也不出来。转到引用处的功能似乎无效。没有快速全局更名,这个对于编写程序的人很重要。

其他的功能都很爽阿。lvjinhua做了个大好事哦。
● 鸣学
头像
lvjinhua
帖子: 436
注册时间: 2006-02-23 14:46
来自: 上海
送出感谢: 0
接收感谢: 1 次
联系:

#6

帖子 lvjinhua » 2006-11-10 20:46

:em95 非常感谢eexpress 老大的赞扬 :em95
1)文件打开功能本来是有的, 不过功能不全, 发布时临时去掉
2)编辑模式的另一张图标找不到了 :(
3)自动补全将是下一个版本的主打, 当前的主要精力准备放在完善编辑功能, 工程管理, 修复BUG
4)变量补全也放到下一个版本
5)转到引用没效, 引用关系都在右下角
6)全局更名应该是个比较危险的功能, 暂不考虑

总之, 当前的文件管理功能太次, 要首先解决, 再考虑其它的.
====
dubuntu-6.06-livecd-i386正式版正式完工!
====
*支持LiveCD硬盘启动
*Linux 2.6.15-23-686
*永中Office 2007
*LumaQQ+OpenQ+cycloneQQ
**N 多的编程及调试工具**
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙
送出感谢: 4 次
接收感谢: 256 次

#7

帖子 eexpress » 2006-11-10 20:59

:em76
其实是多谢你的工作。千万别说我罗嗦就是了。 :lol:

alias h='Hypersrc.pl '
都进.bashrc了。
上次由 eexpress 在 2006-11-10 22:46,总共编辑 1 次。
● 鸣学
头像
lvjinhua
帖子: 436
注册时间: 2006-02-23 14:46
来自: 上海
送出感谢: 0
接收感谢: 1 次
联系:

#8

帖子 lvjinhua » 2006-11-10 21:55

eexpress 写了::em76
其实是多谢你的工作。千万别说我罗嗦就是了。 :lol:
不闲, 记得多报BUG就是了, 嘿嘿嘿嘿
====
dubuntu-6.06-livecd-i386正式版正式完工!
====
*支持LiveCD硬盘启动
*Linux 2.6.15-23-686
*永中Office 2007
*LumaQQ+OpenQ+cycloneQQ
**N 多的编程及调试工具**
头像
lvjinhua
帖子: 436
注册时间: 2006-02-23 14:46
来自: 上海
送出感谢: 0
接收感谢: 1 次
联系:

#9

帖子 lvjinhua » 2006-11-12 2:22

今天解决了一个 有时 Tag 会定位到上一行的问题, 不过没有上传.

看了一下 ctags 的源代码, 发现它对源文件扫描的信息还是挺全的, 只缺少函数参数, 不错,看来可以加以利用!
====
dubuntu-6.06-livecd-i386正式版正式完工!
====
*支持LiveCD硬盘启动
*Linux 2.6.15-23-686
*永中Office 2007
*LumaQQ+OpenQ+cycloneQQ
**N 多的编程及调试工具**
Zelgadiss
帖子: 8
注册时间: 2006-11-06 10:25
送出感谢: 0
接收感谢: 0

#10

帖子 Zelgadiss » 2006-11-13 17:53

偶是在拍砖的

1. 貌似没有Open菜单....
所以我只能通过终端指定好文件名/(文件路径??) 再执行
这点做为UI来说....
2. 貌似存在内存泄漏情况
ctags.pl没有释放过程,即当我因为没有Open而痛苦的把它给关闭时,ctags.pl并未退出
看起来好像是:
ctags启动后,当Hyersrc.pl因为意外提前终止,ctags仍在运行中....

其它就没有什么问题了:)
头像
lvjinhua
帖子: 436
注册时间: 2006-02-23 14:46
来自: 上海
送出感谢: 0
接收感谢: 1 次
联系:

#11

帖子 lvjinhua » 2006-11-13 21:47

添加打开功能不是很简单, 关联到许多部分, 慢慢来!

ctags 只是在启动的时候扫描程序时运行, 当扫描完成后,就已经退出了, 因此不存在 hypersrc 退出它还在运行的情况. ctags.pl 是一个 perl 脚本, 包裹 ctags 用的!

谢谢你的意见
====
dubuntu-6.06-livecd-i386正式版正式完工!
====
*支持LiveCD硬盘启动
*Linux 2.6.15-23-686
*永中Office 2007
*LumaQQ+OpenQ+cycloneQQ
**N 多的编程及调试工具**
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙
送出感谢: 4 次
接收感谢: 256 次

#12

帖子 eexpress » 2006-11-14 14:06

f6/f7没有在历史中间完整的遍历。比如f9加的,再f5,再f5的结果中跳一下。f6/f7就只有2个地址可以了。

双击选择或者拖放选择不好使用。光标老跑了。能否光标选择,然后实现vim的#*快速当前文件转移。并且可以高亮显示结果就好了。

还是想要全局变量快速更名。 :lol: :wink: 我不担心乱的。使用svn嘛。怎么会改乱哦。 :lol:

打开文件的,不可以直接调用系统的dialog吗。取结果文件名就是。

补充:匹配括号的颜色与当前行的颜色冲突了,不能定义,干脆搞个鲜艳的颜色。首选项的3个颜色那里,用tip显示不好。

函数关系表,能否省略掉相同函数名。有些函数调用同一函数多次,而这个多次的函数下面又长长的一串重复的其他函数。 :lol:
上次由 eexpress 在 2006-11-14 15:23,总共编辑 1 次。
● 鸣学
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙
送出感谢: 4 次
接收感谢: 256 次

#13

帖子 eexpress » 2006-11-14 15:22

用gedit看了,都是gb18030的编码的2个源码。一个乱码了。 :lol:
附件
screenshot-2006-11-14-15-23-13.png
screenshot-2006-11-14-15-23-29.png
● 鸣学
kevert
帖子: 8
注册时间: 2006-11-04 13:49
送出感谢: 0
接收感谢: 0

#14

帖子 kevert » 2006-11-17 11:28

建议:
没有右键功能,比如那些跳转,搜索之类的增加进右键的话,效率会提高
头像
lvjinhua
帖子: 436
注册时间: 2006-02-23 14:46
来自: 上海
送出感谢: 0
接收感谢: 1 次
联系:

#15

帖子 lvjinhua » 2006-11-18 14:41

eexpress 写了:f6/f7没有在历史中间完整的遍历。比如f9加的,再f5,再f5的结果中跳一下。f6/f7就只有2个地址可以了。

双击选择或者拖放选择不好使用。光标老跑了。能否光标选择,然后实现vim的#*快速当前文件转移。并且可以高亮显示结果就好了。

还是想要全局变量快速更名。 :lol: :wink: 我不担心乱的。使用svn嘛。怎么会改乱哦。 :lol:

打开文件的,不可以直接调用系统的dialog吗。取结果文件名就是。

补充:匹配括号的颜色与当前行的颜色冲突了,不能定义,干脆搞个鲜艳的颜色。首选项的3个颜色那里,用tip显示不好。

函数关系表,能否省略掉相同函数名。有些函数调用同一函数多次,而这个多次的函数下面又长长的一串重复的其他函数。 :lol:
双击选择 tag 时不能选中理论上算系统的问题, 程序本身是不能根本解决的,目前能想法的方法有2:
1)在 context 窗口中以颜色高亮,而不是选中高亮来表示
2)在 context 中不选中,只是跳到那一行

目前编辑器的很多特性都是 gtksourceview 控件提供的,如果要修改某些属性,要修改相应的代码。

当前有一个BUG,当鼠标在主窗口中单击一个非tag的单词时,历史会自动清掉一个记录。

** 当前正在策划的下一个beta2版本, 计划如下:
1)能运行时刷新tag信息,防止源程序被修改后定位不准确的现象
2)支持工程管理的特性
3)增加对局部变量,静态函数的单独识别
4)代码完成
5)函数参数提示
6)改善变量/函数定位的正确性(比如多个同名函数或变量时)

** 关于变量引用关系和全局变量更名, 暂不考虑。

** 某些编码的文件不能打开(或中文乱码)的问题, 修改了一下,已经重新上传,可以试试!

** 我也想知道如何重定义右键菜单 :(
====
dubuntu-6.06-livecd-i386正式版正式完工!
====
*支持LiveCD硬盘启动
*Linux 2.6.15-23-686
*永中Office 2007
*LumaQQ+OpenQ+cycloneQQ
**N 多的编程及调试工具**
回复

回到 “Vim和Emacs”