MySciteJump(代码跳转) -SciTe专用开发辅助工具(2022616更新).
本帖最后由 tubaba 于 2022-6-16 08:55 编辑使用帮助在此
2016-10-10 写在前面的话.
不知各位同学是否知道一个外国人开发的scitejump工具.不知道请点击[http://www.autoitx.com/forum.php ... 7932&from=favorites]这里.其实这个工具还是蛮好用的.特别是当代码比较多的时候,用这个可以方便的跳转.
但是用起来总是感觉美中不足,虽然提供了源码.想修改一下源码以附合自己的使用习惯.但老实说,我看了很久才明白一部分.
SCiTe的编辑区使用的是Scintilla控件.这个控件非常强大,如果不知道,请自行百度.在查阅了Scintilla开源库使用指南之后,觉得已有重新开发这个软件基础.
因此,根据scitejump的一部分功能重新设计软件,为了区别,我把它命名为MySciteJump.看起来界面相似,其实代码95%都是重新编写的
========================================================================
离上次更新已有三年多时间,一直也没有放出新版本,目前最新可能也是最后的版本已经测试完成,赠予有缘人,助你愉快的撸代码
请下载此版本
2022-06-06
版本号:2.1build20220606
修正:更改快捷启动栏图标顺序后可能引起退出时返回错误0xC000041D.
版本号:2.0build20220512
提示:程序可以设置置顶属性,可点击程序左上角图标,在系统菜单可以找到.
修改:当激活启用浮窗功能时,本程序会自动设置置顶属性.若之后关闭浮窗,并不会自动取消置顶属性,如需关闭,可以激活系统菜单进行关闭.
修正:退出时可能返回错误0xC000041D.
修正:收藏夹函数在某些情况下不能正确跳转.
优化:主窗口树视图有时显示错误.
优化:主窗口非置顶状态下,会与其相关联的SciTE程序在桌面Z序上相临,以确保联动.
优化:根据选定变量或UDF函数"打开include包含文件"功能.
去除:做为SciTE子窗口的功能.因为程序使用了子窗化处理之后,如果继续使用做为SciTE子窗运行,会造成SciTE卡顿的问题.
2021-11-16
版本号:1.8build20211116
修正:刷新Include数据库不能正确获取枚举变量值的问题.
优化:工具提示全部可见的执行代码.
2020-04-26
版本号:1.7build20200426
增加:快捷启动程序子功能增加默认执行MIC等级选择下拉框.
修正:一处窗口缩放后控件位置错误的问题.
2019-11-29
版本号:1.6build20191129
优化:软件启动时会自动备份当前配置文件,可自定义备份数量.
优化:在windows经典风格下的表现
修正:注册外部程序到SciTE菜单功能中的一个相对路径错误的问题.
修正:监视窗口函数查阅在滚动条滚动后不能使用右键菜单.
增加:加入更新历史查看.
2019-04-19
版本号:1.5.5build20190419
优化:配置可能丢失问题.
2018-08-21
版本号:1.5.4build20180821
优化:快捷启动栏的图标按住CTRL键后拖动时加入提示条,优化显示效果.
优化:软件退出时可能失去响应的问题.
修改:快捷启动栏的图标按住CTRL键后拖动以改变顺序功能现在需手动激活.
修正:无图标的按钮在改变按钮顺序后显示错误的问题.
2018-06-28
版本号:1.5.3build20180628
优化:快捷启动栏的图标现在可以按住CTRL键后拖动以改变顺序.
2018-05-29
版本号:1.5.2build20180529
修正:前一次更新带来的语言选择失效的问题.
修正:前一次更新带来的做为SciTE子窗口启动的问题.
优化:当SciTE先于软件退出时,可能造成软件失去响应的问题.
2018-04-08
版本号:1.5.0build20180408
优化:增加是否启动SciTE选项,以期待作为一个快捷启动管理软件使用.当取消选择"同时启动SciTE"时,启动软件后自动切换到快捷启动窗口.
优化:快捷启动工具提示样式.
2018-03-31
版本号:1.5.0build20180331
新增:浮动工具栏.将一些常用功能放到浮窗上.可以更方便的操作SciTE.提供的行标记功能与SciTE自带兼容.
新增:视图语法着色.提供开关选择.包括内置着色方案.当前SciTE着色方案等
优化:标签页采用子窗口化处理.以保证在较低分辨率的显示器上能调整所有设置,主窗口尺寸最小限制在241*362.
2018-03-21
版本号:1.4.9build20180321
修正:根据控制台错误信息智能插入,^ ERROR的处理模式下,不能识别变量的错误:
"XXX.au3" (76) : ==> Variable used without being declared.:
$Button = GUICtrlCreateButton('', 400, 40, 130, 30, $BS_SPLITBUTTON)
$Button = GUICtrlCreateButton('', 400, 40, 130, 30, ^ ERROR
2018-03-05
版本号:1.4.9build20180305
修正:上一版代码修改造成的变量未定义错误.
2018-02-28
版本号:1.4.9build20180228
修正:如果脚本首行使用"#CS,#CE"区域注释命令会出现识别错误,造成分类不正确.
2018-02-24
版本号:1.4.8build20180224
优化:搜索combo响应逻辑.
2018-01-31
版本号:1.4.7build20180131
优化:提取脚本注释部分速度提升.SciTE切换缓冲区时,树视图同步刷新更迅速.并可随时终止刷新.
优化:在部分机器上,更改treeview工具提示位置可能会造成程序假死,因此加入选择开关.
2017-11-19
版本号:1.4.6build20171119
优化:界面微调,适应多语言版本需要.
2017-08-16
版本号:1.4.6build20170816
修正:部分以嵌套形式存在的区域注释不能被正确处理.
SCITE
2017-07-29
v1.4.5 build 20170729
修正:当函数定义带有"_"符号时,在某些情况下不能正确提取函数名称及注释的问题.
2017-07-22
v1.4.5 build 20170722
修正:某些情况下不能获取dllcall的API名称.
优化:自定义函数列表刷新机制.
2017-07-19
v1.4.4 build 20170719
修正:打开include文件不能定位到变量错误.
2017-07-18
v1.4.4 build 20170718
优化:根据控制台错误信息智能插入,加入形如^ ERROR的处理模式,如"xxx.au3"(5436) : ==> Unknown function name.:
$TestPath = _WinAPI_PathSearchAndQualify($TestPath)
$TestPath = ^ ERROR
2017-07-15
v1.4.2 build 20170715
优化:可以设置窗体随SciTE移动而移动.增加选择是否做为SciTE子窗口附加,在32位系统中请勿勾选此项,经测试,会引起SciTE弹出窗口显示错误.64位系统无此问题.
加入窗口相对SciTE位置水平偏移手动控制,以适应不同的windows版本及主题.
因为功能的结构调整,历史版本的数据库不再适用,需要重新刷新数据库!
2017-07-11
v1.4 build 20170711 优化:不在使用_IsPressed,事实证明此函数不太可靠.可能会影响其它程序的正常功能.
新增:UDF函数变量辅助.点击sicte编辑区,会显示此函数语法信息方便查阅.
在使用本功能前,需要重新刷新数据库.否则不能使用.
2017-06-26
v1.4 build 20170626 加入Volatile关键字修饰函数的支持.
2017-06-21
v1.4 build 20170612 快捷启动增加了以指定MIC等级启动应用程序,以应对vista以上操作系统的User Interface Privilege Isolation(用户界面特权隔离)带来的兼容性问题.比如运行在高MIC等级上的进程无法接受一些常用的系统信息,如前面提到的文件拖曳消息,如果要使应用能正确接收到拖曳消息,就必须使此应用与桌面explorer运行在同一MIC等级下(一般这个等级为中).
2016-10-29创意来自坛友ixiaolong,SciTE排错辅助工具 自动添加#include <...>,但我不知道思路是否跟他的一样,因为有了开发au3encode及本工具的经验,实现这个功能变得轻而易举,可能会有bug.
没有进行过多的测试,在首次使用前请刷新一下include数据库.不然功能无法使用
修正:继续UI界面调整及一些逻辑错误.
增加:根据scite 编辑区被选择的字串查询数据库.实时返回当前系统UDF或者定义变量的UDF文件名称.
增加:根据运行错误,智能添加缺失的include头文件.仅限于undefined function or variable,感谢坛友ixiaolong,创意来自对方.
增加:用户include目录的添加删除.可以添加删除当前编辑脚本-->用户include目录.
2016-10-25修正:继续UI界面调整及一些逻辑错误.
增加:快捷启动面板,现在可以将感兴趣的程序集中放入此面板内.从而解放你的工具栏.
此为第一个正式版本.如无意外,将放缓开发速度.
2016-10-20增加:增加了注释,控制命令加入树视图.
修正:双字节字符的搜索问题.同时移除编码选择combo,因为现在可以自动检测,不需要此功能了.
其它:继续进行UI细节上的一些调整.
2016-10-15
测试了一下软件对ACN版SCITE的支持.发现完全不起作用.一调试发现取得的文本居然是乱码.(本工具与scitejump在这点上不同,scitejump读取的是文件路径再载入文件内容进行处理.而本工具采用的是直接读取scite编辑区文本处理.个人认为这样的响应速度应该更快一些),使用ControlGetText在ACN版上无论怎么做都有部份中文是乱码.无奈只好直接调用WM_GETTEXT.幸好,这个问题解决了.还不知道如何自动检查编码方式.只好提供手动调整了:)
1.调整:功能按钮响应逻辑.
2.增加:界面的一些调整,屏幕左右吸附,边缘自动隐藏.
3.增加:为SciTE工具菜单附加外部程序的功能.现在可以使用本工具方便的为SciTE工具菜单添加或者移除功能了.:)
4.增加:针对不用的SciTE版本使用的编码可能不一样.特别提供编码选择.请在最后一页进行调整,如果使用ACN版的SciTE,请选择UTF16LE,如果使用Sky天空版的,请选择ANSI.其它版本建议ANSI,不行再自己尝试.
===================================
自带有的,英文版~ 本帖最后由 131738 于 2016-10-10 15:57 编辑
回复 1# tubaba
似乎比 scite jump 功能少了许多.......... 回复 3# 131738
刚开始做,不过你没觉得给跳转后的行加上一个明显的标记不是一个好主意吗?原版的跳转后一下子还是找不到,看到眼花.
增强的代码折叠功能应该也比原版的强.SCITE菜单上的代码折叠实在是不如人意.只能折叠函数最外层项,里面的子项却不能折叠.光这两点,我就觉得比原版的好用多了.
另外,软件的启动速度也应该比原版快吧.原版的从启动到出现界面至少有3,4秒时间,让我经常以为没有启动.,我不知道原版的那个Monitor.a3x是干嘛用的.好象也用不着. 自带的有已经有汉化版本了 看看有啥区别 能做个侧边栏项目的话,就更加赞 回复 7# zhaoceshi
什么意思? 9:47 2016-10-10 写在前面的话.
不知各位同学是否知道一个外国人开发的scitejump工具.不知道请点击[]这里 ...
tubaba 发表于 2016-10-10 11:49 http://www.autoitx.com/images/common/back.gif
希望继续努力, 目前应该可以添加收集用户注释功能了吧...... 回复zhaoceshi
什么意思?
tubaba 发表于 2016-10-14 14:57 http://www.autoitx.com/images/common/back.gif
这是俄人改写的 SciTE, 右边黄色即为附加的侧边栏, 通过 Lua 文件实现, 汉化 Lua 文件后即不能显示侧边栏了, 有时间和兴趣不妨研究一下
链接地址: https://www.autoitscript.com/forum/topic/167992-scite-355101-for-autoit/#comment-1230117
本帖最后由 tubaba 于 2016-10-20 15:46 编辑
回复 9# 131738
已经支持中文以及注释控制命令收集了
俄罗斯版的我看一下
HTTP://yashied.ru/ProjectFiles/SciTE/SciTE_3.5.5.101@1.3.8.zip 下载不了 回复131738
已经支持中文以及注释控制命令收集了
俄罗斯版的我看一下
HTTP://yashied.ru/P ...
tubaba 发表于 2016-10-20 15:26 http://www.autoitx.com/images/common/back.gif
我有,但此地不能上传.......... 如果觉得用起来方便的话,顶一下哦 感谢tubaba为大家提供好用的工具....
{:face (88):} 什么是MySciTEJump?
MySciTEJump是配合SciTE编辑器编写autoit3 sctipt脚本的一款辅助工具.它可以将脚本中的控制指令(使用#开头的语句),自定义函数(UDF)以及注释部分.以列表的方式展示到框体内. 它提供了一个快速和有效的方式跳转功能,无需滚动整个脚本就能找到你正在寻找的特定函数,控制指令,注释. 同时,它还提供了折叠语句的功能.将语句以最深层次折叠.使脚本看来一目了然.
第一次使用本工具时,可以先启动SciTE编辑器,再启动本工具.此时,本工具将会自动做为SciTE的子窗口.
在成功启动一次以后,可以不启动SciTE,直接启动本工具.工具会启动SciTE.
当本工具失去父窗口SciTE后(比如先于工具关闭了SciTE,又重新打开),不必关闭本工具,只需点击刷新按钮,工具会自动附加到启动后的SciTE内.
界面介绍(第一页)
1.翻页按钮
2.刷新按钮.->当树视图显示不正确,或者当MySciTEJump失去父窗口(SciTE)时,请点击刷新按钮.
3.MySciTEJump吸附切换按钮.->此按钮用来将MySciTEJump吸附在桌面右边或左边,并将SciTE窗口填充到桌面剩余区域.再次点击返回原来桌面位置.
4.搜索输入框.->实时搜索当前脚本内的函数名称,控制指令.注释.当进行了一次成功的搜索(以点击搜索结果为准),将会把此次搜索关键字存入搜索历史中.(但此历史不会保存到配置文件中,当软件退出后即失效)
5.输入框清空按钮.->点击此按钮,会将左右的输入框内容清空.
6.行跳转输入框.->在此框中输入想要跳转的行.会立即跳转到指定行.
7.树视图显示区域.分为四个根区域.
A.函数收藏夹.如有经常需要跳转的函数,可以将此函数放入此收藏夹.从而更快到达指定位置.
B.自定义函数.所有当前脚本的自定义函数会在此区域内.
C.控制指令.所有控制指令会在此区域内列表.
D.注释部分.所有注释语句会显示在区域.
8.此按钮会将当前脚本光标所在行做深度折叠/展开.当脚本中一个折叠区域折叠的并不够彻底时.可以使用此按钮,将光标置于目标行.第一次点击此按钮展开,再一次点击即可做深度折叠.
界面介绍(第二页)
1.翻页按钮(向前翻页)
2.翻页按钮(向后翻页)
3.快捷启动区域.可以将常用的软件放入此区域启动.添加的方式有二种.
A.拖动目标软件到此区域.
B使用最后一个按钮定位目标程序.
在每个成功加入的快捷按钮上都会提供一个右键菜单.
以提供编辑,删除,在当前位置插入按钮的功能.
以指定进程执行完整性等级启动应用程序的使用场景:
因为本工具要求运行在管理员权限下.默认进程完整性级别为高.在Vista以上操作系统中,如果以高等级启动应用,会导致某些早期开发的应用程序不能接收到拖拽消息(因为桌面explorer.exe运行等级为中),表现为接收拖拽的窗口功能失效.此时,需要使此应用以中MIC等级启动即可.
4.显示本应用程序的进程完整性等级.
5.指定图标尺寸.
6.指定图标的间隔.
7.将图标尺寸及间隔重置为48,10.
界面介绍(第三页)
1.翻页按钮(向前翻页)
2.翻页按钮(向后翻页)
3.指定要注册到SciTE工具菜单的目录程序.
4.指定要在菜单中显示的名称.
5.如果需要指定快捷键,请勾选.
6.当勾选5后,此处变为可用.请在键盘上按键.(目前不能接收按键F10)
7.当完成以上设置后点击此按钮完成注册.
8.使用此功能前先点击刷新按钮,以显示SCITE当前工具菜单中的内容.
9.使用此功能前先点击刷新按钮.以显示当前备份的文件名称.
10.使用此功能前先点击刷新按钮.以显示当前用户自定义include目录.用户可以指定一个目录做为用户自定义include目录(此目录可以为多个)
11.将当前SciTE编辑的脚本放入用户自定义目录
12. 将当前SciTE编辑的脚本从用户自定义目录中删除.
13.Include数据库查询模块.第一次使用此功能,需要生成数据库.首先指定数据名称路径.再点击15号按钮,以刷新数据库.
14.当数据库生成完毕后,将光标置于SciTE编辑区内要查询的UDF函数或者变量中,(可以选择整个函数名称也可以只是将光标置于函数名称内),点击13号按钮,即可查询包含此函数定义的Include文件名称.
根据控制台错误信息智能插入功能介绍:
当用户编辑的脚本运行时出现上面二种错误时.可以使用此功能智能插入需要的include文件到脚本顶部.考虑到有汉化版本的scite,所以提供自定义关键字的功能.
界面介绍(第四页)
1查询命令发送延迟,指当在搜索框内输入搜索内容后等待指定时间后再发送查询命令.
2视图顶部偏移量,指跳转到目标函数显示在SciTE编辑区的距离顶部的位置.可以指定像素高度,也可以用边上的按钮自动设定.
3..在使用跳转功能时.将在跳转目标位置加入一个标记.在这里指定此标式定义的样式.