https://github.com/ikatyang/tree-sitter-vue
Vue grammar for tree-sitter
https://github.com/ikatyang/tree-sitter-vue
grammar tree-sitter vue
Last synced: 14 days ago
JSON representation
Vue grammar for tree-sitter
- Host: GitHub
- URL: https://github.com/ikatyang/tree-sitter-vue
- Owner: ikatyang
- License: mit
- Created: 2019-10-04T11:47:02.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2024-02-09T16:35:37.000Z (about 1 year ago)
- Last Synced: 2024-10-29T22:08:48.083Z (6 months ago)
- Topics: grammar, tree-sitter, vue
- Language: JavaScript
- Homepage: https://ikatyang.github.io/tree-sitter-vue/
- Size: 566 KB
- Stars: 77
- Watchers: 4
- Forks: 25
- Open Issues: 24
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# tree-sitter-vue
[](https://www.npmjs.com/package/tree-sitter-vue)
[](https://travis-ci.com/ikatyang/tree-sitter-vue/builds)Vue ([Vue v2.6.0 Template Syntax](https://vuejs.org/v2/guide/syntax.html)) grammar for [tree-sitter](https://github.com/tree-sitter/tree-sitter)
_Note: This grammar is not responsible for parsing embedded languages, see [Multi-language Documents](http://tree-sitter.github.io/tree-sitter/using-parsers#multi-language-documents) for more info._
[Changelog](https://github.com/ikatyang/tree-sitter-vue/blob/master/CHANGELOG.md)
## Install
```sh
npm install tree-sitter-vue tree-sitter
```## Usage
```js
const Parser = require("tree-sitter");
const Vue = require("tree-sitter-vue");const parser = new Parser();
parser.setLanguage(Vue);const sourceCode = `
Hello, {{ name }}!
`;
const tree = parser.parse(sourceCode);
console.log(tree.rootNode.toString());
// (component
// (template_element
// (start_tag
// (tag_name))
// (text)
// (element
// (start_tag
// (tag_name)
// (directive_attribute
// (directive_name)
// (directive_dynamic_argument
// (directive_dynamic_argument_value))
// (quoted_attribute_value
// (attribute_value))))
// (interpolation
// (raw_text))
// (end_tag
// (tag_name)))
// (text)
// (end_tag
// (tag_name))))
```## License
MIT © [Ika](https://github.com/ikatyang)