[software development] 菠萝记事本 首个版本发布!
Tofloor
poster avatar
BLumia
deepin
2026-03-24 12:42
Author

书接上回:https://bbs.deepin.org/post/295992

我是一个在早年 Windows 时代习惯了 Notepad++ 编辑文本文件的用户,于是在后来切换到其他操作系统时总是偶尔会怀念 Notepad++ 的一些特有功能和交互方式。尽管 Linux 平台确实也存在一些替代品,但上面的需求却要么不能完全满足,要么交互方式变得非常奇怪,要么因为编辑器本身更倾向于作为 IDE 而导致启动缓慢。在上一篇帖子中我也列举过了一些我试过的替代方案,结果都不是很满意,所以我自己搓了个更符合我预期的 Notepad++ 替代的原型——而在现有支持者的支持下,我决定将这个原型完善起来并免费提供给大家!

当前特性

目前所提供给大家的版本是 3/15 送审 deepin 应用商店上架的版本,版本号是 0.1.0,包含下面的功能:

  • 指定与转换文本文件的编码方式(GBK <-> ShiftJIS <-> UTF-8 之类)
  • 方便的展示所有字符,包括不可打印字符
  • 自动恢复上次会话关闭时所打开过的文档,包括未保存的文档和临时文档
  • 完全可自定义的工具栏,无论是图标、图标位置、快捷键均可自定义
  • 开箱即用的超多文件格式支持,包括 Notepad++ 至今都不支持的 Kotlin、QML、Zig 等
  • 在左侧栏展示修改历史
  • 当然,还有足够的快/轻便(不需要像 IDE 启动后动辄加载非常多的插件,结果只是为了编辑个配置文件)

下面是一些截图:

image.png

image.png

image.png

下载!

由于送审深度商店的版本还没通过审核,所以暂时不能从商店直接下载 更新:现在也可以在深度商店直接下载了。你可以在下面的这些位置获取对应版本的下载。目前所提供的版本是 deepin 25 和 Windows,未来应该会提供更多操作系统/架构的支持。

  • Gitee: https://gitee.com/blumia/pineapple-notepad/releases/tag/0.3.0-freeware
  • GitHub: https://github.com/BLumia/pineapple-notepad/releases/tag/0.3.0-freeware

注意事项

  1. 强烈建议安装 kde-style-breeze 软件包,且确认这个软件包的大版本号是 6(内测版本已满足,非内测用户可以等 deepin 25.1 推送或者暂时从内测源偷包)。
  2. 如果不安装上面一条所描述的软件包,默认主题可能会很奇怪,可以考虑在【应用程序外观样式】菜单中切换到 Fusion 主题。另请参阅下面的【我遇到了 bug!】段落。
  3. 尽管此软件发布前已经做了很多测试,请仍然考虑暂时不要使用此软件编辑非常重要的文件。

欢迎打赏支持!

我在【爱发电】以及【Ko-fi】平台开通了打赏支持,并且设立了一个“开源打赏目标”。如果你喜欢这款应用的话,欢迎打赏支持来助力此应用的开源!对于支持者,我也会提供一些形式的感谢,包括在关于对话框提供署名致谢等。请参阅下面【你可能想问的问题】中的【打赏支持有什么好处?】段落来了解详情。

你可能想问的问题

为什么只提供了 deepin 和 Windows 版?计划支持哪些平台?

目前的计划是支持 Windows,macOS 以及 Linux 三大桌面平台,考虑到目前项目是闭源项目,Linux 要针对各大不同发行版做适配是非常耗时耗力的事情(尤其是二进制分发),所以对于 Linux 平台而言暂且就只提供 deepin 25 版本。由于开发过程会反复的对比原版 Notepad++ 以及一些同类软件的启动速度与行为,所以 Windows 版本是自然而然需要存在的。至于 macOS 版本,目前实际上也存在但存在一些已知问题(其中一部分问题正在和 KDE 上游一起讨论解决方案),因为自我体验不是非常满意所以暂未提供 macOS 版本的分发,预计会在下个版本(0.2.0)提供公开的 macOS 版本。

