" Vim syntax file " Language: Nit " Maintainer: Jean Privat " This file is part of NIT ( http://www.nitlanguage.org ). " " Copyright 2009 Jean Privat " " Licensed under the Apache License, Version 2.0 (the "License"); " you may not use this file except in compliance with the License. " You may obtain a copy of the License at " " http://www.apache.org/licenses/LICENSE-2.0 " " Unless required by applicable law or agreed to in writing, software " distributed under the License is distributed on an "AS IS" BASIS, " WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. " See the License for the specific language governing permissions and " limitations under the License. if !exists("main_syntax") if version < 600 syntax clear elseif exists("b:current_syntax") finish endif " we define it here so that included files can test for it let main_syntax='nit' endif " Expression Substitution and Backslash Notation syn match NITExprSubstError "{\|}" contained syn match NITExprSubst "\\." contained syn match NITExprSubst "{\([^}]\|\n\)*}" contained syn match NITExprSubstLong "\\." contained syn match NITExprSubstLong "{*\zs{{{\([^}]\|\n\)*}}}\ze}*" contained " Numbers syn match NITNumber "\<\([0-9_]\+\|0[bB][01_]\+\|0[oO][0-7_]\+\|0[xX][0-9a-fA-F_]\+\)\([iu]\(8\|16\|32\)\)\?\>" syn match NITNumber "\<[0-9_]\+\.[0-9_]\+\>" " Identifiers syn match NITClass "\<\u\w*" syn match NITAttribute "\<_\h\w*" " Literal strings syn region NITString matchgroup=NITStringDelimit start="\"" end="\"" skip="\\\\\|\\\"" contains=NITExprSubst,NITExprSubstError,@Spell syn region NITString matchgroup=NITStringDelimit start="\"\"\"" end="\"*\zs\"\"\"" skip="\\\\\|\\\"" contains=NITExprSubstLong,@Spell syn region NITString matchgroup=NITStringDelimit start="'" end="'" skip="\\\\\|\\'" " Labels syn match NITLabel "\