跳到主要内容

终端功能

本页覆盖终端的基础操作、命令历史与建议、可选增强项、SSH 辅助能力和会话录制。

基础操作​

搜索、复制与右键菜单​

终端右键菜单可直接执行这些高频操作:

  • 复制 / 粘贴
  • 粘贴选中的文本
  • 查找文本
  • 在线搜索选中文本
  • 按 provider 翻译选中文本
  • 交给 AI Assistant 解释或分析
  • 清屏 / 全部清除
  • 全选

在 设置 → 交互 中,你还可以调整:

  • 选中即复制
  • 右键粘贴
  • 单词分隔符
  • 默认字符编码

回滚缓冲区、字体与缩放​

  • 回滚缓冲区默认保留 5000 行 输出,可调范围 100 到 100000 行
  • 可自定义字体族、字号、普通字重、粗体字重、光标样式与闪烁
  • 可通过菜单或快捷键放大、缩小、重置终端缩放;终端根节点会协调缩放,避免嵌套工作区重复处理
  • 硬件加速默认开启,排查渲染或驱动问题时可在 设置 → 终端 中关闭

粘贴与输入兼容​

  • 多行粘贴提示 默认开启。粘贴多行文本时先弹出处理窗口,可选择直接粘贴、按行发送或取消
  • 终端可以按设置处理图片路径粘贴,把截图或本地图片路径快速带入命令行工具
  • 允许 OSC 52 写入剪贴板 控制远程应用能否通过终端输出写入本机剪贴板。它让远端的 tmux、vim 等工具可以直接复制到本地,代价是远端进程获得了写本机剪贴板的能力
  • 终端默认支持系统原生输入法的组合文本与提交,无需开启兼容选项
  • macOS 下如需让 Option+f 这类组合发送 ESC + 按键而不是输入 ƒ,在 设置 → 交互 中开启 将 Option 作为 Meta/Alt 键
  • 在 vim、less、top 等交互式程序中,NyaTerm 会抑制命令建议,避免历史建议覆盖程序自己的输入体验

命令历史与建议​

NyaTerm 会为会话工作流提供两类辅助:

命令历史​

  • 自动记录终端输入过的命令
  • 支持模糊检索
  • 可从右侧的 命令历史 面板回看历史输入
  • 搜索栏会保留近期查询,便于重复查找同一类日志或错误

终端查找​

Ctrl / Cmd + Shift + F 会打开终端查找框。查找框支持:

  • 上一个 / 下一个结果跳转
  • 当前结果与总结果数提示
  • 无结果、搜索中和正则错误反馈
  • 重复使用近期查询,不必每次重新输入完整关键词

输入建议​

输入时会基于历史命令给出建议。

历史里如果有很多超长命令、一次性脚本或噪音条目,可以在 设置 → 交互 中过滤:

  • 是否启用命令建议
  • 建议参与匹配的最小历史命令长度
  • 建议参与匹配的最大历史命令长度

需要注意:

  • 这两个长度过滤只影响历史命令建议
  • 它们不会影响右侧命令历史面板中的已有记录
  • 它们也不会影响快捷命令本身的可用性

从终端唤起 AI​

终端右键菜单提供这些 AI 入口,都会自动带上当前会话的上下文:

  • 生成命令 — 描述目标,由 AI 生成命令卡片
  • 解释最近输出 — 把当前会话最近的终端输出发给 AI,不必手动复制日志
  • 解释选中内容 — 解释选中的日志、报错或片段
  • 分析错误 — 把错误上下文交给 AI 生成修复建议
  • 修复选中内容 — 从选中报错推导下一步命令

Agent 模式执行命令时,输出摘要会以内联片段显示在终端附近,行数由 设置 → AI → Agent Settings 的 Terminal Output Lines 控制,设为 0 关闭。

模式、命令卡片、风险控制、provider 与模型配置见 AI 助手。

命令风险评估​

手动输入命令时也会走同一套风险评估。命中规则后弹出提示,显示风险等级、命中原因和更安全的替代命令,你可以继续执行或改用替代命令。

需要在 设置 → AI 中开启 命令风险检查。四档分类和判定依据见 AI 助手 → 风险等级怎么定。

可选终端增强项​

以下能力默认全部关闭,按需开启。

行号与时间戳 gutter​

在 设置 → 终端 中可分别开启:

  • 显示行号
  • 显示时间戳

开启后,终端左侧会出现 gutter,用于辅助阅读长日志、命令输出或回放录制内容。

动作链接​

动作链接默认关闭,开启后可识别并点击常见文本模式,包括:

  • IPv4 地址,例如 192.168.1.10
  • host:port,例如 db.internal:5432
  • 压缩包文件名,例如 backup.tar.gz

