keyboard: resupport key texts after definition flags
[sheet.git] / unicode-table.inc.pl
1 use utf8;
2 +{
3
4 punctuation => {
5         quoting  => [qw{. « » . ‹ › . ‘ ’ . “ ” . „ ‚ . ‟ ‛}],
6         common   => [qw{
7                 . † ‡ • . § ¶ # . © ® ™
8                 . ° ′ ″ . − × ÷ . ± ² √
9                 . ¹ ⁿ ³ . ¼ ½ ¾ . 年 月 日
10         }],
11         marks    => [qw{. ¿ … 〃 . ‽ · ※ }],
12         spacing  => [
13                 split / +/, join ' ',
14                 ". — – ‒  \x{2011} \x{2010}  \x{AD} \x{200D}",  # dashes
15                 ". \x{2003} \x{2002} \x{2007}  \x{A0} \x{2009}  \x{200B} \x{200C}",  # spaces
16                 # em en figure  nobreak hyphen  break joiner
17         ],
18         version  => [qw{. α β}],
19 },
20
21 symbols => {
22         binary   => [qw{. ⚋ ⚊ . ⚐ ⚑ . ☺ ☹ . ✓ ✗ . ✔ ✘ . ◄ ► }], # opposites
23         currency => [qw{. ¤ ¢ ₥ € £ ₹ $ ¥ . ฿ ₫ ₭ ₦ ₱ ₮ ₩ ₪}],
24         cards    => [
25                 qw{. ♢ ♡ ♠ ♣ . ♦ ♥ ♤ ♧ }, # diamonds, hearts, clubs, spades
26 #               qw{. 🔔 ❀ -⛨ 🌰 }, # bells, roses, shields, acorns
27 #               qw{. ⚚ ⚘ ⚔ ⚒ }, # merchant, clergy, nobility, peasant
28 #               qw{. ❂ 🏆 ⚔ -🔧 }, # coins, cups, swords, clubs
29                 qw{. ▽̶ ▽ △ △̶ }, # earth, water, fire, air
30                 qw{. ☷ ☵ ☲ ☰ }, # earth, water, fire, heaven [cq ☴ wind]
31                 qw{. 土 水 火 金 }, # earth, water, fire, metal
32         ],
33         chess    => [qw{. ♙ ♘ ♗ ♖ ♕ ♔ . ♟ ♞ ♝ ♜ ♛ ♚ }],
34         signs1   => [qw{. ☮ ☯ ☻ ♪ ♲ ♿ }],
35         signs2   => [qw{. ⚠ ☡ ☠}],
36         communic => [ # note, mail, fax, phone, alt phone
37                 qw{. ✂ ✉ ℻ ☎ 📱 }, # scissors, envelope, fax sign, black phone, mobile
38                 qw{. 📎 📯 📠 ☏ 📞 }, # paperclip, postal horn, fax machine, white phone, receiver
39         ],
40         trinity  => [qw{. ✊ ✋ ✌ . 🚹 🐜 👽 }], # rock, paper, scissors; terran, protoss, zerg
41         solar    => [qw{. ☉ ☿ ♀ ♁ ♂ ♃ ♄ ♅ ♆ ♇}], # sun, mercury-neptune, pluto
42         zodiac   => [
43                 qw{. ♈ ♉ ♊ ♋ ♌ ♍ ♎ ♏ ♐ ♑ ♒ ♓ }, # western signs
44                 qw{. 寅 卯 辰 巳 午 未 申 酉 戌 亥 子 丑 }, # chinese signs (earthly branches)
45                 qw{. 虎 兔 龍 蛇 馬 羊 猴 雞 狗 豬 鼠 牛 }, # chinese names
46                 qw{. 🐅 🐇 🐉 🐍 🐎 🐐 🐒 🐓 🐕 🐖 🐀 🐂 }, # chinese animals
47         ],
48 },
49
50 keys => {
51         spacing  => [qw{. ⇥ ⇤ . ␣ ⌫ }], # (fw and back) tab, char
52         editing  => [qw{. ⎀ ⇱ ⇞ . ⌦ ⇲ ⇟ }], # ins, home, pgup; del, end, pgdn
53         modifier => [qw{. ⇪ ⇯ ⇭ . ⇧ ⇮ № }], # (lock and select) shift, l3, num
54         control  => [qw{. ⎈ ⌥ ⌘ ⎄ }], # ctrl, option, cmd, compose
55         command  => [qw{. ↵ ⎋ ⎉ ⎊ }], # enter, esc, pause, break
56         player   => [qw{. ► ⏩ ⏭ ◼ ⚫ . ◄ ⏪ ⏮ ⏏ -❚❚ }], # play, fast, skip, stop, record
57         android  => [qw{. ⌂ ◰ ↩ 🔍 }], # home, menu, back, search
58         ps       => [qw{. △ ○ ☓ □ }], # triangle, circle, cross, square
59 },
60
61 math => {
62         equal    => [qw{. ∼ ≈ ≅ ≡ ∃ . ≁ ≉ ≇ ≢ ∄ }],
63         size     => [qw{. ≪ < ≤ \= ≥ \> ≫ . - ≮ ≰ ≠ ≱ ≯ - }],
64         set      => [qw{. ∈ ⊂ ⊆ ∀ ⊇ ⊃ ∋ ∪ . ∉ ⊄ ⊈ ∅ ⊉ ⊅ ∌ ∩ }],
65         logic    => [qw{. ∧ ∨ ⊻ ⊥ ¬ . ⊼ ⊽ ↔ ⊤ - }], # and, or, xor, falsum, not; nand, nor, iff, tee
66
67         constant => [qw{. ℝ πϖ ℯ φ ϑ ∂ ℵ }],
68         predicate=> [qw{. ∴ ∵ }],
69         complex  => [qw{. ℂ iℑ }],
70         number   => [qw{. ℕ ∞ ℤ ℚ ℝℜ ℂ ‰ ℘ }],
71 #                         natural inf int rational 
72 #                                         Θ
73         function => [qw{. ⌈ ⌉ . ⌊ ⌋ . ƒ ∑ ∏ ∫ ∇ ∝ }],
74 },
75
76 arrows => {
77         single   => [qw{. ↖ ↑ ↗ ↔ . ← - → ↕ . ↙ ↓ ↘ - }],
78         double   => [qw{. ⇖ ⇑ ⇗ ⇔ . ⇐ - ⇒ ⇕ . ⇙ ⇓ ⇘ - }],
79         white    => [qw{. ⬁ ⇧ ⬀ ⬄ . ⇦ - ⇨ ⇳ . ⬃ ⇩ ⬂ - }],
80         black    => [qw{. ⬉ ⬆ ⬈ ⬌ . ⬅ - ➡ ⬍ . ⬋ ⬇ ⬊ - }],
81         block    => [qw{. ◩ ⬒ ⬔   . ◧ □ ◨   . ⬕ ⬓ ◪   }],
82         blacktri => [qw{. ◤ ▲ ◥   . ◀ ◆ ▶   . ◣ ▼ ◢   }],
83         whitetri => [qw{. ◸ △ ◹   . ◁ ◇ ▷   . ◺ ▽ ◿   }],
84         -large   => [qw{.      .  -    .      }],
85         -heavy   => [qw{.      .  -    .      }],
86 },
87
88 lines => {
89         double   => [qw{. ╔ ╦ ╗ ═ . ╠ ╬ ╣ ║ . ╚ ╩ ╝ - }],
90         doubleh  => [qw{. ╒ ╤ ╕   . ╞ ╪ ╡   . ╘ ╧ ╛   }],
91         doublev  => [qw{. ╓ ╥ ╖   . ╟ ╫ ╢   . ╙ ╨ ╜   }],
92         single   => [qw{. ┌ ┬ ┐   . ├ ┼ ┤   . └ ┴ ┘   }],
93         heavy    => [qw{. ┏ ┳ ┓   . ┣ ╋ ┫   . ┗ ┻ ┛   }],
94         heavyh   => [qw{. ┍ ┯ ┑   . ┝ ┿ ┥   . ┕ ┷ ┙   }],
95         heavyv   => [qw{. ┎ ┰ ┒   . ┠ ╂ ┨   . ┖ ┸ ┚   }],
96         straight => [qw{
97                 . ╴ ─ ╌ ┄ ┈ ╶ ╾
98                 . ╸ ━ ╍ ┅ ┉ ╺ ╼
99                 . ╵ │ ╎ ┆ ┊ ╷ ╿
100                 . ╹ ┃ ╏ ┇ ┋ ╻ ╽
101         }],
102         curved   => [qw{. ╭ ╮ . ╰ ╯ }],
103         diagonal => [qw{. ╱ ╳ ╲ }],
104         # ┞┟┡┢┦┧┩┪┭┮┱┲┵┶┹┺┽┾╀╁╃╄╅╆╇╈╉╊
105 },
106
107 block => {
108         square   => [qw{. □ ▣ ■ . ▤ ▦ ▥ . ▧ ▩ ▨}],
109         shades   => [qw{. ░ . ▒ . ▓ }],
110         fill4    => [qw{. ▘ ▀ ▝ . ▌ █ ▐ . ▖ ▄ ▗ }],
111         fill4i   => [qw{. ▛ ▚ ▟ . ▙ ▞ ▜ }],
112         fill8    => [qw{. ▁ ▂ ▃ ▄ ▅ ▆ ▇ ▔ . ▏ ▎ ▍ ▌ ▋ ▊ ▉ ▕ }],
113 },
114
115 latin => {
116         sample   => [qw{
117                 . å ä ö ü ß
118                 . ā æ ø ű ſ
119                 . á è õ û ç þ
120                 . ă ę œ ů š ð
121                 . ı ė º ư ș đ
122         }],
123         vowels   => [qw{
124                 . á é í ó ú ý
125                 . â ê î ô û ŷ
126                 . à è ì ò ù ỳ
127                 . ã ẽ ĩ õ ũ ỹ
128                 . ä ë ï ö ü ÿ
129                 . æ & ij œ ᵫ -
130                 . å - ı ⱺ ů ẙ
131                 . ă ĕ ĭ ŏ ŭ -
132                 . ǎ ě ǐ ǒ ǔ -
133                 . ą ę į ǫ ų -
134         }],
135         westeuro => [qw{
136                 . ç ð ñ ß þ
137         }],
138         easteuro => [qw{
139                 . č ď ľ ň ř š ť ž
140                 . ć đ ł ń ŕ ś ŧ ź ż
141         }],
142         uncommon => [qw{
143                 .>Englisc   æ ð ē ȝ œ þ ƿ
144                 .>Sámi      á č đ ŋ š ŧ ž
145                 .>Slavic    ą ě ł ů ź ż ž
146                 .>Türkçe    ç ğ ı İ ö ş ü
147                 .>Español   ñ á é í ó ú ü
148                 .>Română    ă â î ș ț
149                 .>Esperanto ĉ ĝ ĥ ĵ ŝ ŭ
150         }],
151 },
152
153 ipa => {
154         cons => [qw{
155                 - BiL:Bilabial LD:Labiodental D:Dental Alv:Alveolar PA:Postalveolar
156                   Rf:Retroflex Pal:Palatal Vel:Velar Uv:Uvular Ph:Pharyngeal
157                   EG:Epiglottal Gl:Glottal
158                 .>Plosive                   p  -ȹ >  >  t  ʈ  c  k  q  =  ʡ  ʔ
159                 .>Voiced_Plosive            b  -ȸ >  >  d  ɖ  ɟ  ɡ  ɢ  =  -  =
160                 .>Nasal                     m  ɱ  >  >  n  ɳ  ɲ  ŋ  ɴ  =  =  =
161                 .>Trill                     ʙ  -  >  >  r  -  -  =  ʀ  =  -я =
162                 .>Tap/flap                  -  ⱱ  >  >  ɾ  ɽ  -  =  ɢ̆  =  -  =
163                 .>Fricative                 ɸ  f  θ  s  ʃ  ʂ  ç  x  χ  ħ  ʜ  h
164                 .>Voiced_fricative          β  v  ð  z  ʒ  ʐ  ʝ  ɣ  ʁ  ʕ  ʢ  ɦ
165                 .>Lateral_fricative         =  =  >  >  ɬ  -  -  -  -  =  =  =
166                 .>Voiced_lateral_fricative  =  =  >  >  ɮ  -  -  -  -  =  =  =
167                 .>Approximant               -  ʋ  >  >  ɹ  ɻ  j  ɰ  -  -  -  =
168                 .>Lateral_approximant       =  =  >  >  l  ɭ  ʎ  ʟ  -  =  =  =
169                 .>Click                     ʘ  -  ǀ  ǁ  ǃ  -‼ ǂ  -  -  =  =  =
170                 .>Implosive                 ɓ  ɗ̪  >  >  ɗ  -ᶑ ʄ  ɠ  ʛ  =  =  =
171         }],
172         consco => [qw{
173                 - co:coarticulated .>sç ɕ .>zʝ ʑ .>ʃx ɧ .>jʷ ɥ .>hw̥ ʍ .>ɰʷ w
174         }],
175         vowels => [(
176                 '-',
177                 map { substr($_, 0, 1).':'.$_, substr($_, 0, 1)." r:$_ rounded" }
178                 qw{Front Central Back}
179         ), qw{
180                 .>Close      i y  ɨ ʉ  ɯ u
181                 .>Near-close ɪ ʏ  - -  - ʊ
182                 .>Close-mid  e ø  ɘ ɵ  ɤ o
183                 .>Mid        - -  ə -  - -
184                 .>Open-mid   ɛ œ  ɜ ɞ  ʌ ɔ
185                 .>Near-open  æ -  ɐ -  - -
186                 .>Open       a ɶ  - -  ɑ ɒ
187         }],
188 },
189
190 japanese => {
191         hira => [qw{
192                   - A  I  U  E  O  _
193                 .>  あ い う え お =
194                 .>K か き く け こ =
195                 .>S さ し す せ そ =
196                 .>T た ち つ て と =
197                 .>N な に ぬ ね の ん
198                 .>H は ひ ふ へ ほ =
199                 .>M ま み む め も =
200                 .>Y や =  ゆ =  よ =
201                 .>R ら り る れ ろ =
202                 .>W わ -ゐ = -ゑ を =
203         }],
204         hiraderiv => [qw{
205                   - A  I  U  E  O
206                 .>G が ぎ ぐ げ ご
207                 .>Z ざ じ ず ぜ ぞ
208                 .>D だ ぢ づ で ど
209                 .>B ば び ぶ べ ぼ
210                 .>P ぱ ぴ ぷ ぺ ぽ
211         }],
212         kata => [qw{
213                   - A  I  U  E  O  _
214                 .>  ア イ ウ エ オ ー
215                 .>K カ キ ク ケ コ =
216                 .>S サ シ ス セ ソ =
217                 .>T タ チ ツ テ ト =
218                 .>N ナ ニ ヌ ネ ノ ン
219                 .>H ハ ヒ フ ヘ ホ =
220                 .>M マ ミ ム メ モ =
221                 .>Y ヤ -  ユ -  ヨ =
222                 .>R ラ リ ル レ ロ =
223                 .>W ワ ヰ -  ヱ ヲ =
224         }],
225         kataderiv => [qw{
226                   - A  I  U  E  O
227                 .>G ガ ギ グ ゲ ゴ
228                 .>Z ザ ジ ズ ゼ ゾ
229                 .>D ダ ヂ ヅ デ ド
230                 .>B バ ビ ブ ベ ボ
231                 .>P パ ピ プ ペ ポ
232                 .>V ヷ ヸ ヴ ヹ ヺ
233         }],
234 },
235
236 }