瀏覽代碼

Add graphql syntax highlight

Andrew Swistak 6 年之前
父節點
當前提交
fb5f95c927
共有 4 個文件被更改,包括 19 次插入0 次删除
  1. 3 0
      .gitmodules
  2. 9 0
      vim/after/syntax/graphql.vim
  3. 6 0
      vim/after/syntax/javascript.vim
  4. 1 0
      vim/bundle/vim-graphql

+ 3 - 0
.gitmodules

@@ -164,3 +164,6 @@
 [submodule "vim/bundle/ale"]
 	path = vim/bundle/ale
 	url = github:w0rp/ale
+[submodule "vim/bundle/vim-graphql"]
+	path = vim/bundle/vim-graphql
+	url = github:jparise/vim-graphql

+ 9 - 0
vim/after/syntax/graphql.vim

@@ -0,0 +1,9 @@
+
+syn clear graphqlStructure
+syn keyword graphqlStructure query mutation fragment nextgroup=graphqlName,graphqlNameWithArgs skipwhite
+
+syn match graphqlNameWithArgs       "\<\h\w*\>\s*\((\)\@="
+
+hi link graphqlName Special
+hi link graphqlStructure Keyword
+hi link graphqlNameWithArgs Function

+ 6 - 0
vim/after/syntax/javascript.vim

@@ -32,6 +32,12 @@ syn region  tsTypeArg         start=/</ end=/>/ matchgroup=tsTypeArgAngleBracket
 " Override the default definitions, adding/removing as necessary
 syn cluster jsAll           contains=@jsExpression,jsStorageClass,jsConditional,jsRepeat,jsReturn,jsException,jsTry,jsNoise,jsBlockLabel,tsPrimitives
 
+
+syn clear jsTemplateString
+syn include @graphql ~/.vim/bundle/vim-graphql/syntax/graphql.vim
+syn region graphqlTemplate start=/graphql`/ end=/`/ keepend contains=@graphql
+syn region jsTemplateString start=/`/ skip=/\\`/ end=/`/  extend contains=jsTemplateExpression,jsSpecial,@Spell
+
 hi link jsObjectKey Special
 hi link jsClassDefinition Type
 hi link jsFutureKeys Keyword

+ 1 - 0
vim/bundle/vim-graphql

@@ -0,0 +1 @@
+Subproject commit 792c7bcb138c1e787a7527f16ce63e8cf53df6ba