VS Code配置指南:打造高效的QMK开发环境

VS Code配置指南:打造高效的QMK开发环境

在这里插入图片描述

前言

你是否曾为QMK固件开发环境的搭建而头疼不已?本文将手把手教你使用Visual Studio Code(简称VS Code)这款强大的代码编辑器来构建一个完美的QMK开发环境,让你的键盘固件开发工作流变得高效而愉悦!

VS Code作为当今最受欢迎的代码编辑器之一,相比传统文本编辑器具备诸多优势:

  • 智能代码补全:减少手动输入,提高编码速度
  • 便捷的代码导航:快速跳转到定义、引用等位置
  • 强大的重构工具:轻松修改代码结构
  • 一键构建:无需手动敲命令行即可编译
  • 集成Git图形界面:直观管理代码版本
  • 丰富的调试功能:快速定位并修复问题
  • 代码格式化:保持代码风格一致性
  • 调用层次结构显示:清晰了解函数间关系

无论你是QMK新手还是老手,优秀的开发环境都能让你事半功倍。接下来,就让我们一步步打造这个高效环境吧!

VS Code的下载与安装

选择合适的安装包

首先,我们需要前往VS Code的官方网站下载最新版本:

  1. 打开VS Code官方下载页面:https://code.visualstudio.com/download
    在这里插入图片描述

  2. 根据你的操作系统选择对应的版本(Windows/macOS/Linux)

Windows用户特别注意,安装包有两种类型可选:
在这里插入图片描述

安装类型说明适用场景
User Installer默认安装在当前用户目录,仅限当前用户使用个人电脑,不需要共享给其他用户
System Installer安装在非用户目录,所有用户均可使用家庭共享电脑或工作站

个人建议选择System Installer X64版本(注意不要选择arm64版本,除非你使用的是ARM架构的电脑)。System Installer允许自定义安装路径,方便后期管理,且权限更全面。

详细安装步骤

以Windows系统为例,完整安装过程如下:

  1. 同意许可协议:启动安装程序后,仔细阅读并勾选"我接受协议",点击"下一步"。
    在这里插入图片描述

  2. 选择安装目录:点击"浏览"按钮选择理想的安装位置。

    小贴士:建议安装在非系统盘,且路径中不要包含中文字符,这可以避免一些潜在的兼容性问题。
    在这里插入图片描述

  3. 设置开始菜单文件夹:默认为"Visual Studio Code",无特殊需求可直接点击"下一步"。
    在这里插入图片描述

  4. 选择附加任务:这一步非常重要,强烈建议勾选以下选项:

    • 添加到PATH:允许从命令行直接启动VS Code,对开发极为便利
    • 注册为支持的文件类型的编辑器:使VS Code成为默认的代码文件打开工具
    • 创建桌面快捷方式:方便日常快速访问
    • 添加"通过Code打开"操作到文件资源管理器目录上下文菜单:右键菜单添加快捷入口
    • 添加"通过Code打开"操作到文件资源管理器文件上下文菜单:同上,但针对单个文件
      在这里插入图片描述
  5. 确认安装信息:检查所有设置无误后,点击"安装"开始安装过程。
    在这里插入图片描述

  6. 完成安装:安装完成后,建议勾选"启动Visual Studio Code",然后点击"完成"立即开始体验。
    在这里插入图片描述

VS Code界面全解析

初次打开VS Code,你会看到一个简洁而功能丰富的界面。了解各个部分的功能,能让你更高效地使用这款编辑器:

在这里插入图片描述

