diff runtime/syntax/dart.vim @ 18456:6d11fc4aa683

Update runtime files Commit: https://github.com/vim/vim/commit/96f45c0b6fc9e9d404e6805593ed1e0e6795e470 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Oct 26 19:53:45 2019 +0200 Update runtime files
author Bram Moolenaar <Bram@vim.org>
date Sat, 26 Oct 2019 20:00:04 +0200
parents
children
line wrap: on
line diff
new file mode 100644
--- /dev/null
+++ b/runtime/syntax/dart.vim
@@ -0,0 +1,90 @@
+" Vim syntax file
+"
+" Language:     Dart
+" Maintainer:   Eugene 'pr3d4t0r' Ciurana <dart.syntax AT cime.net >
+" Source:       https://github.com/pr3d4t0r/dart-vim-syntax
+" Last Update:	2019 Oct 19
+"
+" License:      Vim is Charityware.  dart.vim syntax is Charityware.
+"               (c) Copyright 2019 by Eugene Ciurana / pr3d4t0r.  Licensed
+"               under the standard VIM LICENSE - Vim command :help uganda.txt
+"               for details.
+"
+" Questions, comments:  <dart.syntax AT cime.net>
+"                       https://ciurana.eu/pgp, https://keybase.io/pr3d4t0r
+"
+" vim: set fileencoding=utf-8:
+
+
+" Quit when a (custom) syntax file was already loaded
+if exists("b:current_syntax")
+  finish
+endif
+
+let s:cpo_save = &cpo
+set cpo&vim
+
+
+syn keyword dartCommentTodo     contained TODO FIXME XXX TBD
+syn match   dartLineComment     "//.*" contains=dartTodo,@Spell
+syn match   dartCommentSkip     "^[ \t]*\*\($\|[ \t]\+\)"
+syn region  dartComment         start="/\*"  end="\*/" contains=@Spell,dartTodo
+syn keyword dartReserved        assert async await class const export extends external final hide import implements interface library mixin on show super sync yield
+syn match   dartNumber          "-\=\<\d\+L\=\>\|0[xX][0-9a-fA-F]\+\>"
+
+
+syn keyword dartBoolean     false true
+syn keyword dartBranch      break continue
+syn keyword dartConditional if else switch
+syn keyword dartException   catch finally rethrow throw try
+syn keyword dartIdentifier  abstract covariant deferred dynamic factory Function operator part static this typedef var
+syn keyword dartLabel       case default
+syn keyword dartNull        null
+syn keyword dartOperator    is new
+syn keyword dartRepeat      for do in while
+syn keyword dartStatement   return with 
+syn keyword dartType        bool double enum int String StringBuffer void
+syn keyword dartTodo        contained TODO FIXME XXX
+
+
+syn match  dartEscape       contained "\\\([4-9]\d\|[0-3]\d\d\|[\"\\'ntbrf]\|u\x\{4\}\)"
+syn match  dartSpecialError contained "\\."
+syn match  dartStrInterpol  contained "\${[\x, _]*\}"
+
+syn region dartDQString     start=+"+ end=+"+ end=+$+ contains=dartEscape,dartStrInterpol,dartSpecialError,@Spell
+syn region dartSQString     start=+'+ end=+'+ end=+$+ contains=dartEscape,dartStrInterpol,dartSpecialError,@Spell
+
+syn match dartBraces        "[{}\[\]]"
+syn match dartParens        "[()]"
+
+
+syn sync fromstart
+syn sync maxlines=100
+
+
+hi def link dartBoolean         Boolean
+hi def link dartBranch          Conditional
+hi def link dartComment         Comment
+hi def link dartConditional     Conditional
+hi def link dartDQString        String
+hi def link dartEscape          SpecialChar
+hi def link dartException       Exception
+hi def link dartIdentifier      Identifier
+hi def link dartLabel           Label
+hi def link dartLineComment     Comment
+hi def link dartNull            Keyword
+hi def link dartOperator        Operator
+hi def link dartRepeat          Repeat
+hi def link dartReserved        Keyword
+hi def link dartSQString        String
+hi def link dartSpecialError    Error
+hi def link dartStatement       Statement
+hi def link dartStrInterpol     Special
+hi def link dartTodo            Todo
+hi def link dartType            Type
+
+
+let b:current_syntax = "dart"
+let &cpo = s:cpo_save
+unlet s:cpo_save
+