| 123456789101112131415161718192021222324252627282930313233343536373839404142 | /*Language: Protocol BuffersAuthor: Dan Tao <[email protected]>Description: Protocol buffer message definition formatCategory: protocols*/function(hljs) {  return {    keywords: {      keyword: 'package import option optional required repeated group',      built_in: 'double float int32 int64 uint32 uint64 sint32 sint64 ' +        'fixed32 fixed64 sfixed32 sfixed64 bool string bytes',      literal: 'true false'    },    contains: [      hljs.QUOTE_STRING_MODE,      hljs.NUMBER_MODE,      hljs.C_LINE_COMMENT_MODE,      {        className: 'class',        beginKeywords: 'message enum service', end: /\{/,        illegal: /\n/,        contains: [          hljs.inherit(hljs.TITLE_MODE, {            starts: {endsWithParent: true, excludeEnd: true} // hack: eating everything after the first title          })        ]      },      {        className: 'function',        beginKeywords: 'rpc',        end: /;/, excludeEnd: true,        keywords: 'rpc returns'      },      {        begin: /^\s*[A-Z_]+/,        end: /\s*=/, excludeEnd: true      }    ]  };}
 |