至于架构,对于 deepin 以及 Windows 版本,目前暂时只会提供 amd64 架构的版本。macOS 暂时只计划提供 arm64 架构的版本。不提供其他架构的支持单纯是因为我没对应的设备,所以在此项目成为开源项目之前大概不会提供这个范围之外的架构的支持。

为什么使用 KDE Framework?这不会导致我被安装一大堆 KDE 依赖吗?

使用 KDE Framework 的原因是 KF 的一些组件(尤其是 KXMLGUI)可以极大程度的方便这个应用的开发,并且可以使应用的相关功能变得非常灵活。例如你可以完全自定义工具栏上的所有图标的顺序、修改它们的图标,甚至给对应的功能自定义一组到多组快捷键,对有需要的用户而言会非常方便,并且这些功能基本都不需要重复造轮子即可完成。

这个应用对 KF 依赖的选择也比较克制,所选的依赖基本是最小化的。我们以更能体现出依赖数量所产生的影响的 Windows 平台而言,当前程序的启动速度也远超不依赖 KF 的 NotepadNext 与 Notepad--,所以依赖的影响基本是可以不考虑的。另外,如果你是顾虑系统软件包的话,kwin 本身就引入了很多 KF 依赖,我们实际基本没有引入什么额外的依赖(虽然强烈建议主动安装 kde-style-breeze),所以大可放心。

你这个软件长得好像 Kate,是 Kate 的 fork 版吗?

这个软件不是 Kate 的派生版本。Kate 基于 KTextEditor,此软件基于 Scintilla。你注意到外观相似的原因是因为此软件使用了 KDE Framework 的 KXMLGUI 构建界面,并且在你安装有 breeze 主题时会默认使用 breeze 主题。

另外也顺带提一嘴,在写这个软件之前(甚至到现在),我也很频繁的在使用 Kate,并且也参与了 Kate 一些功能的开发。比如显示不可见字符的功能即将在 Kate 的下个版本(注意不是 26.04)中以插件的形式包含。所以如果你是 Kate 用户并且不想使用我的这个软件的话,你可能也可以在未来的 Kate 中体验到更多与此软件相关的特色功能。以及,deepin 25 仓库的 Kate 更新我也在推进,如果你感兴趣的话可以访问 https://github.com/linuxdeepin/developer-center/issues/12811 了解进展。

我遇到了 bug!

你所使用到的软件其实是一周多前的版本(上上周的周日提交给商店的),其中一些问题已经修复了,这些修复会涵盖到下一个版本中。这里也列一下已知问题列表:

  • 在【应用程序外观样式】选择的样式无法被记住(注:在下一个版本发布前,建议安装 kde-style-breeze 然后关闭重开应用,会默认使用 Breeze 样式)
  • 非 KDE 环境下,在【窗口配色方案】选择的颜色主题无法被记住,导致 DDE 下总是会使用亮色窗口配色方案
  • 查找对话框中,Shift+Enter 快捷键不会查找上一项结果
  • 统计信息对话框中,路径可能无论如何也无法展示完整

上述已知问题均会在下个公开版本(0.2.0)中解决(编辑:现在 0.3.0 已经发布了,主题帖内容就不做更新了,可以在下载页面看到后续的详细变化内容和新的说明)。如果你遇到的问题不在上面的列表中,欢迎提供反馈。

我想要 XXX 功能!

现阶段,我所提供的功能基本都是我自己使用 Notepad++ 时会使用的功能,一下完成 100% 复刻显然是不可能的(我也不打算做 100% 还原的复刻),所以如果有什么功能是你在使用 Notepad++(或类似应用)时很常用但此应用目前没提供的,也欢迎提供反馈,我会根据反馈情况考虑实现。

当然,有一些功能我大概是不计划进行实现的,比如 LSP 支持之类可能使此软件演变成 IDE 的功能。此软件的目标定位是功能强大但轻便的文本编辑器/记事本,而非集成式开发环境。如果你需要更高级的代码跳转等功能来开发比较成规模的项目的话,使用 VSCode、Zed 之类的开发工具可能会是更好的选择。不过,无论如何都欢迎反馈你的建议。

