Commit graph

34 commits

Author SHA1 Message Date
Ananda Umamil
db03443582
fix(ecma): template string injections (#6590) 2024-05-07 10:14:15 -07:00
DimensionalDot
9d5cee38b3
feat(ecma): inject async template functions 2024-05-02 01:10:43 -04:00
Phạm Huy Hoàng
722617e672 refactor(format): drop extra indentation for field 2024-03-21 15:51:26 +01:00
Mark Skelton
35c1a32b26
* feat(ecma): styled injection for css and keyframes 2024-03-13 23:02:55 +09:00
Amaan Qureshi
6da205148f chore(ecma,jsx): update parser and queries 2024-01-31 22:31:50 -05:00
Dennis van den Berg
2fb2100fed
feat(angular)!: switch to parser supporting v17 (#5779) 2024-01-27 12:17:25 +01:00
Phạm Huy Hoàng
77e298e4de chore: format queries 2024-01-21 23:55:02 +09:00
Pham Huy Hoang
57a8acf0c4 chore: query formatting 2024-01-19 16:58:37 +01:00
Mark Skelton
a0b815497b
feat: add tree-sitter-styled (#5735)
* Add styled parser

* Add queries

* Update highlights

* Remove unnecessary highlights

* Update injections to use the styled grammar

* Remove requires npm
2023-12-19 21:53:00 +09:00
Tobias S
8e9cc89955
fix(ecma_injections): limit function names to alphanumeric characters only 2023-08-31 22:41:07 +09:00
Pham Huy Hoang
294f753ed3
fix(ecma): fix no injections for innerHTML (#5258) 2023-08-16 16:58:25 +09:00
Pham Huy Hoang
78b54eb7f6 chore(injections)!: update injection syntax to 0.9
Since 0.9, @lang syntax is still available as fallback but will soon be deprecated.
Because of that, new syntax should be adopted once 0.9 becomes the
baseline requirements for nvim-treesitter

- update health check
- update doc
2023-08-12 17:34:15 +02:00
Amaan Qureshi
85330918f0 perf: remove match where possible 2023-04-21 18:24:17 -04:00
Amaan Qureshi
da7f886ab5 perf(ecma): remove GraphQL comment injection, use lua-match for gql template detection 2023-04-15 20:13:44 -04:00
Amaan Qureshi
0a20d1bb63 feat(ecma): use lua-match for jsdoc injections 2023-04-03 11:13:04 -04:00
Benny Powers
38f878a1cd fix: svg injection in ecma tagged literals 2023-03-19 08:20:16 -04:00
Benny Powers
f15db0b652 style: alternation in template literal query 2023-03-19 08:20:16 -04:00
Benny Powers
1ba94e9f01 fix(ecma): template literal injections
see e3ebc8ec5d (commitcomment-104824257) for explanation

This also assigns the HTML parser for SVG tagged literals, since svg uses the HTML parser
2023-03-19 08:20:16 -04:00
Peter Lamby
e3ebc8ec5d
fix(ecma): inject properly based on "call_expression"
Also add a comment what the query does.
2023-03-12 16:27:40 +00:00
Benny Powers
8d2f9903f1 feat(ecma): include outerHTML and innerHTML 2023-02-25 11:17:13 -05:00
Benny Powers
248a87ef65 feat(ecma): add innerHTML injection 2023-02-25 11:17:13 -05:00
NullVoxPopuli
c945b34179 Update ecma injections to support recent additions to tree-sitter-javascript/typescript 2022-10-24 14:27:14 -07:00
Nick Friday
ba752cee13 fix(ecma injections): jsdoc match /** */ only 2022-09-15 15:41:18 -07:00
Jackson Ludwig
b39840302c
injections(ecma): add injection for commented graphql template strings (#2987) 2022-06-05 11:50:48 +02:00
Steve Occhipinti
c6b90ee9bd Handle .attrs() cases
Now that there are 4 cases handled, I thought it probably needs some comments to
show which case each injection is for.

There are other unsupported cases, such as `.withConfig` but I'm not sure if
they all belong here or into their own plugin or something.

The API reference is available here:
https://styled-components.com/docs/api

Also, not sure if there is a more generic way of handling all these cases at
once, a rule that would read: "any template string descendant from 'styled'".

Will attempt to open a PR and get some advice.
2021-11-28 15:02:55 +01:00
Steve Occhipinti
6240dae0e4 Support both styled.div and styled(Component)
This new injection caters for code like this:

```
const IntroWindow = styled(Window)`
  grid-area: intro;
`
```
2021-11-28 15:02:55 +01:00
Steve Occhipinti
058e050315 Add a basic styled-components injection
I've never written this sort of code before but I was able to get this to work
with the help of copy and paste and using nvim-treesitter/playground.

I had a hard time trying to understand how to indent this style of code so I let
vim do it with `=` and 2 spaces seems to match other files I looked at.

This works for a basic example, like this:

```
const Layout = styled.div`
  position: absolute;
  inset: 0;
  display: grid;
  grid-template-rows: 100px 1fr 3rem;
`
```
2021-11-28 15:02:55 +01:00
Steven Sojka
eb6fdb5085 chore(injections): remove duplicated regex injection for js 2021-06-11 16:15:14 +02:00
Santos Gallegos
67f0857015 Revert "Comment: use @combined to create just one tree per buffer (#1252)"
This reverts commit 4a7a713c52.
2021-05-07 16:51:57 +02:00
Santos Gallegos
4a7a713c52
Comment: use @combined to create just one tree per buffer (#1252)
* Comment: use `@combined` to create just one tree per buffer

There is no need to create a tree per line/block for comments.
Should fix https://github.com/nvim-treesitter/nvim-treesitter/issues/1251

* Add injections for scss

* Fix jsonc

* Combine jsdoc
2021-04-28 07:19:07 -05:00
Stephan Seitz
099b921542 injections(js): add regex highlighting 2021-04-06 21:27:47 +02:00
Santos Gallegos
0df7c4aa39
Fix jsdoc: play nice with the comment parser (#1108)
Using separate queries makes it work as expected.
Also, for the comment parser to be able to override the other tokens
we need to remove the comment from highlights (this shouldn't be a
problem since that section is already highlighted as a comment).

And, the order of the captures matter,
having jsdoc first will have more priority over `@param`.

Fixes https://github.com/nvim-treesitter/nvim-treesitter/issues/1069
2021-03-27 10:51:16 -05:00
Hanh Le
5f97c41c54 Update injections.scm 2021-03-18 18:37:04 +01:00
kiyan
3b8c2ea492 chore: create ecma base for use in js and ts which fixes jsx issues 2021-03-10 17:34:11 +01:00