

The custom editor API also lets your extension hook into editor events such as undo and redo, as well as file events such as save. Custom editors allow extensions to provide a custom UI for editing any file in the workspace. This makes them useful for displaying custom UI and custom visualizations. In this case, Webview panels are shown in VS Code as distinct editors.

A webview can render almost any HTML content in this frame, and it communicates with extensions using message passing. Think of a webview as an iframe within VS Code that your extension controls. Webviews can also be used to build complex user interfaces beyond what VS Code's native APIs support. For example, the built-in Markdown extension uses webviews to render Markdown previews. The webview API allows extensions to create fully customizable views within Visual Studio Code.
