Giter Club home page Giter Club logo

smdn.devices.us2066's Introduction

GitHub Sponsors NuGet MENTA YouTube views smdn.jp

smdn.devices.us2066's People

Contributors

smdn avatar

Stargazers

 avatar

Watchers

 avatar  avatar

smdn.devices.us2066's Issues

Add CGROM-invariant charsets

Define CGROM-invariant charsets which contains only ASCII and some commonly defined characters.

  • define class CharacterGeneratorRomInvariantEncoding
  • add readonly property CharacterGeneratorEncoding.CGRomInvariant

Complete the incomplete character mapping

c_unmaps must be replaced to appropriate characters.
Contributions are welcome!

CGROM-A

internal static readonly (char, byte)[] CharacterMapRomA = GenerateSortedCharacterMap(
new char[][] {
/* 0x0_ 0x1_ 0x2_ 0x3_ 0x4_ 0x5_ 0x6_ 0x7_ 0x8_ 0x9_ 0xA_ 0xB_ 0xC_ 0xD_ 0xE_ 0xF_ */
new[] /* 0x_0 */ { c_undef, '▶', ' ', '0', '¡', 'P', '¿', 'p', '⁰', '♪', '@', c_unmap, 'Γ', /*!*/'⅟', '↓', 'Č' },
new[] /* 0x_1 */ { c_undef, '◀', '!', '1', 'A', 'Q', 'a', 'q', '¹', '♫', '£', '¢', 'Λ', /*!*/'⅘', '←', 'Ě' },
new[] /* 0x_2 */ { c_undef, '⏫', '"', '2', 'B', 'R', 'b', 'r', '²', c_unmap, '$', 'Φ', 'Π', /*!*/'⅗', 'Á', 'Ř' },
new[] /* 0x_3 */ { c_undef, '⏬', '#', '3', 'C', 'S', 'c', 's', '³', '♥', '¥', 'τ', 'Υ', /*!*/'⅖', 'Í', 'Š' },
new[] /* 0x_4 */ { c_undef, '⏪', '¤', '4', 'D', 'T', 'd', 't', '⁴', c_unmap, 'è', 'λ', '_', /*!*/'⅕', 'Ó', 'Ž' },
new[] /* 0x_5 */ { c_undef, '⏩', '%', '5', 'E', 'U', 'e', 'u', '⁵', c_unmap, 'é', 'Ω', 'È', 'ƒ', 'Ú', 'č' },
new[] /* 0x_6 */ { c_undef, '↖', '&', '6', 'F', 'V', 'f', 'v', '⁶', '「', 'ù', 'π', 'Ê', '█', 'Ý', 'ě' },
new[] /* 0x_7 */ { c_undef, '↗', '\'', '7', 'G', 'W', 'g', 'w', '⁷', '」', 'ì', 'ψ', 'ê', '▉', 'á', 'ř' },
new[] /* 0x_8 */ { c_undef, '↙', '(', '8', 'H', 'X', 'h', 'x', '⁸', '“', 'ò', 'Σ', 'ç', '▋', 'í', 'š' },
new[] /* 0x_9 */ { c_undef, '↘', ')', '9', 'I', 'Y', 'i', 'y', '⁹', '”', 'Ç', 'Θ', 'ğ', '▍', 'ó', 'ž' },
new[] /* 0x_A */ { c_undef, '▲', '*', ':', 'J', 'Z', 'j', 'z', '½', '(', c_unmap, 'Ξ', 'Ş', '▏', 'ú', '[' },
new[] /* 0x_B */ { c_undef, '▼', '+', ';', 'K', 'Ä', 'k', 'ä', '¼', ')', 'Ø', '●', 'ş', /*!*/'㌮', 'ý', '\\' },
new[] /* 0x_C */ { c_undef, '↵', ',', '<', 'L', 'Ö', 'l', 'ö', '±', 'α', 'ø', 'Æ', 'İ', c_unmap, 'Ô', ']' },
new[] /* 0x_D */ { c_undef, '^', '-', '=', 'M', 'Ñ', 'm', 'ñ', '≥', 'ε', c_unmap, 'æ', 'ı', '・', 'ô', '{' },
new[] /* 0x_E */ { c_undef, 'ˇ', '.', '>', 'N', 'Ü', 'n', 'ü', '≤', 'δ', 'Ȧ', 'β', c_unmap, '↑', 'Ů', '¦' },
new[] /* 0x_F */ { c_undef, c_unmap, '/', '?', 'O', c_unmap, 'o', 'à', 'μ', c_unmap, 'ȧ', 'É', c_unmap, '→', 'ů', '}' },
/* 0x0_ 0x1_ 0x2_ 0x3_ 0x4_ 0x5_ 0x6_ 0x7_ 0x8_ 0x9_ 0xA_ 0xB_ 0xC_ 0xD_ 0xE_ 0xF_ */
}
);

