summaryrefslogtreecommitdiffstats
path: root/public/prism/prism-ada.js
blob: 78ccd40a39005045d6017c9dbe21589fa608689f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Prism.languages.ada = {
  comment: /--.*/,
  string: /"(?:""|[^"\r\f\n])*"/,
  number: [
    {
      pattern:
        /\b\d(?:_?\d)*#[\dA-F](?:_?[\dA-F])*(?:\.[\dA-F](?:_?[\dA-F])*)?#(?:E[+-]?\d(?:_?\d)*)?/i,
    },
    {
      pattern: /\b\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:E[+-]?\d(?:_?\d)*)?\b/i,
    },
  ],
  'attr-name': /\b'\w+/,
  keyword:
    /\b(?:abort|abs|abstract|accept|access|aliased|all|and|array|at|begin|body|case|constant|declare|delay|delta|digits|do|else|elsif|end|entry|exception|exit|for|function|generic|goto|if|in|interface|is|limited|loop|mod|new|not|null|of|others|out|overriding|package|pragma|private|procedure|protected|raise|range|record|rem|renames|requeue|return|reverse|select|separate|some|subtype|synchronized|tagged|task|terminate|then|type|until|use|when|while|with|xor)\b/i,
  boolean: /\b(?:false|true)\b/i,
  operator: /<[=>]?|>=?|=>?|:=|\/=?|\*\*?|[&+-]/,
  punctuation: /\.\.?|[,;():]/,
  char: /'.'/,
  variable: /\b[a-z](?:\w)*\b/i,
};
{ 'bold-italic': { pattern: /(''''').+?(?=\1)/, lookbehind: !0, alias: ['bold', 'italic'], }, bold: { pattern: /(''')[^'](?:.*?[^'])?(?=\1)/, lookbehind: !0 }, italic: { pattern: /('')[^'](?:.*?[^'])?(?=\1)/, lookbehind: !0 }, punctuation: /^''+|''+$/, }, }, hr: { pattern: /^-{4,}/m, alias: 'punctuation' }, url: [ /ISBN +(?:97[89][ -]?)?(?:\d[ -]?){9}[\dx]\b|(?:PMID|RFC) +\d+/i, /\[\[.+?\]\]|\[.+?\]/, ], variable: [/__[A-Z]+__/, /\{{3}.+?\}{3}/, /\{\{.+?\}\}/], symbol: [/^#redirect/im, /~{3,5}/], 'table-tag': { pattern: /((?:^|[|!])[|!])[^|\r\n]+\|(?!\|)/m, lookbehind: !0, inside: { 'table-bar': { pattern: /\|$/, alias: 'punctuation' }, rest: Prism.languages.markup.tag.inside, }, }, punctuation: /^(?:\{\||\|\}|\|-|[*#:;!|])|\|\||!!/m, })), Prism.languages.insertBefore('wiki', 'tag', { nowiki: { pattern: /<(nowiki|pre|source)\b[^>]*>[\s\S]*?<\/\1>/i, inside: { tag: { pattern: /<(?:nowiki|pre|source)\b[^>]*>|<\/(?:nowiki|pre|source)>/i, inside: Prism.languages.markup.tag.inside, }, }, }, });