没用过Notepad++以及其替代软件,想问问楼主这个软件有什么优点或者特别的地方。
没用过Notepad++ 用过Notepad--,您这个那里可以下载,龙芯下可用吗
没用过Notepad++以及其替代软件,想问问楼主这个软件有什么优点或者特别的地方。
单纯为了解决我用 Notepad++ 的替代场景用的,其实帖子里有写,主要就是下面几条:
- 纯文本编码检测和转换(比如日本 ISO 镜像中的 OMAKE 文件,国内 Windows 设备下的 gb18030 文档)
- 显示不可见字符(+不可打印字符)
- 快速+有高亮的编辑各种配置文件或简单源码文件(不需要动用 IDE,不需要启动 LSP 插件)
- 自动恢复会话和未保存过的临时文档
如果之前没此类需求的话,不见得有什么特别的用处。毕竟对于中、重型的代码开发目的,当然还是该上 IDE 就上 IDE。
没用过Notepad++ 用过Notepad--,您这个那里可以下载,龙芯下可用吗
还没提供下载,或者说还没对外发过任何版本。发这个帖子的目的也就是看我应该在这个项目上值不值得投精力以及投多少精力。(计划是如果发布的话会以 OSI 认可的开源许可发布,许可证暂时未定但保底会是 GPLv3,但我仍然没决定是否要发布倒是)
至于龙芯,我没有龙芯设备所以不太能直接提供龙芯版本,不过如果最终决定发布的话,龙芯上构建理论上应该是没问题的。
用得多一点的是Notepad--,功能比较喜欢的是楼主说的:“文本编码识别与转换(UTF-8<->GB18030<->ShiftJIS等)”
但是在查看bash脚本的时候,默认情况下高亮颜色设置比较乱,字体大小不一,阅读和编辑有点不适。
而且在UOS环境下有时候会闪退。所以仅仅作为系统默认文本编辑器的功能补充。

我deep默认的是Notepad--
用得多一点的是Notepad--,功能比较喜欢的是楼主说的:“文本编码识别与转换(UTF-8<->GB18030<->ShiftJIS等)”
但是在查看bash脚本的时候,默认情况下高亮颜色设置比较乱,字体大小不一,阅读和编辑有点不适。
而且在UOS环境下有时候会闪退。所以仅仅作为系统默认文本编辑器的功能补充。

指的是中英文混着出现的情况吗?目前的效果是这样的:

