Mercurial > vim
annotate runtime/syntax/proto.vim @ 27274:34e3b99f045d
Added tag v8.2.4165 for changeset a9f0c1f06c84a915894a2da5711c4755af4cfa65
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Thu, 20 Jan 2022 21:30:03 +0100 |
parents | 8dad79c661d1 |
children |
rev | line source |
---|---|
22824 | 1 " Protocol Buffers - Google's data interchange format |
4869 | 2 " Copyright 2008 Google Inc. All rights reserved. |
22824 | 3 " https://developers.google.com/protocol-buffers/ |
4869 | 4 " |
22824 | 5 " Redistribution and use in source and binary forms, with or without |
6 " modification, are permitted provided that the following conditions are | |
7 " met: | |
4869 | 8 " |
22824 | 9 " * Redistributions of source code must retain the above copyright |
10 " notice, this list of conditions and the following disclaimer. | |
11 " * Redistributions in binary form must reproduce the above | |
12 " copyright notice, this list of conditions and the following disclaimer | |
13 " in the documentation and/or other materials provided with the | |
14 " distribution. | |
15 " * Neither the name of Google Inc. nor the names of its | |
16 " contributors may be used to endorse or promote products derived from | |
17 " this software without specific prior written permission. | |
4869 | 18 " |
22824 | 19 " THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
20 " "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT | |
21 " LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR | |
22 " A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT | |
23 " OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | |
24 " SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT | |
25 " LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | |
26 " DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | |
27 " THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | |
28 " (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | |
29 " OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |
30 | |
31 " This is the Vim syntax file for Google Protocol Buffers as found at | |
32 " https://github.com/protocolbuffers/protobuf | |
33 " Last update: 2020 Oct 29 | |
4869 | 34 |
10048
43efa4f5a8ea
commit https://github.com/vim/vim/commit/89bcfda6834aba724d12554a34b9ed49f5789fd5
Christian Brabandt <cb@256bit.org>
parents:
4869
diff
changeset
|
35 " quit when a syntax file was already loaded |
43efa4f5a8ea
commit https://github.com/vim/vim/commit/89bcfda6834aba724d12554a34b9ed49f5789fd5
Christian Brabandt <cb@256bit.org>
parents:
4869
diff
changeset
|
36 if exists("b:current_syntax") |
4869 | 37 finish |
38 endif | |
39 | |
40 syn case match | |
41 | |
42 syn keyword protoTodo contained TODO FIXME XXX | |
43 syn cluster protoCommentGrp contains=protoTodo | |
44 | |
45 syn keyword protoSyntax syntax import option | |
22824 | 46 syn keyword protoStructure package message group oneof |
4869 | 47 syn keyword protoRepeat optional required repeated |
48 syn keyword protoDefault default | |
22824 | 49 syn keyword protoExtend extend extensions to max reserved |
4869 | 50 syn keyword protoRPC service rpc returns |
51 | |
52 syn keyword protoType int32 int64 uint32 uint64 sint32 sint64 | |
53 syn keyword protoType fixed32 fixed64 sfixed32 sfixed64 | |
54 syn keyword protoType float double bool string bytes | |
55 syn keyword protoTypedef enum | |
56 syn keyword protoBool true false | |
57 | |
58 syn match protoInt /-\?\<\d\+\>/ | |
59 syn match protoInt /\<0[xX]\x+\>/ | |
60 syn match protoFloat /\<-\?\d*\(\.\d*\)\?/ | |
22824 | 61 syn region protoComment start="\/\*" end="\*\/" contains=@pbCommentGrp,@Spell |
62 syn region protoComment start="//" skip="\\$" end="$" keepend contains=@pbCommentGrp,@Spell | |
63 syn region protoString start=/"/ skip=/\\./ end=/"/ contains=@Spell | |
64 syn region protoString start=/'/ skip=/\\./ end=/'/ contains=@Spell | |
4869 | 65 |
66 hi def link protoTodo Todo | |
67 | |
68 hi def link protoSyntax Include | |
69 hi def link protoStructure Structure | |
70 hi def link protoRepeat Repeat | |
71 hi def link protoDefault Keyword | |
72 hi def link protoExtend Keyword | |
73 hi def link protoRPC Keyword | |
74 hi def link protoType Type | |
75 hi def link protoTypedef Typedef | |
76 hi def link protoBool Boolean | |
77 | |
78 hi def link protoInt Number | |
79 hi def link protoFloat Float | |
80 hi def link protoComment Comment | |
81 hi def link protoString String | |
82 | |
83 let b:current_syntax = "proto" |