十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Notepad--:国产跨平台文本编辑器的终极之选

Notepad--:国产跨平台文本编辑器的终极之选 Notepad--国产跨平台文本编辑器的终极之选【免费下载链接】notepad--一个支持windows/linux/mac的文本编辑器目标是做中国人自己的编辑器来自中国。项目地址: https://gitcode.com/GitHub_Trending/no/notepad--需要同时维护 Windows、Mac 和 Linux 上文件的人多半都想要一个跨平台文本编辑器替代只能在 Windows 上跑的 Notepad还要打开 GBK、UTF-8 混存的中文文件不乱码。Notepad-- 就是为此而生的国产编辑器三大平台界面操作完全一致还内置了整目录批量查找替换和文件对比引擎这是它和同类软件拉开差距的地方。 装起来跑起来三个平台一套操作源码基于 Qt5 开发仓库根目录同时提供 CMakeLists.txt 和 src/RealCompare.pro 两套工程文件装好 Qt5 开发环境后任选其一即可。macOS 和 Linux打开工程文件就能编用 Qt Creator 打开src/RealCompare.pro选 Desktop 套件编译运行或者用 CMake 走命令行构建产物就是可执行的编辑器本体。项目依赖的语法高亮组件 QScintilla 已经内置在 src/qscint/ 目录中不需要额外安装。![Notepad--跨平台文本编辑器在macOS上的多标签编辑界面](https://raw.gitcode.com/GitHub_Trending/no/notepad--/raw/4510896f716e71db9f4b25ed8559b9c39a4f23d4/pngshow/macos/2023-10-05 18.04.17.png?utm_sourcegitcode_repo_files)图1Notepad-- 在 macOS 上的主界面左侧目录列表 多标签页右侧正在编辑 C 源码Windows 与 Arch Linux直接拿成品Windows 用户可直接从仓库的发布记录下载预编译安装包。Arch 系 Linux 用户则可以在 AUR 里找到对应包一行命令装好yay -S notepad---git 跨文件查找一百个文件里一网打尽单文件查找替换任何编辑器都有Notepad-- 真正省事的是把查找范围放大到整个目录。整目录查找打开查找窗口切到在目录查找页签指定目标目录填上查找词还可以限定文件类型比如*.cpp;*.ui、只查 20MB 以下的小文件、跳过隐藏文件和子目录。点全部查找后结果会按文件分组列在底部面板点击任意一条直接跳到对应行。做数据清洗、批量改文案、全局搜一个 API 名这类活一次就能收掉实现见 src/batchfindreplace.cpp 和 src/findwin.cpp。图2批量查找在 161 个文件中命中 989 处结果按文件分组可逐条跳转行级批量操作排序、去重、移行处理带换行结构的文本比如日志、清单文件时行编辑菜单能帮你省掉写脚本的功夫删除重复行整份文件里只保留首次出现的内容排序文本行支持区分或不区分大小写的升序、降序排列移入移出空行快速清理或插入行之间的空白图3行编辑子菜单复制、删除重复行、合并行、排序等行级操作一次到位⚖️ 对比文件、对比目录RealCompare 的对比引擎Notepad-- 的对比能力继承自同作者的 RealCompare 项目主工程文件至今还叫 src/RealCompare.pro。它对中文用户的意义是版本合并、代码评审时不用再装第二套工具。文本、二进制、目录三种姿势文本逐行对比左右两栏并排增删改的行用不同底色标出行号一一对应支持空行忽略大小写等宽松规则二进制十六进制对比配合 src/hexcmprangewin.cpp 的十六进制范围窗口看补丁前后到底改了哪几个字节目录结构对比两个文件夹整棵扫缺文件、多文件、内容不一致的分类列出对比策略的抽象实现在 src/StrategyCompare.h 和 src/CmpareMode.cpp想自己研究算法可以从这里读起。 编码、乱码和换行符中文用户最常踩的坑跨系统的中文文档乱码几乎只来自两个地方编码和换行符。Notepad-- 对这两处都做了默认兜底。打开文件时src/Encode.cpp 里的DetectEncode会先读 BOM再对无 BOM 的内容做启发式判断自动在 UTF-8、UTF-16 和 GB18030 之间选一个判断错了可以手动指定。窗口右下角的状态栏随时显示当前编码比如GB18030(简体中文)和换行形式Windows(CR LF)或Unix(LF)保存前一眼就能确认文件长什么样。乱码了怎么办依次做三步基本能解决编码菜单里手动切到文件真实编码重新加载确认没问题后转换为 UTF-8再保存编码转换逻辑在 src/encodeconvert.cpp跨平台协作的文件统一保存为UTF-8 带 BOMWindows 侧的记事本类软件识别率最高⚙️ 改成自己的样子主题、快捷键、插件十八套配色主题src/themes/ 目录下收了 Bespin、Monokai、Twilight、Deep Black 等十八套语法配色每套按语言分文件存放。换主题不用翻代码设置界面里点一下即可深色环境下写代码更护眼。图4macOS 上多标签编辑翻译文件的场景菜单、标签、状态栏均为中文化界面快捷键和插件都开放了改快捷键自定义所有按键布局都可在设置里改管理逻辑见 src/shortcutkeymgr.cpp插件扩展src/nddpluginapi.cpp 定义了插件接口仓库里附了 src/plugin/helloworld/ 示例工程照抄一份就能写自己的功能插件项目现状与参与方式Notepad-- 采用 GPL v3 开源协议changelog.txt 从 V1.21 起逐版记录功能与修复版本节奏稳定。遇到 bug 或有需求直接在仓库提交 issue 即可仓库同时提供 编译说明.docx 和 插件编程开发说明.docx 两份上手文档想深入源码的读者从这两份开始读最顺。【免费下载链接】notepad--一个支持windows/linux/mac的文本编辑器目标是做中国人自己的编辑器来自中国。项目地址: https://gitcode.com/GitHub_Trending/no/notepad--创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表