首页
社区
课程
招聘
[原创] 分享一下写了N年的自用编辑器 -- EDX
发表于: 2021-10-3 18:26 80374

[原创] 分享一下写了N年的自用编辑器 -- EDX

2021-10-3 18:26
80374
收藏
免费 55
支持
分享
最新回复 (312)
雪    币: 5354
活跃值: (4014)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
176
无心红叶 这个功能还很原始,有不少问题。你这个异常是怎么触发的?
更新了一个版本,也许解决了你那儿的崩溃问题。麻烦验证一下,谢谢
2022-8-30 23:05
0
雪    币: 129
活跃值: (1095)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
177
牛!!!
2022-9-5 10:21
0
雪    币: 11
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
178
无心红叶 更新了一个版本,也许解决了你那儿的崩溃问题。麻烦验证一下,谢谢[em_1]
不崩了,就差其它看怎么填了,只能选,选的地方里边还是空白的
2022-9-10 08:19
0
雪    币: 5354
活跃值: (4014)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
179
wx_NULL_579 不崩了,就差其它看怎么填了,只能选,选的地方里边还是空白的
这个配置目前只对普通的cmake工程有效。
2022-9-15 22:45
0
雪    币: 5354
活跃值: (4014)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
180

疫情关家里,抽空改了不少之前优化过程中引入的BUG。

本次更新最大的功能改进是关于LSP的诊断信息及编译错误/警告的处理逻辑,在文本编辑器中通过波浪线及滚动条的标记展示出来,方便定位错误。

如下:


详细更新记录如下:


2022-09-15:

优化LSP信息提示展示相关逻辑

修正-new-window参数导致的打开文件失败的BUG

修正构建信息解析异常时程序崩溃的BUG

表达式求值:

修正输出结果格式化可能引起的程序崩溃

支持二进制数相关功能

支持bool类型

改进整型数据转型的相关逻辑

修正文本编辑器在处理特定内容时崩溃的BUG


2022-09-08:

优化LSP服务:

支持ccls(ccls响应速度较clangd快,但不能支持WSL及ESP32-IDF,补全的提示也不如clangd智能)

支持didRenameFiles命令

支持诊断信息

优化兼容性

优化函数/模板签名提示中参数高亮相关逻辑

添加文本装饰效果(波浪线),并通过文本装饰展示LSP诊断、编译器警告/报错等信息

文本滚动条添加提示标记(诊断/警告/报错)

优化UTF8文件加载性能(大型中文文本加载性能提升约40%)

优化MBCS文件加载性能(性能提升约20%)

改进文本渲染逻辑,增强字体配置(可独立配置粗体字字体等参数)

修正Windows BUG导致的菜单刷新闪烁问题

修正Lua代码大纲计算错误

修正Lua解析器死循环BUG


2022-9-15 22:53
0
雪    币: 92
活跃值: (519)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
181
又是我反馈2个小问题:
1. 查找替换弹出窗口在edx最小化的时候不消失
2. 查找结果窗口能不能添加右键?方便复制
2022-10-14 17:40
0
雪    币: 5354
活跃值: (4014)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
182
hzhhzh 又是我[em_85]反馈2个小问题: 1. 查找替换弹出窗口在edx最小化的时候不消失 2. 查找结果窗口能不能添加右键?方便复制
没问题,下个版本就解决你的问题。不过最近在添加ssh远程编译调试功能,刚弄了一半,还需要花点时间
2022-10-14 21:55
0
雪    币: 92
活跃值: (519)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
183
无心红叶 没问题,下个版本就解决你的问题。不过最近在添加ssh远程编译调试功能,刚弄了一半,还需要花点时间
多谢大佬,期待ssh功能
2022-10-15 15:14
0
雪    币: 5354
活跃值: (4014)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
184

例行发布新版本,本次重点支持了SSH远程编译调试功能。目前还差个SSH控制台。


本次完整更新内容如下:

2022-10-25:

更新libgit2到v1.5.0

更新libssh2到v1.10.1_DEV(解决部分证书无法正常登录SSH服务器的问题)

