news 2026/8/21 19:13:31

10分钟快速上手ad编辑器:从源码编译安装到打开第一个文件

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
10分钟快速上手ad编辑器:从源码编译安装到打开第一个文件

10分钟快速上手ad编辑器:从源码编译安装到打开第一个文件

【免费下载链接】adan adaptable text editor项目地址: https://gitcode.com/gh_mirrors/ad5/ad

想体验一款融合了 vim 模态编辑与 Plan 9 acme 编辑器理念的全新终端文本编辑器吗?本文为你带来ad编辑器的快速上手教程,从源码编译安装开始,一步步带你完成环境准备、安装配置,最终成功打开你的第一个文件。ad(发音 A.D.)是一个用 Rust 编写的"可适应文本编辑器"(an adaptable text editor),它以文本为核心,让你既能编辑文本,也能直接执行文本,整个上手过程只需 10 分钟!

ad编辑器是什么?为什么值得一试

ad 是一款运行在终端里的现代文本编辑器,设计灵感来自三个方向:

  • vim / kakoune 的模态编辑:NORMAL、INSERT、COMMAND 等模式切换,编辑效率极高
  • Plan 9 acme / sam 的文本哲学:文本不只是内容,还可以被"加载"(Load)和"执行"(Execute)
  • Emacs 的 minibuffer 概念:基于迷你缓冲区的自定义模式

简单说,ad 的核心理念是做一个"整合型"开发环境(integratING),而不是"被整合"的开发环境(integratED):它不把功能都塞进编辑器,而是让你现有的命令行工具直接与编辑器状态交互。此外,ad 内置了自研的正则引擎(src/regex/)、基于 tree-sitter 的语法高亮(src/syntax/)、以及 LSP 客户端(src/lsp/),麻雀虽小五脏俱全。

第一步:准备 Rust 编译环境

由于 ad 通过源码编译安装,你需要先准备好 Rust 工具链。打开终端执行:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

安装完成后,重新加载 shell 环境变量并验证版本:

source "$HOME/.cargo/env" cargo --version

看到类似cargo 1.7x.x的输出,说明 Rust 环境就绪。另外建议安装fd(用于文件查找)等常用命令行工具,ad 默认用它来执行"查找文件"命令。

第二步:10分钟源码编译安装三步走

获取 ad 源码并完成编译安装,只需三个命令:

git clone https://gitcode.com/gh_mirrors/ad5/ad cd ad cargo install --path .

cargo install --path .会编译整个工作区并将ad可执行文件安装到~/.cargo/bin,由于项目包含多个 crate(如 ninep、ad_event 等),首次编译可能需要几分钟,耐心等待即可。

编译完成后,验证安装是否成功:

ad --version

第三步:初始化配置文件

ad 默认不会自带配置文件,需要运行项目自带的初始化任务,把默认配置、配色方案、plumbing 规则和辅助脚本复制到~/.ad目录:

cargo xtask setup-dotfiles

这一步会创建~/.ad目录并复制以下内容:

  • config.toml:主配置文件
  • plumbing.rules:文本路由规则
  • colorschemes/:默认明暗两套配色
  • syntax/:语法高亮定义
  • lib/bin/:辅助脚本与函数库

如果你想了解这个任务具体做了什么,可以查看源码xtask/src/setup.rs。确认无误后再运行它,这是最稳妥的最快配置方法

第四步:打开你的第一个文件

一切就绪,现在打开 ad 并读取一个文件:

ad

不带参数启动会显示欢迎界面。直接打开文件也很简单:

ad README.md

你也可以一次性打开多个文件,用空格分隔即可。启动后你会看到经典的模态编辑器界面:底部左侧显示当前模式(默认 NORMAL),左侧有行号,支持语法高亮。

想查看内置帮助?在 NORMAL 模式下输入:help回车即可打开完整的帮助文档,这是新手了解 ad 的最佳入口。

第五步:掌握 ad 的基本操作

ad 有五种编辑模式,和 vim 一样通过按键切换:

模式作用进入方式
NORMAL选择与操作文本默认模式,按Esc返回
INSERT增删文本ia
COMMAND执行内置命令:
RUN执行外部命令!
EDIT应用结构化正则xX

与 vim 的"动词-名词"不同,ad 在 NORMAL 模式采用 kakoune 风格的"名词-动词"操作:先选中文本,再执行操作。键位定义在src/mode/normal.rs中,方便你对照学习。