CGROM-B

internal static readonly (char, byte)[] CharacterMapRomB = GenerateSortedCharacterMap(
new char[][] {
/* 0x0_ 0x1_ 0x2_ 0x3_ 0x4_ 0x5_ 0x6_ 0x7_ 0x8_ 0x9_ 0xA_ 0xB_ 0xC_ 0xD_ 0xE_ 0xF_ */
new[] /* 0x_0 */ { c_undef, '▶', ' ', '0', '@', 'P', '`', 'p', 'А', 'Р', c_unmap, c_unmap, c_unmap, c_unmap, c_unmap, c_unmap },
new[] /* 0x_1 */ { c_undef, '◀', '!', '1', 'A', 'Q', 'a', 'q', 'Б', 'С', c_unmap, c_unmap, c_unmap, c_unmap, c_unmap, c_unmap },
new[] /* 0x_2 */ { c_undef, '⏫', '"', '2', 'B', 'R', 'b', 'r', 'В', 'Т', c_unmap, c_unmap, c_unmap, c_unmap, c_unmap, c_unmap },
new[] /* 0x_3 */ { c_undef, '⏬', '#', '3', 'C', 'S', 'c', 's', 'Г', 'У', c_unmap, c_unmap, c_unmap, c_unmap, c_unmap, c_unmap },
new[] /* 0x_4 */ { c_undef, '£', '$', '4', 'D', 'T', 'd', 't', 'Д', 'Ф', c_unmap, c_unmap, c_unmap, c_unmap, c_unmap, c_unmap },
new[] /* 0x_5 */ { c_undef, '¿', '%', '5', 'E', 'U', 'e', 'u', 'Е', 'Х', c_unmap, c_unmap, c_unmap, c_unmap, c_unmap, c_unmap },
new[] /* 0x_6 */ { c_undef, '¡', '&', '6', 'F', 'V', 'f', 'v', 'Ж', 'Ц', c_unmap, c_unmap, c_unmap, c_unmap, c_unmap, c_unmap },
new[] /* 0x_7 */ { c_undef, '♪', '\'', '7', 'G', 'W', 'g', 'w', 'З', 'Ч', c_unmap, c_unmap, c_unmap, '×', c_unmap, '÷' },
new[] /* 0x_8 */ { c_undef, c_unmap, '(', '8', 'H', 'X', 'h', 'x', 'И', 'Ш', c_unmap, c_unmap, c_unmap, c_unmap, c_unmap, c_unmap },
new[] /* 0x_9 */ { c_undef, c_unmap, ')', '9', 'I', 'Y', 'i', 'y', 'Й', 'Щ', c_unmap, c_unmap, c_unmap, c_unmap, c_unmap, c_unmap },
new[] /* 0x_A */ { c_undef, '✓', '*', ':', 'J', 'Z', 'j', 'z', 'К', 'Ъ', c_unmap, c_unmap, c_unmap, c_unmap, c_unmap, c_unmap },
new[] /* 0x_B */ { c_undef, c_undef, '+', ';', 'K', '[', 'k', '{', 'Л', 'Ы', c_unmap, c_undef, c_unmap, c_unmap, c_unmap, c_unmap },
new[] /* 0x_C */ { c_undef, c_undef, ',', '<', 'L', '\\', 'l', '|', 'М', 'Ь', c_unmap, c_undef, c_unmap, c_unmap, c_unmap, c_unmap },
new[] /* 0x_D */ { c_undef, c_undef, '-', '=', 'M', ']', 'm', '}', 'Н', 'Э', c_unmap, c_undef, c_unmap, c_unmap, c_unmap, c_unmap },
new[] /* 0x_E */ { c_undef, c_undef, '.', '>', 'N', '^', 'n', '~', 'О', 'Ю', c_unmap, c_undef, c_unmap, c_unmap, c_unmap, c_unmap },
new[] /* 0x_F */ { c_undef, c_undef, '/', '?', 'O', '_', 'o', '¦', 'П', 'Я', c_unmap, c_undef, c_unmap, 'ß', c_unmap, c_unmap },
/* 0x0_ 0x1_ 0x2_ 0x3_ 0x4_ 0x5_ 0x6_ 0x7_ 0x8_ 0x9_ 0xA_ 0xB_ 0xC_ 0xD_ 0xE_ 0xF_ */
}
);

