1. 命令简介
jed 是一个基于 Slang 库开发的轻量级屏幕编辑器,主要用于编辑程序源代码。它支持语法高亮显示,并且能够模拟多种经典编辑器的操作模式,包括 Emacs、EDT、WordStar 和 Brief,具有高度可定制性与灵活性。jed 特别适合在纯终端环境下进行代码编写、脚本编辑与配置文件修改。
2. 语法格式
bash
运行
jed [选项]... [文件]...3. 常用选项及说明
表格
| 选项 | 说明 |
|---|---|
| -2 | 启动时分割窗口,显示上下两个编辑区 |
| -batch | 以批处理(非交互)模式运行,执行完操作后自动退出,适用于脚本自动化处理 |
| -f <函数> | 启动后立即执行指定的 Slang 函数 |
| -g <行号> | 打开文件后,光标直接跳转到指定行号 |
| -i <文件> | 启动时将指定文件内容读入到一个新缓冲区 |
| -n | 启动时不加载任何初始化文件(如 jed.rc、~/.jedrc) |
| -s <字符串> | 打开文件后立即向前搜索,定位到第一个匹配字符串的位置 |
参数说明
- 文件:指定一个或多个待编辑文件。若未指定文件,jed 将启动一个空编辑缓冲区。
4. 示例用法
4.1 基本编辑文件
使用 jed 打开 myscript.py 进行编辑:
bash
运行
jed myscript.py4.2 分割窗口编辑
以上下双编辑区模式启动,同时打开 main.c 和 header.h:
bash
运行
jed -2 main.c header.h可按 F10 调出菜单,或使用对应编辑器模式(如 Emacs)的快捷键切换窗口。
4.3 跳转到特定行
打开 config.ini 并直接定位到第 50 行:
bash
运行
jed -g 50 config.ini4.4 搜索并定位字符串
打开 source.js 并立即搜索function_name:
bash
运行
jed -s "function_name" source.js4.5 批处理模式自动化处理
以批处理模式将 input.txt 内容写入 output.txt 后自动退出:
bash
运行
jed -batch -f "write_buffer('output.txt')" -f quit input.txt5. 注意事项
按键冲突问题jed 模拟 Emacs 模式时,菜单快捷键(如 Alt+F 打开文件菜单)可能与标准 Emacs 按键冲突。可编辑
/usr/share/jed/lib/menus.slc,注释或修改相关unset/setkey配置;按 F10 可快速呼出 / 关闭菜单。配置文件加载顺序jed 按以下顺序加载配置,后加载的配置会覆盖前者:
- 系统全局配置:
/etc/jed.rc - 用户个人配置:
~/.jedrc - 通过
-f执行的 Slang 函数使用-n可跳过所有初始化文件。
- 系统全局配置:
编辑器模拟模式切换jed 默认可能为 Emacs 模拟模式,可在配置文件或运行后通过 Slang 命令切换为 edt、wordstar 等模式,以适配不同按键习惯。
扩展与定制jed 可通过 Slang 脚本语言深度扩展,核心函数库位于
/usr/share/jed/lib/*.sl。高级用户可编写自定义.sl脚本或修改site.sl实现个性化功能。