打赏支持有什么好处?

你的支持会是我持续维护此项目的动力!目前的打赏目标是,如果打赏金额总计满 1000,此应用程序后续会转为开源项目进行开发。

在达成这个开源目标 之前,如果你的打赏金额等于或超过一顿疯狂星期四(即 50),那么在下个版本发布时,我会在软件的关于对话框中添加你的名字以表示感谢!你也可以获得程序的预发布版本,另外,如果你使用其它发行版,你也可以请求获得程序的完整源码以供在对应的发行版中编译使用(但在开源目标达成之前,你不能随意分发源码)。

注:为了避免不必要的麻烦,表示感谢的署名不得包含企业名称、敏感词等可能给我带来麻烦的描述。如果你不确定的话可以事先与我取得联系。

开源计划?

如上所说,当达成开源打赏目标后,此程序本体将会完整开源。当然,即便未达成开源目标,此程序所涉及到的所有开源项目依赖的修改也均将开源并尽力将相关变更推进至上游,涉及到的周边工具也将开源。

目前,这些关联仓库已经开源:

  • kf6redist(在 Windows 和 macOS 构建此项目所需的所有 KDE Framework 依赖):https://github.com/BLumia/kf6redist
  • icoutils-rs (在 Windows 使用 ECM 提供的工具为可执行文件生成图标需要依赖 icotool,这是一个 cli 接口完全兼容的重新实现版本):https://crates.io/crates/icoutils-rs
  • libintl(为 GNUWin32 的 libint 添加了 CMake 构建支持,便于在不方便使用 autotools 的环境容易的构建 libintl):https://github.com/BLumia/libintl/

我可以在商业环境使用此软件吗?

可以!尽管此软件目前是闭源软件,但此软件是免费的,并且许可协议允许你在商业环境使用。详情请参阅关于对话框中的许可证信息的原文。

什么时候发布下个版本?

暂时不做时间承诺,但应该会很快,因为 0.1.0 实际是 3/15 时送审商店的版本,目前已经有积攒了一些缺陷修复和新功能了。

目前的计划是应用商店送审的版本审核通过后 且 deepin 25.1 正式发布后再送审 0.2.0。期间也会看看有没有新的赞助者(以便在关于对话框中更新对应的署名以表示感谢)。

更新:截至最后一次编辑,0.3.0 已上架商店,GitHub 与 Gitee 的下载也一并开放了。再后续的更新就不再编辑本帖了,可以考虑订阅 github 或者 gitee 的 Release 通知来获知更新。

结语与致谢

感谢阅读至此!欢迎你尝试此软件,关于打赏也请量力而行(不打算打赏也没有关系),无论是否打赏也都欢迎你给出评价,如果有什么疑问或者建议也都欢迎提出。

最后也对在发布之前就进行过打赏支持的朋友 Black Maple、Chris Xiong、pzm9012 表示特别鸣谢!

Reply Favorite View the author
All Replies
2 / 2
To page
一粒
deepin
2026-03-26 14:08
#21

kissing_heart

Reply View the author
BLumia
deepin
2026-03-27 10:10
#22

@deepin-superuser

先在菠萝记事本中打开一个文本 编辑一下 例如加个1 然后关闭菠萝记事本(不要保存)

用其他文本编辑器编辑一下这个文本,例如加个2

再次打开菠萝记事本,此时这个文本无法保存

了解,之前完全没考虑到这个场景,会考虑下如何支持。

edit:不是无法保存吧?我自测是可以正常保存的,但是不会提示外部修改过是否重新载入。

还有录制宏如果带回车,那么播放宏时候光标位置,文字出现位置都有问题

可以复现,大概是加自动缩进功能的时候搞坏了,会确认下问题。

以上两个均已记录,感谢反馈!

edit:以上两个问题均已修复,预计会涵盖在>0.2.0的版本中。

Reply View the author
deepin-superuser
deepin
2026-03-27 16:26
#23

确实是无法保存,请看VCR

文件太大 发 matrix 群了