注意:

  • 需要先在 设置 → 终端 中开启 动作链接
  • 打开链接时需要使用 Ctrl / Cmd + 点击,避免和普通选中操作冲突
  • 三类 matcher 可以分别启用或关闭

终端行斑马纹​

终端行斑马纹 默认开启。开启后高亮 shell 输入区域和鼠标点击的目标行,便于在密集输出里定位当前输入位置。

开启后可使用 按行显示 子开关(默认关闭),让输入和输出按屏幕显示行交替显示浅底色,替代输入区域底色。长文本自动换行后,每条显示行分别交替;关闭自动换行时,每条完整行交替。鼠标点击的目标行仍优先高亮。关闭主开关会保留子开关选择。

低延迟模式​

低延迟模式 默认关闭。开启后临时跳过命令建议、关键词高亮和动作链接的富化处理,把终端输入和滚动保持在最短路径上。用于高吞吐输出或远端延迟较高的场景,代价是本页其他增强项在开启期间不生效。

关键词高亮​

关键词高亮同样默认关闭。启用后,NyaTerm 会先应用内置规则,再叠加你的自定义规则。

内置规则覆盖的内容不只限于错误关键字,还包括:

  • error / warn / success / info / debug 等常见状态词
  • 日期时间
  • 数字、大小、持续时间
  • 地址、URL、UUID、版本号等结构化文本
  • 提示符($ / #)

你也可以自定义规则:

  • 自定义规则名称
  • 分别设置深色 / 浅色主题颜色
  • 每行填写一个匹配模式
  • 可选择是否跨折行继续匹配

导入自定义高亮规则​

在 设置 → 终端 → 自定义规则 中点击 导入,可以从 JSON 文件导入自定义高亮规则。

导入会和现有规则合并,不会清空已有列表:

  • 相同 id 的规则会被更新
  • 不存在的 id 会追加为新规则
  • id 为空时会自动生成
  • name 为空或没有有效 patterns 的规则会被跳过

推荐的 JSON 结构如下,也兼容直接使用规则数组作为文件顶层:

{
"keyword_highlights": [
{
"id": "deploy-errors",
"name": "Deploy Errors",
"patterns": ["deploy failed", "rollback required", "fatal"],
"color_dark": "#ff7b72",
"color_light": "#cf222e",
"enabled": true
}
]
}

大输出保护​

当某个会话输出量过大时,NyaTerm 会临时进入保护模式,优先保证终端可交互性。

在这个阶段,应用会暂时抑制部分高开销装饰能力,并提示已经跳过的排队字符数;待输出压力回落后再恢复正常显示。这个机制主要用于日志洪峰或持续刷屏的场景。

大输出处理​

终端输出会经过批量处理后再更新画面。在 tail -f、编译日志、压测输出等高吞吐场景下,这有助于保留输入响应、滚动和搜索体验;这是默认行为,不需要手动开启。

SSH 相关辅助能力​

Keep-Alive​

对 SSH 会话,可以在 设置 → 终端 中配置 Keep-Alive 间隔:

  • 默认值为 30 秒,可调范围 0 到 600 秒
  • 设为 0 表示关闭
  • 用于降低长时间空闲连接被远端回收的概率

同一分组下还有 Keep-alive 模式,可选 禁用、兼容 和 严格。当前 SSH 运行时对 严格 使用与 兼容 相同的传输行为,该选项只保留配置意图。

远程主机监控​

SSH 会话可以在右侧打开五个监控面板:资源监控、NVIDIA GPU 监控、Ascend NPU 监控、进程管理和 Docker 管理。它们各自的开关、默认值、轮询间隔和具体能力见 远程主机监控。

翻译与在线搜索​

在终端中选中文本后,你可以直接通过右键菜单:

  • 使用自定义搜索引擎做在线搜索
  • 使用已启用的翻译 provider 打开翻译对话框

搜索引擎​

在 设置 → 搜索 中,你可以维护自定义搜索引擎列表,为它们设置:

  • 名称
  • URL 模板(使用 %s 占位)
  • 图标
  • 是否显示在搜索菜单中

翻译 provider​

Google 和 Microsoft 开箱可用;DeepL、百度、阿里 和 有道 需要先在 设置 → 翻译 中填写凭据才会出现在菜单里。完整说明见 翻译功能。

会话录制​

Ctrl / Cmd + Shift + R 开始或停止录制当前会话,把终端输出写成日志文件。

录制文件默认保存到系统下载目录,也可以在 设置 → 传输 中为录制单独指定 录制保存路径,把留档文件和普通下载分开。

同一分组下还有两个录制选项:

  • 自动开始录制 — 会话一打开就录制,不必手动触发
  • 包含时间戳 — 在录制文稿中写入时间戳,便于把输出对应到实际时间

录制选项也可以配置在单个连接的表单里,把「生产堡垒机总是录制」这类策略绑定到连接本身,而不是每次打开会话后手动切换。