编辑器汇总:Neovim、Helix、Vim、LazyVim、Kakoune、nb、Lite XL

概述

在整理笔记软件时,意识到笔记解决方案(工具软件)最基础功能是编辑,一款好用好看趁手的编辑器能很大程度上提高知识整理效率。另一方面,有编辑功能之后,就拥有最基础的笔记整理功能,编辑和笔记整理两者之间的界限好像也不大。

本文汇总的开源或闭源编辑器如下:

  • 闭源:
  • 开源:Neovim、Helix、Kakoune、nb、Lite XL

Neovim

官网,开源(GitHub,93.6K Star,6.4K Fork)。

不仅仅是另一个Vim分支,而是一次彻底的架构重构,在保持向后兼容性的同时解决原始代码库的根本性限制。项目核心理念围绕四个关键原则:

  • 通过更清晰的代码组织和现代开发实践简化维护
  • 分布式开发使多个开发者能同时在不同的子系统上工作
  • 通过强大的API系统实现高级UI能力而无需修改核心代码
  • 最大可扩展性支持多语言插件和远程执行

架构采用模块化设计,将关注点分离到不同的子系统中:

如上图,三个核心组件

  • 事件驱动:事件循环系统,负责处理所有异步操作,包括用户输入、作业控制和插件通信,用于实现非阻塞操作和响应式用户体验;
  • API系统:提供全面API,允许外部程序和插件以编程方式与编辑器交互,是现代GUI实现和语言服务器集成的基础;
  • MessagePack-RPC:Neovim与外部进程之间的通信使用MessagePack-RPC,为插件通信提供快速、高效的二进制协议。

关键特性

  • 多语言API支持:包括C/C++、Python、JS/Node.js、Lua、Rust、Go等,这使开发者能够使用自己偏好的语言编写插件,而不必局限于Vimscript;
  • 嵌入式终端模拟器:内置的终端模拟器允许直接在编辑器中运行shell命令,实现强大的基于终端的工作流而无需离开Neovim;
  • 异步作业控制:支持异步作业执行,防止编辑器在长时间运行的操作中阻塞。这对于运行代码检查、编译或测试任务特别有用;
  • 现代GUI架构:通过API系统,无需修改核心编辑器即可实现复杂的GUI实现。流行GUI客户端如Neovide、Goneovim和nvim-qt展示了这一能力;
  • XDG基础目录支持:遵循XDG基础目录规范,将配置文件放置在标准位置如~/.config/nvim/,而不是杂乱地放在主目录中;
  • 构建系统与开发:使用CMake作为其主要构建系统,提供跨平台支持和依赖管理。构建过程非常直接:
c 复制代码
make CMAKE_BUILD_TYPE=RelWithDebInfo
sudo make install

Helix

官网,开源(GitHub,40.6K Star,3.1K Fork)基于Rust、受Kakoune和Neovim启发的后现代模态文本编辑器。采用Vim风格的模态编辑,内置Language Server Protocol(LSP)支持,提供智能补全、语法检查等功能,让你的代码更加规范、高效;基于Tree-sitter的语法高亮,让代码更加清晰易读。

优势:

  • 模态编辑,效率至上:借鉴Vim的模态编辑模式,让你在不同模式间快速切换,高效完成各种编辑任务;
  • 多重选择,批量操作:支持多重选择,可以同时编辑多个位置的代码,大幅提升效率;
  • 内置LSP支持,智能编码:无需额外配置,即可享受智能补全、语法检查等LSP提供的强大功能;
  • Tree-sitter语法高亮,清晰易读:提供更准确、更美观的代码显示效果;
  • 开箱即用,无需繁琐配置:告别复杂配置过程,默认提供良好的使用体验。

Vim

官网,开源(GitHub,39.2K Star,5.9K Fork)。无需多言,鼎鼎大名的编辑器,参考Vim小技巧

围绕着Vim有很庞大的生态:

  • vimrc:GitHub,31.5K Star,7.3K Fork;用于配置;
  • VimWiki:

