Vue tooling for VSCode.
This extension is in development and not stable yet.
You can open an issue for bugs or feature requests.
- Basic IntelliSense for html/css/scss/less/js
- Advanced IntelliSense to suggest
v-
directives andkey
,ref
,slot
as html attributes - Linting for js via ESLint, basic error checking for css/scss/less
- Formatting for html/css/scss/less/js
- Syntax highlighting for:
- html/jade/pug
- css/sass/scss/less/stylus/postcss
- js/ts/coffee
- Embedded snippet support
- Use vue snippet outside all regions
- Use each language's snippet inside its region
- Define html snippets you want to use inside
<template>
asvue-html
snippet
- Emmet for html/css/sass/scss/less
Try for yourself on this file: demo/vetur.vue.
- Install vetur
Emmet:
-
In your user settings, set
"emmet.syntaxProfiles": { "vue-html": "html", "vue": "html" }
ESLint for linting <script>
section:
-
Install ESLint extension
-
Add
vue
to youreslint.validate
setting, for example:"eslint.validate": [ "javascript", "javascriptreact", "vue" ]
Stylus:
- Install Stylus extension for Stylus support
VSCode < 1.10
-
In your user settings, set
"files.associations": { "*.vue": "vue" }
- Build a language server
- IntelliSense for css/scss
- Basic IntelliSense for js/es6 in
<script>
- Error checking for css/scss/less
- Snippet for embedded languages
- Embedded formatter for html/css/scss/less/js
- Advanced IntelliSense (In progress, see #26)
- Jump to definition
- Debugging embedded JS by setting breakpoints directly
- octref/vls: vue language server, used to provide advanced IntelliSense, formatting and other language features.
See CONTRIBUTING.md
- Logo from vuejs/vuejs.org
- Grammar based on vuejs/vue-syntax-highlight
- Sass grammar based on robinbentley/vscode-sass-indented
- PostCSS grammar based on azat-io/atom-language-postcss
- Language Server based on VSCode's html extension
MIT © Pine Wu