リポジトリ / emssr / independent_common_compiler
r2
| r2 emssr | 1 | { |
| r2 emssr | 2 | "$schema": "https://raw.githubusercontent.com/martinring/tmlanguage/master/tmlanguage.json", |
| r2 emssr | 3 | "name": "Common", |
| r2 emssr | 4 | "scopeName": "source.cmn", |
| r2 emssr | 5 | "patterns": [ |
| r2 emssr | 6 | { "include": "#headword" }, |
| r2 emssr | 7 | { "include": "#triple" }, |
| r2 emssr | 8 | { "include": "#atom" }, |
| r2 emssr | 9 | { "include": "#outside" } |
| r2 emssr | 10 | ], |
| r2 emssr | 11 | "repository": { |
| r2 emssr | 12 | "headword": { |
| r2 emssr | 13 | "comment": "採用語彙の見出し。字母は be bo pa pi pu pe po(06 §17)", |
| r2 emssr | 14 | "match": "\\b(?:be|bo|pa|pi|pu|pe|po){2,}\\b", |
| r2 emssr | 15 | "name": "entity.name.type.cmn" |
| r2 emssr | 16 | }, |
| r2 emssr | 17 | "triple": { |
| r2 emssr | 18 | "comment": "ku を頭に置く三音節。領域の語(region.cam)", |
| r2 emssr | 19 | "match": "\\bku(?:ke(?:ke|ko|sa|si|su|se|so)|ket(?:a|i))\\b", |
| r2 emssr | 20 | "name": "support.class.cmn" |
| r2 emssr | 21 | }, |
| r2 emssr | 22 | "atom": { |
| r2 emssr | 23 | "patterns": [ |
| r2 emssr | 24 | { |
| r2 emssr | 25 | "comment": "層境界 ka と無声ワイヤ ki と零標示 ku", |
| r2 emssr | 26 | "match": "\\b(?:ka|ki|ku)\\b", |
| r2 emssr | 27 | "name": "punctuation.separator.cmn" |
| r2 emssr | 28 | }, |
| r2 emssr | 29 | { |
| r2 emssr | 30 | "comment": "二進有理数の層 one ⊕ ⊖ ⋆ β Δ !", |
| r2 emssr | 31 | "match": "\\b(?:hu|no|ha|ti|se|he|ho)\\b", |
| r2 emssr | 32 | "name": "constant.numeric.cmn" |
| r2 emssr | 33 | }, |
| r2 emssr | 34 | { |
| r2 emssr | 35 | "comment": "二値の層 φ∂ ≤ π", |
| r2 emssr | 36 | "match": "\\b(?:so|hi|mo)\\b", |
| r2 emssr | 37 | "name": "keyword.operator.cmn" |
| r2 emssr | 38 | }, |
| r2 emssr | 39 | { |
| r2 emssr | 40 | "comment": "作業領域 Load Store", |
| r2 emssr | 41 | "match": "\\b(?:mi|mu)\\b", |
| r2 emssr | 42 | "name": "variable.other.cmn" |
| r2 emssr | 43 | }, |
| r2 emssr | 44 | { |
| r2 emssr | 45 | "comment": "閉包 Ω の開きと閉じ", |
| r2 emssr | 46 | "match": "\\b(?:ya|yi)\\b", |
| r2 emssr | 47 | "name": "keyword.control.cmn" |
| r2 emssr | 48 | }, |
| r2 emssr | 49 | { |
| r2 emssr | 50 | "comment": "判定値 𝒬。非可換 quantale(GCLS 定理 3.3)", |
| r2 emssr | 51 | "match": "\\b(?:to|na|ni|nu|ne|yu|ye|yo|ra|ri|ru|go)\\b", |
| r2 emssr | 52 | "name": "entity.name.function.cmn" |
| r2 emssr | 53 | }, |
| r2 emssr | 54 | { |
| r2 emssr | 55 | "comment": "鎖 ∂ と ⊕", |
| r2 emssr | 56 | "match": "\\b(?:bi|bu)\\b", |
| r2 emssr | 57 | "name": "support.function.cmn" |
| r2 emssr | 58 | }, |
| r2 emssr | 59 | { |
| r2 emssr | 60 | "comment": "報告 Ok Ko Put", |
| r2 emssr | 61 | "match": "\\b(?:me|di|du)\\b", |
| r2 emssr | 62 | "name": "keyword.other.cmn" |
| r2 emssr | 63 | }, |
| r2 emssr | 64 | { |
| r2 emssr | 65 | "comment": "音節表にはあるが平文の生成元に割り当たっていない綴り", |
| r2 emssr | 66 | "match": "\\b[kstnhmyrwgzdbp][aiueo]\\b", |
| r2 emssr | 67 | "name": "comment.cmn" |
| r2 emssr | 68 | } |
| r2 emssr | 69 | ] |
| r2 emssr | 70 | }, |
| r2 emssr | 71 | "outside": { |
| r2 emssr | 72 | "comment": "音節へ切れない ASCII 小文字。読みはここで Ko になる(19 式 4.1)", |
| r2 emssr | 73 | "match": "[a-z]{3,}|\\b[a-z]\\b", |
| r2 emssr | 74 | "name": "invalid.illegal.cmn" |
| r2 emssr | 75 | } |
| r2 emssr | 76 | } |
| r2 emssr | 77 | } |