Notepad--:跨平台文本编辑器,文件对比与批量替换一步到位
2026/9/16 15:31:31 网站建设 项目流程

Notepad--:跨平台文本编辑器,文件对比与批量替换一步到位

【免费下载链接】notepad--一个支持windows/linux/mac的文本编辑器,目标是做中国人自己的编辑器,来自中国。项目地址: https://gitcode.com/GitHub_Trending/no/notepad--

打开一个 GBK 编码的老项目文件,屏幕上一片问号;或者要在上百个文件里改同一个变量名,只能逐个打开、逐个替换——这类重复劳动最能消耗一个下午。Notepad--(内部代号 Ndd)是一款由国内开发者用 Qt 编写的跨平台文本编辑器,主打三件事:在 Windows / Linux / macOS 上跑同一套代码、内置文件与目录对比、支持整目录的批量查找替换。它是 GPLv3 开源项目,定位是给信创 UOS、Linux、macOS 提供一支"国产可替代"的编辑笔,编辑核心基于 QScintilla(Scintilla 编辑引擎的 Qt 封装,和 Notepad++ 同源,支持代码折叠、语法高亮)。

📦 项目速览

  • 是什么:轻量级多标签文本编辑器,代码基于 Qt5 + QScintilla,单仓库同时构建三大平台(见 CMakeLists.txt)。
  • 解决什么:Notepad++ 系编辑器普遍只有 Windows 版,Notepad-- 补齐了 Linux 和 macOS,并额外做了目录级查找替换、二进制/十六进制对比这些"编辑器里的开发工具"。
  • 适合谁:需要在多系统间切换的开发者、信创环境部署人员、要处理 GBK/UTF-8 混杂编码的运维与老项目维护者。

🚀 获取与准备

最短路径:装好即用。

  • Windows:从仓库 Releases 下载 NSIS 安装包(打包配置在 cmake/nsis_package_config.cmake),双击安装即可。
  • Linux:可装 deb 包(打包逻辑见 cmake/deb_package_config.cmake),或源码编译,桌面项与图标已在 src/linux/usr/share/ 下备好。
  • macOS:下载对应架构(x86_64 / arm64)的构建包,拖入 Applications。

源码编译(任何平台通用,先装好 Qt5):

git clone https://gitcode.com/GitHub_Trending/no/notepad-- cd notepad-- cmake -B build -DCMAKE_BUILD_TYPE=Release cmake --build build -j$(nproc)

构建系统会自动把编辑核心 src/qscint/ 和示例插件 src/plugin/helloworld/ 一起编进来;Windows 下也可参考仓库根目录的win.bat/win.mk

首次启动按顺序做三件事:语言菜单里确认界面语言;编码菜单把"新建文档默认编码"设为 UTF-8;设置里挑一个主题和等宽字体(12–14pt)。做完这三步,默认配置基本就不用再动了。

🔧 能力拆解:三个高频场景

场景一:一个词要改遍整个项目

遇到:重构时改了个函数名,散落在几十个源文件里,逐个打开替换不现实。

操作

  1. 菜单"查找 → 在目录查找"(Ctrl+Shift+F)。
  2. 目标目录选项目根路径,查找目标填函数名,勾选"文件类型"并输入*.c;*.cpp;*.h过滤。
  3. 点"全部查找",底部结果面板会按文件分组列出每一处命中的行号;双击任意一行直接跳转。
  4. 确认无误后填入替换内容,点"在文件中替换"一次完成。

得到:全部命中数、文件清单和精确定位。支持普通/正则两种模式,可跳过隐藏文件和二进制文件,还能按大小过滤(跳过超过 20MB 的文件),大目录也不会卡死。

场景二:对比两个文件,看清谁改了什么

遇到:review 前想确认自己相对原版改了哪些行,或者要对比两个版本的配置文件。

操作

  1. 左右两个标签页各打开一个文件(拖拽进窗口即可),菜单"对比 → 比较当前文件"启动对比模式。
  2. 左右分栏显示差异:红色为左文件独有行,绿色为右文件独有行,黄色为内容被改动的行。
  3. F3/Shift+F3在差异块之间来回跳,差异多时不用肉眼找。
  4. 对比整个目录:菜单"对比 → 目录对比",选两个根目录,它会按文件名配对逐文件比较,二进制文件自动切到十六进制视图高亮字节差异。

得到:一份可视化的改动清单。对比规则可调(如忽略空行、按相似度对齐),规则窗口在src/filecmprulewin.*中。

场景三:中文乱码,先把编码读对

遇到:Linux 服务器导出的日志、老 Windows 项目里的中文注释,打开全是方块或乱码。

操作

  1. 看窗口右下角状态栏——它会显示当前编码和行尾类型(如Windows (CR LF)),先判断现状。
  2. 菜单"编码 → 以指定编码打开",试 GBK、UTF-8 BOM、UTF-16、Big5 中正确的那个,中文恢复即止。
  3. 修完内容后"编码 → 转为 UTF-8"再保存,把文件永久规范化。
  4. 一批文件要统一转换时,用"编码 → 批量转换",选中多个文件一次处理。

得到:文件内容不再二次损坏,且团队约定 UTF-8 后,跨平台(Windows GBK 习惯 ↔ Linux UTF-8 习惯)协作的乱码问题从根上消失。

🛠 进阶与定制

老用户会关心的四件事:

  • 换主题:src/themes/ 下有 Monokai、Deep Black、Obsidian、Bespin 等 16 套预设,每套都是逐语言的颜色配置(如Monokai/cpp.ini),换主题不用改代码。
  • 改快捷键:设置里的快捷键管理器可重绑所有常用操作,也能解除已设置的绑定。
  • 行级编辑:编辑菜单下的"行编辑"提供了复制当前行(Ctrl+D)、插入空行、上下移行、按行排序等文本处理,写脚本、整理列表时很顺手。
  • 写插件 / 自定义语言src/plugin/helloworld/是一个可编译运行的插件示例,对照 插件编程开发说明.docx 可实现 JSON 格式化之类的小工具;想支持冷门语言,用"语言扩展"功能按扩展名挂新语法,无需改源码。

🩺 排错速查

现象常见原因解法
中文显示乱码文件是 GBK/Big5 却按 UTF-8 解码编码菜单"以 GBK 打开",修完后转 UTF-8 保存
打开上百 MB 文件卡顿大文件同时加载语法高亮用"大文件只读模式"打开,关闭高亮、减少同开标签数
自定义插件不生效插件放错目录或与当前版本接口不符对照src/plugin/helloworld/的接口实现逐项核对,看日志报错
重启后上次的文件没了未启用会话恢复设置里开启关闭时记录标签页(功能自 V1.23 加入,见 changelog.txt)

资源地图

  • README.md / README_EN.md:项目定位、各平台运行截图、发布说明。
  • changelog.txt:逐版本功能与修复记录,找"某功能从哪个版本开始有"看这里。
  • CMakeLists.txt:构建入口,可确认依赖(Qt5 各组件)与插件开关PLUGIN_EN
  • 编译说明.docx / 插件编程开发说明.docx:中文编译与插件开发指引。
  • src/themes/:主题配色全集;src/qscint/:编辑内核与全部语言高亮器;src/plugin/helloworld/:插件最小示例。

把默认编码、常用主题和两三个快捷键调顺手之后,Notepad-- 就基本可以替代系统默认编辑器了——剩下的功能,用到哪块看哪块就行。

【免费下载链接】notepad--一个支持windows/linux/mac的文本编辑器,目标是做中国人自己的编辑器,来自中国。项目地址: https://gitcode.com/GitHub_Trending/no/notepad--

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询