几个立刻能用的操作:

  • 保存文件:NORMAL 模式下输入:w回车
  • 退出编辑器:输入:q回车
  • 加载文本:把光标放在文件路径上按回车,即可打开该文件
  • 执行文本:把光标放在命令上按@,ad 会运行它并把输出放到$dir/+output缓冲区

最后这种"文本即命令"的玩法正是 ad 最有魅力的地方——它复刻了 acme 编辑器的核心交互。

第六步:个性化配置你的 ad编辑器

ad 的配置文件位于~/.ad/config.toml(主配置见仓库中的data/config.toml),采用 TOML 格式。你可以在这里调整:

  • 编辑器行为:是否展开 Tab、Tab 宽度、状态栏消息停留时间等
  • 配色方案:通过[colorscheme]配置前景色、背景色、语法高亮颜色,也可直接切换colorschemes/中的明暗主题
  • 快捷键绑定[keys.normal]中可把按键映射到外部程序,例如"<space> w /" = { run = "new-column" }用于分栏
  • 文件类型与 LSP[filetypes.rust]等段落可为每种语言配置扩展名识别和语言服务器

修改保存后重启 ad 即可生效,也可以使用-c参数指定自定义配置文件:

ad -c ~/my-ad-config.toml

进阶玩法:ad 的隐藏实力

上手之后,你还可以探索这些高级特性:

  • 结构正则表达式:ad 内置了 sam 编辑语言风格的编辑命令(src/exec/),支持对选区执行结构化正则替换
  • 9p 文件系统接口:ad 通过自研的 ninep crate(crates/ninep/)把编辑器状态暴露为虚拟文件系统(src/fsys/),外部程序可以直接读写编辑器内部数据——这是 acme 风格扩展的精髓
  • 命令行脚本模式:无需打开图形界面,直接对文件执行编辑脚本:
ad -e 'x/foo/ s/foo/bar/g' myfile.txt

常见问题与建议

  • 找不到fd命令:ad 默认用fd --hidden查找文件,可通过配置文件中的find_command改为find等其他工具
  • 编译失败:请确认 Rust 版本较新(edition 2024 需要较新的 toolchain),必要时执行rustup update
  • 适合当主力编辑器吗?项目仍在快速迭代中,官方建议先作为尝鲜和实验用途,正式工作请务必保存好备份

现在你已经成功从源码编译安装 ad 并打开了第一个文件!下一步可以打开docs/tour/目录,在 ad 内运行自带的交互式导览,或使用:help深入探索。祝你在 ad 中发现更多乐趣!

【免费下载链接】adan adaptable text editor项目地址: https://gitcode.com/gh_mirrors/ad5/ad

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

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/21 19:13:18

从手搓到乐高:构建标准化Agent工作流框架的核心原理与实践

1. 从“手搓”到“乐高”&#xff1a;为什么我们需要一个标准化的Agent工作流框架最近和几个做AI应用落地的朋友聊天&#xff0c;大家不约而同地提到了同一个痛点&#xff1a;Agent&#xff08;智能体&#xff09;的开发&#xff0c;太“手工艺”了。我们常常花费大量时间&…

作者头像 李华
网站建设 2026/8/21 19:12:30

Java大厂面试技术栈深度解析与实战指南

1. 互联网大厂Java技术栈面试全景解析 2023年Java生态圈正在经历着Spring Boot 3.x普及和微服务架构深化的双重变革。作为常年参与大厂技术面试的面试官&#xff0c;我发现近两年候选人的技术栈呈现明显的"基础深度不足而框架广度过剩"的特点。本文将拆解大厂Java面试…

作者头像 李华
网站建设 2026/8/21 19:11:38

用AbletonOSC控制播放与节拍:速度、循环和Cue点的10个实用命令

用AbletonOSC控制播放与节拍&#xff1a;速度、循环和Cue点的10个实用命令 【免费下载链接】AbletonOSC Control Ableton Live via Open Sound Control (OSC) 项目地址: https://gitcode.com/gh_mirrors/ab/AbletonOSC AbletonOSC 是一款通过 Open Sound Control&#x…

作者头像 李华
网站建设 2026/8/21 19:08:40

鸿蒙PC本地部署DeepSeek大模型:从模型转换到推理引擎的完整实践指南

最近在尝试把 DeepSeek 的模型部署到鸿蒙 PC 上&#xff0c;本以为是个简单的环境适配问题&#xff0c;结果发现从模型格式转换到推理框架选择&#xff0c;再到系统兼容性&#xff0c;每一步都有意料之外的坑。很多教程只告诉你“怎么跑通”&#xff0c;但真正要稳定运行、长期…

作者头像 李华