1/**
2 * @license
3 * Copyright (C) 2015 ribrdb @ code.google.com
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 *    http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18
19// Contributed by ribrdb @ code.google.com
20
21/**
22 * @fileoverview
23 * Registers a language handler for YAML.
24 *
25 * @author ribrdb
26 */
27
28PR['registerLangHandler'](
29  PR['createSimpleLexer'](
30    [
31      [PR['PR_PUNCTUATION'], /^[:|>?]+/, null, ':|>?'],
32      [PR['PR_DECLARATION'],  /^%(?:YAML|TAG)[^#\r\n]+/, null, '%'],
33      [PR['PR_TYPE'], /^[&]\S+/, null, '&'],
34      [PR['PR_TYPE'], /^!\S*/, null, '!'],
35      [PR['PR_STRING'], /^"(?:[^\\"]|\\.)*(?:"|$)/, null, '"'],
36      [PR['PR_STRING'], /^'(?:[^']|'')*(?:'|$)/, null, "'"],
37      [PR['PR_COMMENT'], /^#[^\r\n]*/, null, '#'],
38      [PR['PR_PLAIN'], /^\s+/, null, ' \t\r\n']
39    ],
40    [
41      [PR['PR_DECLARATION'], /^(?:---|\.\.\.)(?:[\r\n]|$)/],
42      [PR['PR_PUNCTUATION'], /^-/],
43      [PR['PR_KEYWORD'], /^[\w-]+:[ \r\n]/],
44      [PR['PR_PLAIN'], /^\w+/]
45    ]), ['yaml', 'yml']);
46