📦 Out of Context リポジトリ

リポジトリ / emssr / independent_common_compiler

r2
r2 emssr1
{
r2 emssr2
  "$schema": "https://raw.githubusercontent.com/martinring/tmlanguage/master/tmlanguage.json",
r2 emssr3
  "name": "Common",
r2 emssr4
  "scopeName": "source.cmn",
r2 emssr5
  "patterns": [
r2 emssr6
    { "include": "#headword" },
r2 emssr7
    { "include": "#triple" },
r2 emssr8
    { "include": "#atom" },
r2 emssr9
    { "include": "#outside" }
r2 emssr10
  ],
r2 emssr11
  "repository": {
r2 emssr12
    "headword": {
r2 emssr13
      "comment": "採用語彙の見出し。字母は be bo pa pi pu pe po(06 §17)",
r2 emssr14
      "match": "\\b(?:be|bo|pa|pi|pu|pe|po){2,}\\b",
r2 emssr15
      "name": "entity.name.type.cmn"
r2 emssr16
    },
r2 emssr17
    "triple": {
r2 emssr18
      "comment": "ku を頭に置く三音節。領域の語(region.cam)",
r2 emssr19
      "match": "\\bku(?:ke(?:ke|ko|sa|si|su|se|so)|ket(?:a|i))\\b",
r2 emssr20
      "name": "support.class.cmn"
r2 emssr21
    },
r2 emssr22
    "atom": {
r2 emssr23
      "patterns": [
r2 emssr24
        {
r2 emssr25
          "comment": "層境界 ka と無声ワイヤ ki と零標示 ku",
r2 emssr26
          "match": "\\b(?:ka|ki|ku)\\b",
r2 emssr27
          "name": "punctuation.separator.cmn"
r2 emssr28
        },
r2 emssr29
        {
r2 emssr30
          "comment": "二進有理数の層  one ⊕ ⊖ ⋆ β Δ !",
r2 emssr31
          "match": "\\b(?:hu|no|ha|ti|se|he|ho)\\b",
r2 emssr32
          "name": "constant.numeric.cmn"
r2 emssr33
        },
r2 emssr34
        {
r2 emssr35
          "comment": "二値の層  φ∂ ≤ π",
r2 emssr36
          "match": "\\b(?:so|hi|mo)\\b",
r2 emssr37
          "name": "keyword.operator.cmn"
r2 emssr38
        },
r2 emssr39
        {
r2 emssr40
          "comment": "作業領域  Load Store",
r2 emssr41
          "match": "\\b(?:mi|mu)\\b",
r2 emssr42
          "name": "variable.other.cmn"
r2 emssr43
        },
r2 emssr44
        {
r2 emssr45
          "comment": "閉包 Ω の開きと閉じ",
r2 emssr46
          "match": "\\b(?:ya|yi)\\b",
r2 emssr47
          "name": "keyword.control.cmn"
r2 emssr48
        },
r2 emssr49
        {
r2 emssr50
          "comment": "判定値 𝒬。非可換 quantale(GCLS 定理 3.3)",
r2 emssr51
          "match": "\\b(?:to|na|ni|nu|ne|yu|ye|yo|ra|ri|ru|go)\\b",
r2 emssr52
          "name": "entity.name.function.cmn"
r2 emssr53
        },
r2 emssr54
        {
r2 emssr55
          "comment": "鎖  ∂ と ⊕",
r2 emssr56
          "match": "\\b(?:bi|bu)\\b",
r2 emssr57
          "name": "support.function.cmn"
r2 emssr58
        },
r2 emssr59
        {
r2 emssr60
          "comment": "報告  Ok Ko Put",
r2 emssr61
          "match": "\\b(?:me|di|du)\\b",
r2 emssr62
          "name": "keyword.other.cmn"
r2 emssr63
        },
r2 emssr64
        {
r2 emssr65
          "comment": "音節表にはあるが平文の生成元に割り当たっていない綴り",
r2 emssr66
          "match": "\\b[kstnhmyrwgzdbp][aiueo]\\b",
r2 emssr67
          "name": "comment.cmn"
r2 emssr68
        }
r2 emssr69
      ]
r2 emssr70
    },
r2 emssr71
    "outside": {
r2 emssr72
      "comment": "音節へ切れない ASCII 小文字。読みはここで Ko になる(19 式 4.1)",
r2 emssr73
      "match": "[a-z]{3,}|\\b[a-z]\\b",
r2 emssr74
      "name": "invalid.illegal.cmn"
r2 emssr75
    }
r2 emssr76
  }
r2 emssr77
}