charset: rename u* preset for custom unicode requests
[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                 qw{. 🐏 🐂 👬 -🍤 -🐅 -👰 ⚖ -♏ 🎯 🐐 🚾 🐟 }, # western signs
48         ],
49         harvey   => [qw{. ○ ◔ ◑ ◕ ● }],
50 },
51
52 keys => {
53         spacing  => [qw{. ⇥ ⇤ . ␣ ⌫ }], # (fw and back) tab, char
54         editing  => [qw{. ⎀ ⇱ ⇞ . ⌦ ⇲ ⇟ }], # ins, home, pgup; del, end, pgdn
55         modifier => [qw{. ⇪ ⇯ ⇭ . ⇧ ⇮ № }], # (lock and select) shift, l3, num
56         control  => [qw{. ⎈ ⌥ ⌘ ⎄ }], # ctrl, option, cmd, compose
57         command  => [qw{. ↵ ⎋ ⎉ ⎊ }], # enter, esc, pause, break
58         replace  => [qw{. � ␦ }], # substitute char, #2
59         player   => [qw{. ► ⏩ ⏭ ◼ ⚫ . ◄ ⏪ ⏮ ⏏ -❚❚ }], # play, fast, skip, stop, record
60         android  => [qw{. ↩ ⌂ ❐ ⋮ . 🔍 -⌽ 📞 🔊 }], # back, home, windows, menu; search, power, receive, sound
61         android4 => [qw{. ◁ ⚪ ◻ ⋮ }], # back, home, recent, menu
62         ps       => [qw{. ○ ☓ □ △ }], # circle, cross, square, triangle
63         gamepad  => [qw{. Ⓐ Ⓑ ◭ ◮ }], # A, B, L1, R1
64 },
65
66 math => {
67         equal    => [qw{. ∼ ≈ ≅ ≡ ∃ . ≁ ≉ ≇ ≢ ∄ }],
68         size     => [qw{. ≪ < ≤ \= ≥ \> ≫ . - ≮ ≰ ≠ ≱ ≯ - }],
69         set      => [qw{. ∈ ⊂ ⊆ ∀ ⊇ ⊃ ∋ ∪ . ∉ ⊄ ⊈ ∅ ⊉ ⊅ ∌ ∩ }],
70         logic    => [qw{. ∧ ∨ ⊻ ⊥ ¬ . ⊼ ⊽ ↔ ⊤ - }], # and, or, xor, falsum, not; nand, nor, iff, tee
71
72         constant => [qw{. ℝ πϖ ℯ φ ϑ ∂ ℵ }],
73         predicate=> [qw{. ∴ ∵ }],
74         complex  => [qw{. ℂ iℑ }],
75         number   => [qw{. ℕ ∞ ℤ ℚ ℝℜ ℂ ‰ ℘ }],
76 #                         natural inf int rational 
77 #                                         Θ
78         function => [qw{. ⌈ ⌉ . ⌊ ⌋ . ƒ ∑ ∏ ∫ ∇ ∝ }],
79 },
80
81 arrows => {
82         single   => [qw{. ↖ ↑ ↗ ↔ . ← - → ↕ . ↙ ↓ ↘ - }],
83         double   => [qw{. ⇖ ⇑ ⇗ ⇔ . ⇐ - ⇒ ⇕ . ⇙ ⇓ ⇘ - }],
84         white    => [qw{. ⬁ ⇧ ⬀ ⬄ . ⇦ - ⇨ ⇳ . ⬃ ⇩ ⬂ - }],
85         black    => [qw{. ⬉ ⬆ ⬈ ⬌ . ⬅ - ➡ ⬍ . ⬋ ⬇ ⬊ - }],
86         block    => [qw{. ◩ ⬒ ⬔   . ◧ □ ◨   . ⬕ ⬓ ◪   }],
87         blacktri => [qw{. ◤ ▲ ◥   . ◀ ◆ ▶   . ◣ ▼ ◢   }],
88         whitetri => [qw{. ◸ △ ◹   . ◁ ◇ ▷   . ◺ ▽ ◿   }],
89         -large   => [qw{.      .  -    .      }],
90         -heavy   => [qw{.      .  -    .      }],
91         dash     => [qw{. ⇢ ⇣ . ⇡ ⇠ }],
92         twohead  => [qw{. ↠ ↡ . ↟ ↞ }],
93         frombar  => [qw{. ↦ ↧ . ↥ ↤ }],
94           tobar  => [qw{. ⇥ ⤓ . ⤒ ⇤ }],
95          stroke  => [qw{. ⇸ ⤈ . ⤉ ⇷ }],
96         dstroke  => [qw{. ⇻ ⇟ . ⇞ ⇺ }],
97         pair     => [qw{. ⇉ ⇊ . ⇈ ⇇ }],
98         both     => [qw{. ⇄ ⇅ . ⇵ ⇆ }],
99         triple   => [qw{. ⇛ ⤊ . ⤋ ⇚ }],
100         quad     => [qw{. ⭆ ⟱ . ⟰ ⭅ }],
101             tip  => [qw{. ↱ ⬎ . ⬑ ↲ }],
102         antitip  => [qw{. ⬐ ↰ . ↳ ⬏ }],
103         halfwidth=> [qw{. → ↓ . ↑ ← }],
104         barbout  => [qw{. ⇀ ⇂ . ↿ ↽ }],
105         barbin   => [qw{. ⇁ ⇃ . ↾ ↼ }],
106 },
107
108 lines => {
109         double   => [qw{. ╔ ╦ ╗ ═ . ╠ ╬ ╣ ║ . ╚ ╩ ╝ - }],
110         doubleh  => [qw{. ╒ ╤ ╕   . ╞ ╪ ╡   . ╘ ╧ ╛   }],
111         doublev  => [qw{. ╓ ╥ ╖   . ╟ ╫ ╢   . ╙ ╨ ╜   }],
112         single   => [qw{. ┌ ┬ ┐   . ├ ┼ ┤   . └ ┴ ┘   }],
113         heavy    => [qw{. ┏ ┳ ┓   . ┣ ╋ ┫   . ┗ ┻ ┛   }],
114         heavyh   => [qw{. ┍ ┯ ┑   . ┝ ┿ ┥   . ┕ ┷ ┙   }],
115         heavyv   => [qw{. ┎ ┰ ┒   . ┠ ╂ ┨   . ┖ ┸ ┚   }],
116         straight => [qw{
117                 . ╴ ─ ╌ ┄ ┈ ╶ ╾
118                 . ╸ ━ ╍ ┅ ┉ ╺ ╼
119                 . ╵ │ ╎ ┆ ┊ ╷ ╿
120                 . ╹ ┃ ╏ ┇ ┋ ╻ ╽
121         }],
122         curved   => [qw{. ╭ ╮ . ╰ ╯ }],
123         diagonal => [qw{. ╱ ╳ ╲ }],
124         # ┞┟┡┢┦┧┩┪┭┮┱┲┵┶┹┺┽┾╀╁╃╄╅╆╇╈╉╊
125 },
126
127 block => {
128         square   => [qw{. □ ▣ ■ . ▤ ▦ ▥ . ▧ ▩ ▨}],
129         shades   => [qw{. ░ . ▒ . ▓ }],
130         fill4    => [qw{. ▘ ▀ ▝ . ▌ █ ▐ . ▖ ▄ ▗ }],
131         fill4i   => [qw{. ▛ ▚ ▟ . ▙ ▞ ▜ }],
132         fill8    => [qw{. ▁ ▂ ▃ ▄ ▅ ▆ ▇ ▔ . ▏ ▎ ▍ ▌ ▋ ▊ ▉ ▕ }],
133 },
134
135 latin => {
136         sample   => [qw{
137                 . å ä ö ü ß
138                 . ā æ ø ű ſ
139                 . á è õ û ç þ
140                 . ă ę œ ů š ð
141                 . ı ė º ư ș đ
142         }],
143         vowels   => [qw{
144                 . á é í ó ú ý
145                 . â ê î ô û ŷ
146                 . à è ì ò ù ỳ
147                 . ã ẽ ĩ õ ũ ỹ
148                 . ä ë ï ö ü ÿ
149                 . æ & ij œ ᵫ -
150                 . å - ı ⱺ ů ẙ
151                 . ă ĕ ĭ ŏ ŭ -
152                 . ǎ ě ǐ ǒ ǔ -
153                 . ą ę į ǫ ų -
154         }],
155         westeuro => [qw{
156                 . ç ð ñ ß þ
157         }],
158         easteuro => [qw{
159                 . č ď ľ ň ř š ť ž
160                 . ć đ ł ń ŕ ś ŧ ź ż
161         }],
162         uncommon => [qw{
163                 .>Englisc   æ ð ē ȝ œ þ ƿ
164                 .>Sámi      á č đ ŋ š ŧ ž
165                 .>Slavic    ą ě ł ů ź ż ž
166                 .>Türkçe    ç ğ ı İ ö ş ü
167                 .>Español   ñ á é í ó ú ü
168                 .>Română    ă â î ș ț
169                 .>Esperanto ª ĉ ĝ ĥ ĵ ŝ ŭ
170         }],
171 },
172
173 ipa => {
174         cons => [qw{
175                 - BiL:Bilabial LD:Labiodental D:Dental Alv:Alveolar PA:Postalveolar
176                   Rf:Retroflex Pal:Palatal Vel:Velar Uv:Uvular Ph:Pharyngeal
177                   EG:Epiglottal Gl:Glottal
178                 .>Plosive                   p  -ȹ >  >  t  ʈ  c  k  q  =  ʡ  ʔ
179                 .>Voiced_Plosive            b  -ȸ >  >  d  ɖ  ɟ  ɡ  ɢ  =  -  =
180                 .>Nasal                     m  ɱ  >  >  n  ɳ  ɲ  ŋ  ɴ  =  =  =
181                 .>Trill                     ʙ  -  >  >  r  -  -  =  ʀ  =  -я =
182                 .>Tap/flap                  -  ⱱ  >  >  ɾ  ɽ  -  =  ɢ̆  =  -  =
183                 .>Fricative                 ɸ  f  θ  s  ʃ  ʂ  ç  x  χ  ħ  ʜ  h
184                 .>Voiced_fricative          β  v  ð  z  ʒ  ʐ  ʝ  ɣ  ʁ  ʕ  ʢ  ɦ
185                 .>Lateral_fricative         =  =  >  >  ɬ  -  -  -  -  =  =  =
186                 .>Voiced_lateral_fricative  =  =  >  >  ɮ  -  -  -  -  =  =  =
187                 .>Approximant               -  ʋ  >  >  ɹ  ɻ  j  ɰ  -  -  -  =
188                 .>Lateral_approximant       =  =  >  >  l  ɭ  ʎ  ʟ  -  =  =  =
189                 .>Click                     ʘ  -  ǀ  ǁ  ǃ  -‼ ǂ  -  -  =  =  =
190                 .>Implosive                 ɓ  ɗ̪  >  >  ɗ  -ᶑ ʄ  ɠ  ʛ  =  =  =
191         }],
192         consco => [qw{
193                 - co:coarticulated .>sç ɕ .>zʝ ʑ .>ʃx ɧ .>jʷ ɥ .>hw̥ ʍ .>ɰʷ w
194         }],
195         vowels => [(
196                 '-',
197                 map { substr($_, 0, 1).':'.$_, substr($_, 0, 1)." r:$_ rounded" }
198                 qw{Front Central Back}
199         ), qw{
200                 .>Close      i y  ɨ ʉ  ɯ u
201                 .>Near-close ɪ ʏ  - -  - ʊ
202                 .>Close-mid  e ø  ɘ ɵ  ɤ o
203                 .>Mid        - -  ə -  - -
204                 .>Open-mid   ɛ œ  ɜ ɞ  ʌ ɔ
205                 .>Near-open  æ -  ɐ -  - -
206                 .>Open       a ɶ  - -  ɑ ɒ
207         }],
208 },
209
210 japanese => {
211         hira => [qw{
212                   - A  I  U  E  O  _
213                 .>  あ い う え お =
214                 .>K か き く け こ =
215                 .>S さ し す せ そ =
216                 .>T た ち つ て と =
217                 .>N な に ぬ ね の ん
218                 .>H は ひ ふ へ ほ =
219                 .>M ま み む め も =
220                 .>Y や =  ゆ =  よ =
221                 .>R ら り る れ ろ =
222                 .>W わ -ゐ = -ゑ を =
223         }],
224         hiraderiv => [qw{
225                   - A  I  U  E  O
226                 .>G が ぎ ぐ げ ご
227                 .>Z ざ じ ず ぜ ぞ
228                 .>D だ ぢ づ で ど
229                 .>B ば び ぶ べ ぼ
230                 .>P ぱ ぴ ぷ ぺ ぽ
231         }],
232         kata => [qw{
233                   - A  I  U  E  O  _
234                 .>  ア イ ウ エ オ ー
235                 .>K カ キ ク ケ コ =
236                 .>S サ シ ス セ ソ =
237                 .>T タ チ ツ テ ト =
238                 .>N ナ ニ ヌ ネ ノ ン
239                 .>H ハ ヒ フ ヘ ホ =
240                 .>M マ ミ ム メ モ =
241                 .>Y ヤ -  ユ -  ヨ =
242                 .>R ラ リ ル レ ロ =
243                 .>W ワ ヰ -  ヱ ヲ =
244         }],
245         kataderiv => [qw{
246                   - A  I  U  E  O
247                 .>G ガ ギ グ ゲ ゴ
248                 .>Z ザ ジ ズ ゼ ゾ
249                 .>D ダ ヂ ヅ デ ド
250                 .>B バ ビ ブ ベ ボ
251                 .>P パ ピ プ ペ ポ
252                 .>V ヷ ヸ ヴ ヹ ヺ
253         }],
254 },
255
256 }