VimWiki

官网,一款基于Vim编辑器的开源(GitHub,9.3K Star,640 Fork)个人Wiki工具,作为维基功能与Vim的无缝集成,可用于创建一个具有专用语法高亮功能的链接文本的文件网络,使知识管理变得自然高效。

功能:

  • 整理笔记和想法,采用结构化、相互关联的格式
  • 管理待办事项列表,具备进度跟踪功能
  • 编写文档,使用轻量级标记语法
  • 维护日记,包含日期化的条目
  • 将所有内容导出为HTML,便于分享或发布

典型工作流程:

开箱即用地支持多种语法格式:

  • VimWiki:默认,具有最佳支持的原生语法
  • Markdown:适合喜欢Markdown语法的用户
  • MediaWiki:对MediaWiki风格标记的基本支持

提供广泛且灵活定制配置选项:

  • 维基路径和位置
  • 语法偏好
  • 文件扩展名
  • 菜单和按键绑定等UI元素
  • HTML导出设置

优势:

  • Vim集成:不仅仅只是一个插件,更是Vim的原生扩展,使用其编辑功能、移动命令和模式特性;
  • 纯文本重点:您的知识存储在纯文本文件中,确保长期性、可移植性和版本控制友好性;
  • 灵活结构:虽然通过链接和组织提供结构,但它不强制执行严格的层次结构,让知识能够有机增长;
  • 导出功能:凭借内置的HTML导出功能,可轻松分享知识或将其发布为静态网站;
  • 可扩展性:该插件设计为可扩展,提供自定义链接处理器、转换器等的钩子。

MediaWiki

官网,开源(GitHub,4.8K Star,1.5K Fork)。

LazyVim

官网,开源(GitHub,23.5K Star,1.7K Fork)。

一个现代化的Neovim发行版,能将编辑器转变为功能齐全的IDE,同时保持Neovim开发者所喜爱的速度和灵活性。基于强大的lazy.nvim插件管理器构建,LazyVim在开箱即用功能和深度定制能力之间实现完美平衡。

优势:

  • IDE体验:通过智能代码补全、语法高亮、调试等功能,将Neovim转变为完整的开发环境;
  • 轻松定制:利用lazy.nvim强大的插件管理系统,轻松添加、删除或配置插件;
  • 极致性能:通过懒加载和高效的资源管理,针对速度进行优化;
  • 合理默认值:遵循现代Neovim最佳实践,预配置选项、自动命令和键盘映射;
  • 丰富插件生态:附带精心挑选、预配置且可立即使用的插件。

采用模块化架构,分离关注点,使定制变得直观:

如上图,三个核心模块:配置、插件、工具。

配置系统被组织为逻辑模块,在启动时自动加载:

组件 用途 位置
选项 全局Neovim设置和偏好 lua/lazyvim/config/options.lua
键盘映射 默认键盘映射和快捷键 lua/lazyvim/config/keymaps.lua
自动命令 自动命令触发器和事件 lua/lazyvim/config/autocmds.lua

插件分类

类别 描述 关键文件
编辑器 核心编辑增强功能和工具 plugins/editor.lua
编码 语言无关的开发工具 plugins/coding.lua
LSP 语言服务器协议集成 plugins/lsp/
UI 可视化界面和主题 plugins/ui.lua,plugins/colorscheme.lua
语言 特定语言支持包 plugins/extras/lang/

工具:LSP、TreeSitter、格式化。

lazy.nvim

官网,开源(GitHub,19.2K Star,498 Fork),

Kakoune

官网,开源(GitHub,10.5K Star,752 Fork),

nb

开源(GitHub,7.7K Star,234 Fork),官方文档,用最简单的工具解决最复杂的信息管理问题。摒弃图形界面的冗余,回归文本与命令的高效本质,通过精巧设计覆盖从笔记到出版的完整知识工作流,一款优质的知识管理利器。

