【问题标题】:What is the Visual Studio Code editor built onVisual Studio Code 编辑器是基于什么构建的
【发布时间】:2015-07-10 01:24:42
【问题描述】:

Microsoft 新的(免费) 跨平台编辑器 Visual Studio Code (2015 年 5 月 29 日推出) 构建了哪些底层技术/库在?有传言说它只是 Github 的 Atom Editor 更名。

【问题讨论】:

标签: node-webkit atom-editor visual-studio-code electron


【解决方案1】:

Visual Studio Code 是在 Github 的 Electron 之上使用 Web 技术构建的。

Electron 是一个应用程序运行时,用于编写 本机 应用程序,它使用 Chromium(Google Chrome 的构建基础) 用于呈现界面,node.js 用于本地 API (例如:文件系统访问),它主要是作为 Github 的 Atom 代码编辑器的外壳构建的。 (注意:Electron 与NW.js 非常相似)

Node.js 是一个 (JavaScript) 应用程序运行时,它建立在 Google 的 V8 JavaScript 引擎上,带有 C 和 C++ 代码,使其能够访问每个操作系统的原生 API(例如:文件系统访问)

基本上,微软的新产品完全建立在开源软件的基础上,其主要组件由谷歌创建。

有传言称,Visual Studio 代码是 Github 的 Atom 编辑器的一个分支或更名。这甚至都不是真的。检查 Visual Studio Code 的源代码发现它使用了 Electron 和 Atom Shell Archive,但没有其他内容来自 Atom 编辑器。

Visual Studio Code 的“编辑器”(使用语法高亮、行号等呈现代码的东西。) 部分是 Microsoft 的 Monaco 编辑器。它与用于 OneDrive、Windows Azure、TypeScript Playground 和 Visual Studio Online 的编辑器相同。我还没有从微软找到任何关于这个编辑器的真实文档,但是网上有关于它的some articles

Omnisharp用于为C#提供IntelliSense等代码编辑工具(例如:重构)

JavaScript Intellisense 似乎都是自定义代码。它提供了令人印象深刻的 JavaScript 补全,但在很多情况下它似乎不如Tern (参见Tern Demo

【讨论】:

  • 我已经研究了一天的代码,它改变了我对桌面应用程序中 JS 的看法。我看着 Atom 并感到非常失望,因为它无法完成我期望它从文本编辑器中完成的基本操作。代码证明我错了,我可以在我的 node-desktop/web-app 中使用什么文本编辑器控件?
  • @elcuco - The Ace Editor (ace.c9.io/build/kitchen-sink.html) 和 Code Mirror (codemirror.net) 是 HTML 代码编辑器(我个人更喜欢 Ace)。
  • 很高兴看到软件巨头卷土重来,我相信 Erik Gamma (GoF) 已经参与了 Visual Studio 代码工具,并且尚未发布在线“monaco”和 Anders Hejslberg (Pascal/Delphi 的创建者)主要负责 Typescript(Javascript 的超集使其类型安全)
  • Visual Studio Code 现在是开源的,在 MIT 许可下:github.com/Microsoft/vscode
  • 摩纳哥编辑现在也是open source,并且有很多documentation on their hub,包括extensive API documentation
猜你喜欢
  • 1970-01-01
  • 2015-07-09
  • 1970-01-01
  • 1970-01-01
  • 2015-07-14
  • 2017-09-21
  • 2023-01-20
  • 2019-08-19
  • 1970-01-01
相关资源
最近更新 更多