view runtime/syntax/dart.vim @ 22938:760526e5cd29 v8.2.2016

patch 8.2.2016: swap file test is a little flaky Commit: https://github.com/vim/vim/commit/c6ca9f3a29bfd6f5269749036f79f63ce6289692 Author: Bram Moolenaar <Bram@vim.org> Date: Thu Nov 19 18:57:23 2020 +0100 patch 8.2.2016: swap file test is a little flaky Problem: Swap file test is a little flaky. Solution: Don't set a byte to a fixed value, increment it.
author Bram Moolenaar <Bram@vim.org>
date Thu, 19 Nov 2020 19:00:07 +0100
parents 6d11fc4aa683
children
line wrap: on
line source

" 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