CGROM-C

internal static readonly (char, byte)[] CharacterMapRomC = GenerateSortedCharacterMap(
new char[][] {
/* 0x0_ 0x1_ 0x2_ 0x3_ 0x4_ 0x5_ 0x6_ 0x7_ 0x8_ 0x9_ 0xA_ 0xB_ 0xC_ 0xD_ 0xE_ 0xF_ */
new[] /* 0x_0 */ { '⌠', '™', ' ', '0', '@', 'P', '`', 'p', 'Ç', 'É', c_undef, 'ー', 'タ', 'ミ', 'á', '˙' },
new[] /* 0x_1 */ { '⌡', '†', '!', '1', 'A', 'Q', 'a', 'q', 'ü', 'æ', '。', 'ア', 'チ', 'ム', 'í', '¨' },
new[] /* 0x_2 */ { '∞', '§', '"', '2', 'B', 'R', 'b', 'r', 'é', 'Æ', '「', 'イ', 'ツ', 'メ', 'ó', '˚' },
new[] /* 0x_3 */ { '∇', '¶', '#', '3', 'C', 'S', 'c', 's', 'ȧ', 'ô', '」', 'ウ', 'テ', 'モ', 'ú', 'ˋ' },
new[] /* 0x_4 */ { '↵', 'Γ', '$', '4', 'D', 'T', 'd', 't', 'ä', 'ö', '、', 'エ', 'ト', 'ヤ', '¢', '´' },
new[] /* 0x_5 */ { '↑', 'Δ', '%', '5', 'E', 'U', 'e', 'u', 'à', 'ò', '・', 'オ', 'ナ', 'ユ', '£', '½' },
new[] /* 0x_6 */ { '↓', 'Θ', '&', '6', 'F', 'V', 'f', 'v', 'ȧ', 'û', 'ヲ', 'カ', 'ニ', 'ヨ', '¥', '¼' },
new[] /* 0x_7 */ { '→', 'Λ', '\'', '7', 'G', 'W', 'g', 'w', 'ç', 'ù', 'ァ', 'キ', 'ヌ', 'ラ', /*!*/'㌮', '×' },
new[] /* 0x_8 */ { '←', 'Ξ', '(', '8', 'H', 'X', 'h', 'x', 'ê', 'ÿ', 'ィ', 'ク', 'ネ', 'リ', 'ƒ', '÷' },
new[] /* 0x_9 */ { '┌', 'Π', ')', '9', 'I', 'Y', 'i', 'y', 'ë', 'Ö', 'ゥ', 'ケ', 'ノ', 'ル', c_unmap, '≥' },
new[] /* 0x_A */ { '┐', 'Σ', '*', ':', 'J', 'Z', 'j', 'z', 'è', 'Ü', 'ェ', 'コ', 'ハ', 'レ', 'Ã', '≤' },
new[] /* 0x_B */ { '└', 'Υ', '+', ';', 'K', '[', 'k', '{', 'ï', 'ñ', 'ォ', 'サ', 'ヒ', 'ロ', 'ã', '≪' },
new[] /* 0x_C */ { '┘', 'Φ', ',', '<', 'L', '\\', 'l', '|', 'î', 'Ñ', 'ャ', 'シ', 'フ', 'ワ', 'Õ', '≫' },
new[] /* 0x_D */ { '・', 'Ψ', '-', '=', 'M', ']', 'm', '}', 'ì', c_unmap, 'ュ', 'ス', 'ヘ', 'ン', 'õ', '≠' },
new[] /* 0x_E */ { '®', 'Ω', '.', '>', 'N', '^', 'n', '→', 'Ä', c_unmap, 'ョ', 'セ', 'ホ', '゙', 'Ø', '√' },
new[] /* 0x_F */ { '©', 'α', '/', '?', 'O', '_', 'o', '←', 'Â', '¿', 'ッ', 'ソ', 'マ', '゚', 'ø', '‾' },
/* 0x0_ 0x1_ 0x2_ 0x3_ 0x4_ 0x5_ 0x6_ 0x7_ 0x8_ 0x9_ 0xA_ 0xB_ 0xC_ 0xD_ 0xE_ 0xF_ */
}
);

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.