支持通过SSH进行远程编译/调试

添加工具链配置界面,支持用户手工添加工具链

工程菜单打开命令支持以文本、二进制模式打开文件

编辑菜单添加文本缩放命令

输出窗口添加上下文菜单

优化串口监视面板(改进按钮,修正换行发送不正常的问题)

优化文本行号,十六进制偏移展示效果(支持数字分组)

优化匹配括号跳转的性能问题

优化c/c++解析器,避免特定情况下高亮计算延迟导致的展示异常

优化搜索对话框行为,随主窗口最小化/还原自动隐藏/展示

修正调试监视窗口在特定状态下崩溃的问题

修正文本渲染异常,改进代码大纲渲染效果

修正版本历史面板快捷键异常

修正输出/调试控制台等界面在选中状态下输入字符会崩溃的异常

修正gdb/mi解析器处理粘连回应数据时,序号处理错误导致的调试器卡顿/数据异常

压缩图标资源



工具链管理界面

SSH远程编译调试

最后于 2022-10-25 22:07 被无心红叶编辑 ,原因:
2022-10-25 21:38
0
雪    币: 5354
活跃值: (4014)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
185
hzhhzh 多谢大佬,期待ssh功能
你要的功能已经支持,请查收
2022-10-25 21:38
0
雪    币: 5354
活跃值: (4014)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
186
naux 支持远程开发吗,类似VS Code Remote SSH这
最新版本已经支持SSH远程编译调试,欢迎测试
2022-10-25 21:43
0
雪    币: 5354
活跃值: (4014)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
187

补上了缺失的ssh控制台,现在ssh远程开发调试的基本功能已经完整了。后面考虑实现sftp管理器及直接通过ssh编辑远程文件的功能。

2022-10-29:

实现简易SSH控制台:

支持运行远程生成的程序

配合GDB远程调试程序

