diff --git a/.scripts/samples.js b/.scripts/samples.js
index 3c8310e4..bb0fe695 100644
--- a/.scripts/samples.js
+++ b/.scripts/samples.js
@@ -145,7 +145,7 @@ const samples = [
{
description: 'Source Control Sample',
path: 'source-control-sample',
- guide: 'https://code.visualstudio.com/api/extension-guides/scm-provider',
+ guide: '/api/extension-guides/scm-provider',
apis: [
'workspace.workspaceFolders',
'SourceControl',
@@ -170,6 +170,15 @@ const samples = [
`commands`
],
contributions: []
+ },
+ {
+ description: 'Custom Data Sample',
+ path: 'custom-data-sample',
+ guide: '/api/extension-guides/custom-data-extension',
+ apis: [
+ `commands`
+ ],
+ contributions: []
}
]
diff --git a/README.md b/README.md
index 3207cb4a..85811227 100644
--- a/README.md
+++ b/README.md
@@ -44,10 +44,12 @@ You need to have [node](https://nodejs.org/en/) and [npm](https://nodejs.org/en/
| [Editor Decoractor Sample](https://github.com/Microsoft/vscode-extension-samples/tree/master/decorator-sample) | N/A | [TextEditor.setDecorations](https://code.visualstudio.com/api/references/vscode-api#TextEditor.setDecorations)
[DecorationOptions](https://code.visualstudio.com/api/references/vscode-api#DecorationOptions)
[DecorationInstanceRenderOptions](https://code.visualstudio.com/api/references/vscode-api#DecorationInstanceRenderOptions)
[ThemableDecorationInstanceRenderOptions](https://code.visualstudio.com/api/references/vscode-api#ThemableDecorationInstanceRenderOptions)
[window.createTextEditorDecorationType](https://code.visualstudio.com/api/references/vscode-api#window.createTextEditorDecorationType)
[TextEditorDecorationType](https://code.visualstudio.com/api/references/vscode-api#TextEditorDecorationType)
[contributes.colors](https://code.visualstudio.com/api/references/contribution-points#contributes.colors) |
| [I18n Sample](https://github.com/Microsoft/vscode-extension-samples/tree/master/i18n-sample) | N/A | |
| [Terminal Sample](https://github.com/Microsoft/vscode-extension-samples/tree/master/terminal-sample) | N/A | [window.createTerminal](https://code.visualstudio.com/api/references/vscode-api#window.createTerminal)
[window.onDidChangeActiveTerminal](https://code.visualstudio.com/api/references/vscode-api#window.onDidChangeActiveTerminal)
[window.onDidCloseTerminal](https://code.visualstudio.com/api/references/vscode-api#window.onDidCloseTerminal)
[window.onDidOpenTerminal](https://code.visualstudio.com/api/references/vscode-api#window.onDidOpenTerminal)
[window.Terminal](https://code.visualstudio.com/api/references/vscode-api#window.Terminal)
[window.terminals](https://code.visualstudio.com/api/references/vscode-api#window.terminals) |
+| [Extension Terminal Sample](https://github.com/Microsoft/vscode-extension-samples/tree/master/extension-terminal-sample) | N/A | [window.createTerminal](https://code.visualstudio.com/api/references/vscode-api#window.createTerminal)
[window.Pseudoterminal](https://code.visualstudio.com/api/references/vscode-api#window.Pseudoterminal)
[window.ExtensionTerminalOptions](https://code.visualstudio.com/api/references/vscode-api#window.ExtensionTerminalOptions) |
| [Vim Sample](https://github.com/Microsoft/vscode-extension-samples/tree/master/vim-sample) | N/A | [commands](https://code.visualstudio.com/api/references/vscode-api#commands)
[StatusBarItem](https://code.visualstudio.com/api/references/vscode-api#StatusBarItem)
[window.createStatusBarItem](https://code.visualstudio.com/api/references/vscode-api#window.createStatusBarItem)
[TextEditorCursorStyle](https://code.visualstudio.com/api/references/vscode-api#TextEditorCursorStyle)
[window.activeTextEditor](https://code.visualstudio.com/api/references/vscode-api#window.activeTextEditor)
[Position](https://code.visualstudio.com/api/references/vscode-api#Position)
[Range](https://code.visualstudio.com/api/references/vscode-api#Range)
[Selection](https://code.visualstudio.com/api/references/vscode-api#Selection)
[TextEditor](https://code.visualstudio.com/api/references/vscode-api#TextEditor)
[TextEditorRevealType](https://code.visualstudio.com/api/references/vscode-api#TextEditorRevealType)
[TextDocument](https://code.visualstudio.com/api/references/vscode-api#TextDocument) |
-| [Source Control Sample](https://github.com/Microsoft/vscode-extension-samples/tree/master/source-control-sample) | https://code.visualstudio.com/api/extension-guides/scm-provider | [workspace.workspaceFolders](https://code.visualstudio.com/api/references/vscode-api#workspace.workspaceFolders)
[SourceControl](https://code.visualstudio.com/api/references/vscode-api#SourceControl)
[SourceControlResourceGroup](https://code.visualstudio.com/api/references/vscode-api#SourceControlResourceGroup)
[scm.createSourceControl](https://code.visualstudio.com/api/references/vscode-api#scm.createSourceControl)
[TextDocumentContentProvider](https://code.visualstudio.com/api/references/vscode-api#TextDocumentContentProvider)
[contributes.menus](https://code.visualstudio.com/api/references/contribution-points#contributes.menus) |
+| [Source Control Sample](https://github.com/Microsoft/vscode-extension-samples/tree/master/source-control-sample) | [/api/extension-guides/scm-provider](https://code.visualstudio.com/api/extension-guides/scm-provider) | [workspace.workspaceFolders](https://code.visualstudio.com/api/references/vscode-api#workspace.workspaceFolders)
[SourceControl](https://code.visualstudio.com/api/references/vscode-api#SourceControl)
[SourceControlResourceGroup](https://code.visualstudio.com/api/references/vscode-api#SourceControlResourceGroup)
[scm.createSourceControl](https://code.visualstudio.com/api/references/vscode-api#scm.createSourceControl)
[TextDocumentContentProvider](https://code.visualstudio.com/api/references/vscode-api#TextDocumentContentProvider)
[contributes.menus](https://code.visualstudio.com/api/references/contribution-points#contributes.menus) |
| [Commenting API Sample](https://github.com/Microsoft/vscode-extension-samples/tree/master/comment-sample) | N/A | |
| [Document Editing Sample](https://github.com/Microsoft/vscode-extension-samples/tree/master/document-editing-sample) | N/A | [commands](https://code.visualstudio.com/api/references/vscode-api#commands) |
+| [Custom Data Sample](https://github.com/Microsoft/vscode-extension-samples/tree/master/custom-data-sample) | [/api/extension-guides/custom-data-extension](https://code.visualstudio.com/api/extension-guides/custom-data-extension) | [commands](https://code.visualstudio.com/api/references/vscode-api#commands) |
### Language Protocol Server Samples
diff --git a/custom-data-sample/.vscode/launch.json b/custom-data-sample/.vscode/launch.json
new file mode 100644
index 00000000..9a1bdb20
--- /dev/null
+++ b/custom-data-sample/.vscode/launch.json
@@ -0,0 +1,12 @@
+{
+ "version": "0.2.0",
+ "configurations": [
+ {
+ "name": "Run Extension",
+ "type": "extensionHost",
+ "request": "launch",
+ "runtimeExecutable": "${execPath}",
+ "args": ["--extensionDevelopmentPath=${workspaceFolder}"]
+ }
+ ]
+}
diff --git a/custom-data-sample/.vscode/settings.json b/custom-data-sample/.vscode/settings.json
new file mode 100644
index 00000000..48813806
--- /dev/null
+++ b/custom-data-sample/.vscode/settings.json
@@ -0,0 +1,4 @@
+{
+ "html.customData": ["./html.html-data.json"],
+ "css.customData": ["./css.css-data.json"]
+}
diff --git a/custom-data-sample/README.md b/custom-data-sample/README.md
new file mode 100644
index 00000000..ae505030
--- /dev/null
+++ b/custom-data-sample/README.md
@@ -0,0 +1,22 @@
+# Custom Data Sample
+
+This demonstrates packaging [custom data](https://github.com/microsoft/vscode-custom-data) into a VS Code extension.
+
+Guide for this sample: https://code.visualstudio.com/api/extension-guides/custom-data-extension.
+
+## Demo
+
+
+
+## VS Code API
+
+### Contribution Points
+
+- [`contributes.html.customData`](https://code.visualstudio.com/api/extension-guides/custom-data-extension)
+- [`contributes.css.customData`](https://code.visualstudio.com/api/extension-guides/custom-data-extension)
+
+## Running the Sample
+
+- Run the `Run Extension` target in the Debug View.
+- Open a HTML file. You should receive auto completion and hover information for the HTML entities defined in `html.html-data.json`.
+- Open a CSS file. You should receive auto completion and hover information for the CSS entities defined in `css.css-data.json`.
\ No newline at end of file
diff --git a/custom-data-sample/css.css-data.json b/custom-data-sample/css.css-data.json
new file mode 100644
index 00000000..7ecb26c5
--- /dev/null
+++ b/custom-data-sample/css.css-data.json
@@ -0,0 +1,17 @@
+{
+ "version": 1.1,
+ "properties": [{
+ "name": "my-size",
+ "description": "Compiles down to `width` and `height`. See details at https://github.com/postcss/postcss-size",
+ "references": [
+ {
+ "name": "GitHub",
+ "url": "https://github.com/postcss/postcss-size"
+ }
+ ]
+ }],
+ "pseudoClasses": [{
+ "name": ":my-link",
+ "description": ":any-link pseudo class. See details at https://preset-env.cssdb.org/features#any-link-pseudo-class"
+ }]
+}
\ No newline at end of file
diff --git a/custom-data-sample/demo.gif b/custom-data-sample/demo.gif
new file mode 100644
index 00000000..bdd06d2a
Binary files /dev/null and b/custom-data-sample/demo.gif differ
diff --git a/custom-data-sample/html.html-data.json b/custom-data-sample/html.html-data.json
new file mode 100644
index 00000000..ed8cef4d
--- /dev/null
+++ b/custom-data-sample/html.html-data.json
@@ -0,0 +1,20 @@
+{
+ "version": 1.1,
+ "tags": [{
+ "name": "my-button",
+ "description": "My button",
+ "attributes": [{
+ "name": "type",
+ "description": "My button type",
+ "values": [
+ { "name": "alert" }
+ ]
+ }],
+ "references": [
+ {
+ "name": "Bootstrap buttons",
+ "url": "https://getbootstrap.com/docs/4.0/components/buttons/"
+ }
+ ]
+ }]
+}
\ No newline at end of file
diff --git a/custom-data-sample/package.json b/custom-data-sample/package.json
new file mode 100644
index 00000000..197195bd
--- /dev/null
+++ b/custom-data-sample/package.json
@@ -0,0 +1,22 @@
+{
+ "name": "custom-data-sample",
+ "description": "Custom Data sample extension for VS Code",
+ "version": "0.0.1",
+ "publisher": "vscode-samples",
+ "repository": "https://github.com/Microsoft/vscode-extension-samples",
+ "engines": {
+ "vscode": "^1.38.0"
+ },
+ "contributes": {
+ "html": {
+ "customData": [
+ "./html.html-data.json"
+ ]
+ },
+ "css": {
+ "customData": [
+ "./css.css-data.json"
+ ]
+ }
+ }
+}