我感觉应该还好,不过我自己对字体渲染效果方面不太敏感,你可以看看上面截图是否满足效果。(注:截图是截的远程桌面所以可能清晰度上略糊)
Notepad--的问题在它不开源(暂且不讨论它可能违反了GPL),意味着即便有BUG也不好自己去解决,还是有点无奈的。
我用Kate :)
我用Kate :)
Kate 可以的,我其实也用,并且包括上面提到的一些痛点我也提交过一些相关代码给上游。
Kate 的当前问题是显示不可见字符的功能目前是约等于不存在的(会显示成红色方块,但不可打印字符的宽度是0,所以约等于看不出来显示出来的到底是啥字符),以及启动速度不是特别满意(但总体也还不错)。
对于不可见字符的问题,之前调研感觉实现这个会比较麻烦,这两天发现可能有更方便的搞法,有精力的话说不定也会搞出来并提给上游。
另外 deepin 25 仓库内的 Kate 版本太低了并且配合 deepin 的 Chameleon 显示效果巨差,这个问题我也在着手解决(虽然不会升到目前最新),乐观估计的话或许未来一个月内会进入内测 :)
Kate 可以的,我其实也用,并且包括上面提到的一些痛点我也提交过一些相关代码给上游。
Kate 的当前问题是显示不可见字符的功能目前是约等于不存在的(会显示成红色方块,但不可打印字符的宽度是0,所以约等于看不出来显示出来的到底是啥字符),以及启动速度不是特别满意(但总体也还不错)。
对于不可见字符的问题,之前调研感觉实现这个会比较麻烦,这两天发现可能有更方便的搞法,有精力的话说不定也会搞出来并提给上游。
另外 deepin 25 仓库内的 Kate 版本太低了并且配合 deepin 的 Chameleon 显示效果巨差,这个问题我也在着手解决(虽然不会升到目前最新),乐观估计的话或许未来一个月内会进入内测 :)
原来这样
复刻notepad++ 90%以上功能就行,尤其是他的正则替换功能
复刻notepad++ 90%以上功能就行,尤其是他的正则替换功能
复刻notepad++ 90%以上功能就行
我的精力如果是无穷的那我肯定是尽可能复刻了,显然没那么多精力才会问关注哪些功能(甚至还没决定要不要发布)。
正则查找/替换目前已经实现了倒是...
复刻notepad++ 90%以上功能就行
我的精力如果是无穷的那我肯定是尽可能复刻了,显然没那么多精力才会问关注哪些功能(甚至还没决定要不要发布)。
正则查找/替换目前已经实现了倒是...
最重要的就是这个正则,要跟notepad++用法、语法兼容一致,其他的其实不太重要,就是普通文本编辑器的功能。我每次正则替换,都要进windows用它
最重要的就是这个正则,要跟notepad++用法、语法兼容一致,其他的其实不太重要,就是普通文本编辑器的功能。我每次正则替换,都要进windows用它
可以描述个简单用例么?我怎样测试我目前的版本是否符合你的需求(比如提供一个示例文本和具体在替换对话框的操作步骤)?
毕竟这个功能我不怎么依赖,不清楚如何充分的验证是否完整实现了。
可以描述个简单用例么?我怎样测试我目前的版本是否符合你的需求(比如提供一个示例文本和具体在替换对话框的操作步骤)?
毕竟这个功能我不怎么依赖,不清楚如何充分的验证是否完整实现了。
比如假设有一个这样的文本,我需要批量替换里面的字符。一般有这样几种,批量替换每行某字符前面的内容,批量替换某字符每行后面的内容,批量替换某两个字符中间的内容(可能内行不一定一样),在每行行首加上某特定字符,在每行行尾加上某特定字符。这些用notepad++都可以做到
比如假设有一个这样的文本,我需要批量替换里面的字符。一般有这样几种,批量替换每行某字符前面的内容,批量替换某字符每行后面的内容,批量替换某两个字符中间的内容(可能内行不一定一样),在每行行首加上某特定字符,在每行行尾加上某特定字符。这些用notepad++都可以做到
具体一点,比如贴一段具体的文本内容,然后在搜索替换对话框操作的时候填的正则的实际内容,以便我能按你的描述来操作?可以认为是测试用例要体现的内容。
比如现在有这样一个文本,里面内容为:
/home/andy/桌面/g/grub2/grub-pc_2.12-9_amd64.deb
/home/andy/桌面/g/grub2/grub-efi_2.12-9_amd64.deb
/home/andy/桌面/g/gcc-14/libgomp1_14.2.0-19_amd64.deb
/home/andy/桌面/g/grub2/grub-common_2.12-9_amd64.deb
/home/andy/桌面/g/grub2/grub-pc-bin_2.12-9_amd64.deb
/home/andy/桌面/g/gcc-14/libgcc-s1_14.2.0-19_amd64.deb
/home/andy/桌面/g/grub2/grub2-common_2.12-9_amd64.deb
/home/andy/桌面/g/gcc-14/libatomic1_14.2.0-19_amd64.deb
/home/andy/桌面/g/gcc-14/libstdc++6_14.2.0-19_amd64.deb
/home/andy/桌面/g/gpm/libgpm2_1.20.7-11+b2_amd64.deb
/home/andy/桌面/g/glibc/libc6_2.41-12+deb13u1_amd64.deb
我想在某个文本中删除指定字符之前(/符号)的字符,在notepad++中我可以这样实现:呼出替换,选择正则替换,查找目标一栏输入输入:^.*/ 替换为一栏留空

