首页
/ Tabby Settings 插件详解:基于 SettingsTabProvider 实现可插拔的分栏设置界面

Tabby Settings 插件详解:基于 SettingsTabProvider 实现可插拔的分栏设置界面

2026-09-04 20:12:44作者:袁立春Spencer

Tabby 的设置页是一个由多个插件共同贡献的"分栏式"界面:内置的窗口、快捷键、配置文件选项卡来自 tabby-settings,而 Shell、SSH、插件管理等选项卡则各自来自对应插件。本文以 tabby-settings/README.md 为骨架,完整覆盖其定义的使用 API 与注册方式,并结合仓库源码深入剖析 SettingsTabProvider 的每个字段如何被 设置页组件 消费,以及内置选项卡、快捷键直达、动态组件实例化等底层实现,帮助你在为自己的插件开发设置界面时真正做到"注册即可见、可排序、可快捷键直达"。

一、tabby-settings 是什么:分栏式设置界面

tabby-settings 是 Tabby 的内置插件(keywords 中标记为 tabby-builtin-plugin,包名 tabby-settings,描述为 "Tabby terminal settings page")。它向应用提供:

  • 一个带左侧垂直选项卡导航的 Settings 页签(<settings-tab> 组件);
  • 工具栏上的齿轮按钮与 settings 全局快捷键作为入口;
  • 一组可扩展点:SettingsTabProvider(选项卡)、HotkeyProvider(快捷键)、ConfigProvider(默认配置);
  • 内置的 5 个选项卡:Application(应用)、Hotkeys(快捷键)、Window(窗口)、Vault(保险库)、Profiles & connections(配置文件与连接)、Config sync(配置同步)。

它的 peerDependencies(见 package.json)声明了对 tabby-core*)、Angular 15 系列、@ng-bootstrap/ng-bootstrap 14 等依赖,意味着它是运行在 Tabby 宿主内的 Angular 插件模块,而不是独立应用。

二、使用 API:注册一个自定义设置选项卡

README 给出了完整的使用步骤,核心分两步。

第一步,从 tabby-settings 导入扩展基类:

import { SettingsTabProvider } from 'tabby-settings'

第二步,在你的插件 @NgModule 中通过 providers 数组以 multi: true 的方式注入子类:

@N
</parameter>
</function>
</tool_call>
登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起
kernelkernel
deepin linux kernel
C
33
18
ops-transformerops-transformer
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
1.12 K
2.72 K
ops-nnops-nn
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
903
1.82 K
docsdocs
暂无描述
Markdown
888
5.78 K
pytorchpytorch
作为 Ascend for PyTorch 社区的核心组件,TorchNPU 是昇腾专为 PyTorch 打造的深度学习适配插件,使 PyTorch 框架能够直接调用昇腾 NPU,为开发者提供昇腾 AI 处理器的超强算力。
Python
854
1.34 K
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
527
590
jiuwenswarmjiuwenswarm
JiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。
Python
3.51 K
1.01 K
ops-mathops-math
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.33 K
1.45 K
AscendNPU-IRAscendNPU-IR
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
C++
540
384
flutter_flutterflutter_flutter
本仓库是 Flutter SDK 与 Flutter Engine 的 OpenHarmony 适配版本,由 CPF-Flutter 团队维护。开发者可使用熟悉的 Flutter 技术栈开发 OpenHarmony 应用,3.35.7 及以后的适配版本可基于本仓库源码构建支持 OpenHarmony 的 Flutter Engine。
Dart
1.17 K
341