-
Notifications
You must be signed in to change notification settings - Fork 20
开发工具VSCode调研
coconilu edited this page Oct 30, 2018
·
2 revisions
开发工具IDE对于一个开发者来说太重要了。
我想要研究的是VSCode,它是目前我正在使用的工具,很轻量、插件也很丰富。
研究的课题:
-
它是不是基于浏览器的IDE? 如果是的话,应该跟Chrome开发者工具有些联系。
-
它的插件制作方式是怎么样的? 我要学习这个,会让我更加了解VSCode,也让我更了解别人开发的插件。
调研结果:
-
它是基于NodeJS的Electron框架做出来的IDE
-
官方文档里有介绍如何制作插件
插件包括下面三种:
- Extensions - the base building block
- Language Servers - extensions that enhance editing experiences through Language Server Protocol
- Debuggers - wire up an external debugger through a Debug Adapter
Extensions 的功能:
- Activation - load an extension when a specific file type is detected, when a specific file exists, or when a command is selected via the Command Palette or a key combination
- Editor - work with the editor's content - read and manipulate text, leverage selection(s)
- Workspace - access open editors, the status bar, information messages and more
- Eventing - connect to the editor life-cycle events such as: open, close, change, and more
- Evolved editing - create providers for rich language support including IntelliSense, Peek, Hover, Diagnostics and much, much more