Notepad-- 跨平台文本编辑器:从安装到批量查找替换的完整指南
【免费下载链接】notepad--一个支持windows/linux/mac的文本编辑器,目标是做中国人自己的编辑器,来自中国。项目地址: https://gitcode.com/GitHub_Trending/no/notepad--
Notepad-- 是一款用 C++ 和 Qt5 框架编写的跨平台文本编辑器,运行在 Windows、Linux、macOS 三个平台上,开发重点是国产信创 UOS 系统。它开源,GPL v3 协议,编辑内核是 Scintilla 引擎。它不是 IDE:没有内置终端、没有重构工具,定位就是快速打开和编辑文件。
先列几个可查证的事实:
- 开源协议:GPL v3(仓库根目录 LICENSE)
- 底层:Qt 5 + QScintilla,CMake 构建,最低要求 CMake 3.16(见 CMakeLists.txt)
- 语言高亮:src/qscint/src/ 下内置约 48 个语法高亮器,覆盖 C/C++/Python/Go/Rust/SQL/HTML/CSS/Markdown/YAML 等
- 主题:src/themes/ 下 17 套配色,从 Monokai 到 Deep Black
- 插件:带 helloworld 示例插件(src/plugin/helloworld/),生态尚处早期
什么时候用它
两个具体场景。
一是在信创 UOS 环境里需要用 Notepad++ 但没有 UOS 版。README 明确写了开发重点是"国产信创 UOS 系统、Mac 系统、各类 Linux 系统",UOS 是它的一等支持平台。
二是写 C++/Qt 项目时,经常要跨整个代码库搜关键字、做批量替换,但 IDE 嫌重,只想要一个"快进快出"的编辑工具。
需要重构、调试、LSP 全家桶的,别硬套,这是文本编辑器。
5 分钟装好并打开第一个文件
仓库的发布页(README 指向 Gitee/GitCode 镜像的发布页)有各平台预编译包,普通使用直接下载安装即可。
想自己编译,Linux 下最短路径是先装 Qt5 开发包,然后:
sudo apt install g++ cmake qtbase5-dev git clone https://gitcode.com/GitHub_Trending/no/notepad-- cd notepad-- && mkdir build && cd build cmake -DCMAKE_BUILD_TYPE=Release .. && make -j首次打开值得做两件事:
- 设置 → 界面:选主题。默认浅色可以用,也可以从 17 套里挑 Monokai、Deep Black
- 编码:建议默认 UTF-8。窗口底部状态栏随时能看到当前文件的编码和换行符(CR LF / LF),软件会按 Windows/Linux 自动设置换行符号(changelog 1.17)
真实场景里怎么用
全项目搜一个关键字
是什么:在目录查找,指定目录后递归搜索其中所有文件。解决什么问题:不用逐文件 grep,也不用把整个工程拖进 IDE。怎么打开:"查找"菜单 → "在目录查找"。
窗口里可以设文件类型(比如*.cpp,*.h)、勾选全词匹配、匹配大小写,也可以切到正则表达式;选项里有跳过子目录、跳过隐藏文件、跳过超过指定大小的文件。结果在底部面板按文件分组,双击跳过去。截图里是搜 "void",889 处命中分布在 101 个文件,结果直接列出。
编辑 Qt 翻译文件
Notepad-- 本身就是 Qt 开发的,仓库里就有 realcompare_zh.ts 这类翻译文件。打开 .ts 文件时 XML 语法高亮自动生效,message/source/translation 结构分色显示,哪条翻译没做完一眼扫到。顺手的用法:你要给 Qt 项目做中文本地化,用它直接编辑 .ts,不用外接翻译工具。
批量处理重复行的行编辑
任务比如"给 300 行每行末尾加分号"。"编辑"菜单下有"行编辑"子菜单,包含复制当前行、删除重复行、合并行、上移/下移行、升序/降序排列文本等操作,不用写脚本。配合列编辑(区块选择),可以跨多行同时插入或删除同一段内容。
打开大文件不卡死
changelog 1.22 起"提供大文本、超大文本打开两种方式",打开大文件会弹选择框让你选打开方式(对应源码 src/bigfilemessage.cpp),超大文本也尽量显示行号。看大日志时先关掉语法高亮再打开,速度差别明显。软件会自动检测二进制还是文本文件(changelog 1.14),拿不准的二进制文件不会当普通文本硬开。
查找与替换是独立窗口,可以停靠在编辑器旁边。它支持"替换当前文件"和"在文件中替换"两种粒度;选中文本再触发替换,选中内容会自动填入查找框(changelog 1.21.1)。批量替换时建议先只做查找、确认命中数,再逐文件替换,别直接全部替换。
横向对比:它能替换谁
| Notepad-- | Notepad++ | VS Code | |
|---|---|---|---|
| 平台 | Windows/Linux/macOS,明确支持 UOS | 仅 Windows | 全平台 |
| 底层 | Qt5 + Scintilla,原生窗口 | Win32 + Scintilla | Electron + Node.js |
| 在目录查找/批量替换 | 内置 | 内置 | 内置 |
| 插件生态 | 早期,官方带 1 个示例插件 | 成熟 | 非常丰富 |
局限说在前面:插件生态是最大短板,仓库里只有 helloworld 示例插件和一份开发说明文档;项目是单人规模,Issue 响应速度取决于作者排期。如果你依赖 VS Code 的大量扩展,这里只能靠内置功能。
上手技巧
- 快捷键可以统一管理、修改甚至取消,在"设置 → 快捷键"里操作(changelog 1.21.1)
- 打开多个文件用多标签管理,窗口标题会记住上次关闭时的标签页(changelog 1.21)
- 内置文件对比支持并排视图,最近做过的对比在"最近对比"菜单里直接找
- 要看或改二进制文件,用十六进制编辑视图(源码 src/scintillahexeditview.cpp)
- 长行搜索结果会做截断显示,避免结果框卡住(changelog 1.20)
常见问题
问:支持 macOS 吗?答:支持,仓库内有 macOS 图标资源和三个平台的运行截图,changelog 记录了 Win/mac/UOS 各平台的发布。
问:语法高亮支持多少种语言?答:按源码里 qscilexer 文件统计约 48 种,含 C/C++/C#/Java/Python/Go/Rust/SQL/HTML/CSS/Markdown/YAML/NSIS 等。
问:能导入 Notepad++ 的设置吗?答:目前不支持,快捷键、主题需要手动重新配置。
问:现在是什么版本,更新频繁吗?答:CMake 项目版本号 1.22,changelog 最新记录到 V1.23(2023-02),最新版本以项目 Gitee 发布页为准。
适合谁、下一步做什么
适合:在 UOS/Linux 环境日常编辑代码文件的开发者,Mac 上想要 Notepad++ 式轻量工具的写作者,以及需要整库搜索和批量替换的人。不适合:需要调试、LSP、重构的完整 IDE 用户,和依赖大量插件扩展的用户。
下一步:去项目发布页下载预编译包,拿一个自己机器的项目目录试一遍"在目录查找"和批量替换;想参与开发就按上面的命令克隆源码编译,仓库是 GPL v3 开源的,可直接提交 Issue 或反馈问题。
【免费下载链接】notepad--一个支持windows/linux/mac的文本编辑器,目标是做中国人自己的编辑器,来自中国。项目地址: https://gitcode.com/GitHub_Trending/no/notepad--
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考