🎉 initiate project *astro_rewrite*
This commit is contained in:
parent
ffd4d5e86c
commit
2ba37bfbe3
8658 changed files with 2268794 additions and 2538 deletions
107
node_modules/vscode-html-languageservice/docs/customData.md
generated
vendored
Normal file
107
node_modules/vscode-html-languageservice/docs/customData.md
generated
vendored
Normal file
|
|
@ -0,0 +1,107 @@
|
|||
# Custom Data for HTML Language Service
|
||||
|
||||
In VS Code, there are two ways of loading custom HTML datasets:
|
||||
|
||||
1. With setting `html.customData`
|
||||
2. With an extension that contributes `contributes.html.customData`
|
||||
|
||||
Both setting point to a list of JSON files. This document describes the shape of the JSON files.
|
||||
|
||||
You can read more about custom data at: https://github.com/microsoft/vscode-custom-data.
|
||||
|
||||
## Custom Data Format
|
||||
|
||||
The JSON have one required property, `version` and 3 other top level properties:
|
||||
|
||||
```jsonc
|
||||
{
|
||||
"version": 1.1,
|
||||
"tags": [],
|
||||
"globalAttributes": [],
|
||||
"valueSets": []
|
||||
}
|
||||
```
|
||||
|
||||
Version denotes the schema version you are using. The latest schema version is `V1.1`.
|
||||
|
||||
You can find other properties' shapes at [htmlLanguageTypes.ts](../src/htmlLanguageTypes.ts) or the [JSON Schema](./customData.schema.json).
|
||||
|
||||
When working with VSCode, you should suffix your custom data file with `.html-data.json`, so VS Code will load the most recent schema for the JSON file.
|
||||
|
||||
[html5.ts](../src/languageFacts/data/webCustomData.ts) contains that built-in dataset that conforms to the spec.
|
||||
|
||||
## Language Features
|
||||
|
||||
Custom data receives the following language features:
|
||||
|
||||
- Completion on tag, attribute and attribute value
|
||||
- Hover on tag (here's the [issue](https://github.com/Microsoft/vscode-html-languageservice/issues/47) for hover on attribute / attribute-name)
|
||||
|
||||
For example, for the following custom data:
|
||||
|
||||
```json
|
||||
{
|
||||
"tags": [
|
||||
{
|
||||
"name": "foo",
|
||||
"description": "The foo element",
|
||||
"attributes": [
|
||||
{ "name": "bar" },
|
||||
{
|
||||
"name": "baz",
|
||||
"values": [
|
||||
{
|
||||
"name": "baz-val-1"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"globalAttributes": [
|
||||
{ "name": "fooAttr", "description": "Foo Attribute" },
|
||||
{ "name": "xattr", "description": "X attributes", "valueSet": "x" }
|
||||
],
|
||||
"valueSets": [
|
||||
{
|
||||
"name": "x",
|
||||
"values": [
|
||||
{
|
||||
"name": "xval",
|
||||
"description": "x value"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
- Completion on `<|` will provide `foo`
|
||||
- Completion on `<foo |` will provide `bar` and `baz`
|
||||
- Completion on `<foo baz=|` will provide `baz-val-1`
|
||||
- Completion on `<foo |` will also provide the global attributes `fooAttr` and `xattr`
|
||||
- Completion on `<foo xattr=>` will provide all values in valueSet `x`, which is `xval`
|
||||
- Hover on `foo` will show `The foo element`
|
||||
|
||||
### Additional properties
|
||||
|
||||
For either `tag`, `attribute` or `attributeValue`, you can provide a `references` property of the following form
|
||||
|
||||
```json
|
||||
{
|
||||
"tags": [
|
||||
{
|
||||
"name": "foo",
|
||||
"description": "The foo element",
|
||||
"references": [
|
||||
{
|
||||
"name": "My foo element reference",
|
||||
"url": "https://www.foo.com/element/foo"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
It will be displayed in Markdown form in completion and hover as `[My foo element reference](https://www.foo.com/element/foo)`.
|
||||
205
node_modules/vscode-html-languageservice/docs/customData.schema.json
generated
vendored
Normal file
205
node_modules/vscode-html-languageservice/docs/customData.schema.json
generated
vendored
Normal file
|
|
@ -0,0 +1,205 @@
|
|||
{
|
||||
"$schema": "http://json-schema.org/draft-07/schema",
|
||||
"$id": "vscode-html-customdata",
|
||||
"version": 1.1,
|
||||
"title": "VS Code HTML Custom Data format",
|
||||
"description": "Format for loading Custom Data in VS Code's HTML support",
|
||||
"type": "object",
|
||||
"required": ["version"],
|
||||
"definitions": {
|
||||
"references": {
|
||||
"type": "object",
|
||||
"required": ["name", "url"],
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string",
|
||||
"description": "The name of the reference."
|
||||
},
|
||||
"url": {
|
||||
"type": "string",
|
||||
"description": "The URL of the reference.",
|
||||
"pattern": "https?:\/\/",
|
||||
"patternErrorMessage": "URL should start with http:// or https://"
|
||||
}
|
||||
}
|
||||
},
|
||||
"markupDescription": {
|
||||
"type": "object",
|
||||
"required": ["kind", "value"],
|
||||
"properties": {
|
||||
"kind": {
|
||||
"type": "string",
|
||||
"description": "Whether `description.value` should be rendered as plaintext or markdown",
|
||||
"enum": [
|
||||
"plaintext",
|
||||
"markdown"
|
||||
]
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"description": "Description shown in completion and hover"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"properties": {
|
||||
"version": {
|
||||
"const": 1.1,
|
||||
"description": "The custom data version",
|
||||
"type": "number"
|
||||
},
|
||||
"tags": {
|
||||
"description": "Custom HTML tags",
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"required": ["name"],
|
||||
"defaultSnippets": [
|
||||
{
|
||||
"body": {
|
||||
"name": "$1",
|
||||
"description": "",
|
||||
"attributes": []
|
||||
}
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string",
|
||||
"description": "Name of tag"
|
||||
},
|
||||
"description": {
|
||||
"description": "Description of tag shown in completion and hover",
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{ "$ref": "#/definitions/markupDescription" }
|
||||
]
|
||||
},
|
||||
"attributes": {
|
||||
"type": "array",
|
||||
"description": "A list of possible attributes for the tag",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"required": ["name"],
|
||||
"defaultSnippets": [
|
||||
{
|
||||
"body": {
|
||||
"name": "$1",
|
||||
"description": "",
|
||||
"values": []
|
||||
}
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string",
|
||||
"description": "Name of attribute"
|
||||
},
|
||||
"description": {
|
||||
"description": "Description of attribute shown in completion and hover",
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{ "$ref": "#/definitions/markupDescription" }
|
||||
]
|
||||
},
|
||||
"valueSet": {
|
||||
"type": "string",
|
||||
"description": "Name of the matching attribute value set"
|
||||
},
|
||||
"values": {
|
||||
"type": "array",
|
||||
"description": "A list of possible values for the attribute",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"required": ["name"],
|
||||
"defaultSnippets": [
|
||||
{
|
||||
"body": {
|
||||
"name": "$1",
|
||||
"description": ""
|
||||
}
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string",
|
||||
"description": "Name of attribute value"
|
||||
},
|
||||
"description": {
|
||||
"description": "Description of attribute value shown in completion and hover",
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{ "$ref": "#/definitions/markupDescription" }
|
||||
]
|
||||
},
|
||||
"references": {
|
||||
"type": "array",
|
||||
"description": "A list of references for the attribute value shown in completion and hover",
|
||||
"items": {
|
||||
"$ref": "#/definitions/references"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"references": {
|
||||
"type": "array",
|
||||
"description": "A list of references for the attribute shown in completion and hover",
|
||||
"items": {
|
||||
"$ref": "#/definitions/references"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"references": {
|
||||
"type": "array",
|
||||
"description": "A list of references for the tag shown in completion and hover",
|
||||
"items": {
|
||||
"$ref": "#/definitions/references"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"globalAttributes": {
|
||||
"description": "Custom HTML global attributes",
|
||||
"type": "array",
|
||||
"items": {
|
||||
"$ref": "#/properties/tags/items/properties/attributes/items"
|
||||
}
|
||||
},
|
||||
"valueSets": {
|
||||
"description": "A set of attribute value. When an attribute refers to an attribute set, its value completion will use value from that set",
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"required": ["name"],
|
||||
"defaultSnippets": [
|
||||
{
|
||||
"body": {
|
||||
"name": "$1",
|
||||
"description": "",
|
||||
"values": []
|
||||
}
|
||||
}
|
||||
],
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string",
|
||||
"description": "Name of attribute value in value set"
|
||||
},
|
||||
"values": {
|
||||
"$ref": "#/properties/tags/items/properties/attributes/items/properties/values"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue