OpenSumi CLI 正式发布,插件文档上新内容一览

OpenSumi 宣布推出 CLI 工具,支持开发 VS Code 插件并扩展其自身的 OpenSumi API。开发者可以利用 React 在浏览器端定制 UI,通过 Node 端调用原生 Node.js API,或在 Worker 端处理计算密集型任务。OpenSumi 提供与 VS Code 插件API兼容的环境,并支持在 Web 和 Electron 上运行。官方还提供了插件开发示例和文档,以及接入不同插件市场的选项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在 OpenSumi 中,我们提供了一个强大的插件生态系统,在兼容 VS Code 插件 API 的同时,我们也有着自己的 OpenSumi API 用于进一步拓展 IDE 界面及能力。

▲插件能力实现结构图

开发 VS Code 插件

在插件开发中,你可以遵循 VS Code 的开发模式,在 VS Code 内完成你的插件开发后,将实现的插件产物引入到基于 OpenSumi 搭建的 IDE 中使用,详细可参考 VS Code 插件文档 Extension Guides。

下面是一些常用的示例及文档:

  • eclipse-theia/vscode-builtin-extensions —— 基于 VS Code 版本打包其内置插件的工程项目
  • microsoft/vscode-extension-samples —— VS Code 官方的插件 API 示例仓库
  • Extension Guides —— VS Code 插件开发向导文档
  • Your First Extension —— 快速开始插件开发
  • Web Extensions —— 在 OpenSumi 中也支持了这类插件,在纯前端环境有着十分重要的作用

开发 OpenSumi 插件

OpenSumi 中存在着一部分仅能运行在基于 OpenSumi 开发的 IDE 之中,提供的能力包括但不限于:

  • 通过 React 技术栈进行视图的拓展定制
  • Toolbar 定制
  • Electron Webview 管理
  • 布局能力
  • 全视图的自定义渲染

一个完整的 OpenSumi 插件目录结构如下:

.├── .gitignore          # git 忽略目录├── README.md           # 插件说明├── src    ├── extend        ├── browser     # 插件 Browser 端入口, 提供 UI 定制能力        ├── node        # 插件 Node 端入口,提供本地环境运行能力        ├── worker      # 插件 Worker 端入口,提供 WebWorker 环境运行能力│   └── extension.ts    # 插件源码 (VS Code 插件入口)├── package.json        # Extension manifest├── tsconfig.json

目录说明

src/extensions.ts 为 VS Code 插件入口,关于 VS Code 插件开发请参阅 Extension Guides。

src/extend 目录下为 OpenSumi 自有插件体系,包含 Browser/Node/Worker 端入口。********

入口说明

VS Code 插件在 OpenSumi 运行时会保持与 VS Code 特定版本一致的行为,例如当前 2.23.0 版本兼容 VS Code 的插件 API 版本为 1.68.0。

Browser 端支持通过 React 组件的方式在界面暴露的插槽中定制 UI ,如果你的插件需要在界面注册 UI 组件,可以将其编写在 Browser 端。

Node 端支持纯 Node 环境运行时,在 Node 端插件拥有与 VS Code 插件一致的 API,同时还可以调用 OpenSumi 自有的插件 API,如果你的插件需要调用原生 Node.js 的 API 或运行一些本地任务,可以将其编写在 Node 端。

Worker 端拥有 WebWorker 环境运行时,如果你的插件包含一些计算量较大的任务,同时不需要本地能力,可以将其编写在 Worker 端。

不论是 VS Code 插件还是 Browser/Node/Worker 三端都是可选的,也就是说如果你只需要原生 VS Code 插件能力,则可以忽略 extend 目录。同样如果你只需要 OpenSumi 插件三端之一的能力,也可以忽略其他,仅需要修改少量的配置。

开始开发

OpenSumi 支持 Web/Electron 两种方式集成,插件系统及其能力在两个平台下具有一致的表现。

开发插件时,你可以使用 @opensumi/cli 快速在本地启动插件开发环境。

$ npm install @opensumi/cli -g

完整内容请参考 快速开始 文档,使用 OpenSumi CLI 快速在本地搭建插件开发环境。

文档地址:https://opensumi.com/zh/docs/extension/quick-start

插件示例

除了上面提到的 VS Code Extension Samples,OpenSumi 也有自己的插件示例仓库 OpenSumi Extension Samples,包含了一些常见的插件示例代码。

插件市场