Reply View the author
BLumia
deepin
2026-03-28 13:51
#24

确实是无法保存,请看VCR

在我当前最新的版本上无法复现,0.2.0 已经提交给商店了,等商店审完会一并在 GitHub 和 Gitee 发 Windows 和 macOS 版,可以到时候再试试新版是否可以复现。

或者请考虑打赏来获取更新的非公开版本

Reply View the author
BLumia
deepin
2026-04-03 20:58
#25

@deepin-superuser

0.2.0 已经提交给商店了

不等商店审核了,现在 0.2.0 已发布,可以在 gitee 或者 github 下载了。

你反馈的两个问题虽然没涵盖在这个版本里,但也可以试试看,至少部分文案没翻译的问题应该解决了(仍然有个别英文的是文案我后续可能还会改的),也可以试试你提到的那个奇怪的无法保存的问题是否还在。

这次发布的版本还带了 macOS arm64 版,如果有同时使用 macOS 的用户也可以试试看,不过 macOS 版没有签名(没钱交苹果税),如何安装可见下载处给的备注说明。

Reply View the author
deepin-superuser
deepin
2026-04-07 08:30
#26
BLumia

@deepin-superuser

0.2.0 已经提交给商店了

不等商店审核了,现在 0.2.0 已发布,可以在 gitee 或者 github 下载了。

你反馈的两个问题虽然没涵盖在这个版本里,但也可以试试看,至少部分文案没翻译的问题应该解决了(仍然有个别英文的是文案我后续可能还会改的),也可以试试你提到的那个奇怪的无法保存的问题是否还在。

这次发布的版本还带了 macOS arm64 版,如果有同时使用 macOS 的用户也可以试试看,不过 macOS 版没有签名(没钱交苹果税),如何安装可见下载处给的备注说明。

无法保存那个问题我知道了 因为我打开的是 C 盘 Notepad++ 安装目录里的文件,菠萝记事本没有权限保存

我用 Notepad4 保存的时候会弹一个框叫另存为

Reply View the author
imysl89
deepin
2026-04-12 12:46
#27

@BLumia 大佬,希望支持verilog 、systemverilog、UVM代码文件的语法高亮,还有对大文件有特别支持么(就是比如2GB 8GB 10GB的大文件)?

Reply View the author
BLumia
deepin
2026-04-14 10:27
#28
imysl89

@BLumia 大佬,希望支持verilog 、systemverilog、UVM代码文件的语法高亮,还有对大文件有特别支持么(就是比如2GB 8GB 10GB的大文件)?

Verilog 高亮会加,大概会在 0.4.0 版本里(因为0.3.0已经送审到深度商店了)。

大文件目前已经是分块加载的了,已经有支持了,但是没专门测过特别大的文件,可以先本地试试效果。

Reply View the author
BLumia
deepin
2 hours ago
#29

0.3.0 现已发布,deepin 深度应用商店已上架,可在商店直接下载(注:需要更新到 deepin 25.1才能搜到)。也可以在 GitHub 或 Gitee 下载并手动安装:

  • 深度商店(需要自己搜《菠萝记事本》)
  • GitHub:https://github.com/BLumia/pineapple-notepad/releases/tag/0.3.0-freeware
  • Gitee: https://gitee.com/blumia/pineapple-notepad/releases/tag/0.3.0-freeware

@chmod700

debian13运行不了。

自 0.3.0 起开始提供 debian 13 用的 deb 包了,可以考虑再试试。

@deepin-superuser

edit:以上两个问题均已修复,预计会涵盖在>0.2.0的版本中。

之前你反馈的关于自动缩进导致宏录制的问题,以及外部编辑后重新打开没提示重载的问题已经涵盖在 0.3.0 了,可以考虑再试试了。

@imysl89

希望支持verilog

因为提问的时候 0.3.0 已经送审了,所以没赶上 0.3.0。这个特性已经在目前的非公开(赞助人员特供)版里涵盖了。如果确实喜欢的话可以考虑打赏来获取比公开版本更新的非公开版本,或者等 0.4.0 发布 :)

Reply View the author
2 / 2
To page