做为独立的SSH控制台使用(通过认证信息管理界面双击打开,或输出窗口命令行通过ssh ssh://host命令打开)

修正SSH工具链检测异常(修正本地化linux支持)

改进调试运行配置UI,支持SSH上传过滤器配置,避免自动上传多余文件


如下为在我的控制台中展示的vim界面,大体可用(主要依赖windows对vt的支持,我实属偷懒了)


2022-10-29 23:05
0
雪    币: 92
活跃值: (519)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
188
无心红叶 你要的功能已经支持,请查收[em_1]
已经用上了,谢谢
2022-10-31 16:17
0
雪    币: 5354
活跃值: (4014)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
189

2022-10-04:

添加lite布局模式,未打开工程时使用此模式,避免与打开工程时的布局冲突

SSH控制台支持ZModem协议,可以与lszrz配合收发文件(支持批量文件传送)

更新zlib到1.2.13

HEX编辑器偏移栏增加边距

修正解析非法ELF文件会崩溃的问题


撸了个ZModem协议实现,在我的SSH控制台上可以用lszrz收发文件了

2022-11-4 14:38
0
雪    币: 8
活跃值: (44)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
190
666
2022-11-12 13:38
0
雪    币: 5354
活跃值: (4014)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
191

2022-11-14:

优化文本加载性能,空行加载性能提升超过50%,文本加载性能提升10%

优化批量替换性能,空行替换性能提升20%

修正加载进度对话框在高DPI设备上可能出现布局错误的问题

文本搜索(非正则)改为多线程实现(大于100万行的文本),大幅(2x~10x)提升文本搜索性能

改进sshcon对rz的兼容性

改进WSL工具链搜索兼容性(更新WSL后可能导致工具链搜索异常,此版本修复了这个问题)


0.5秒搜索4000万行文本。受制于当前文本存储结构,目前只能做到这种程度了,虽然算不上最快,但一般情况也应该够用了。

2022-11-14 13:22
0
雪    币: 1913
活跃值: (7574)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
192
有什么用吗?
2022-11-14 15:52
0
雪    币: 5354
活跃值: (4014)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
193
wandering 有什么用吗?
你问倒我了,要说有啥用,真就没啥大用处,自娱自乐罢了。
唯一的用处是让我这两年除了升级,几乎不再打开visual studio和clion...
2022-11-14 19:03
0
雪    币: 92
活跃值: (519)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
194
大佬,
1. .bat .sh这些脚本能否加个语法高亮?我看右下角类型里面是有的。
2. .so这样的二进制文件,能不能强行用文本打开?原因是hex的编辑好像没有搜索功能,有时候想搜些字符串。。试了.so重命名.txt也不行
3.hex编辑有点不明白,如果修改一个字节的低4位,出来的结果是乱的
比如0B 0A 08 09 0A,我想把0B改成0C。光标放在B,输入C,结果是CA 08 09 0A ...
2022-11-18 13:39
0
雪    币: 5354
活跃值: (4014)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
195
hzhhzh 大佬, 1. .bat .sh这些脚本能否加个语法高亮?我看右下角类型里面是有的。 2. .so这样的二进制文件,能不能强行用文本打开?原因是hex的编辑好像没有搜索功能,有时候想搜些字符串。。试 ...

1. BAT和SH还未支持,因为类型列表是从配置里读的,旧的配置里预留了这些类型,但没有实现。所以你现在选择是没有效果的。后面慢慢加
2. 强制以文本方式打开可以通过文件菜单。或是通过拖放文件打开时按alt键。hex模式的搜索正在做。
3.hex的编辑有点bug, 如果用鼠标移动光标再输入,由于选中状态显示不对,执行的是选区替换。用键盘移动不会有这个问题。多谢你又帮我发现了新的BUG。后面版本会修正此问题。
另外,补充说明一下hex的问题原因。HEX编辑器和文本编辑一样有覆盖和插入两种模式,默认是覆盖模式。插入模式下,光标在高4位(即字节边界)输入时,会插入一个新的字节,在低4位输入时会改写低4位的内容。如果有选中的内容,则会先执行删除操作,再执行输入。用鼠标移动光标到高4位时没有问题,但移动到低4位时,因为一些逻辑问题,会选中当前字节(状态栏会有显示),并且选区不可见。这时再输入就会出现你所说的问题。

最后于 2022-11-18 15:32 被无心红叶编辑 ,原因:
2022-11-18 15:16
0
雪    币: 5354
活跃值: (4014)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
196

更新版本:

2022-11-27:

支持BASH语言高亮

规格化文件路径,避免调试器文件定位错误

调整搜索对话框

修正HEX选区/输入行为

支持HEX文件搜索

更新Zstd到v1.5.2


调整了一下搜索对话框的UI。一直以来都很不想做combo box,这回不得不搞了个半成品,在这个界面上勉强够用。

2022-11-28 16:15
0
雪    币: 5354
活跃值: (4014)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
197
hzhhzh 大佬, 1. .bat .sh这些脚本能否加个语法高亮?我看右下角类型里面是有的。 2. .so这样的二进制文件,能不能强行用文本打开?原因是hex的编辑好像没有搜索功能,有时候想搜些字符串。。试 ...
bat还不支持,bash的高亮已经支持了。
hex模式的搜索已经实现了,替换还没有实现
hex模式下输入的问题已解决
2022-11-28 16:16
0
雪    币: 92
活跃值: (519)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
198
无心红叶 bat还不支持,bash的高亮已经支持了。 hex模式的搜索已经实现了,替换还没有实现 hex模式下输入的问题已解决[em_13]
看到更新了,第一时间前来点赞
2022-11-28 19:54
0
雪    币: 3441
活跃值: (6292)
能力值: ( LV8,RANK:120 )
在线值:
发帖
回帖
粉丝
199
大佬太猛了,去年就看到发帖了,今天竟然还在更新
2022-11-28 20:20
0
雪    币: 5354
活跃值: (4014)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
200
谢谢支持,最近状态不佳,动作有点慢。后面还会持续更新的,欢迎吐槽,提需求。
2022-12-1 11:52
0
游客
登录 | 注册 方可回帖
返回
//