当前 OpenSumi 支持两种插件市场,如下面所示:

  • OpenTRS —— 蚂蚁集团开放的公共插件市场服务

  • OpenVSX —— Eclipse 基金会开放的公共插件市场服务(源码开源)

可以根据使用场景自由进行源的切换,见文档 自定义插件市场源。

👇欢迎了解 OpenSumi,参与开源共建~

GitHub 地址:

github.com/opensumi

OpenSumi 官网:

opensumi.com/zh

扫二维码,加入 OpenSumi 社区交流: opensumi.com/zh/communit…

标题“51单片机通过MPU6050-DMP获取姿态角例程”解析 “51单片机通过MPU6050-DMP获取姿态角例程”是一个基于51系列单片机(一种常见的8位微控制器)的程序示例,用于读取MPU6050传感器的数据,并通过其内置的数字运动处理器(DMP)计算设备的姿态角(如倾斜角度、旋转角度等)。MPU6050是一款集成三轴加速度计和三轴陀螺仪的六自由度传感器,广泛应用于运动控制和姿态检测领域。该例程利用MPU6050的DMP功能,由DMP处理复杂的运动学算法,例如姿态融合,将加速度计和陀螺仪的数据进行整合,从而提供稳定且实时的姿态估计,减轻主控MCU的计算负担。最终,姿态角数据通过LCD1602显示屏以字符形式可视化展示,为用户提供直观的反馈。 从标签“51单片机 6050”可知,该项目主要涉及51单片机和MPU6050传感器这两个关键硬件组件。51单片机基于8051内核,因编程简单、成本低而被广泛应用;MPU6050作为惯性测量单元(IMU),可测量设备的线性和角速度。文件名“51-DMP-NET”可能表示这是一个与51单片机及DMP相关的网络资源或代码库,其中可能包含C语言等适合51单片机的编程语言的源代码、配置文件、用户手册、示例程序,以及可能的调试工具或IDE项目文件。 实现该项目需以下步骤:首先是硬件连接,将51单片机与MPU6050通过I2C接口正确连接,同时将LCD1602连接到51单片机的串行数据线和控制线上;接着是初始化设置,配置51单片机的I/O端口,初始化I2C通信协议,设置MPU6050的工作模式和数据输出速率;然后是DMP配置,启用MPU6050的DMP功能,加载预编译的DMP固件,并设置DMP输出数据的中断;之后是数据读取,通过中断服务程序从DMP接收姿态角数据,数据通常以四元数或欧拉角形式呈现;再接着是数据显示,将姿态角数据转换为可读的度数格
MathorCup高校数学建模挑战赛是一项旨在提升学生数学应用、创新和团队协作能力的年度竞赛。参赛团队需在规定时间内解决实际问题,运用数学建模方法进行分析并提出解决方案。2021年第十一届比赛的D题就是一个典型例子。 MATLAB是解决这类问题的常用工具。它是一款强大的数值计算和编程软件,广泛应用于数学建模、数据分析和学计算。MATLAB拥有丰富的函数库,涵盖线性代数、统计分析、优化算法、信号处理等多种数学操作,方便参赛者构建模型和实现算法。 在提供的文件列表中,有几个关键文件: d题论文(1).docx:这可能是参赛队伍对D题的解答报告,详细记录了他们对问题的理解、建模过程、求解方法和结果分析。 D_1.m、ratio.m、importfile.m、Untitled.m、changf.m、pailiezuhe.m、huitu.m:这些是MATLAB源代码文件,每个文件可能对应一个特定的计算步骤或功能。例如: D_1.m 可能是主要的建模代码; ratio.m 可能用于计算某种比例或比率; importfile.m 可能用于导入数据; Untitled.m 可能是未命名的脚本,包含临时或测试代码; changf.m 可能涉及函数变换; pailiezuhe.m 可能与矩阵的排列组合相关; huitu.m 可能用于绘制回路图或流程图。 matlab111.mat:这是一个MATLAB数据文件,存储了变量或矩阵等数据,可能用于后续计算或分析。 D-date.mat:这个文件可能包含与D题相关的特定日期数据,或是模拟过程中用到的时间序列数据。 从这些文件可以推测,参赛队伍可能利用MATLAB完成了数据预处理、模型构建、数值模拟和结果可视化等一系列工作。然而,具体的建模细节和解决方案需要查看解压后的文件内容才能深入了解。 在数学建模过程中,团队需深入理解问题本质,选择合适的数学模
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值