🧑🚀 Not sure what Astro is? See our website at astro.build!
Provides language support for .astro files. This extension is powered by the Astro language server.
- Syntax & semantic highlighting
- Diagnostic messages
- IntelliSense completions (w/ auto-imports)
- Emmet completions in HTML & CSS
- Props completions for JSX/TSX, Vue (Composition API only) and Svelte components
- Code actions (quick fixes, sort imports etc)
- Formatting (powered by Prettier and prettier-plugin-astro)
- Symbols (outline view, breadcrumb navigation, Go to Symbol etc)
- Hover information
- Go to Definition, Go to Type Definition, Go to Implementation etc
- Inlay hints
- Code folding
- Snippets & File Templates
- and more!
A TypeScript plugin adding support for importing and exporting Astro components inside JavaScript and TypeScript files is also included.
HTML and CSS settings can be configured through the html and css setting prefixes. TypeScript-related settings appear in the VS Code Settings UI under the JavaScript and TypeScript (js/ts) category in recent VS Code versions, but the actual JSON keys use the typescript.* namespace (for example, "typescript.preferences.importModuleSpecifier": "non-relative"). For example, HTML documentation on hover can be disabled using "html.hover.documentation": false. Formatting can be configured through Prettier's different configuration methods.
Currently, only inlay hints provided by TypeScript are supported. TypeScript inlay hints are disabled by default and needs to be enabled using the settings under the typescript.inlayHints namespace, for example, to enable inlay hints for parameter names, you would do the following:
{
"typescript.inlayHints.parameterNames.enabled": "all"
}Alternatively, in the GUI this would be in TypeScript > Inlay Hints > Parameter Names. Make sure to update the TypeScript settings and not the JavaScript ones, as Astro is TypeScript-only
See this page for more information on the different settings available for inlay hints