# mds — A micro-display server # Copyright © 2014 Mattias Andrée (maandree@member.fsf.org) # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . # Based on the Unicode Character Database 7.0 macro dead_ascii/1 [" " ] : "\1" "\1" : end macro macro dead_ascii/2 [" " "\2" ] : "\1" ["\1" "\2"] : end macro macro composite/3 "\1" : "\3" "\1" ["\2" ] : "\3" end macro macro composite/4 "\1" : "\4" "\1" ["\2" "\3"] : "\4" end macro "u" "+" : "U" "+" : # TODO C0 Controls # Basic Latin: dead_ascii("^") dead_ascii("`") dead_ascii("~") # TODO C1 Controls # Latin-1 Supplement: "!" "!" : "¡" ("/" "c") : "¢" ("|" ["c" "L"]) : "¢" ("-" ["l" "L"]) : "£" (["o" "O"] ["x" "X"]) : "¤" (["-" "="] ["y" "Y"]) : "¥" ("!" "|") : "¦" (["o" "O"] ["s" "S"]) : "§" dead_ascii("¨" "\"") (["o" "O"] ["c" "C"]) : "©" ( ) "_" "a" : "ª" "<" "<" : "«" ("-" ",") : "¬" "-" "-" " " : "­" (["o" "O"] ["r" "R"]) : "®" "-" : "o" : dead_ascii("°") "+" "-" : "±" "2" : "²" "3" : "³" dead_ascii("´" "'") "m" "u" : "µ" ["p" "P"] ["p" "P" "!"] : "¶" "!" ["p" "P"] : "¶" "." "-" : "·" dead_ascii("," ",") "1" : "¹" ( ) "_" "o" : "º" ">" ">" : "»" "1" "4" : "¼" "1" "2" : "½" "3" "4" : "¾" "?" "?" : "¿" composite("`" "A" "À") composite("´" "'" "A" "Á") composite("~" "A" "Ã") composite("¨" "\"" "A" "Ä") "A" : "Å" "A" "E" : "Æ" composite("¸" "," "C" "Ç") composite("`" "E" "È") composite("´" "'" "E" "É") composite("^" "E" "Ê") composite("¨" "\"" "E" "Ë") composite("`" "I" "Ì") composite("´" "'" "I" "Í") composite("^" "I" "Î") composite("¨" "\"" "I" "Ï") "-" : composite("-" "D" "Đ") "/" : composite("/" "D" "Đ") composite("~" "N" "Ñ") composite("`" "O" "Ò") composite("´" "'" "O" "Ó") composite("^" "O" "Ô") composite("~" "O" "Õ") composite("¨" "\"" "O" "Ö") "x" "x" : "×" composite("/" "O" "Ø") composite("`" "U" "Ù") composite("´" "'" "U" "Ú") composite("^" "U" "Û") composite("¨" "\"" "U" "Ü") composite("´" "'" "Y" "Ý") "T" "H" : "Þ" "s" "s" : "ß" "ſ" "s" : "ß" composite("`" "a" "à") composite("´" "'" "a" "á") composite("~" "a" "ã") composite("¨" "\"" "a" "ä") "a" : "å" "a" "e" : "æ" composite("¸" "," "c" "ç") composite("`" "e" "è") composite("´" "'" "e" "é") composite("^" "e" "ê") composite("¨" "\"" "e" "ë") composite("`" "i" "ì") composite("´" "'" "i" "í") composite("^" "i" "î") composite("¨" "\"" "i" "ï") composite("/" "d" "ð") composite("~" "n" "ñ") composite("`" "o" "ò") composite("´" "'" "o" "ó") composite("^" "o" "ô") composite("~" "o" "õ") composite("¨" "\"" "o" "ö") ":" "-" : "÷" composite("/" "o" "ø") composite("`" "u" "ù") composite("´" "'" "u" "ú") composite("^" "u" "û") composite("¨" "\"" "u" "ü") composite("´" "'" "y" "ý") "t" "h" : "þ" composite("¨" "\"" "y" "ÿ") # TODO Latin Extended-A # TODO Latin Extended-B # TODO IPA Extensions # TODO Spacing Modifier Letter # TODO Combining Diacritical Marks # TODO Greek and Coptic # TODO Cyrillic # TODO Cyrillic Supplement # TODO Armenian # TODO Hebrew # TODO Arabic # TODO Syriac # TODO Arabic Supplement # TODO Thaana # TODO NKo # TODO Samaritan # TODO Mandaic # TODO Arabic Extended-A # TODO Devanagari # TODO Bengali # TODO Gurmukhi # TODO Gujarati # TODO Oriya # TODO Tamil # TODO Telugu # TODO Kannada # TODO Malayalam # TODO Sinhala # TODO Thai # TODO Lao # TODO Tibetan # TODO Myanmar # TODO Georgian # TODO Hangul Jamo # TODO Ethiopic # TODO Ethiopic Supplement # TODO Cherokee # TODO Unified Canadian Aboriginal Syllabics # TODO Ogham # TODO Runic # TODO Tagalog # TODO Hanunoo # TODO Buhid # TODO Tagbanwa # TODO Khmer # TODO Mongolian # TODO Unified Canadian Aboriginal Syllabics Extended # TODO Limbu # TODO Tai Le # TODO New Tai Lue # TODO Khmer Symbols # TODO Buginese # TODO Tai Tham # TODO Combining Diacritical Marks Extended # TODO Balinese # TODO Sundanese # TODO Batak # TODO Lepcha # TODO Ol Chiki # TODO Sundanese Supplement # TODO Vedic Extensions # TODO Phonetic Extensions # TODO Phonetic Extensions Supplement # TODO Combining Diacritical Marks Supplement # TODO Latin Extended Additional # TODO Greek Extended # General Punctuation: "_" "." : "\u2000" # en quad "_" "_" : "\u2001" # em quad "-" "." : "\u2002" # en space "-" "-" : "\u2003" # em space "3" : "\u2004" # three-per-em space "4" : "\u2005" # four-per-em space "6" : "\u2006" # six-per-em space "f" : "\u2007" # figure space "." : "\u2008" # punctuation space "t" : "\u2009" # thin space "h" : "\u200A" # hairspace "0" : "\u200B" # zero width space "J" : "\u200C" # zero width non-joiner "j" : "\u200D" # zero width joiner "l" : "\u200E" # left-to-right mark "r" : "\u200F" # right-to-left mark "-" : "\u2010" # hyphen "-" " " : "\u2011" # non-breaking hyphen "-" "-" "f" : "\u2012" # figure dash "-" "-" "." : "\u2013" # en dash "-" "-" "-" : "\u2014" # em dash "-" "-" "_" : "\u2015" # horizontal bar "|" "|" : "\u2016" # double verical line "-" "_" : "\u2017" # double low line ("(" "'") : "‘" (")" "'") : "’" ("(" ",") : "‚" (")" ",") : "‛" ("(" "\"") : "“" (")" "\"") : "”" ("(" ";") : "„" (")" ";") : "‟" "+" "T" : "†" "+" "+" "T" : "‡" "." "." : "•" "|" ">" : "‣" "." "," : "\u2024" # one dot leader "." ";" : "\u2025" # two dot leader "." "." : "…" "-" "." : "\u2027" # hyphenation point "l" : "\u2028" # line separator "p" : "\u2029" # paragraph separator "e" "l" : "\u202A" # left-to-right embedding "e" "r" : "\u202B" # right-to-left embedding "e" "p" : "\u202C" # pop directional formatting "o" "l" : "\u202D" # left-to-right override "o" "r" : "\u202E" # right-to-left override "m" " " : "\u202F" # narrow no-break space "%" ["o" "."] : "‰" "%" ["O" ":"] : "‱" ("1" ["'" "´"]) : "′" ("2" ["'" "´"]) : "″" ("3" ["'" "´"]) : "‴" ("1" "`") : "‵" ("2" "`") : "‶" ("3" "`") : "‷" ("." "^") : "‸" ("." "<") : "‹" ("." ">") : "›" ("x" "+") : "※" "!" "!" : "‼" "!" "?" : "‽" "^" "_" : "‾" ("_" "u") : "‿" ("^" "u") : "⁀" "/" "/" : "⁁" "*" "*" : "⁂" "-" "-" : "⁃" "/" "/" : "⁄" ("[" "-") : "⁅" ("]" "-") : "⁆" "?" "?" : "⁇" "?" "!" : "⁈" "!" "?" : "⁉" ("/" "7"): "⁊" "¶" "¶" : "⁋" ("?" ["p" "P"]) : "⁋" "(" "|" : "⁌" "|" ")" : "⁍" ("*" ".") : "⁎" ";" ";" : "⁏" "(" ")": "⁐" ("*" ":") : "⁑" "%" "%" : "⁒" "~" ["-" "~"] : "⁓" "-" "~" : "⁓" ("_" "U") : "⁔" ("x" "*") : "⁕" "." ":" : "⁖" ("4" ["'" "´"]) : "⁗" "." ":" "." : "⁘" ":" "." ":" : "⁙" "|" "." "." : "⁚" "." ":" "." : "⁛" ("x" ":") : "⁜" "|" ":" "." : "⁝" "|" ":" ":" : "⁞" "m" : "\u205F" # medium mathematical space "w" : "\u2060" # word joiner ("f" " ") : "\u2061" # function application (["x" "×" "*"] " ") : "\u2062" # invisible times (["," "."] " ") : "\u2063" # invisible separator ("+" " ") : "\u2064" # invisible plus "i" "l" : "\u2066" # left-to-right isolate "i" "r" : "\u2067" # right-to-left isolate "i" "s" : "\u2068" # first strong isolate "i" "p" : "\u2069" # pop directional isolate # U+206A through U+206C are deprecated # Superscripts and Subscripts: "0" : "⁰" ["^" ] "i" : "ⁱ" "4" : "⁴" "5" : "⁵" "6" : "⁶" "7" : "⁷" "8" : "⁸" "9" : "⁹" "+" : "⁺" "-" : "⁻" "=" : "⁼" "(" : "⁽" ")" : "⁾" ["^" ] "n" : "ⁿ" dead_ascii("ˇ") "0" : "₀" "1" : "₁" "2" : "₂" "3" : "₃" "4" : "₄" "5" : "₅" "6" : "₆" "7" : "₇" "8" : "₈" "9" : "₉" "+" : "₊" "-" : "₋" "=" : "₌" "(" : "₍" ")" : "₎" ["ˇ" ] "a" : "ₐ" ["ˇ" ] "e" : "ₑ" ["ˇ" ] "o" : "ₒ" ["ˇ" ] "x" : "ₓ" ["ˇ" ] "ə" : "ₔ" ["ˇ" ] "h" : "ₕ" ["ˇ" ] "k" : "ₖ" ["ˇ" ] "l" : "ₗ" ["ˇ" ] "m" : "ₘ" ["ˇ" ] "n" : "ₙ" ["ˇ" ] "p" : "ₚ" ["ˇ" ] "s" : "ₛ" ["ˇ" ] "t" : "ₜ" # TODO Currency Symbols # TODO Combining Diacritical Marks for Symbols # TODO Letterlike Symbols # TODO Number Forms # TODO Arrows # Mathematical Operators: "A" "A" : "∀" "m" "C" : "∁" "d" "d" : "∂" "E" "E" : "∃" ("/" "∃") : "∄" ("/" "0") : "∅" "Δ" "Δ" : "∆" "/" "\\" : "∆" "\\" "/" : "∇" "∆" "∆" : "∇" "∇" "∇" : "∆" "i" "n" : "∈" ("/" "∈") : "∉" ("." "∈") : "∊" "I" "N" : "∋" "∈" "∈" : "∋" "∉" "∉" : "∌" ("/" "∋") : "∌" "∊" "∊" : "∍" ("." "∋") : "∍" "q" "e" "d" : "∎" "m" "p" : "∏" "Π" "Π" : "∏" "m" "P" : "∐" "∏" "∏" : "∐" "m" "s" : "∑" "Σ" "Σ" : "∑" "m" "-" : "−" "-" "+" : "∓" "." "+" : "∔" "m" "/" : "∕" "m" "\\" : "∖" "m" "*" : "∗" "m" "o" : "∘" "m" "O" : "∙" "m" ["2" .] "r" : "√" ["m" "2"] "r" : "√" ["m" .] "3" "r" : "∛" ["m" .] "4" "r" : "∜" "0" ["c" "C"] : "∝" "0" "0" : "∞" ("m" "L") : "∟" ("/" "_") : "∠" ("∠" ")") : "∡" "∡" "∡" : "∢" ("<" ")") : "∢" "1" "|" : "∣" "/" "1" "|" : "∤" ("/" "∣") : "∤" "2" "|" : "∥" "∣" "∣" : "∥" "/" "2" "|" : "∦" ("/" "∥") : "∦" "m" "&" : "∧" "∨" "∨" : "∧" "∧" "∧" : "∨" "m" "V" : "∨" "m" "N" : "∩" "∪" "∪" : "∩" "∩" "∩" : "∪" "m" "U" : "∪" 1 ["s" "ſ"] : "∫" 2 ["s" "ſ"] : "∬" "∫" "∫" : "∬" "∫" "∫" : "∭" ("∫" "∬") : "∭" "3" ["s" "ſ" "∫"] : "∭" 1 "o" ["s" "ſ"] : "∮" 2 "o" ["s" "ſ"] : "∯" "∮" "∮" : "∯" "∮" "∮" : "∰" ("∮" "∯") : "∰" "3" "∮" : "∰" "3" "o" ["s" "ſ"] : "∰" ("o" "∫") : "∮" ("o" "∬") : "∯" ("o" "∭") : "∰" (["→" "-"] "∫") : "∱" ("<" "∮" : "∲") (">" "∮" : "∳") ("/" ":") : "∴" ("\\" ":") : "∵" ":" : "∶" ":" ":" : "∷" "." "-" : "∸" "-" ":" : "∹" ":" "-" ":" : "∺" ":" ["~" ] : "∻" ":" : "∻" ["~" ] : "∼" ["~" ] : "∽" ["~" ] : "∾" ["~" ] ["~" ] : "∿" "|" : "≀" "|" ["~" ] : "≀" "/" : "≁" "/" ["~" ] : "≁" "_" ["~" ] : "≂" ["~" ] "_" : "≃" ("/" "≃") : "≄" "=" ["~" ] : "≅" "≠" : "≆" "=" ["~" ] : "≇" "/" "≅" : "≇" "=" : "≈" "/" "=" : "≉" ("/" "≈") : "≉" ["≈" "≊"] "_" "=" : "≊" "≈" ["~" ] : "≋" "=" ["~" ] : "≌" (")" "(") : "≍" "≍" "≍" : "≎" ("_" "≎") : "≏" ("." "=") : "≐" (":" "=") : "≑" (":" "\\") "=" : "≒" (":" "/") "=" : "≓" ":" "=" : "≔" "=" ":" : "≕" "=" "o" : "≖" "o" "=" : "≗" ("°" "=") : "≗" ("(" "=") : "≘" ("∧" "=") : "≙" ("∨" "=") : "≚" (["*" "⋆"] "=") : "≛" ("Δ" "=") : "≜" ("∆" "=") : "≜" ("d" "=") : "≝" ("m" "=") : "≞" ("?" "=") : "≟" ("/" "=") : "≠" "=" "_" : "≡" ("/" "≡") : "≢" "=" "=" : "≣" ("_" "<") : "≤" ("_" ">") : "≥" ("=" "<") : "≦" ("=" ">") : "≧" ("≠" "<") : "≨" ("≠" ">") : "≩" "<" "<" : "≪" ">" ">" : "≫" ("(" ")") : "≬" "/" (")" "(") : "≭" ("/" "≍") : "≭" ("/" "<") : "≮" ("/" ">") : "≯" ("/" "≤") : "≰" ("/" "≥") : "≱" "<" ["~" ] : "≲" ">" ["~" ] : "≳" ("/" "≲") : "≴" ("/" "≳") : "≵" "<" ">" : "≶" ">" "<" : "≷" ("/" "≶") : "≸" ("/" "≷") : "≹" (["(" ")"] "<") : "≺" (["(" ")"] ">") : "≻" ("_" "≺") : "≼" (["(" ")"] "_") "<" : "≼" ("_" "≻") : "≽" (["(" ")"] "_") ">" : "≽" "≺" : "≾" "≺" ["~" ] : "≾" "≻" : "≿" "≻" ["~" ] : "≿" ("/" "≺") : "⊀" (["(" ")"] "/") "<" : "⊀" ("/" "≻") : "⊁" (["(" ")"] "/") ">" : "⊁" ("U" "<") : "⊂" ("U" ">") : "⊃" ("/" "⊂") : "⊄" ("U" "/") "<" : "⊄" ("/" "⊃") : "⊅" ("U" "/") ">" : "⊅" ("_" "⊂") : "⊆" ("U" "_") "<" : "⊆" ("_" "⊃") : "⊇" ("U" "_") ">" : "⊇" ("_" "/") "⊂" : "⊈" ("/" "⊆") : "⊈" ("_" "/") "⊃" : "⊉" ("/" "⊇") : "⊉" ("/" "_" "⊂") : "⊊" ("/" "_" "⊃") : "⊋" ("←" "∪") : "⊌" (["." "⋅"] "∪") : "⊍" ("+" "∪") : "⊎" (["[" "]"] "<") : "⊏" (["[" "]"] ">") : "⊐" ("_" "⊏") : "⊑" "_" (["[" "]"] "<") : "⊑" ("_" "⊐") : "⊒" "_" (["[" "]"] ">") : "⊒" ["[" "]"] ["∧" "∩"] : "⊓" ["[" "]"] ["∨" "∪"] : "⊔" "(" "+" ")" : "⊕" (["o" "O"] "+") : "⊕" "(" ["-" "−"] ["-" "−"] ")" : "⊖" ["o" "O"] ["-" "−"] ["-" "−"] : "⊖" ["-" "−"] ["-" "−"] ["o" "O"] : "⊖" "(" ["x" "X" "×"] ")" : "⊗" (["o" "O"] ["x" "X" "×"]) : "⊗" "(" "/" ")" : "⊘" (["o" "O"] "/") : "⊘" "(" ["." "⋅"] ")" : "⊙" (["o" "O"] ["." "⋅"]) : "⊙" "(" "o" ")" : "⊚" (["o" "O"] "o") : "⊚" "(" "*" ")" : "⊛" (["o" "O"] "*") : "⊛" "(" "=" ")" : "⊜" (["o" "O"] "=") : "⊜" "(" ["-" "−"] ")" : "⊝" (["o" "O"] ["-" "−"]) : "⊝" "[" "+" "]" : "⊞" "[" ["-" "−"] "]" : "⊟" "[" ["x" "X" "×"] "]" : "⊠" "[" ["." "⋅"] "]" : "⊡" "|" "-" "-" : "⊢" "-" "-" "|" : "⊣" "_" "|" : "⊤" "⊥" "⊥" : "⊤" "|" "_" : "⊥" "⊤" "⊤" : "⊥" "|" "-" : "⊦" "|" "=" : "⊧" "|" "=" "=" : "⊨" "|" "|" "-" : "⊩" "|" "|" "|" "-" : "⊪" "|" "|" "=" : "⊫" "/" "|" "-" "-" : "⊬" "|" "-" "-" "/" : "⊬" ("/" "⊢") : "⊬" "/" "|" "=" "=" : "⊭" "|" "=" "=" "/" : "⊭" ("/" "⊨") : "⊭" "/" "|" "|" "-" : "⊮" "|" "|" "-" "/" : "⊮" ("/" "⊩") : "⊮" "/" "|" "|" "=" : "⊯" "|" "|" "=" "/" : "⊯" ("/" "⊫") : "⊯" ("≺" ["(" ")"]) : "⊰" ("≻" ["(" ")"]) : "⊱" "<" "|" : "⊲" "|" ">" : "⊳" "_" "<" "|" : "⊴" "_" "|" ">" : "⊵" ("_" "⊲") : "⊴" ("_" "⊳") : "⊵" "o" "-" "." : "⊶" "⊷" "⊷" : "⊶" "." "-" "o" : "⊷" "⊶" "⊶" : "⊷" "-" "o" : "⊸" "⟜" "⟜" : "⊸" ("⊶" "⊷") : "⊸" "-" ["|" "¦"] "-" : "⊹" : "⊺" ("_" "∨") : "⊻" ("/" ["∧" "&"]) : "⊼" ("/" "∨") : "⊽" (["L" "∟"] ")") : "⊾" "∠" "|" : "⊿" "M" "&" : "⋀" "⋁" "⋁" : "⋀" "⋀" "⋀" : "⋁" "M" "V" : "⋁" "M" "N" : "⋂" "⋃" "⋃" : "⋂" "⋂" "⋂" : "⋃" "M" "U" : "⋃" "M" "." : "⋄" "m" "." : "⋅" "m" "*" : "⋆" ("÷" "×") : "⋇" ("⋉" "⋊") : "⋈" "|" ["X" "x"] "|" : "⋈" "|" ["X" "x"] : "⋉" ["X" "x"] "|" : "⋊" (">" "\\") : "⋋" (">" "/") : "⋌" ("_" "∽") : "⋍" (["(" ")"] "∧") : "⋎" (["(" ")"] "∨") : "⋏" "⊂" "⊂" : "⋐" "⊃" "⊃" : "⋑" "∩" "∩" : "⋒" "∪" "∪" : "⋓" ("∩" "|") : "⋔" "#" "#" : "⋕" ("|" "=") : "⋕" "<" "." : "⋖" "." ">" : "⋗" "<" "<" "<" : "⋘" ">" ">" ">" : "⋙" "≤" "≥" : "⋚" ("≶" ["-" "_"]) : "⋚" "≥" "≤" : "⋛" ("≷" ["-" "_"]) : "⋛" ("_" "<") : "⋜" ("_" ">") : "⋝" ("_" "≺") : "⋞" ("_" "≻") : "⋟" (["(" ")"] "/" "_") "<" : "⋠" ("/" "≼") : "⋠" (["(" ")"] "/" "_") ">" : "⋡" ("/" "≽") : "⋡" ("/" "⊑") : "⋢" ("/" "⊒") : "⋣" ("/" "⊏") : "⋤" ("/" "⊐") : "⋥" ("≁" "<") : "⋦" ("≁" ">") : "⋧" ("≁" "≺") : "⋨" ("≁" "≻") : "⋩" ("/" "⊲") : "⋪" ("/" "⊳") : "⋫" ("/" "⊴") : "⋬" ("/" "⊵") : "⋭" "." "|" : "⋮" "." "-" : "⋯" "." "/" : "⋰" "." "\\" : "⋱" ("C" "-") : "⋲" "⋲" "|" : "⋳" "." "⋳" : "⋴" "." "⋲" : "⋵" ("_" ["⋲" "⋳"]) : "⋶" [ ] ("_" "⋴") : "⋷" ("." ["⋶" "⋶"]) : "⋷" ("_" ["⋲" "⋳"]) : "⋸" "⋽" "⋽" : "⋸" ("C" "=") : "⋹" "€" "€" : "⋹" (["-" "="] ["⋲" "⋳"]) : "⋹" "⋲" "⋲" : "⋺" "⋳" "⋳" : "⋻" "⋴" "⋴" : "⋼" ("." ["⋺" "⋻"]) : "⋼" "⋸" "⋸" : "⋽" [ ] ("_" ["⋺" "⋻"]) : "⋽" ("." "⋽") : "⋾" "⋷" "⋷" : "⋾" [ ] ("_" "⋼") : "⋾" "∃" "∃" : "⋿" # TODO Miscellaneous Technical # TODO Control Pictures # TODO Optical Character Recognition # Enclosed Alphanumerics: for "1" to "9" as \1 "(" "\1" ")" : "\add(\u2460 \sub(\1 "1"))" "(" " " "\1" [" " .] ")" : "\add(\u2474 \sub(\1 "1"))" "(" "\1" " " ")" : "\add(\u2474 \sub(\1 "1"))" "\1" "." : "\add(\u2488 \sub(\1 "1"))" end for for "0" to "9" as \1 "(" "1" "\1" ")" : "\add(\u2469 \sub(\1 "0"))" "(" " " "1" "\1" [" " .] ")" : "\add(\u247D \sub(\1 "0"))" "(" "1" "\1" " " ")" : "\add(\u247D \sub(\1 "0"))" "1" "\1" "." : "\add(\u2491 \sub(\1 "0"))" end for "(" "2" "0" ")" : "\u2473" "(" " " "2" "0" [" " .] ")" : "\u2487" "(" "2" "0" " " ")" : "\u2473" "2" "0" "." : "\u2498" for "a" to "z" as \1 "(" " " "\1" [" " .] ")" : "\add(\u249C \sub(\1 "a"))" "(" "\1" " " ")" : "\add(\u249C \sub(\1 "a"))" end for for "A" to "Z" as \1 "(" "\1" ")" : "\add(\u24B6 \sub(\1 "A"))" end for for "a" to "z" as \1 "(" "\1" ")" : "\add(\u24D0 \sub(\1 "a"))" end for "(" "0" ")" : "\u24EA" for "1" to "9" as \1 "(" "(" "(" "1" "\1" ")" ")" ")" : "\add(\u24EB \sub(\1 "1"))" end for "(" "(" "(" "2" "0" ")" ")" ")" : "\u24F4" for "1" to "9" as \1 "(" "(" "\1" ")" ")" : "\add(\u24F5 \sub(\1 "1"))" end for "(" "(" "1" "0" ")" ")" : "\u24FE" "(" "(" "(" "0" ")" ")" ")" : "\u24FF" # Box Drawing: ("╴" "╶") : "─" ("╸" "╺") : "━" "b" "-" : "─" "B" "-" : "━" "b" "|" : "│" "B" "|" : "┃" "b" "." "-" : "┄" "B" "." "-" : "┅" "┄" "┄" : "┅" "b" "." "|" : "┆" "B" "." "|" : "┇" "┆" "┆" : "┇" "b" ":" "-" : "┈" "B" ":" "-" : "┉" "┈" "┈" : "┉" "b" ":" "|" : "┊" "B" ":" "|" : "┋" "┊" "┊" : "┋" macro boxes/2 let \3 : { 3 48 12 192 999 999 999 999 999 999 999 999 10 40 130 160 9 24 129 144 6 36 66 96 5 20 65 80 14 44 74 132 194 104 164 224 13 28 73 133 193 88 146 208 11 26 41 56 131 146 161 176 7 22 37 52 67 82 97 112 15 30 45 60 75 135 195 90 105 150 165 120 180 210 225 240 999 999 999 999 999 999 999 999 999 999 999 999 999 999 999 999 999 999 999 999 999 999 999 999 999 999 999 999 999 999 999 999 999 999 999 999 999 999 999 999 1 4 2 8 16 64 32 128 33 132 18 40 } let \4 : \get(\3 \1) let \5 : \get(\3 \2) if \or(\equals(\4 999) \equals(\5 999)) return endif let \6 : { \and(\4 16) \and(\4 32) \and(\4 64) \and(\4 128) } let \7 : { \and(\5 16) \and(\5 32) \and(\5 64) \and(\5 128) } let \4 : { \and(\4 1) \and(\4 2) \and(\4 4) \and(\4 8) } let \5 : { \and(\5 1) \and(\5 2) \and(\5 4) \and(\5 8) } for 0 to 3 as \8 \set(\4 \8 \add(\rsh(\get(\4 \8) \8) \mul(2 \rsh(\get(\6 \8))))) \set(\5 \8 \add(\rsh(\get(\5 \8) \8) \mul(2 \rsh(\get(\7 \8))))) \set(\4 \8 \add(\get(\4 \8) \get(\4 \8))) if \greater(\get(\4 \8), 2) \set(\4, \8, 2) endif end for for 0 to 127 as \5 let \6 : \get(\3 \5) if \equals(\4 999) continue endif let \7 : { \and(\6 16) \and(\6 32) \and(\6 64) \and(\6 128) } let \6 : { \and(\6 1) \and(\6 2) \and(\6 4) \and(\6 8) } for 0 to 3 as \8 \set(\6 \8 \add(\rsh(\get(\6 \8) \8) \mul(2 \rsh(\get(\7 \8))))) end for if \equals(\get(\6 0) \get(\4 0)) if \equals(\get(\6 1) \get(\4 1)) if \equals(\get(\6 2) \get(\4 2)) if \equals(\get(\6 3) \get(\4 3)) ("\add(\u2500 \1)" "\add(\u2500 \2)") : "\add(\u2500 \5)" end if end if end if end if end for end macro for 0 to 127 as \1 for \1 to 127 as \2 boxes(\1 \2) end for end for "b" "+" : "┼" "B" "+" : "╋" (["-" "─"] ["|" "│"]) : "┼" "b" "." "." : "╌" "B" "." "." : "╍" "╌" "╌" : "╍" "b" "¦" : "╎" "b" "." ":" : "╎" "B" "¦" : "╏" "B" "." ":" : "╏" "╎" "╎" : "╏" "b" "=" "-" : "═" ("=" "─") : "═" "b" "=" "|" : "║" ("=" "│") : "║" ("+" "┍") : "╒" ("+" "┎") : "╓" ("+" ["┌" "┏"]) : "╔" ("+" "┑") : "╕" ("+" "┒") : "╖" ("+" ["┐" "┓"]) : "╗" ("+" "┕") : "╘" ("+" "┖") : "╙" ("+" ["└" "┗"]) : "╚" ("+" "┙") : "╛" ("+" "┚") : "╜" ("+" ["┘" "┛"]) : "╝" ("+" "┝") : "╞" ("+" "┠") : "╟" ("+" ["├" "┣"]) : "╠" ("+" "┥") : "╡" ("+" "┨") : "╢" ("+" ["┤" "┫"]) : "╣" ("+" "┯") : "╤" ("+" "┰") : "╥" ("+" ["┬" "┳"]) : "╦" ("+" "┷") : "╧" ("+" "┸") : "╨" ("+" ["┴" "┻"]) : "╩" ("+" "┿") : "╪" ("+" "╂") : "╫" ("+" ["┼" "╋"]) : "╬" "b" "=" "+" : "╬" ("=" "┼") : "╬" (["o" "O"] "┌") : "╭" (["o" "O"] "┐") : "╮" (["o" "O"] "┘") : "╯" (["o" "O"] "└") : "╰" "b" "/" : "╱" "b" "\\" : "╲" ("╱" "╲") : "╳" "b" "X" : "╳" "b" ["<" "←"] : "╴" "b" [ "^" "↑"] : "╵" "b" [">" "→"] : "╶" "b" ["v" "," "↓"] : "╷" "B" ["<" "←"] : "╸" "B" [ "^" "↑"] : "╹" "B" [">" "→"] : "╺" "B" ["v" "," "↓"] : "╻" # Block Elements: "B" : dead_ascii("█") "|" : dead_ascii("▀") "0" : "▀" "1" : "▁" "2" : "▂" "3" : "▃" "4" : "▄" "5" : "▅" "6" : "▆" "7" : "▇" "-" : dead_ascii("▐") "7" : "▉" "6" : "▊" "5" : "▋" "4" : "▌" "3" : "▍" "2" : "▎" "1" : "▏" "0" : "▐" "1" : "░" "2" : "▒" "3" : "▓" "-" : "▔" "|" : "▕" "," : "▖" "." : "▗" ";" : "▘" "▝" : "▙" "▗" "▘" : "▚" "▗" : "▛" "▖" : "▜" ":" : "▝" "▖" "▝" : "▞" "▘" : "▟" # TODO Geometric Shapes # TODO Miscellaneous Symbols # TODO Dingbats # Miscellaneous Mathematical Symbols-A: "L" "/" : "⟀" ["Δ" "∆"] ["Δ" "∆"] : "⟁" "!" "|" : "⟂" ("⊂" "o") : "⟃" ("⊃" "o") : "⟄" "⟆" "⟆" : "⟅" (["~" ] ["L" "l"]) : "⟅" (["~" ] ["J" "j"]) : "⟆" "⟅" "⟅" : "⟆" ("∨" ".") : "⟇" "⟑" "⟑" : "⟇" "\\" "⊂" : "⟈" "⊃" "/" : "⟉" ("-" "|") : "⟊" "/" "/" : "⟋" (")" "7") : "⟌" "\\" "\\" : "⟍" "[" "∧" "]" : "⟎" "[" "∨" "]" : "⟏" "<" "." ">" : "⟐" ("∧" ".") : "⟑" "⟇" "⟇" : "⟑" "⫙" "⫙" : "⟒" ("∪" "|") : "⟒" "⟔" "⟔" : "⟓" "_" "." "|" : "⟓" "|" "." "_" : "⟔" "⟓" "⟓" : "⟔" "=" "⨝" : "⟕" "=" "⊳" : "⟕" "⟖" "⟖" : "⟕" "⊲" "=" : "⟖" "⨝" "=" : "⟖" "⟕" "⟕" : "⟖" "⨝" "⨝" : "⟗" "⟕" "⟖" : "⟗" "=" "⨝" "=" : "⟗" "⟘" : "⟘" "⟙" "⟙" : "⟘" "⟙" : "⟙" "⟘" "⟘" : "⟙" "⫤" "⊨" : "⟚" "⊣" "⊢" : "⟛" "o" "-" : "⟜" "⊸" "⊸" : "⟜" "|" "-" "-" "-" : "⟝" "⊢" "-" : "⟝" "-" "-" "-" "|" : "⟞" "-" "⊣" : "⟞" "⫱" "⫱" : "⟟" "o" "|" "-" : "⟟" ("-" "⫯") : "⟟" "<" "-" ">" : "⟠" "." "<" ">" : "⟡" "-" "<" ">" : "⟢" "-" "⟡" : "⟢" "⟣" "⟣" : "⟢" "<" ">" "-" : "⟣" "⟡" "-" : "⟣" "⟢" "⟢" : "⟣" "-" "[" "]" : "⟤" "⟥" "⟥" : "⟤" "[" "]" "-" : "⟥" "⟤" "⟤" : "⟥" "[" "[" : "⟦" "]" "]" : "⟧" "<" "⟨" : "⟨" ")" ">" : "⟩" "⟨" "⟨" : "⟪" "⟩" "⟩" : "⟫" "(" "|" : "⟬" "|" ")" : "⟭" "|" "(" : "⟮" ")" "|" : "⟯" # TODO Supplemental Arrows-A # Braille Patterns: function braille/1 \or(\lsh(1 \sub("\1" "0")) "\u2800") end function macro braille_double/1 let \2 : "\u2800" if \and(\1 1) = 1 let \2 : \or(\2 8) endif if \and(\1 2) = 2 let \2 : \or(\2 16) endif if \and(\1 4) = 4 let \2 : \or(\2 32) endif if \and(\1 8) = 8 let \2 : \or(\2 1) endif if \and(\1 16) = 16 let \2 : \or(\2 2) endif if \and(\1 32) = 32 let \2 : \or(\2 4) endif if \and(\1 64) = 64 let \2 : \or(\2 128) endif if \and(\1 128) = 128 let \2 : \or(\2 64) endif "\1" "\1" : "\or(\1 \2)" end macro "b" : "\u2800" for "1" to "8" as \1 "b" "\1" : "\braille(\1)" for \add(\1 1) to "8" as \2 "B" ("\1" "\2") : "\or(\braille(\1) \braille(\2))" end for end for for "\u2800" to "\u28FF" as \1 braille_double(\1) for \add(\1 1) to "\u28FF" as \2 ("\1" "\2") : "\or(\1 \2)" end for end for # TODO Supplemental Arrows-B # Miscellaneous Mathematical Symbols-B: ":" "3" "|" : "⦀" "z" "." : "⦁" "z" ":" : "⦂" "{" "|" : "⦃" "|" "}" : "⦄" "|" "(" : "⦅" ")" "|" : "⦆" "(" "|" : "⦇" "|" ")" : "⦈" "⟨" "|" : "⦉" "|" "⟩" : "⦊" ("_" "[") : "⦋" ("_" "]") : "⦌" ("[" "\\") : "⦍" ("]" "\\") : "⦎" ("[" "/") : "⦏" ("]" "/") : "⦐" ("⟨" ["." "⋅"]) : "⦑" ("⟩" ["." "⋅"]) : "⦒" ("(" "<") : "⦓" (")" ">") : "⦔" (">" "⸨") : "⦕" ("<" "⸩") : "⦖" "⟬" "⟬" : "⦗" "⟭" "⟭" : "⦘" # TODO ⦙ ⦚ ⦛ ⦜ ⦝ ⦞ ⦟ ⦠ ⦡ ⦢ ⦣ ⦤ ⦥ ⦦ ⦧ ⦨ ⦩ ⦪ ⦫ ⦬ ⦭ ⦮ ⦯ "∅" "∅" : "⦰" ("∅" "_") : "⦱" composite("∅" "°" "⦲") ("∅" "→") : "⦳" ("∅" "←") : "⦴" "(" "-" "-" ")" : "⦵" "(" "|" ")" : "⦶" "(" "|" "|" ")" : "⦷" "(" "\\" ")" : "⦸" "(" ["⟂" "⊥"] ")" : "⦹" "⦺" "⦺" : "⦹" "(" "⫠" ")" : "⦺" "⦹" "⦹" : "⦺" "(" "X" )" : "⦻" "(" "%" )" : "⦼" ("O" "↑") : "⦽" "(" "o" )" : "⦾" "(" "(" ")" )" : "⦾" "(" "(" "o" ")" )" : "⦿" "(" "(" "(" ")" ")" )" : "⦿" "(" "<" ")" : "⧀" "(" ">" ")" : "⧁" "O" "o" : "⧂" "O" "=" : "⧃" "[" "/" "]" : "⧄" "[" "\\" "]" : "⧅" "[" "*" "]" : "⧆" "[" "o" "]" : "⧇" "[" "[" "]" "]" : "⧈" "[" "]" "[" "]" : "⧉" (["Δ" "∆"] ".") : "⧊" (["Δ" "∆"] "_") : "⧋" (["Δ" "∆"] "s") : "⧌" (["Δ" "∆"] "_") : "⧍" "⊳" "/" "⊲" : "⧎" "⊲" "|" : "⧏" "|" "⊳" : "⧐" # TODO ⧑ ⧒ ⧓ ⧔ ⧕ ⧖ ⧗ ⧘ ⧙ ⧚ ⧛ ⧜ ⧝ ⧞ ⧟ ⧠ ⧡ ⧢ ⧣ ⧤ ⧥ ⧦ ⧧ ⧨ ⧩ ⧪ ⧫ ⧬ ⧭ ⧮ ⧯ ⧰ ⧱ ⧲ ⧳ ":" "→" : "⧴" # TODO ⧵ ⧶ ⧷ ⧸ ⧹ ⧺ ⧻ ")" "<" : "⧼" ">" "(" : "⧽" # TODO ⧾ ⧿ # Supplemental Mathematical Operators: "⊙" "⊙" : "⨀" "⊕" "⊕" : "⨁" "⊗" "⊗" : "⨂" "⊍" "⊍" : "⨃" "⊎" "⊎" : "⨄" "⊓" "⊓" : "⨅" "⊔" "⊔" : "⨆" "⋀" "⋀" : "⨇" "⋁" "⋁" : "⨈" ("/" "\\") : "⨉" ("o" "∑") : "⨊" ("∑" "∫") : "⨋" "∬" "∬" : "⨌" ("∫" "∭") : "⨌" "4" ["s" "ſ" "∫"] : "⨌" ("-" "∫") : "⨍" ("=" "∫") : "⨎" ("/" "∫") : "⨏" (["c" "C"] "∫") : "⨐" (["u" "U"] "∫") : "⨑" "]" "∫" : "⨒" ")" "∫" : "⨓" ")" ")" "∫" : "⨔" "∫" ")" ")" : "⨔" "(" ")" "∫" : "⨕" "∫" "(" ")" : "⨕" "[" "]" "∫" : "⨖" "∫" "[" "]" : "⨖" ("←" "∫") : "⨗" (["x" "X" "×"] "∫") : "⨘" ("∩" "∫") : "⨙" ("∪" "∫") : "⨚" ("_" "∫") : "⨛" "⨜" "⨜" : "⨛" ("_" "∫") : "⨜" "⨛" "⨛" : "⨜" "⊳" "⊲" : "⨝" "⊲" "⊲" : "⨞" "z" ";" : "⨟" "⨾" "⨾" : "⨟" "z" ">" : "⨠" "z" ["|" "↑"] : "⨡" "+" : "⨢" "+" : "⨣" "+" : "⨤" "+" "." : "⨥" "+" ["~" ] : "⨦" "+" ["2" "₂"] : "⨧" "+" ["^" ] : "⨨" "," "-" : "⨩" "-" "." : "⨪" ":" "\\" "-" : "⨫" ":" "/" "-" : "⨬" "(" "+" : "⨭" "+" ")" : "⨮" "." "×" : "⨯" "." "×" : "⨰" ("." "⨯") : "⨰" ("_" "×") : "⨱" "⨱" "⨱" : "⨲" "×" "×" : "⨳" "(" ["x" "×"] : "⨴" ["x" "×"] ")" : "⨵" ("^" ) "(" ["x" "X" "×"] ")" : "⨶" "⊗" : "⨶" "(" "(" ["x" "X" "×"] ")" ")" : "⨷" [ ] "(" "⊗" ")" : "⨷" "(" "÷" ")" : "⨸" (["Δ" "∆"] "+") : "⨹" "/" "+" "\\" : "⨹" (["Δ" "∆"] ["-" "−"]) : "⨺" "/" ["-" "−"] "\\" : "⨺" (["Δ" "∆"] ["x" "×"]) : "⨻" "/" ["x" "×"] "\\" : "⨻" ("-" "¬") : "⨼" ("+" "¬") : "⨽" "⨟" "⨟" : "⨾" "." "⨟" : "⨾" "∐" "∐" : "⨿" (∩ ["." "⋅"]) : "⩀" (∪ ["." "−"]) : "⩁" ("_" "∪") : "⩂" "⩌" "⩌" : "⩂" ("_" "∩") : "⩃" # the font "fixed" places the bar beneath instead of above in ⩃ "⩍" "⩍" : "⩃" # the font "fixed" places the bar beneath instead of above in ⩃ "∩" ["^" ] : "⩄" "∩" : "⩄" "⩅" "⩅" : "⩄" ("v" "∪") : "⩅" "⩄" "⩄" : "⩅" "∪" "∩" : "⩆" "∩" "∪" : "⩇" "∪" "∩" : "⩈" "∩" "∪" : "⩉" ("∪" "w") : "⩊" ("∩" "m") : "⩋" ("_" "∪") : "⩌" "⩂" "⩂" : "⩌" ("_" "∩") : "⩍" "⩃" "⩃" : "⩍" # the font "fixed" places the bar beneath instead of above in ⩃ "⊓" "⊓" : "⩎" "⊔" "⊔" : "⩏" ("*" "∪") : "⩐" ("." "∧") : "⩑" ("." "∨") : "⩒" "∨" "∨" : "⩓" "∧" "∧" : "⩔" "." "⨇" : "⩕" "." "⨈" : "⩖" "|" "/" : "⩗" "/" "|" : "⩘" ("∨" "∧") : "⩙" ("|" "∧") : "⩚" ("|" "∨") : "⩛" ("-" "∧") : "⩜" ("-" "∨") : "⩝" "=" "∧" : "⩞" ("_" "∧") : "⩟" "∧" "=": "⩠" "." "⊻" : "⩡" "=" "∨" : "⩢" "∨" "=": "⩣" ("⊲" "-") : "⩤" ("⊳" "-") : "⩥" ("." "⩦") : "⩦" ("." "≡") : "⩧" "3" "#" : "⩨" "4" "#" : "⩩" "." ["~" ] : "⩪" "/" ":" : "⩫" ["~" ] "-" ["~" ] : "⩬" "." "≅" : "⩭" ("*" "=") : "⩮" "≈" : "⩯" "≈" ("~" ) : "⩯" "≈" "=" : "⩰" "=" "+" : "⩱" "+" "=" : "⩲" "=" ("~" ) : "⩳" ":" ":" "=" : "⩴" "=" "=" : "⩵" "=" "=" "=" : "⩶" ":" "=" ":" : "⩷" ("…" ["=" "≡"]) : "⩸" ("<" "o") : "⩹" (">" "o") : "⩺" ("<" "?") : "⩻" (">" "?") : "⩼" "≤" "≤" : "⩽" "≥" "≥" : "⩾" ("." "⩽") : "⩿" ("." "⩾") : "⪀" "." "⩽" : "⪁" "." "⩾" : "⪂" "⩽" "." : "⪃" "⩾" "." : "⪄" ("<" "≈") : "⪅" (">" "≈") : "⪆" ("/" "≤") : "⪇" ("/" "≥") : "⪈" ("<" "≉") : "⪉" (">" "≉") : "⪊" "<" "=" ">" : "⪋" ">" "=" "<" : "⪌" "<" ["~" ] ["_" "-"] : "⪍" "<" "≃" : "⪍" ("_" "≲") : "⪍" ">" ["~" ] ["_" "-"] : "⪎" ">" "≃" : "⪎" ("_" "≳") : "⪎" ("/" "≃") : "≄" "<" ["~" ] ">" : "⪏" ">" ["~" ] "<" : "⪐" "<" ">" "=" : "⪑" ">" "<" "=" : "⪒" "⩽" "⩾" : "⪓" "⩾" "⩽" : "⪔" "⋜" "⋜" : "⪕" "⋝" "⋝" : "⪖" "⩿" "⩿" : "⪗" "⪀" "⪀" : "⪘" "≦" "≦" : "⪙" # ⪙ is mirrored by mistake in the font "fixed" "≧" "≧" : "⪚" "⪙" "⪙" : "⪛" # ⪙ is mirrored by mistake in the font "fixed" "⪚" "⪚" : "⪜" "<" : "⪝" ">" : "⪞" ("⪝" "=") : "⪟" ("⪞" "=") : "⪠" "." "<" "<" : "⪡" "." ">" ">" : "⪢" ("_" ["«" "≪"]) : "⪣" "⪥" "⪥" : "⪤" ">" "<" : "⪥" "<" ")" : "⪦" "(" ">" : "⪧" ("_" "⪦") : "⪨" ("_" "⪧") : "⪩" ("-" "<") : "⪪" ("-" ">") : "⪫" ("_" "⪪") : "⪬" ("_" "⪫") : "⪭" ("=" "≏") : "⪮" "≼" "≼" : "⪯" "≽" "≽ : "⪰" ("/" "⪯") : "⪱" ("/" "⪰") : "⪲" ("=" "≺") : "⪳" ("=" "≻") : "⪴" ("≠" "≺") : "⪵" ("≠" "≻") : "⪶" ("≈" "≺") : "⪷" ("≈" "≻") : "⪸" ("≉" "≺") : "⪹" ("≉" "≻") : "⪺" ("_" "≻") : "≽" "≺" "≺" : "⪻" "≻" "≻" : "⪼" ("⊂" ".") : "⪽" ("⊃" ".") : "⪾" ("⊂" "+") : "⪿" ("⊃" "+") : "⫀" ("⊂" ["x" "×"]) : "⫁" ("⊃" ["x" "×"]) : "⫂" ("⊆" ".") : "⫃" ("⊇" ".") : "⫄" ("⊂" "=") : "⫅" ("⊃" "=") : "⫆" ("⊂" ["~" ]) : "⫇" "⊂" : "⫇" ("⊃" ["~" ]) : "⫈" "⊃" : "⫈" ("⊂" "≈") : "⫉" ("⊃" "≈") : "⫊" ("⊂" "≠") : "⫋" ("⊃" "≠") : "⫌" ("-" "⊏") : "⫍" "-" (["[" "]"] "<") : "⫍" ("-" "⊐") : "⫎" "-" (["[" "]"] ">") : "⫎" "⊂" "|" : "⫏" "|" "⊃" : "⫐" ("_" "⫏") : "⫑" ("_" "⫐") : "⫒" "⊂" "⊃" : "⫓" "⊃" "⊂" : "⫔" "⊂" "⊂" : "⫕" "⊃" "⊃" : "⫖" "⊃" "⊂" : "⫗" ("-" "⫗") : "⫘" "⋔" "." : "⫙" "⟒" "⟒" : "⫙" ("∩" "Y") : "⫚" "⋔" "⋔" : "⫛" ("/" "⫝") : "⫝̸" ("|" "u") : "⫝" "." "⊣" : "⫞" "." "⊤" : "⫟" "⫠" "⫠" : "⫟" "." "⊥" : "⫠" "⫟" "⫟" : "⫠" (["⊥" "⟂"] "s") : "⫡" ("⊨" "=") : "⫢" "⊩" "⊩" : "⫣" "⊨" "⊨" : "⫤" "⫤" "|" : "⫥" ("-" "⊩") : "⫦" ("_" ["⫟" "⊤"]) : "⫧" "⫨" "⫨" : "⫧" ("_" ["⫠" "⊥"]) : "⫨" "⫧" "⫧" : "⫨" ["⫨" "⫠" "⊥"] ["⫧" "⫟" "⊤"] : "⫩" ("⊤" "|") : "⫪" "⫫" "⫫" : "⫪" ("⊥" "|") : "⫫" "⫪" "⫪" : "⫫" "⫤" "." : "⫬" "⫭" "⫭" : "⫬" "⊨" "." : "⫭" "⫬" "⫬" : "⫭" "\\" "|" : "⫮" "o" "|" : "⫯" "⫰" "⫰" : "⫯" "|" "o" : "⫰" "⫯" "⫯" : "⫰" "-" "|" "o" : "⫱" ("-" "⫰") : "⫱" "⟟" "⟟" : "⫱" ("-" "∥") : "⫲" "-" "2" "|" : "⫲" "∥" : "⫳" "∥" ["~" ] : "⫳" "2" "|" : "⫳" "3" "|" : "⫴" ("-" "⫴") : "⫵" "-" "3" "|" : "⫵" "." ":" "|" : "⫶" "." "<" "<" "<" : "⫷" "." ">" ">" ">" : "⫸" "<" "=" : "⫹" ">" "=" : "⫺" "/" "/" "/" : "⫻" "|" "|" "|" : "⫼" "/" "/" : "⫽" "." "[" "]" : "⫾" "." "⫿" : "⫾" "[" "]" : "⫿" # TODO Miscellaneous Symbols and Arrows # TODO Glagolitic # TODO Latin Extended-C # TODO Coptic # TODO Georgian Supplement # TODO Tifinagh # TODO Ethiopic Extended # TODO Cyrillic Extended-A # TODO Supplemental Punctuation # TODO CJK Radicals Supplement # TODO Kangxi Radicals # TODO Ideographic Description Characters # TODO CJK Symbols and Punctuation # TODO Hiragana # TODO Katakana # TODO Bopomofo # TODO Hangul Compatibility Jamo # TODO Kanbun # TODO Bopomofo Extended # TODO CJK Strokes # TODO Katakana Phonetic Extensions # TODO Enclosed CJK Letters and Months # TODO CJK Compatibility # TODO CJK Unified Ideographs Extension A # TODO Yijing Hexagram Symbols # TODO CJK Unified Ideographs # TODO Yi Syllables # TODO Yi Radicals # TODO Lisu # TODO Vai # TODO Cyrillic Extended-B # TODO Bamum # TODO Modifier Tone Letters # TODO Latin Extended-D # TODO Syloti Nagri # TODO Common Indic Number Forms # TODO Phags-pa # TODO Saurashtra # TODO Devanagari Extended # TODO Kayah Li # TODO Rejang # TODO Hangul Jamo Extended-A # TODO Javanese # TODO Myanmar Extended-B # TODO Cham # TODO Myanmar Extended-A # TODO Tai Viet # TODO Meetei Mayek Extensions # TODO Ethiopic Extended-A # TODO Latin Extended-E # TODO Meetei Mayek # TODO Hangul Syllables # TODO Hangul Jamo Extended-B # TODO CJK Compatibility Ideographs # TODO Alphabetic Presentation Forms # TODO Arabic Presentation Forms-A # TODO Variation Selectors # TODO Vertical Forms # TODO Combining Half Marks # TODO CJK Compatibility Forms # TODO Small Form Variants # TODO Arabic Presentation Forms-B # TODO Halfwidth and Fullwidth Forms # TODO Specials # TODO Linear B Syllabary # TODO Linear B Ideograms # TODO Aegean Numbers # TODO Ancient Greek Numbers # TODO Ancient Symbols # TODO Phaistos Disc # TODO Lycian # TODO Carian # TODO Coptic Epact Numbers # TODO Old Italic # TODO Gothic # TODO Old Permic # TODO Ugaritic # TODO Old Persian # TODO Deseret # TODO Shavian # TODO Osmanya # TODO Elbasan # TODO Caucasian Albanian # TODO Linear A # TODO Cypriot Syllabary # TODO Imperial Aramaic # TODO Palmyrene # TODO Nabataean # TODO Phoenician # TODO Lydian # TODO Meroitic Hieroglyphs # TODO Meroitic Cursive # TODO Kharoshthi # TODO Old South Arabian # TODO Old North Arabian # TODO Manichaean # TODO Avestan # TODO Inscriptional Parthian # TODO Psalter Pahlavi # TODO Old Turkic # TODO Rumi Numeral Symbols # TODO Brahmi # TODO Kaithi # TODO Sora Sompeng # TODO Chakma # TODO Mahajani # TODO Sharada # TODO Sinhala Archaic Numbers # TODO Khojki # TODO Khudawadi # TODO Grantha # TODO Tirhuta # TODO Siddham # TODO Modi # TODO Takri # TODO Warang Citi # TODO Pau Cin Hau # TODO Cuneiform # TODO Cuneiform Numbers and Punctuation # TODO Egyptian Hieroglyphs # TODO Bamum Supplement # TODO Mro # TODO Bassa Vah # TODO Pahawh Hmong # TODO Miao # TODO Kana Supplement # TODO Duployan # TODO Shorthand Format Controls # TODO Byzantine Musical Symbols # TODO Musical Symbols # TODO Ancient Greek Musical Notation # TODO Tai Xuan Jing Symbols # TODO Counting Rod Numerals # TODO Mathematical Alphanumeric Symbols # TODO Mende Kikakui # TODO Arabic Mathematical Alphabetic Symbols # Mahjong Tiles: "m" "t" ">" : "\u1F000" "m" "t" "v" : "\u1F001" "m" "t" "<" : "\u1F002" "m" "t" [ "^"] : "\u1F003" "m" "t" "r" : "\u1F004" "m" "t" "g" : "\u1F005" "m" "t" "w" : "\u1F006" for "1" to "9" as \1 "m" "t" "w" "\1" : "\add(\u1F007 \sub(\1 "1"))" "m" "t" "t" "\1" : "\add(\u1F010 \sub(\1 "1"))" "m" "t" "b" "\1" : "\add(\u1F019 \sub(\1 "1"))" end for "m" "t" "m" : "\u1F022" "m" "t" "l" : "\u1F023" "m" "t" "z" : "\u1F024" "m" "t" "j" : "\u1F025" "m" "t" "1" : "\u1F026" "m" "t" "2" : "\u1F027" "m" "t" "3" : "\u1F028" "m" "t" "4" : "\u1F029" "m" "t" "*" : "\u1F02A" "m" "t" "/" : "\u1F02B" # Domino Tiles: "d" "t" "-" ["-" ] : "\u1F030" "d" "t" "|" ["|" ] : "\u1F062" for "0" to "6" as \1 for "0" to "6" as \2 "d" "t" "-" "\1" "\2" : "\add(\u1F031 \add(\mul(\sub(\1 "0") 7) \sub(\2 "0")))" "d" "t" "|" "\1" "\2" : "\add(\u1F063 \add(\mul(\sub(\1 "0") 7) \sub(\2 "0")))" end for end for # Playing Cards: "p" "c" : "🂠" dead_ascii(🂠) macro playing_card/2 (["♠" "♤"] "\1") : "\add(\u1F0A0 \2)" (["♥" "♡"] "\1") : "\add(\u1F0B0 \2)" (["♦" "♢"] "\1") : "\add(\u1F0C0 \2)" (["♣" "♧"] "\1") : "\add(\u1F0D0 \2)" end macro for "1" to "9" as \1 playing_card("\1" \sub(\1 "0") 1) endfor playing_card(["a" "A"] 1) playing_card("0" 10) playing_card(["j" "J"] 11) playing_card(["c" "C"] 12) playing_card(["q" "Q"] 13) playing_card(["k" "K"] 14) "🂠" "j" "r" : "\u1F0BF" "🂠" "j" "b" : "\u1F0CF" "🂠" "j" "w" : "\u1F0DF" "🂠" "0" : "\u1F0E0" "🂠" "1" : "\u1F0E1" "🂠" "2" : "\u1F0E2" "🂠" "3" : "\u1F0E3" "🂠" "4" : "\u1F0E4" "🂠" "5" : "\u1F0E5" "🂠" "6" : "\u1F0E6" "🂠" "7" : "\u1F0E7" "🂠" "8" : "\u1F0E8" "🂠" "9" : "\u1F0E9" "🂠" "1" "0" : "\u1F0EA" "🂠" "1" "1" : "\u1F0EB" "🂠" "1" "2" : "\u1F0EC" "🂠" "1" "3" : "\u1F0ED" "🂠" "1" "4" : "\u1F0EE" "🂠" "1" "5" : "\u1F0EF" "🂠" "1" "6" : "\u1F0F0" "🂠" "1" "7" : "\u1F0F1" "🂠" "1" "8" : "\u1F0F2" "🂠" "1" "9" : "\u1F0F3" "🂠" "2" "0" : "\u1F0F4" "🂠" "2" "1" : "\u1F0F5" # Enclosed Alphanumeric Supplement: "0" "." : "\u1F100" for "0" to "9" as \1 "\1" "," : "\add(\u1F101 \sub(\1 "0")" end for "(" "0" "." ")" : "\u1F10B" "(" "(" "(" "0" "." ")" ")" ")" : "\u1F10C" for "A" to "Z" as \1 "(" " " "\1" [" " .] ")" : "\add(\u1F110 \sub(\1 "A"))" "(" "\1" " " ")" : "\add(\u1F110 \sub(\1 "A"))" end for "[" " " "S" [" " .] "]" : "\u1F12A" "[" "S" " " "]" : "\u1F12A" "(" "/" "C" ["/" .] ")" : "\u1F12B" "(" "C" "/" ")" : "\u1F12B" "(" "/" "R" ["/" .] ")" : "\u1F12C" "(" "R" "/" ")" : "\u1F12C" "(" "C" "D" ")" : "\u1F12D" "(" "W" "z" ")" : "\u1F12E" for "A" to "Z" as \1 "[" "\1" "]" : "\add(\u1F130 \sub(\1 "A"))" "(" "(" "(" "\1" ")" ")" ")" : "\add(\u1F160 \sub(\1 "A"))" "[" "[" "[" "\1" "]" "]" "]" : "\add(\u1F170 \sub(\1 "A"))" end for "[" "H" "V" "]" : "\u1F14A" "[" "M" "V" "]" : "\u1F14B" "[" "S" "D" "]" : "\u1F14C" "[" "S" "S" "]" : "\u1F14D" "[" "P" "P" "V" "]" : "\u1F14E" "[" "W" "C" "]" : "\u1F14F" "(" "M" "C" ")" : "\u1F16A" "(" "M" "D" ")" : "\u1F16B" "[" "[" "[" "X" "P" "]" "]" "]" : "\u1F18A" "[" "[" "[" "I" "C" "]" "]" "]" : "\u1F18B" "[" "[" "[" "P" "A" "]" "]" "]" : "\u1F18C" "[" "[" "[" "S" "A" "]" "]" "]" : "\u1F18D" "[" "[" "[" "A" "B" "]" "]" "]" : "\u1F18E" "[" "[" "[" "W" "C" "]" "]" "]" : "\u1F18F" "[" "D" "J" "]" : "\u1F190" "[" "C" "L" "]" : "\u1F191" "[" "C" "O" "O" "L" "]" : "\u1F192" "[" "F" "R" "E" "E" "]" : "\u1F193" "[" "I" "D" "]" : "\u1F194" "[" "N" "E" "W" "]" : "\u1F195" "[" "N" "G" "]" : "\u1F196" "[" "O" "K" "]" : "\u1F197" "[" "S" "O" "S" "]" : "\u1F198" "[" "U" "P" "]" : "\u1F199 "[" "U" "P" "!" "]" : "\u1F199 "[" "V" "S" "]" : "\u1F19A for "a" to "z" as \1 "[" "r" "\1" "]" : "\add(\u1F1E6 \sub(\1 "a"))" end for # TODO Enclosed Ideographic Supplement # TODO Miscellaneous Symbols and Pictographs # TODO Emoticons # TODO Ornamental Dingbats # TODO Transport and Map Symbols # TODO Alchemical Symbols # TODO Geometric Shapes Extended # TODO Supplemental Arrows-C # TODO CJK Unified Ideographs Extension B # TODO CJK Unified Ideographs Extension C # TODO CJK Unified Ideographs Extension D # TODO CJK Compatibility Ideographs Supplement # Tags: These are deprecated # TODO Variation Selectors Supplement