融合笔记管理、书签归档、知识库构建甚至简易博客发布等功能,全部通过命令行操作实现。其核心目标是:

  • 无依赖:纯Shell脚本编写,无需安装额外运行时;
  • 跨平台:支持macOS、Linux及Windows(通过WSL);
  • 格式中立:支持Markdown、Org模式、LaTeX等纯文本格式,兼容任意编辑器(Vim、VS Code等)。

核心功能:

  1. 笔记与知识管理

    • 快速记录:一条命令即可创建/编辑笔记:nb add "会议记录" --content "项目里程碑确定于下周"
    • 分类与标签:通过目录层级和#tag灵活组织内容;
    • 全文检索:支持关键词过滤与正则搜索,如nb search API设计。
  2. 书签与网页归档

    • 保存链接并自动抓取标题和内容摘要:nb https://github.com/xwmx/nb
    • 支持离线阅读,内容以Markdown存储,便于二次加工。
  3. 加密与隐私保护:敏感笔记可通过nb encrypt进行AES-256加密,密钥由用户保管,无云端泄露风险;

  4. Git版本控制与同步:自动初始化Git仓库,所有变更可追溯。一键同步至GitHub/GitLab,实现多设备间无缝协作;

  5. Pandoc文档转换:内置Pandoc集成,支持将笔记导出为PDF、HTML或Word格式:
    nb export 123 --format pdf

  6. 轻量级博客发布:通过nb browse启动本地服务器,将笔记实时渲染为网页,快速搭建个人知识门户。

安装

bash 复制代码
npm install -g nb.sh
sudo "$(which nb)" completions install # 安装自动补全
# 或
curl -L https://raw.github.com/xwmx/nb/master/nb -o /usr/local/bin/nb &&
chmod +x /usr/local/bin/nb &&
nb completions install

安装以下工具可增强功能体验:

  • bat:更好的文件查看
  • pandoc:格式转换
  • ripgrep:快速搜索
  • w3m:终端网页浏览

在Ubuntu/WSL上可一键安装:sudo nb env install

Lite XL

官网,一款开源(GitHub,5.7K Star,277 Fork)、简洁、轻量级、高性能、高度可定制化的文本编辑器。在线体验

功能特性:

  • 跨平台:提供Windows、Linux、MacOS安装程序,支持Android、浏览器,并且适配高DPI/Retina显示;
  • 轻量级:执行文件小于5MB,占用资源极少,支持从桌面系统到单片机等各种平台;启动速度快、响应灵敏;
  • 功能强大:提供现代编辑器的各种功能,包括自动补全、多行编辑、分割面板、快捷键等;
  • 插件系统:通过插件系统提供更多功能,例如语法高亮、LSP、自动保存、IDE、内置终端、版本控制集成等;
  • 可配置:支持通过Lua文件配置主题、颜色、编辑器等;
  • 扩展开发:开发人员可以通过编写自定义的插件进行功能扩展。

参考

相关推荐
小小小CTFER12 小时前
[理论题] 2025 年 “技耀泉城” 海右技能人才大赛网络安全知识竞赛题目(三)
1024程序员节
JosieBook12 小时前
【数据库】KingbaseES数据库:首个多院区异构多活容灾架构,浙人医创新开新篇
1024程序员节
木易 士心12 小时前
软考数据库系统工程师知识点详解(高频考点与备考建议)
数据库·1024程序员节
晟盾科技12 小时前
影刀:自动化测试网页应用
1024程序员节
JohnnyDeng9412 小时前
ArkTs-Android 与 ArkTS (HarmonyOS) 存储目录全面对比
android·harmonyos·arkts·1024程序员节
BUG_Jia12 小时前
如何用 HTML 生成 PC 端软件
前端·javascript·html·桌面应用·1024程序员节
木易 士心12 小时前
CSS 样式用法大全
前端·css·1024程序员节
皓月Code12 小时前
第二章、全局配置项目主题色(主题切换+跟随系统)
javascript·css·react.js·1024程序员节
wanhengidc12 小时前
云手机是一种应用软件吗?
运维·服务器·网络·游戏·智能手机·1024程序员节