那么它就变成了这样:
grub-pc_2.12-9_amd64.deb
grub-efi_2.12-9_amd64.deb
libgomp1_14.2.0-19_amd64.deb
grub-common_2.12-9_amd64.deb
grub-pc-bin_2.12-9_amd64.deb
libgcc-s1_14.2.0-19_amd64.deb
grub2-common_2.12-9_amd64.deb
libatomic1_14.2.0-19_amd64.deb
libstdc++6_14.2.0-19_amd64.deb
libgpm2_1.20.7-11+b2_amd64.deb
libc6_2.41-12+deb13u1_amd64.deb
这样可以不用管/符号之前的内容,每行是不是一样的,都可以被删掉。
现在我再进一步,删掉_符号后面的内容,在notepad++中我可以这样实现:呼出替换功能,查找目标一栏输入 _.*?$ 替换为一栏留空

它就变成了这样:
grub-pc
grub-efi
libgomp1
grub-common
grub-pc-bin
libgcc-s1
grub2-common
libatomic1
libstdc++6
libgpm2
libc6
我想在每行行首插入字符,我可以这样实现,呼出替换功能,查找目标一栏输入^,替换为一栏输入***

它就变成这样:
***grub-pc
***grub-efi
***libgomp1
***grub-common
***grub-pc-bin
***libgcc-s1
***grub2-common
***libatomic1
***libstdc++6
***libgpm2
***libc6
我想在每行行尾插入&&&字符,我这样:查找目标一栏输入$,替换为一栏输入&&&

它就变成了这样:
***grub-pc&&&
***grub-efi&&&
***libgomp1&&&
***grub-common&&&
***grub-pc-bin&&&
***libgcc-s1&&&
***grub2-common&&&
***libatomic1&&&
***libstdc++6&&&
***libgpm2&&&
***libc6&&&
Popular Ranking
ChangePopular Events
More

中文 
从我自己的角度而言,自从知道 Notepad++ 开始就有了一些与此软件相关的使用习惯和功能的依赖。包括【显示空白字符】(能显示出来 CRLF/LF,以及各种不可打印字符)、方便的文本编码识别与转换(UTF-8<->GB18030<->ShiftJIS等)、自动恢复上次会话的内容并自动恢复从未保存过的临时文档(临时记一些备忘)等,加上用它的话临时编辑一些配置文件就不需要启动那种一上来就加载一大堆插件的重型 IDE(也包括 vscode 与 zed)。
后续到了非 Windows 平台上就总是偶尔会“怀念”这些功能,发现好像很难看到类似替代,找过一些发现或多或少有一些我自己依赖的功能它没搬上去,或者有一些奇奇怪怪的槽点。比如:
Notepad Next:
Notepad--:
notepadqq:
Textosaurus:
甚至Notepad++本体也有一些槽点,每次更新都更的是一些有的没的,很少能感受到到底更了什么实质功能,真正实用的比如 golang kotlin qml 高亮从来都没见加过,使用自带的 Twilight 样式的话很多语言的高亮甚至会直接瞎眼到无法阅读(比如白底白字)或者完全失去高亮...
大概两年前有了这样的感受后我调研了一下相关的东西,看过 Scintilla 的接口设计后,发现如果搓这种轮子的话,会是是非常消耗精力的事情(几乎是堆工作量,技术含量没那么高)。今年年前刚好有空有机会试了试在比较高频率主动介入代码审核的情况下让 agent 来搓这种仿品,发现只要 codereview 做的到位,效果就意外的还可以。尽管由于这类工具的细碎功能很多,还是需要逐步加+验证,所以我目前也不是很确定我有没有动力把它做完。
于是发个帖子问下大家:
提问的目的是了解下这种工具的关注度,以便我决定是否应当继续把它搞完,至于现状的话,使用了Qt6+KDE Framework6进行实现,基于 Scintilla 第一方提供的 Qt 支持(非 QScintilla),目前做到了 Windows、macOS 和 Linux 三个平台的构建和基础功能可用,在 Windows 下对比文件的启动速度可以远超 NotepadNext (尤其是大文件),很多 Notepad++ 原版没添加的常用语言的高亮支持我也做了支持。下面也放一张图(deepin 25环境):
于是欢迎各位评论发表看法。感谢阅读至此!
免责:此项目是个人项目,与 deepin 官方无关。