| Index: tools/vim/mojom/syntax/mojom.vim
|
| diff --git a/tools/vim/mojom/syntax/mojom.vim b/tools/vim/mojom/syntax/mojom.vim
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..f8b5a67bf2b8c73e536ac42955378dabd6276148
|
| --- /dev/null
|
| +++ b/tools/vim/mojom/syntax/mojom.vim
|
| @@ -0,0 +1,64 @@
|
| +" Copyright 2015 The Chromium Authors. All rights reserved.
|
| +" Use of this source code is governed by a BSD-style license that can be
|
| +" found in the LICENSE file.
|
| +" Vim syntax file " Language: Mojom
|
| +" To get syntax highlighting for .mojom files, add the following to your .vimrc
|
| +" file:
|
| +" set runtimepath^=/path/to/src/tools/vim/mojom
|
| +syn case match
|
| +
|
| +syntax region mojomFold start="{" end="}" transparent fold
|
| +
|
| +" keyword definitions
|
| +syntax keyword mojomType bool int8 int16 int32 int64 uint8 uint16 uint32 uint64 float double array
|
| +syntax keyword mojomType handle map string
|
| +syntax match mojomImport "^\(import\)\s"
|
| +syntax keyword mojomKeyword const module interface enum struct union
|
| +syntax match mojomOperator /=>/
|
| +syntax match mojomOperator /?/
|
| +
|
| +" Comments
|
| +syntax keyword mojomTodo contained TODO FIXME XXX
|
| +syntax region mojomComment start="/\*" end="\*/" contains=mojomTodo,mojomDocLink,@Spell
|
| +syntax match mojomLineComment "//.*" contains=mojomTodo,@Spell
|
| +syntax match mojomLineDocComment "///.*" contains=mojomTodo,mojomDocLink,@Spell
|
| +syntax region mojomDocLink contained start=+\[+ end=+\]+
|
| +
|
| +" Strings
|
| +syn region mojomString start=+L\="+ skip=+\\\\\|\\"+ end=+"+ contains=@Spell
|
| +hi def link mojomString String
|
| +
|
| +" Numbers
|
| +syntax match mojomFloat '-\?\d*\.\d\+\>'
|
| +syntax match mojomHex '\<0x[0-9a-fA-F]\+\>'
|
| +syntax match mojomInt '-\?\<\(0\>\|[1-9]\d*\)'
|
| +
|
| +" syntax match mojomNumber '\<0\>'
|
| +
|
| +" Literals
|
| +syntax keyword mojomLiteral true false
|
| +syntax keyword mojomLiteral float.INFINITY float.NEGATIVE_INFINITY float.NAN
|
| +syntax keyword mojomLiteral double.INFINITY double.NEGATIVE_INFINITY double.NAN
|
| +
|
| +" The default highlighting.
|
| +highlight default link mojomTodo Todo
|
| +highlight default link mojomComment Comment
|
| +highlight default link mojomLineComment Comment
|
| +highlight default link mojomLineDocComment Comment
|
| +highlight default link mojomDocLink SpecialComment
|
| +highlight default link mojomType Type
|
| +highlight default link mojomImport Include
|
| +highlight default link mojomKeyword Keyword
|
| +highlight default link mojomOperator Operator
|
| +highlight default link mojomLiteral Constant
|
| +highlight default link mojomFloat Float
|
| +highlight default link mojomHex Number
|
| +highlight default link mojomInt Number
|
| +
|
| +
|
| +let b:current_syntax = "mojom"
|
| +let b:spell_options = "contained"
|
| +
|
| +syn sync minlines=500
|
| +
|
| +let b:current_syntax = "mojom"
|
|
|