Commit graph

72 commits

Author SHA1 Message Date
Ananda Umamil
a02a06a068 highlights(typescript): : in switch statement 2023-05-18 21:34:42 -04:00
Amaan Qureshi
85330918f0 perf: remove match where possible 2023-04-21 18:24:17 -04:00
Amaan Qureshi
7ade4d2e77
fix(ecma): comment should be @indent.auto (#4669) 2023-04-18 08:04:04 +09: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
ObserverOfTime
18f9e1a47f javascript: highlight more builtins
Co-Authored-By: Sergey Berezhnoy <veged@ya.ru>
2023-04-12 13:46:06 -04:00
Amaan Qureshi
0a20d1bb63 feat(ecma): use lua-match for jsdoc injections 2023-04-03 11:13:04 -04:00
George Harker
cb568af539 use indent.X syntax for captures and properties of set directives
update CONTRIBUTING.md

adjust indents for bass

fix doc capture comment
2023-03-24 13:07:53 -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
Amaan Qureshi
964dc882e9 Partially Revert "fix(ecma): properly capture constants in const declarations"
This partially reverts commit c553e6c560.
2023-03-10 02:38:36 -05:00
Amaan Qureshi
5a87bc98da feat: add @comment.documentation where applicable 2023-03-05 17:15:32 -05:00
Amaan Qureshi
c553e6c560 fix(ecma): properly capture constants in const declarations 2023-03-04 05:00:39 -05:00
Amaan Qureshi
33ba346e60 feat!: add @keyword.coroutine capture 2023-03-03 07:07:52 -08: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
ObserverOfTime
0e6d4b4172 highlights(ecma): limit constructor highlight 2023-02-03 14:32:28 -08:00
Pham Huy Hoang
2cd89b4bc3 fix(jsx): add missing indent end mark to elements 2023-01-04 12:14:03 +01:00
Raymond Ha
6c4772f7b6 indents(ecma): Fix switch default indent 2022-12-07 18:05:33 +01:00
Stephan Seitz
d6a2ecb8b7 highlights: create subscoping for ternary operator
After https://github.com/nvim-treesitter/nvim-treesitter/issues/470,
we decided to use `@conditional` for ternary operator instead of
operator despite `@conditional` is documented for keywords only.
A sub-scoping can make it easier for people to highlight this operator
group differently.

Also unify the usage of `@conditional...` across languages.
2022-12-02 21:42:11 +01:00
ObserverOfTime
fa4b9941e6 highlights(ecma): fix captures
Co-Authored-By: Stephan Seitz <stephan.seitz@fau.de>
2022-11-26 13:17:51 +02:00
Raymond Ha
faf78ce12a Narrow as @include query 2022-11-25 00:34:25 +01:00
Trard
cc2268e1c7 highlights(ecma): distinguish between "default" in export and switch statements 2022-11-24 21:55:50 +01:00
Trard
bbe90e9318 removed switch from keywords 2022-11-21 10:23:28 +01:00
NullVoxPopuli
c945b34179 Update ecma injections to support recent additions to tree-sitter-javascript/typescript 2022-10-24 14:27:14 -07:00
Munif Tanjim
63d7e456ea highlights(ecma): add pair_pattern punctuation.delimiter 2022-10-17 14:37:36 -07:00
ObserverOfTime
9b43ab819c highlights: use @preproc where appropriate 2022-10-15 08:49:01 -07:00
Lewis Russell
37398c7d68 feat(spell): support more languages 2022-09-26 13:47:12 +01:00
Nick Friday
ba752cee13 fix(ecma injections): jsdoc match /** */ only 2022-09-15 15:41:18 -07:00
Stephan Seitz
f66a911a95 highlights(ecma): use @method.call/function.call 2022-09-11 04:16:06 -07:00
Stephan Seitz
00b4ef5759 indents(ecma): make "]" @indent_end
Fixes #3382
2022-09-10 12:59:21 -07:00
Sergio Alejandro Vargas
fb6d60c7b9 highlights(ecma): Update queries for literals
- Add queries for value properties:
    - undefined
    - NaN
    - Infinity
- Highlight regex delimiters as brackets instead of punctuation
- Format queries for literals
2022-08-22 15:51:08 -07:00
GitHub
9dd1065ebe highlights(javascript): "?." -> optional_chain 2022-08-20 10:42:19 +02:00
Kiyan
6f3fbb2622
fix(ecma): indent end for bracket (#3121) 2022-07-07 14:35:12 +02:00
Jackson Ludwig
b39840302c
injections(ecma): add injection for commented graphql template strings (#2987) 2022-06-05 11:50:48 +02:00
William Mathewson
57f4dbd47b Use @definition.function for method & func definitions 2022-05-14 20:35:09 +02:00
William Mathewson
81dd6c988c Add method to definitions in ECMA locals
In Telescope, function declarations were being exposed in the selector,
but not method definitions which are also a form of function
declaration.
2022-05-14 20:35:09 +02:00
Stephan Seitz
bda4b35f76 indents(ecma): use auto indent on (ERROR)
Fixes #2515
2022-04-04 09:03:30 +02:00
Munif Tanjim
3ef2c77e13 fix(indent): ecma - parenthesized expression indentation 2022-02-26 15:44:37 +01:00
Munif Tanjim
20168d8e20 fix(indent): ecma - class method indentation 2022-02-26 15:44:11 +01:00
Munif Tanjim
7a6d93ca5b feat(indent): ecma - support common use-cases 2022-01-21 16:40:36 +01:00
Munif Tanjim
8f9d4ada35 feat(indent): ecma - support try_catch and if_else 2022-01-21 16:40:36 +01:00
Stephan Seitz
1bbc761acc highlights(ecma): highlight escape_sequence 2021-12-12 02:43:08 +01: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
numToStr
801c7f0b48 ecma: highlight private properties and methods 2021-11-25 15:42:24 +01:00
Lewis Russell
011ac894ec Prefer lua-match over match
as string.find is much quicker than vim.regex:match*
2021-11-23 10:02:06 +01:00
kiyan
3b533422df fix: remove priority in ecma template substitution hl
This PR removes the priority override for the interpolation because it
overrides every ecma based template literal, setting none with a higher
priority than ecma groups which made every template string look
`un`highlighted.
2021-10-03 11:01:30 +02:00