# ardupilot-hwdef-syntax **Repository Path**: junzixing/ardupilot-hwdef-syntax ## Basic Information - **Project Name**: ardupilot-hwdef-syntax - **Description**: apm飞控hw文件语法高亮插件 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-02-06 - **Last Updated**: 2026-02-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # ArduPilot Hardware Definition Syntax 为 Visual Studio Code 和 Cursor 提供 ArduPilot (APM) 硬件定义文件的语法高亮支持。 ## 功能特性 - ✨ 完整的语法高亮支持 - 🎨 关键字、引脚定义、外设配置等不同颜色区分 - 📝 支持完整文件名匹配(hwdef.dat, hwdef-bl.dat, hwdef.inc, hwdef-bl.inc, defaults.parm) - 🔍 注释、字符串、数字等基础语法高亮 ## 支持的文件类型 插件通过完整文件名匹配识别以下文件: - `hwdef.dat` - 硬件定义文件 - `hwdef-bl.dat` - Bootloader 硬件定义文件 - `hwdef.inc` - 包含文件(格式与 hwdef.dat 文件相同) - `hwdef-bl.inc` - Bootloader 包含文件 - `defaults.parm` - 参数文件(参数名 参数值格式,#号后为注释) **注意**: 插件只识别上述完整文件名,不会匹配其他 `.dat`、`.inc` 或 `.parm` 文件。 ## 语法高亮内容 - **关键字**: MCU, define, include, SPI, I2C, UART, ADC, GPIO, LED, CAN, TIM, PWM 等 - **引脚定义**: PA0, PB1, PC2 等 STM32 引脚格式 - **外设配置**: SPI1, I2C2, UART4, USART6 等 - **配置项**: APJ_BOARD_ID, OSCILLATOR_HZ, FLASH_SIZE_KB 等 - **修饰符**: SPEED_HIGH, PULLUP, OPENDRAIN, SCALE() 等 - **参数定义** (.parm 文件): 参数名和参数值的高亮 - **注释**: 单行注释 (#) - **字符串**: 引号字符串 - **数字**: 整数、浮点数和十六进制数字 ## 本地打包(生成 .vsix 离线安装包) 项目包含自动部署与打包脚本,支持 **Ubuntu**、**Windows** 及 **WSL**: ```bash # Ubuntu / Linux / WSL / Git Bash ./setup-and-package.sh ``` ```powershell # Windows PowerShell .\setup-and-package.ps1 ``` 脚本会自动检测环境(Node.js、vsce),按需安装后生成 `.vsix` 文件。支持 `-h` / `--help` 查看帮助。 ## 离线安装 .vsix 插件 以下方法适用于 **VS Code** 和 **Cursor**,两者界面与步骤相同。 ### Windows 本地安装 1. 打开 VS Code 或 Cursor 2. 按 `Ctrl+Shift+X` 打开扩展面板 3. 点击扩展面板右上角 `⋯` 菜单 4. 选择 **"Install from VSIX..."** 5. 选择已下载的 `.vsix` 文件(如 `ardupilot-hwdef-syntax-1.0.0.vsix`) 6. 安装完成后重新加载窗口 **命令行安装(可选):** ```powershell # VS Code code --install-extension ardupilot-hwdef-syntax-1.0.0.vsix --force # Cursor cursor --install-extension ardupilot-hwdef-syntax-1.0.0.vsix --force ``` ### 远程环境安装(Remote SSH) 当使用 **Remote SSH** 连接远程主机(如 Ubuntu)开发时,需将扩展安装在**远程**,编辑远程文件时语法高亮才能生效。 1. 在 Windows 上打开 VS Code 或 Cursor 2. 使用 Remote SSH 连接到远程主机 3. 连接成功后,扩展面板左上角会显示 **"SSH: 主机名"**,表示当前为远程环境 4. 点击扩展面板右上角 `⋯` → **"Install from VSIX..."** 5. 选择 `.vsix` 文件: - **方式 A**:若 `.vsix` 在远程,输入远程路径(如 `/home/user/ardupilot-hwdef-syntax-1.0.0.vsix`) - **方式 B**:若 `.vsix` 在本地 Windows,通过文件选择器选择(如 `C:\Users\...\ardupilot-hwdef-syntax-1.0.0.vsix`),编辑器会自动上传并安装到远程 6. 安装完成后,重新加载或重新连接远程 **将 .vsix 从远程传到本地(若在 Ubuntu 上打包):** ```powershell # 在 Windows PowerShell 中执行 scp 用户名@远程IP:/home/nfcy/ardupilot-hwdef-syntax/ardupilot-hwdef-syntax-1.0.0.vsix . ``` **语法着色**:插件根据当前主题自动适配颜色(暗色主题用浅色、亮色主题用深色),适配 Cursor Dark、Dark+、Default Light+ 等常见主题。 **拼写检查**:编辑 hwdef 文件时自动关闭 Code Spell Checker。若仍出现「Unknown word」提示,请在项目根目录创建或编辑 `.vscode/settings.json`,添加: ```json { "[hwdef]": { "cSpell.enabled": false } } ``` ## 使用方法 安装插件后,打开以下文件即可自动应用语法高亮: - `hwdef.dat` - `hwdef-bl.dat` - `hwdef.inc` - `hwdef-bl.inc` - `defaults.parm` ## 许可证 MIT License ## 相关链接 - [ArduPilot 项目](https://ardupilot.org/) - [ArduPilot GitHub](https://github.com/ArduPilot/ardupilot) - [怒飞垂云 | 无人机知识库](http://www.nufeichuiyun.com/)