关于 Visual Studio Code - Open Source ("Code - OSS")
Code - OSS 是 Microsoft 在 MIT 许可下公开开发的 Visual Studio Code 源代码仓库。它面向希望阅读、构建或参与编辑器开发的开发者。Visual Studio Code 是基于该仓库发布的版本,加入了 Microsoft 专属定制。
主要功能
- 01MIT 许可的开源代码库
- 02公开的路线图与迭代计划
- 03内置语言扩展与语法支持
- 04提供开发容器用于构建与调试
适用场景
- 01从源代码构建和运行编辑器
- 02阅读编辑器实现并提交问题或补丁
- 03在开发容器中搭建统一的开发环境
详细介绍
Visual Studio Code - 开源版("Code - OSS")
代码仓库
本仓库("Code - OSS")是 Microsoft 与社区共同开发 Visual Studio Code 产品的地方。我们不仅在这里处理代码和问题,还会发布我们的路线图、每月迭代计划以及收尾阶段计划。本源代码基于标准的 MIT 许可证 向所有人开放。
Visual Studio Code
Visual Studio Code 是基于 Code - OSS 仓库的一个发行版,加入了 Microsoft 特定的定制内容,并依据传统的 Microsoft 产品许可证 发布。
Visual Studio Code 将代码编辑器的简洁性与开发者核心的编辑、构建、调试循环所需的功能结合在一起。它提供全面的代码编辑、导航和理解支持,以及轻量级调试、丰富的扩展机制,并能与现有工具轻量集成。
Visual Studio Code 每月更新,带来新功能和错误修复。你可以在 Visual Studio Code 官网 下载适用于 Windows、macOS 和 Linux 的版本。若想每天获取最新版本,可以安装 Insiders 版本。
参与贡献
你可以通过多种方式参与本项目,例如:
如果你有兴趣修复问题并直接为代码库做贡献,请阅读文档 How to Contribute,其中涵盖以下内容:
反馈
- 在 Stack Overflow 上提问
- 提交新功能请求
- 为热门功能请求投赞成票
- 提交 issue
- 在 GitHub Discussions 或 Slack 上与扩展作者社区交流
- 关注 @code,告诉我们你的看法!
有关每个渠道的说明以及其他可用的社区反馈渠道,请参阅我们的维基。
相关项目
VS Code 的许多核心组件和扩展位于 GitHub 上各自的仓库中。例如,node debug adapter 和 mono debug adapter 仓库彼此独立。如需完整列表,请访问我们维基上的相关项目页面。
内置扩展
VS Code 包含一组内置扩展,位于 extensions 文件夹中,其中包括许多语言的语法和代码片段。为某种语言提供丰富语言支持(内联建议、转到定义)的扩展以 language-features 作为后缀。例如,json 扩展为 JSON 提供着色,而 json-language-features 扩展则为 JSON 提供丰富的语言支持。
开发容器
本仓库包含一个 Visual Studio Code Dev Containers / GitHub Codespaces 开发容器。
-
对于 Dev Containers,请使用 Dev Containers: Clone Repository in Container Volume... 命令,该命令会创建一个 Docker 卷,以在 macOS 和 Windows 上获得更好的磁盘 I/O 性能。
- 如果你已安装 VS Code 和 Docker,也可以点击这里开始使用。这将使 VS Code 在需要时自动安装 Dev Containers 扩展,将源代码克隆到容器卷中,并启动一个开发容器供使用。
-
对于 Codespaces,请在 VS Code 中安装 GitHub Codespaces 扩展,然后使用 Codespaces: Create New Codespace 命令。
Docker 或 Codespace 应至少具备 4 核 CPU 和 6 GB 内存(推荐 8 GB),才能运行完整构建。更多信息请参阅开发容器 README。
行为准则
本项目采用了Microsoft 开源行为准则。更多信息请参阅行为准则常见问题,如有其他问题或意见,请联系 [email protected]。
许可证
Copyright (c) Microsoft Corporation. All rights reserved.
依据 MIT 许可证授权。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。