Skip to content

Commit 3ef4eee

Browse files
authored
Add rescript support (#79)
1 parent de5753e commit 3ef4eee

2 files changed

Lines changed: 54 additions & 0 deletions

File tree

after/syntax/rescript/graphql.vim

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
" Copyright (c) 2016-2021 Jon Parise <jon@indelible.org>
2+
"
3+
" Permission is hereby granted, free of charge, to any person obtaining a copy
4+
" of this software and associated documentation files (the "Software"), to
5+
" deal in the Software without restriction, including without limitation the
6+
" rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
7+
" sell copies of the Software, and to permit persons to whom the Software is
8+
" furnished to do so, subject to the following conditions:
9+
"
10+
" The above copyright notice and this permission notice shall be included in
11+
" all copies or substantial portions of the Software.
12+
"
13+
" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14+
" IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15+
" FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16+
" AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17+
" LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
18+
" FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
19+
" IN THE SOFTWARE.
20+
"
21+
" Language: GraphQL
22+
" Maintainer: Jon Parise <jon@indelible.org>
23+
24+
if exists('b:current_syntax')
25+
let s:current_syntax = b:current_syntax
26+
unlet b:current_syntax
27+
endif
28+
29+
let b:graphql_nested_syntax = 1
30+
syn include @GraphQLSyntax syntax/graphql.vim
31+
unlet b:graphql_nested_syntax
32+
33+
if exists('s:current_syntax')
34+
let b:current_syntax = s:current_syntax
35+
endif
36+
37+
syntax region graphqlExtensionPoint start=+%graphql(+ end=+)+ contains=graphqlExtensionPointS
38+
syntax region graphqlExtensionPointS matchgroup=String start=+`+ end=+`+ contains=@GraphQLSyntax contained

test/rescript/default.vader

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
Before:
2+
source ../after/syntax/rescript/graphql.vim
3+
4+
Given rescript (Template):
5+
%graphql(`
6+
query UserQuery {
7+
user {
8+
id
9+
name
10+
}
11+
}
12+
`)
13+
14+
Execute (Syntax assertions):
15+
AssertEqual 'graphqlExtensionPoint', SyntaxOf('%graphql')
16+
AssertEqual 'graphqlName', SyntaxOf('user')

0 commit comments

Comments
 (0)