区域名称功能描述实用技巧
左侧窄栏活动栏提供主要视图切换,显示上下文相关指标可右键自定义显示顺序
左侧宽栏侧边栏包含资源管理器、搜索、Git等不同视图使用Ctrl+B快速切换显示/隐藏
底部横条状态栏显示项目和文件信息、行列位置、编码等点击各项可快速修改相关设置
底部/右侧面板显示输出、问题、调试和终端信息Ctrl+` 快速切换终端
中央区域编辑区编辑文件的主要区域Ctrl+\ 分割编辑器
顶部横条菜单栏包含VS Code的所有功能入口可通过F11切换全屏模式隐藏

活动栏图标详解

活动栏是VS Code最常用的导航区域,了解每个图标的功能至关重要:
在这里插入图片描述

图标功能快捷键使用场景
📄资源管理器Ctrl+E浏览项目文件结构,创建/删除/重命名文件
🔍搜索Ctrl+Shift+F全局搜索代码内容,批量替换文本
🔄源代码管理Ctrl+Shift+GGit版本控制,提交/合并/解决冲突
🐞运行和调试Ctrl+Shift+D调试程序,设置断点,检查变量
📦扩展Ctrl+Shift+X安装/管理插件,扩展编辑器功能
👤账户-登录微软账户,同步设置和插件
⚙️管理Ctrl+,调整VS Code设置,键盘快捷键等

VS Code基础配置

中文界面设置

VS Code默认使用英文界面,对于习惯中文环境的开发者,可以通过以下步骤切换到中文界面:

  1. 点击左侧活动栏的"扩展"图标(📦)
    在这里插入图片描述

  2. 在搜索框中输入"Chinese"
    在这里插入图片描述

  3. 在搜索结果中找到"Chinese (Simplified) Language Pack for Visual Studio Code"

  4. 点击"Install"按钮进行安装

  5. 安装完成后,右下角会弹出重启提示,点击"Restart"重启VS Code

重启后,整个界面就会变成中文显示,更符合国内用户的使用习惯。如果将来想切回英文界面,可以按Ctrl+Shift+P打开命令面板,输入"language",选择"配置显示语言",然后选择"en"即可。

C/C++开发环境配置

QMK固件主要使用C语言开发,因此配置好C/C++开发环境至关重要:

  1. 点击左侧活动栏的"扩展"图标(📦)
    在这里插入图片描述

  2. 在搜索框中输入"C/C++"
    在这里插入图片描述

  3. 找到微软官方的"C/C++"扩展

  4. 点击"Install"进行安装

该扩展提供了丰富的C/C++开发功能,包括:

  • 智能代码补全
  • 语法高亮和错误检查
  • 代码导航(跳转到定义、声明)
  • 智能重命名
  • 代码格式化

对于QMK开发而言,这个扩展能极大提高编码效率和代码质量。

个性化设置

主题美化

优美的界面能提升编码体验,VS Code提供了丰富的主题供选择:

  1. 按下快捷键Ctrl+K Ctrl+T或点击左下角⚙️图标,选择"颜色主题"
  2. 在弹出的选择框中预览并选择你喜欢的主题
  3. 如果内置主题不满足需求,可以点击"浏览其他颜色主题"安装社区主题

推荐几个适合长时间编码的主题:

  • One Dark Pro:深色主题,对眼睛友好
  • GitHub Theme:GitHub官方主题,有亮暗两种版本
  • Winter is Coming:对比度适中,代码清晰易读

同样,你还可以设置文件图标主题(Ctrl+K Ctrl+T后选择"文件图标主题"),让不同类型的文件拥有直观的图标。

实用设置调整

点击左下角⚙️图标,选择"设置",可以调整以下常用选项:

  • 字体:设置编辑器字体和大小

    "editor.fontSize": 14,
    "editor.fontFamily": "Consolas, 'Courier New', monospace",
    
  • 自动保存:开启自动保存功能,避免意外丢失代码

    "files.autoSave": "afterDelay",
    "files.autoSaveDelay": 1000,
    
  • 缩进设置:根据项目规范设置缩进

    "editor.tabSize": 2,
    "editor.insertSpaces": true,
    
  • 滚动设置:优化滚动体验

    "editor.smoothScrolling": true,
    "editor.mouseWheelScrollSensitivity": 1.5,
    
  • 终端字体:优化内置终端显示

    "terminal.integrated.fontSize": 14,
    "terminal.integrated.fontFamily": "Consolas",
    

VS Code效率神器:快捷键大全

熟练掌握快捷键是提高开发效率的关键。以下是QMK开发中最实用的VS Code快捷键:

基础操作快捷键

快捷键功能实用场景
Ctrl+Shift+P / F1命令面板快速执行任何VS Code命令
Ctrl+P快速打开文件在大型项目中迅速定位文件
Ctrl+Tab切换打开的文件在多个文件间快速切换
Ctrl+Shift+N新建窗口同时处理多个项目
Ctrl+W关闭当前文件关闭不需要的文件
Ctrl+,打开设置快速调整VS Code配置

编辑增强快捷键

快捷键功能实用场景
Ctrl+X剪切行(空选区时)快速移动整行代码
Ctrl+C复制行(空选区时)无需选中即可复制整行
Alt+↑/↓上移/下移行调整代码行顺序
Shift+Alt+↓/↑复制行到上/下方快速复制类似代码
Ctrl+Shift+K删除行移除不需要的代码行
Ctrl+Enter在下方插入行无需移动光标至行尾
Ctrl+Shift+Enter在上方插入行同上,但在当前行上方
Ctrl+]/[增加/减少缩进调整代码缩进级别
Ctrl+Home/End跳到文件开头/结尾快速导航长文件
Ctrl+F搜索在当前文件中查找
Ctrl+H替换替换当前文件中的文本
Ctrl+D选择下一个匹配项多光标编辑

代码导航快捷键

快捷键功能实用场景
F12转到定义查看函数/变量定义
Alt+F12速览定义不切换文件查看定义
Ctrl+T显示所有符号快速跳转到函数/变量
Ctrl+G跳转到指定行精确导航到特定位置
Ctrl+Shift+O跳转到文件中的符号在当前文件中快速导航
F8 / Shift+F8下一个/上一个错误快速解决代码问题
Alt+←/→前进/后退在导航历史中移动

代码折叠与展开

快捷键功能实用场景
Ctrl+Shift+[折叠区域隐藏不需关注的代码
Ctrl+Shift+]展开区域查看折叠的代码
Ctrl+K Ctrl+0折叠所有获取代码整体结构
Ctrl+K Ctrl+J展开所有查看完整代码

小贴士:可以在VS Code的"键盘快捷方式"设置中自定义或查看所有快捷键。按下Ctrl+K Ctrl+S即可打开。

QMK开发初识

QMK(Quantum Mechanical Keyboard)是一个开源的键盘固件,专为DIY定制键盘设计。它支持众多功能,如宏编程、层切换、RGB灯光控制等,让你的键盘变得更智能。

使用VS Code进行QMK开发有以下优势:

  • 智能代码提示加速编码
  • 集成编译和刷写功能
  • 强大的调试能力
  • 便捷的版本控制

在后续的教程中,我们将详细介绍:

  • QMK源码结构与工作原理
  • 使用VS Code配置键盘布局
  • 自定义键位映射和宏
  • 编译与刷写固件
  • 调试技巧与常见问题解决

总结与展望

通过本文的详细指导,你已经成功安装并配置了VS Code,为QMK开发打下了坚实基础。随着使用频率的增加,你会发现VS Code强大的可定制性和丰富的功能会让你的编程体验越来越流畅。

VS Code不仅适用于QMK开发,它还是一款全能型编辑器,支持几乎所有主流编程语言。掌握它将大大提升你在各类开发项目中的效率。

后续教程我们将深入QMK固件的具体开发流程,敬请期待!如果你对特定环节有疑问或建议,欢迎在评论区留言交流。

如果本文对你有所帮助,别忘了点赞、收藏、关注,这对我创作更多优质内容有莫大的鼓励!


参考资料:

  1. Visual Studio Code官方文档:https://code.visualstudio.com/docs
  2. QMK固件官方文档:https://docs.qmk.fm
  3. Github VS Code仓库:https://github.com/microsoft/vscode
  4. VS Code快捷键完全指南:https://code.visualstudio.com/shortcuts/keyboard-shortcuts-windows.pdf

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/904723.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java CompletableFuture 异步编程工具用法1

1、测试异步调用: static void testCompletableFuture1() throws ExecutionException, InterruptedException {// 1、无返回值的异步任务。异步线程执行RunnableCompletableFuture.runAsync(() -> System.out.println("only you"));// 2、有返回值的异…

中国自动驾驶研发解决方案,第一!

4月28日,IDC《中国汽车云市场(2024下半年)跟踪》报告发布,2024下半年中国汽车云市场整体规模达到65.1亿元人民币,同比增长27.4%。IDC认为,自动驾驶技术深化与生成式AI的发展将为汽车云打开新的成长天花板,推动云计算在…

如何快速获取字符串的UTF-8或UTF-16编码二进制数据?数值转换成字符串itoa不是C标准?其它类型转换成字符串?其它类型转换成数值类型?

目录 如何快速获取字符串的UTF-8或UTF-16编码二进制数据? 数值转换成字符串itoa不是C标准? 其它类型转换成字符串 其它类型转换成数值类型 转换成数值的API 为什么有的编程语言允许字符串和整数相加? 字符串拼接 字符串字面量自动连接 如何快速获取字符串…

Android SDK 国内镜像及配置方法(2025最新,包好使!)

2025最新android sdk下载配置 1、首先你需要有android sdk manager2、 直接上教程修改hosts文件配置域名映射即可(不用FQ)2.1 获取ping dl.google.com域名ip地址2.2 配置hosts文件域名映射2.3 可以随意下载你需要的sdk3、 总结:走过弯路,踩过坑!!!大家就不要踩了!避坑1…

MySQL事务隔离机制与并发控制策略

MySQL事务隔离机制与并发控制策略 MySQL事务隔离机制与并发控制策略一、数据库并发问题全景解析二、事务隔离级别深度解析三、MySQL并发控制核心技术1. 多版本并发控制(MVCC)2. 锁机制 四、隔离级别实现差异对比五、生产环境最佳实践六、高级优化技巧七、…

Python `zip()` 函数是什么

Python zip() 函数是什么 在 Python 里,zip() 是一个内置函数,其主要作用是将多个可迭代对象(像列表、元组、字符串等)中的元素一一对应地组合成元组,最终返回一个迭代器,这个迭代器会生成这些元组。 基本语法 zip(*iterables)其中,*iterables 代表可变数量的可迭代对…

Jenkins 改完端口号启动不起来了

让我们将 Jenkins 恢复到默认的 8080 端口,确保它能正常启动: 1. 修改 Jenkins 的配置文件: sudo nano /etc/default/jenkins 将内容修改为: HTTP_PORT8080 JENKINS_ARGS"--webroot/var/cache/jenkins/war --httpPort8080…

【AWS+Wordpress-准备阶段】AWS注册+创建EC2实例

前言 自学笔记,解决问题为主,亲测有效,欢迎补充。 本地WP文件部署到AWS整体步骤如下:(本文重点:AWS准备完成) 0. [AWS 准备] 注册 AWS 并创建 EC2 实例 ↓ 1. [生成安装包:用 Du…

使用pytorch保存和加载预训练的模型方法

需要使用到的函数 在 PyTorch 中,torch.save() 和 torch.load() 是用于保存和加载模型的核心函数。 torch.save() 函数 主要用途:将模型或模型的状态字典(state_dict)保存到文件中。 语法: torch.save(obj, f, pi…

Python从入门到高手8.3节-元组的常用操作方法

目录 11.3.1 元组的常用操作方法 11.3.2 元组的查找 11.3.3 祈祷明天不再打雷下雨 11.3.1 元组的常用操作方法 元组类型是一种抽象数据类型,抽象数据类型定义了数据类型的操作方法,在本节的内容中,着重介绍元组类型的操作方法。 ​ 元组是…

图书推荐(协同过滤)算法的实现:基于订单购买实现相似用户的图书推荐

代码部分 package com.ruoyi.system.service.impl;import com.ruoyi.system.domain.Book; import com.ruoyi.system.domain.MyOrder; import com.ruoyi.system.mapper.BookMapper; import com.ruoyi.system.mapper.MyOrderMapper; import com.ruoyi.system.service.IBookRecom…

JMeter快速指南:命令行生成HTML测试报告(附样例命令解析)

一、核心命令解析 jmeter -g Dash_CapacityTest_01_AllModules_1000.jtl -o report/ 参数 作用 示例文件说明 -g 指定.jtl结果文件路径 -o 指定报告输出目录 自动创建report文件夹 二、操作步骤(Windows/Linux/Mac通用) 进入JMe…

2025年渗透测试面试题总结-渗透岗位全职工作面试(附回答)(题目+回答)

网络安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。 目录 一、通用基础类问题 1. 自我介绍 2. 职业动机与规划 3. 加班/出差接受度 二、安全技术类问题 1. 漏…

使用DEEPSEEK快速修改QT创建的GUI

QT的GUI,本质上是使用XML进行描述的,在QT CREATOR的界面编辑处,按CTRL2 切换到代码视图,CTRL3切换到编辑器视图。 CTRL2 切换到代码视图 CTRL3 切换到编辑器视图 鼠标左键点击代码视图中,按CTRLA → CTRLC复制XML代码…

draw.io流程图使用笔记

文章目录 图形较少的问题安装版好还是非安装版好业务系统嵌入的draw.io如何导入呢?如何判断组合和取消组合如何快速选中框里面的内容有时候选不到文本怎么办连接线如何不走直角 航点和取消航点支持多少种图形多个连接点?多个图形对齐双向箭头如何画图形的大小 其他流程图图标…

音频相关基础知识

主要参考: 音频基本概念_音频和音调的关系-CSDN博客 音频相关基础知识(采样率、位深度、通道数、PCM、AAC)_音频2通道和8ch的区别-CSDN博客 概述 声音的本质 声音的本质是波在介质中的传播现象,声波的本质是一种波,是一…

MySQL中隔离级别那点事

引言 在MySQL中,事务隔离级别和二进制日志(binlog)的格式密切相关,直接影响数据的一致性和复制的正确性。尤其是在“已提交读”(Read Committed)隔离级别下,由于没有使用间隙锁,某些…

LeetCode 热题 100 238. 除自身以外数组的乘积

LeetCode 热题 100 | 238. 除自身以外数组的乘积 大家好,今天我们来解决一道经典的算法问题——除自身以外数组的乘积。这道题在 LeetCode 上被标记为中等难度,要求在不使用除法的情况下,计算数组中每个元素的乘积,其中每个元素的…

【网络编程】三、TCP网络套接字编程

文章目录 TCP通信流程Ⅰ. 服务器日志类实现Ⅱ. TCP服务端1、服务器创建流程2、创建套接字 -- socket3、绑定服务器 -- bind🎏4、服务器监听 -- listen🎏5、获取客户端连接请求 -- acceptaccept函数返回的套接字描述符是什么,不是已经有一个了…

STM32的SysTick

SysTick介绍 定义:Systick,即滴答定时器,是内核中的一个特殊定时器,用于提供系统级的定时服务。该定时器是一个24位的递减计数器,具有自动重载值寄存器的功能。当计数器到达自动重载值时,它会自动重新加载…