<?php
// https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes
return [
// Dutch (Flemish)
'nl' => [
'Á' => 'A',
'á' => 'a',
'Ä' => 'A',
'ä' => 'a',
'À' => 'A',
'à' => 'a',
'Â' => 'A',
'â' => 'a',
'É' => 'E',
'é' => 'e',
'Ë' => 'E',
'ë' => 'e',
'È' => 'E',
'è' => 'e',
'Ê' => 'E',
'ê' => 'e',
'Í' => 'I',
'í' => 'i',
'Ï' => 'I',
'ï' => 'i',
'Ì' => 'I',
'ì' => 'i',
'Î' => 'I',
'î' => 'i',
'Ó' => 'O',
'ó' => 'o',
'Ö' => 'O',
'ö' => 'o',
'Ò' => 'O',
'ò' => 'o',
'Ô' => 'O',
'ô' => 'o',
'Ú' => 'U',
'ú' => 'u',
'Ü' => 'U',
'ü' => 'u',
'Ù' => 'U',
'ù' => 'u',
'Û' => 'U',
'û' => 'u',
'Ý' => 'Y',
'ý' => 'y',
'?' => 'Y',
],
// Italian
'it' => [
'à' => 'a',
'À' => 'A',
'é' => 'e',
'É' => 'E',
'è' => 'e',
'È' => 'E',
'ì' => 'i',
'Ì' => 'I',
'Ò' => 'O',
'ò' => 'o',
'ù' => 'u',
'Ù' => 'U',
],
// Macedonian
'mk' => [
'?' => 'A',
'?' => 'B',
'?' => 'V',
'?' => 'G',
'?' => 'D',
'?' => 'Gj',
'?' => 'E',
'?' => 'Zh',
'?' => 'Z',
'?' => 'Dz',
'?' => 'I',
'?' => 'J',
'?' => 'K',
'?' => 'L',
'?' => 'Lj',
'?' => 'M',
'?' => 'N',
'?' => 'Nj',
'?' => 'O',
'?' => 'P',
'?' => 'R',
'?' => 'S',
'?' => 'T',
'?' => 'Kj',
'?' => 'U',
'?' => 'F',
'?' => 'H',
'?' => 'C',
'?' => 'Ch',
'?' => 'Dj',
'?' => 'Sh',
'?' => 'a',
'?' => 'b',
'?' => 'v',
'?' => 'g',
'?' => 'd',
'?' => 'gj',
'?' => 'e',
'?' => 'zh',
'?' => 'z',
'?' => 'dz',
'?' => 'i',
'?' => 'j',
'?' => 'k',
'?' => 'l',
'?' => 'lj',
'?' => 'm',
'?' => 'n',
'?' => 'nj',
'?' => 'o',
'?' => 'p',
'?' => 'r',
'?' => 's',
'?' => 't',
'?' => 'kj',
'?' => 'u',
'?' => 'f',
'?' => 'h',
'?' => 'c',
'?' => 'ch',
'?' => 'dj',
'?' => 'sh',
],
// Portuguese (Brazil)
'pt' => [
'æ' => 'ae',
'?' => 'ae',
'À' => 'A',
'Á' => 'A',
'Â' => 'A',
'Ã' => 'A',
'Å' => 'AA',
'?' => 'A',
'?' => 'A',
'?' => 'A',
'Æ' => 'AE',
'?' => 'AE',
'à' => 'a',
'á' => 'a',
'â' => 'a',
'ã' => 'a',
'å' => 'aa',
'?' => 'a',
'?' => 'a',
'?' => 'a',
'ª' => 'a',
'?' => 'C',
'?' => 'C',
'Ç' => 'C',
'ç' => 'c',
'?' => 'c',
'?' => 'c',
'Ð' => 'Dj',
'?' => 'D',
'ð' => 'dj',
'?' => 'd',
'È' => 'E',
'É' => 'E',
'Ê' => 'E',
'Ë' => 'E',
'?' => 'E',
'?' => 'E',
'è' => 'e',
'é' => 'e',
'ê' => 'e',
'ë' => 'e',
'?' => 'e',
'?' => 'e',
'?' => 'f',
'?' => 'G',
'?' => 'G',
'?' => 'g',
'?' => 'g',
'?' => 'H',
'?' => 'H',
'?' => 'h',
'?' => 'h',
'Ì' => 'I',
'Í' => 'I',
'Î' => 'I',
'Ï' => 'I',
'?' => 'I',
'?' => 'I',
'?' => 'I',
'?' => 'I',
'?' => 'IJ',
'ì' => 'i',
'í' => 'i',
'î' => 'i',
'ï' => 'i',
'?' => 'i',
'?' => 'i',
'?' => 'i',
'?' => 'i',
'?' => 'ij',
'?' => 'J',
'?' => 'j',
'?' => 'L',
'?' => 'L',
'?' => 'L',
'?' => 'l',
'?' => 'l',
'?' => 'l',
'Ñ' => 'N',
'ñ' => 'n',
'?' => 'n',
'Ò' => 'O',
'Ó' => 'O',
'Ô' => 'O',
'Õ' => 'O',
'?' => 'O',
'?' => 'O',
'?' => 'O',
'?' => 'O',
'?' => 'O',
'Ø' => 'OE',
'?' => 'O',
'?' => 'OE',
'ò' => 'o',
'ó' => 'o',
'ô' => 'o',
'õ' => 'o',
'?' => 'o',
'?' => 'o',
'?' => 'o',
'?' => 'o',
'?' => 'o',
'ø' => 'oe',
'?' => 'o',
'º' => 'o',
'?' => 'oe',
'?' => 'R',
'?' => 'R',
'?' => 'r',
'?' => 'r',
'?' => 'S',
'?' => 'S',
'?' => 's',
'?' => 's',
'?' => 's',
'?' => 'T',
'?' => 'T',
'?' => 'T',
'Þ' => 'TH',
'?' => 't',
'?' => 't',
'?' => 't',
'þ' => 'th',
'Ù' => 'U',
'Ú' => 'U',
'Û' => 'U',
'Ü' => 'U',
'?' => 'U',
'?' => 'U',
'?' => 'U',
'?' => 'U',
'?' => 'U',
'?' => 'U',
'?' => 'U',
'?' => 'U',
'?' => 'U',
'?' => 'U',
'ù' => 'u',
'ú' => 'u',
'û' => 'u',
'ü' => 'u',
'?' => 'u',
'?' => 'u',
'?' => 'u',
'?' => 'u',
'?' => 'u',
'?' => 'u',
'?' => 'u',
'?' => 'u',
'?' => 'u',
'?' => 'u',
'?' => 'W',
'?' => 'w',
'Ý' => 'Y',
'?' => 'Y',
'?' => 'Y',
'ý' => 'y',
'ÿ' => 'y',
'?' => 'y',
],
// Greek(lish) (Elláda)
'el__greeklish' => [
'??' => 'AU',
'??' => 'AU',
'??' => 'Au',
'??' => 'Au',
'??' => 'EI',
'??' => 'EI',
'??' => 'EI',
'??' => 'EU',
'??' => 'EU',
'??' => 'Ei',
'??' => 'Eu',
'??' => 'Eu',
'??' => 'OI',
'??' => 'OI',
'??' => 'OU',
'??' => 'OU',
'??' => 'Oi',
'??' => 'Oi',
'??' => 'Ou',
'??' => 'Ou',
'??' => 'YI',
'??' => 'YI',
'??' => 'Yi',
'??' => 'Yi',
'??' => 'Yi',
'??' => 'Yi',
'??' => 'au',
'??' => 'au',
'??' => 'ei',
'??' => 'ei',
'??' => 'eu',
'??' => 'eu',
'??' => 'oi',
'??' => 'oi',
'??' => 'ou',
'??' => 'ou',
'??' => 'yi',
'??' => 'yi',
'??' => 'yi',
'?' => 'A',
'?' => 'A',
'?' => 'B',
'?' => 'D',
'?' => 'E',
'?' => 'E',
'?' => 'F',
'?' => 'G',
'?' => 'H',
'?' => 'H',
'?' => 'I',
'?' => 'I',
'?' => 'I',
'?' => 'K',
'?' => 'Ks',
'?' => 'L',
'?' => 'M',
'?' => 'N',
'?' => 'N',
'?' => 'O',
'?' => 'O',
'?' => 'Ps',
'?' => 'R',
'?' => 'S',
'?' => 'T',
'?' => 'Th',
'?' => 'W',
'?' => 'W',
'?' => 'X',
'?' => 'Y',
'?' => 'Y',
'?' => 'Y',
'?' => 'Y',
'?' => 'Z',
'?' => 'a',
'?' => 'a',
'?' => 'b',
'?' => 'd',
'?' => 'e',
'?' => 'e',
'?' => 'f',
'?' => 'g',
'?' => 'h',
'?' => 'h',
'?' => 'i',
'?' => 'i',
'?' => 'i',
'?' => 'i',
'?' => 'k',
'?' => 'ks',
'?' => 'l',
'?' => 'm',
'?' => 'n',
'?' => 'o',
'?' => 'o',
'?' => 'p',
'?' => 'ps',
'?' => 'r',
'?' => 's',
'?' => 's',
'?' => 't',
'?' => 'th',
'?' => 'th',
'?' => 'v',
'?' => 'w',
'?' => 'w',
'?' => 'x',
'?' => 'y',
'?' => 'y',
'?' => 'y',
'?' => 'y',
'?' => 'z',
],
// Greek (Elláda)
'el' => [
'??' => 'AU',
'??' => 'Au',
'??' => 'U',
'??' => 'u',
'??' => 'EF',
'??' => 'Ef',
'??' => 'I',
'??' => 'I',
'??' => 'I',
'??' => 'I',
'??' => 'I',
'??' => 'I',
'??' => 'AU',
'??' => 'Au',
'??' => 'OU',
'??' => 'Ou',
'??' => 'EU',
'??' => 'Eu',
'??' => 'I',
'??' => 'I',
'??' => 'I',
'??' => 'I',
'??' => 'I',
'??' => 'I',
'??' => 'I',
'??' => 'I',
'??' => 'au',
'??' => 'u',
'??' => 'ef',
'??' => 'i',
'??' => 'i',
'??' => 'i',
'??' => 'au',
'??' => 'ou',
'??' => 'eu',
'??' => 'i',
'??' => 'i',
'??' => 'i',
'??' => 'i',
'?' => 'a',
'?' => 'v',
'?' => 'gh',
'?' => 'd',
'?' => 'e',
'?' => 'z',
'?' => 'i',
'?' => 'th',
'?' => 'i',
'?' => 'k',
'?' => 'l',
'?' => 'm',
'?' => 'n',
'?' => 'ks',
'?' => 'o',
'?' => 'p',
'?' => 'r',
'?' => 's',
'?' => 't',
'?' => 'i',
'?' => 'f',
'?' => 'kh',
'?' => 'ps',
'?' => 'o',
'?' => 'a',
'?' => 'e',
'?' => 'i',
'?' => 'o',
'?' => 'Y',
'?' => 'y',
'?' => 'i',
'?' => 'w',
'?' => 's',
'?' => 'i',
'?' => 'y',
'?' => 'y',
'?' => 'i',
'?' => 'A',
'?' => 'B',
'?' => 'G',
'?' => 'D',
'?' => 'E',
'?' => 'Z',
'?' => 'H',
'?' => 'Th',
'?' => 'I',
'?' => 'K',
'?' => 'L',
'?' => 'M',
'?' => 'N',
'?' => 'Ks',
'?' => 'O',
'?' => 'P',
'?' => 'R',
'?' => 'S',
'?' => 'T',
'?' => 'Y',
'?' => 'F',
'?' => 'X',
'?' => 'Ps',
'?' => 'O',
'?' => 'A',
'?' => 'E',
'?' => 'I',
'?' => 'O',
'?' => 'Y',
'?' => 'I',
'?' => 'W',
'?' => 'I',
'?' => 'Y',
'?' => 'v',
'?' => 'th',
],
// Hindi
'hi' => [
'?' => 'a',
'?' => 'aa',
'?' => 'e',
'?' => 'ii',
'?' => 'ei',
'?' => 'ae',
'?' => 'ai',
'?' => 'i',
'?' => 'o',
'?' => 'oi',
'?' => 'oii',
'?' => 'uu',
'?' => 'ou',
'?' => 'u',
'?' => 'B',
'?' => 'Bha',
'?' => 'Ca',
'?' => 'Chha',
'?' => 'Da',
'?' => 'Dha',
'?' => 'Fa',
'??' => 'Fi',
'?' => 'Ga',
'?' => 'Gha',
'??' => 'Ghi',
'?' => 'Ha',
'?' => 'Ja',
'?' => 'Jha',
'?' => 'Ka',
'?' => 'Kha',
'??' => 'Khi',
'?' => 'L',
'?' => 'Li',
'?' => 'Li',
'?' => 'Lii',
'?' => 'Lii',
'?' => 'Ma',
'?' => 'Na',
'?' => 'Na',
'?' => 'Nia',
'?' => 'Nae',
'?' => 'Ni',
'?' => 'oms',
'?' => 'Pa',
'??' => 'Qi',
'?' => 'Ra',
'?' => 'Ri',
'?' => 'Ri',
'?' => 'Ri',
'?' => 'Sa',
'?' => 'Sha',
'?' => 'Shha',
'?' => 'Ta',
'?' => 'Ta',
'?' => 'Tha',
'?' => 'Tha',
'?' => 'Tha',
'?' => 'Thha',
'??' => 'ugDha',
'??' => 'ugDhha',
'?' => 'Va',
'?' => 'Ya',
'??' => 'Yi',
'??' => 'Za',
],
// Armenian
'hy' => [
'?' => 'A',
'?' => 'B',
'?' => 'G',
'?' => 'D',
'?' => 'E',
'?' => 'Z',
'?' => 'E',
'?' => 'Y',
'?' => 'Th',
'?' => 'Zh',
'?' => 'I',
'?' => 'L',
'?' => 'Kh',
'?' => 'Ts',
'?' => 'K',
'?' => 'H',
'?' => 'Dz',
'?' => 'Gh',
'?' => 'Tch',
'?' => 'M',
'?' => 'Y',
'?' => 'N',
'?' => 'Sh',
'?' => 'Vo',
'?' => 'Ch',
'?' => 'P',
'?' => 'J',
'?' => 'R',
'?' => 'S',
'?' => 'V',
'?' => 'T',
'?' => 'R',
'?' => 'C',
'?' => 'u',
'?' => 'Ph',
'?' => 'Q',
'?' => 'ev',
'?' => 'O',
'?' => 'F',
'?' => 'a',
'?' => 'b',
'?' => 'g',
'?' => 'd',
'?' => 'e',
'?' => 'z',
'?' => 'e',
'?' => 'y',
'?' => 'th',
'?' => 'zh',
'?' => 'i',
'?' => 'l',
'?' => 'kh',
'?' => 'ts',
'?' => 'k',
'?' => 'h',
'?' => 'dz',
'?' => 'gh',
'?' => 'tch',
'?' => 'm',
'?' => 'y',
'?' => 'n',
'?' => 'sh',
'?' => 'vo',
'?' => 'ch',
'?' => 'p',
'?' => 'j',
'?' => 'r',
'?' => 's',
'?' => 'v',
'?' => 't',
'?' => 'r',
'?' => 'c',
'?' => 'u',
'?' => 'ph',
'?' => 'q',
'?' => 'o',
'?' => 'f',
],
// Swedish
'sv' => [
'Ä' => 'A',
'ä' => 'a',
'Å' => 'A',
'å' => 'a',
'Ö' => 'O',
'ö' => 'o',
],
// Turkmen
'tk' => [
'Ç' => 'C',
'Ä' => 'A',
'?' => 'Z',
'?' => 'N',
'Ö' => 'O',
'?' => 'S',
'Ü' => 'U',
'Ý' => 'Y',
'ç' => 'c',
'ä' => 'a',
'?' => 'z',
'?' => 'n',
'ö' => 'o',
'?' => 's',
'ü' => 'u',
'ý' => 'y',
],
// Turkish
'tr' => [
'?' => 'n',
'?' => 'N',
'?' => 's',
'?' => 'S',
'?' => 'i',
'?' => 'I',
'ç' => 'c',
'Ç' => 'C',
'ä' => 'a',
'Ä' => 'A',
'ü' => 'u',
'Ü' => 'U',
'ö' => 'o',
'Ö' => 'O',
'?' => 'g',
'?' => 'G',
'ý' => 'y',
'Ý' => 'Y',
'?' => 'z',
'?' => 'Z',
],
// Bulgarian
'bg' => [
'??' => 'yo',
'?' => 'A',
'?' => 'B',
'?' => 'V',
'?' => 'G',
'?' => 'D',
'?' => 'E',
'?' => 'Zh',
'?' => 'Z',
'?' => 'I',
'?' => 'Y',
'?' => 'K',
'?' => 'L',
'?' => 'M',
'?' => 'N',
'?' => 'O',
'?' => 'P',
'?' => 'R',
'?' => 'S',
'?' => 'T',
'?' => 'U',
'?' => 'F',
'?' => 'H',
'?' => 'C',
'?' => 'Ch',
'?' => 'Sh',
'?' => 'Sht',
'?' => 'A',
'?' => '',
'?' => 'Yu',
'?' => 'Ya',
'?' => 'a',
'?' => 'b',
'?' => 'v',
'?' => 'g',
'?' => 'd',
'?' => 'e',
'?' => 'zh',
'?' => 'z',
'?' => 'i',
'?' => 'y',
'?' => 'k',
'?' => 'l',
'?' => 'm',
'?' => 'n',
'?' => 'o',
'?' => 'p',
'?' => 'r',
'?' => 's',
'?' => 't',
'?' => 'u',
'?' => 'f',
'?' => 'h',
'?' => 'c',
'?' => 'ch',
'?' => 'sh',
'?' => 'sht',
'?' => 'a',
'?' => '',
'?' => 'yu',
'?' => 'ya',
],
// Hungarian
'hu' => [
'Á' => 'A',
'?' => 'E',
'É' => 'E',
'Í' => 'I',
'Ó' => 'O',
'Ö' => 'O',
'?' => 'O',
'Ú' => 'U',
'Ü' => 'U',
'?' => 'U',
'á' => 'a',
'?' => 'e',
'é' => 'e',
'í' => 'i',
'ó' => 'o',
'ö' => 'o',
'?' => 'o',
'ú' => 'u',
'ü' => 'u',
'?' => 'u',
],
// Myanmar (Burmese)
'my' => [
'?????' => 'nub',
'????' => 'aung',
'????' => 'aik',
'????' => 'ok',
'????' => 'aing',
'????' => 'ol',
'????' => 'aung',
'????' => 'aw',
'????' => 'auk',
'???' => 'eik',
'???' => 'ok',
'???' => 'on',
'???' => 'it',
'???' => 'ait',
'???' => 'an',
'???' => 'ein',
'???' => 'ut',
'???' => 'aw',
'???' => 'un',
'???' => 'eik',
'???' => 'ok',
'???' => 'ut',
'???' => 'ein',
'???' => 'on',
'???' => 'aw',
'???' => 'un',
'??' => 'et',
'??' => 'aw',
'??' => 'aw',
'??' => 'ywa',
'??' => 'yw',
'??' => 'o',
'??' => 'on',
'??' => 'at',
'??' => 'in',
'??' => 'i',
'??' => 'd',
'??' => 'an',
'??' => 'at',
'??' => 'an',
'??' => 'za',
'??' => 'e',
'??' => 'in',
'??' => 'it',
'??' => 'ein',
'?' => 'e',
'?' => '',
'?' => 'a',
'?' => 'a',
'?' => 'e',
'?' => 'an',
'?' => 'i',
'?' => 'i',
'?' => 'u',
'?' => 'u',
'?' => 'at',
'?' => '',
'?' => '',
'?' => 'k',
'?' => '9',
'?' => 't',
'?' => 'ya',
'?' => 'y',
'?' => 'm',
'?' => 'ba',
'?' => 'b',
'?' => 'pa',
'?' => 'p',
'?' => 'n',
'?' => 'da',
'?' => 'd',
'?' => 'ta',
'?' => 'na',
'?' => 'w',
'?' => 'da',
'?' => 'd',
'?' => 'ta',
'?' => 't',
'?' => 'ny',
'?' => 'z',
'?' => 'sa',
'?' => 's',
'?' => 'ng',
'?' => 'ga',
'?' => 'g',
'?' => 'l',
'?' => 'th',
'?' => '8',
'?' => 'aw',
'?' => 'kh',
'?' => '6',
'?' => '5',
'?' => '4',
'?' => '3',
'?' => '2',
'?' => '1',
'?' => '0',
'?' => 'hnaik',
'?' => 'ywae',
'?' => 'aw',
'?' => '-u',
'?' => 'h',
'?' => 'u',
'?' => '-i',
'?' => 'i',
'?' => '-e',
'?' => 'e',
'?' => 'h',
'?' => 'w',
'?' => 'ya',
'?' => 'y',
'?' => 'a',
'?' => 'la',
'?' => '7',
],
// Croatian (Hrvatska)
'hr' => [
'D?' => 'DZ',
'D?' => 'Dz',
'd?' => 'dz',
'?' => 'DZ',
'?' => 'Dz',
'?' => 'dz',
'?' => 'IJ',
'?' => 'ij',
'?' => 'LJ',
'?' => 'Lj',
'?' => 'lj',
'?' => 'NJ',
'?' => 'Nj',
'?' => 'nj',
'?' => 'z',
'?' => 'Z',
'?' => 'dj',
'?' => 'Dj',
'?' => 'c',
'?' => 'C',
'?' => 'c',
'?' => 'C',
'?' => 's',
'?' => 'S',
],
// Finnish
'fi' => [
'Ä' => 'A',
'Ö' => 'O',
'ä' => 'a',
'ö' => 'o',
],
// Georgian (Kartvelian)
'ka' => [
'?' => 'a',
'?' => 'b',
'?' => 'g',
'?' => 'd',
'?' => 'e',
'?' => 'v',
'?' => 'z',
'?' => 't',
'?' => 'i',
'?' => 'k',
'?' => 'l',
'?' => 'm',
'?' => 'n',
'?' => 'o',
'?' => 'p',
'?' => 'zh',
'?' => 'r',
'?' => 's',
'?' => 't',
'?' => 'u',
'?' => 'f',
'?' => 'q',
'?' => 'gh',
'?' => 'y',
'?' => 'sh',
'?' => 'ch',
'?' => 'ts',
'?' => 'dz',
'?' => 'ts',
'?' => 'ch',
'?' => 'kh',
'?' => 'j',
'?' => 'h',
],
// Russian
'ru' => [
'?' => 'A',
'?' => 'a',
'?' => 'B',
'?' => 'b',
'?' => 'V',
'?' => 'v',
'?' => 'G',
'?' => 'g',
'?' => 'D',
'?' => 'd',
'?' => 'E',
'?' => 'e',
'?' => 'Yo',
'?' => 'yo',
'?' => 'Zh',
'?' => 'zh',
'?' => 'Z',
'?' => 'z',
'?' => 'I',
'?' => 'i',
'?' => 'Y',
'?' => 'y',
'?' => 'K',
'?' => 'k',
'?' => 'L',
'?' => 'l',
'?' => 'M',
'?' => 'm',
'?' => 'N',
'?' => 'n',
'?' => 'O',
'?' => 'o',
'?' => 'P',
'?' => 'p',
'?' => 'R',
'?' => 'r',
'?' => 'S',
'?' => 's',
'?' => 'T',
'?' => 't',
'?' => 'U',
'?' => 'u',
'?' => 'F',
'?' => 'f',
'?' => 'H',
'?' => 'h',
'?' => 'Ts',
'?' => 'ts',
'?' => 'Ch',
'?' => 'ch',
'?' => 'sh',
'?' => 'Sh',
'?' => 'Sch',
'?' => 'sch',
'?' => '',
'?' => '',
'?' => 'Y',
'?' => 'y',
'?' => '',
'?' => '',
'?' => 'E',
'?' => 'e',
'?' => 'Yu',
'?' => 'yu',
'?' => 'Ya',
'?' => 'ya',
],
// Russian - GOST 7.79-2000(B)
// -> https://en.m.wikipedia.org/wiki/Romanization_of_Russian#content-collapsible-block-1
'ru__gost_2000_b' => [
'?' => 'A',
'?' => 'a',
'?' => 'B',
'?' => 'b',
'?' => 'V',
'?' => 'v',
'?' => 'G',
'?' => 'g',
'?' => 'D',
'?' => 'd',
'?' => 'E',
'?' => 'e',
'?' => 'Yo',
'?' => 'yo',
'?' => 'Zh',
'?' => 'zh',
'?' => 'Z',
'?' => 'z',
'?' => 'i',
'?' => 'i',
'?' => 'i',
'?' => 'i',
'?' => 'K',
'?' => 'k',
'?' => 'L',
'?' => 'l',
'?' => 'M',
'?' => 'm',
'?' => 'N',
'?' => 'n',
'?' => 'O',
'?' => 'o',
'?' => 'P',
'?' => 'p',
'?' => 'R',
'?' => 'r',
'?' => 'S',
'?' => 's',
'?' => 'T',
'?' => 't',
'?' => 'U',
'?' => 'u',
'?' => 'F',
'?' => 'f',
'?' => 'X',
'?' => 'x',
'?' => 'Cz',
'?' => 'cz',
'?' => 'Ch',
'?' => 'ch',
'?' => 'sh',
'?' => 'Sh',
'?' => 'Shh',
'?' => 'shh',
'?' => '',
'?' => '',
'?' => 'Y\'',
'?' => 'y\'',
'?' => '',
'?' => '',
'?' => 'E\'',
'?' => 'e\'',
'?' => 'Yu',
'?' => 'yu',
'?' => 'Ya',
'?' => 'ya',
'?' => 'I',
'?' => 'i',
'?' => 'Fh',
'?' => 'fh',
'?' => 'Ye',
'?' => 'ye',
'?' => 'Yh',
'?' => 'yh',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => 'Js',
'?' => 'js',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
],
// Russian - Passport (2013), ICAO
// -> https://en.m.wikipedia.org/wiki/Romanization_of_Russian#content-collapsible-block-1
'ru__passport_2013' => [
'?' => 'A',
'?' => 'a',
'?' => 'B',
'?' => 'b',
'?' => 'V',
'?' => 'v',
'?' => 'G',
'?' => 'g',
'?' => 'D',
'?' => 'd',
'?' => 'E',
'?' => 'e',
'?' => 'E',
'?' => 'e',
'?' => 'Zh',
'?' => 'zh',
'?' => 'Z',
'?' => 'z',
'?' => 'i',
'?' => 'i',
'?' => 'i',
'?' => 'i',
'?' => 'K',
'?' => 'k',
'?' => 'L',
'?' => 'l',
'?' => 'M',
'?' => 'm',
'?' => 'N',
'?' => 'n',
'?' => 'O',
'?' => 'o',
'?' => 'P',
'?' => 'p',
'?' => 'R',
'?' => 'r',
'?' => 'S',
'?' => 's',
'?' => 'T',
'?' => 't',
'?' => 'U',
'?' => 'u',
'?' => 'F',
'?' => 'f',
'?' => 'Kh',
'?' => 'kh',
'?' => 'Ts',
'?' => 'ts',
'?' => 'Ch',
'?' => 'ch',
'?' => 'sh',
'?' => 'Sh',
'?' => 'Shch',
'?' => 'shch',
'?' => 'Ie',
'?' => 'ie',
'?' => 'Y',
'?' => 'y',
'?' => '',
'?' => '',
'?' => 'E',
'?' => 'e',
'?' => 'Iu',
'?' => 'iu',
'?' => 'Ia',
'?' => 'ia',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
'?' => '',
],
// Ukrainian
// -> https://zakon.rada.gov.ua/laws/show/55-2010-%D0%BF?lang=en
'uk' => [
'?' => 'H',
'?' => 'h',
'?' => 'G',
'?' => 'g',
'?' => 'Ye',
'?' => 'ye',
'?' => 'Y',
'?' => 'y',
'?' => 'I',
'?' => 'i',
'?' => 'Yi',
'?' => 'yi',
'?' => 'Y',
'?' => 'y',
'?' => 'Kh',
'?' => 'kh',
'?' => 'Ts',
'?' => 'ts',
'?' => 'Ch',
'?' => 'ch',
'?' => 'Sh',
'?' => 'sh',
'?' => 'Shch',
'?' => 'shch',
],
// Kazakh
'kk' => [
'?' => 'A',
'?' => 'G',
'?' => 'Q',
'?' => 'N',
'?' => 'O',
'?' => 'U',
'?' => 'U',
'?' => 'H',
'?' => 'a',
'?' => 'g',
'?' => 'q',
'?' => 'n',
'?' => 'o',
'?' => 'u',
'?' => 'u',
'?' => 'h',
],
// Czech
'cs' => [
'á' => 'a',
'Á' => 'A',
'?' => 'c',
'?' => 'C',
'?' => 'd',
'?' => 'D',
'é' => 'e',
'É' => 'E',
'?' => 'e',
'?' => 'E',
'í' => 'i',
'Í' => 'I',
'?' => 'n',
'?' => 'N',
'ó' => 'o',
'Ó' => 'O',
'?' => 'r',
'?' => 'R',
'?' => 's',
'?' => 'S',
'?' => 't',
'?' => 'T',
'ú' => 'u',
'Ú' => 'U',
'?' => 'u',
'?' => 'U',
'ý' => 'y',
'Ý' => 'Y',
'?' => 'z',
'?' => 'Z',
],
// Danish
'da' => [
'Æ' => 'Ae',
'æ' => 'ae',
'Ø' => 'Oe',
'ø' => 'oe',
'Å' => 'Aa',
'å' => 'aa',
'É' => 'E',
'é' => 'e',
],
// Polish
'pl' => [
'?' => 'a',
'?' => 'c',
'?' => 'e',
'?' => 'l',
'?' => 'n',
'ó' => 'o',
'?' => 's',
'?' => 'z',
'?' => 'z',
'?' => 'A',
'?' => 'C',
'?' => 'E',
'?' => 'L',
'?' => 'N',
'Ó' => 'O',
'?' => 'S',
'?' => 'Z',
'?' => 'Z',
],
// Romanian
'ro' => [
'?' => 'a',
'â' => 'a',
'?' => 'A',
'Â' => 'A',
'î' => 'i',
'Î' => 'I',
'?' => 's',
'?' => 's',
'?' => 'S',
'?' => 'S',
'?' => 't',
'?' => 't',
'?' => 'T',
'?' => 'T',
],
// Esperanto
'eo' => [
'?' => 'cx',
'?' => 'gx',
'?' => 'hx',
'?' => 'jx',
'?' => 'sx',
'?' => 'ux',
'?' => 'CX',
'?' => 'GX',
'?' => 'HX',
'?' => 'JX',
'?' => 'SX',
'?' => 'UX',
],
// Estonian
'et' => [
'?' => 'S',
'?' => 'Z',
'Õ' => 'O',
'Ä' => 'A',
'Ö' => 'O',
'Ü' => 'U',
'?' => 's',
'?' => 'z',
'õ' => 'o',
'ä' => 'a',
'ö' => 'o',
'ü' => 'u',
],
// Latvian
'lv' => [
'?' => 'a',
'?' => 'c',
'?' => 'e',
'?' => 'g',
'?' => 'i',
'?' => 'k',
'?' => 'l',
'?' => 'n',
'?' => 's',
'?' => 'u',
'?' => 'z',
'?' => 'A',
'?' => 'C',
'?' => 'E',
'?' => 'G',
'?' => 'i',
'?' => 'k',
'?' => 'L',
'?' => 'N',
'?' => 'S',
'?' => 'u',
'?' => 'Z',
],
// Lithuanian
'lt' => [
'?' => 'a',
'?' => 'c',
'?' => 'e',
'?' => 'e',
'?' => 'i',
'?' => 's',
'?' => 'u',
'?' => 'u',
'?' => 'z',
'?' => 'A',
'?' => 'C',
'?' => 'E',
'?' => 'E',
'?' => 'I',
'?' => 'S',
'?' => 'U',
'?' => 'U',
'?' => 'Z',
],
// Norwegian
'no' => [
'Æ' => 'AE',
'æ' => 'ae',
'Ø' => 'OE',
'ø' => 'oe',
'Å' => 'AA',
'å' => 'aa',
],
// Vietnamese
'vi' => [
'Á' => 'A',
'À' => 'A',
'?' => 'A',
'Ã' => 'A',
'?' => 'A',
'?' => 'A',
'?' => 'A',
'?' => 'A',
'?' => 'A',
'?' => 'A',
'?' => 'A',
'Â' => 'A',
'?' => 'A',
'?' => 'A',
'?' => 'A',
'?' => 'A',
'?' => 'A',
'á' => 'a',
'à' => 'a',
'?' => 'a',
'ã' => 'a',
'?' => 'a',
'?' => 'a',
'?' => 'a',
'?' => 'a',
'?' => 'a',
'?' => 'a',
'?' => 'a',
'â' => 'a',
'?' => 'a',
'?' => 'a',
'?' => 'a',
'?' => 'a',
'?' => 'a',
'É' => 'E',
'È' => 'E',
'?' => 'E',
'?' => 'E',
'?' => 'E',
'Ê' => 'E',
'?' => 'E',
'?' => 'E',
'?' => 'E',
'?' => 'E',
'?' => 'E',
'é' => 'e',
'è' => 'e',
'?' => 'e',
'?' => 'e',
'?' => 'e',
'ê' => 'e',
'?' => 'e',
'?' => 'e',
'?' => 'e',
'?' => 'e',
'?' => 'e',
'Í' => 'I',
'Ì' => 'I',
'?' => 'I',
'?' => 'I',
'?' => 'I',
'í' => 'i',
'ì' => 'i',
'?' => 'i',
'?' => 'i',
'?' => 'i',
'Ó' => 'O',
'Ò' => 'O',
'?' => 'O',
'Õ' => 'O',
'?' => 'O',
'Ô' => 'O',
'?' => 'O',
'?' => 'O',
'?' => 'O',
'?' => 'O',
'?' => 'O',
'?' => 'O',
'?' => 'O',
'?' => 'O',
'?' => 'O',
'?' => 'O',
'?' => 'O',
'ó' => 'o',
'ò' => 'o',
'?' => 'o',
'õ' => 'o',
'?' => 'o',
'ô' => 'o',
'?' => 'o',
'?' => 'o',
'?' => 'o',
'?' => 'o',
'?' => 'o',
'?' => 'o',
'?' => 'o',
'?' => 'o',
'?' => 'o',
'?' => 'o',
'?' => 'o',
'Ú' => 'U',
'Ù' => 'U',
'?' => 'U',
'?' => 'U',
'?' => 'U',
'?' => 'U',
'?' => 'U',
'?' => 'U',
'?' => 'U',
'?' => 'U',
'?' => 'U',
'ú' => 'u',
'ù' => 'u',
'?' => 'u',
'?' => 'u',
'?' => 'u',
'?' => 'u',
'?' => 'u',
'?' => 'u',
'?' => 'u',
'?' => 'u',
'?' => 'u',
'Ý' => 'Y',
'?' => 'Y',
'?' => 'Y',
'?' => 'Y',
'?' => 'Y',
'ý' => 'y',
'?' => 'y',
'?' => 'y',
'?' => 'y',
'?' => 'y',
'?' => 'D',
'?' => 'd',
],
// Persian (Farsi)
'fa' => [
'?' => 'a',
'?' => 'b',
'?' => 'p',
'?' => 't',
'?' => 's',
'?' => 'j',
'?' => 'ch',
'?' => 'h',
'?' => 'kh',
'?' => 'd',
'?' => 'z',
'?' => 'r',
'?' => 'z',
'?' => 's',
'?' => 'sh',
'?' => 's',
'?' => 'z',
'?' => 't',
'?' => 'z',
'?' => 'a',
'?' => 'gh',
'?' => 'f',
'?' => 'gh',
'?' => 'k',
'?' => 'g',
'?' => 'l',
'?' => 'zh',
'?' => 'k',
'?' => 'm',
'?' => 'n',
'?' => 'h',
'?' => 'o',
'?' => 'y',
'?' => 'a',
'?' => '0',
'?' => '1',
'?' => '2',
'?' => '3',
'?' => '4',
'?' => '5',
'?' => '6',
'?' => '7',
'?' => '8',
'?' => '9',
],
// Arabic
'ar' => [
'?' => 'a',
'?' => 'b',
'?' => 't',
'?' => 'th',
'?' => 'g',
'?' => 'h',
'?' => 'kh',
'?' => 'd',
'?' => 'th',
'?' => 'r',
'?' => 'z',
'?' => 's',
'?' => 'sh',
'?' => 's',
'?' => 'd',
'?' => 't',
'?' => 'th',
'?' => 'aa',
'?' => 'gh',
'?' => 'f',
'?' => 'k',
'?' => 'k',
'?' => 'l',
'?' => 'm',
'?' => 'n',
'?' => 'h',
'?' => 'o',
'?' => 'y',
'?' => 'a',
'?' => 'a',
'?' => 'a',
'?' => 'o',
'?' => 'y',
'?' => 'aa',
'?' => '0',
'?' => '1',
'?' => '2',
'?' => '3',
'?' => '4',
'?' => '5',
'?' => '6',
'?' => '7',
'?' => '8',
'?' => '9',
],
// Serbian
'sr' => [
'?' => 'dj',
'?' => 'z',
'?' => 'c',
'?' => 'c',
'?' => 's',
'?' => 'Dj',
'?' => 'Z',
'?' => 'C',
'?' => 'C',
'?' => 'S',
'?' => 'a',
'?' => 'b',
'?' => 'v',
'?' => 'g',
'?' => 'd',
'?' => 'dj',
'?' => 'e',
'?' => 'z',
'?' => 'z',
'?' => 'i',
'?' => 'j',
'?' => 'k',
'?' => 'l',
'?' => 'lj',
'?' => 'm',
'?' => 'n',
'?' => 'nj',
'?' => 'o',
'?' => 'p',
'?' => 'r',
'?' => 's',
'?' => 't',
'?' => 'c',
'?' => 'u',
'?' => 'f',
'?' => 'h',
'?' => 'c',
'?' => 'c',
'?' => 'dz',
'?' => 's',
'?' => 'A',
'?' => 'B',
'?' => 'V',
'?' => 'G',
'?' => 'D',
'?' => 'Dj',
'?' => 'E',
'?' => 'Z',
'?' => 'Z',
'?' => 'I',
'?' => 'j',
'?' => 'K',
'?' => 'L',
'?' => 'Lj',
'?' => 'M',
'?' => 'N',
'?' => 'Nj',
'?' => 'O',
'?' => 'P',
'?' => 'R',
'?' => 'S',
'?' => 'T',
'?' => 'C',
'?' => 'U',
'?' => 'F',
'?' => 'H',
'?' => 'C',
'?' => 'C',
'?' => 'Dz',
'?' => 'S',
],
// Serbian - Cyrillic
'sr__cyr' => [
'?' => 'a',
'?' => 'b',
'?' => 'v',
'?' => 'g',
'?' => 'd',
'?' => 'dj',
'?' => 'e',
'?' => 'z',
'?' => 'z',
'?' => 'i',
'?' => 'j',
'?' => 'k',
'?' => 'l',
'?' => 'lj',
'?' => 'm',
'?' => 'n',
'?' => 'nj',
'?' => 'o',
'?' => 'p',
'?' => 'r',
'?' => 's',
'?' => 't',
'?' => 'c',
'?' => 'u',
'?' => 'f',
'?' => 'h',
'?' => 'c',
'?' => 'c',
'?' => 'dz',
'?' => 's',
'?' => 'A',
'?' => 'B',
'?' => 'V',
'?' => 'G',
'?' => 'D',
'?' => 'Dj',
'?' => 'E',
'?' => 'Z',
'?' => 'Z',
'?' => 'I',
'?' => 'j',
'?' => 'K',
'?' => 'L',
'?' => 'Lj',
'?' => 'M',
'?' => 'N',
'?' => 'Nj',
'?' => 'O',
'?' => 'P',
'?' => 'R',
'?' => 'S',
'?' => 'T',
'?' => 'C',
'?' => 'U',
'?' => 'F',
'?' => 'H',
'?' => 'C',
'?' => 'C',
'?' => 'Dz',
'?' => 'S',
],
// Serbian - Latin
'sr__lat' => [
'?' => 'dj',
'?' => 'z',
'?' => 'c',
'?' => 'c',
'?' => 's',
'?' => 'Dj',
'?' => 'Z',
'?' => 'C',
'?' => 'C',
'?' => 'S',
],
// Azerbaijani
'az' => [
'ç' => 'c',
'?' => 'e',
'?' => 'g',
'?' => 'i',
'ö' => 'o',
'?' => 's',
'ü' => 'u',
'Ç' => 'C',
'?' => 'E',
'?' => 'G',
'?' => 'I',
'Ö' => 'O',
'?' => 'S',
'Ü' => 'U',
],
// Slovak
'sk' => [
'á' => 'a',
'ä' => 'a',
'?' => 'c',
'?' => 'd',
'é' => 'e',
'í' => 'i',
'?' => 'l',
'?' => 'l',
'?' => 'n',
'ó' => 'o',
'ô' => 'o',
'?' => 'r',
'?' => 's',
'?' => 't',
'ú' => 'u',
'ý' => 'y',
'?' => 'z',
'Á' => 'A',
'Ä' => 'A',
'?' => 'C',
'?' => 'D',
'É' => 'E',
'Í' => 'I',
'?' => 'L',
'?' => 'L',
'?' => 'N',
'Ó' => 'O',
'Ô' => 'O',
'?' => 'R',
'?' => 'S',
'?' => 'T',
'Ú' => 'U',
'Ý' => 'Y',
'?' => 'Z',
],
// French
'fr' => [
'Æ' => 'AE',
'æ' => 'ae',
'?' => 'OE',
'?' => 'oe',
'â' => 'a',
'Â' => 'A',
'à' => 'a',
'À' => 'A',
'ä' => 'a',
'Ä' => 'A',
'ç' => 'c',
'Ç' => 'C',
'é' => 'e',
'É' => 'E',
'ê' => 'e',
'Ê' => 'E',
'ë' => 'e',
'Ë' => 'E',
'è' => 'e',
'È' => 'E',
'ï' => 'i',
'î' => 'i',
'Ï' => 'I',
'Î' => 'I',
'ÿ' => 'y',
'?' => 'Y',
'ô' => 'o',
'Ô' => 'O',
'ö' => 'o',
'Ö' => 'O',
'û' => 'u',
'Û' => 'U',
'ù' => 'u',
'Ù' => 'U',
'ü' => 'u',
'Ü' => 'U',
],
// Austrian (French)
'fr_at' => [
'ß' => 'sz',
'?' => 'SZ',
'Æ' => 'AE',
'æ' => 'ae',
'?' => 'OE',
'?' => 'oe',
'â' => 'a',
'Â' => 'A',
'à' => 'a',
'À' => 'A',
'ä' => 'a',
'Ä' => 'A',
'ç' => 'c',
'Ç' => 'C',
'é' => 'e',
'É' => 'E',
'ê' => 'e',
'Ê' => 'E',
'ë' => 'e',
'Ë' => 'E',
'è' => 'e',
'È' => 'E',
'ï' => 'i',
'î' => 'i',
'Ï' => 'I',
'Î' => 'I',
'ÿ' => 'y',
'?' => 'Y',
'ô' => 'o',
'Ô' => 'O',
'ö' => 'o',
'Ö' => 'O',
'û' => 'u',
'Û' => 'U',
'ù' => 'u',
'Ù' => 'U',
'ü' => 'u',
'Ü' => 'U',
],
// Switzerland (French)
'fr_ch' => [
'ß' => 'ss',
'?' => 'SS',
'Æ' => 'AE',
'æ' => 'ae',
'?' => 'OE',
'?' => 'oe',
'â' => 'a',
'Â' => 'A',
'à' => 'a',
'À' => 'A',
'ä' => 'a',
'Ä' => 'A',
'ç' => 'c',
'Ç' => 'C',
'é' => 'e',
'É' => 'E',
'ê' => 'e',
'Ê' => 'E',
'ë' => 'e',
'Ë' => 'E',
'è' => 'e',
'È' => 'E',
'ï' => 'i',
'î' => 'i',
'Ï' => 'I',
'Î' => 'I',
'ÿ' => 'y',
'?' => 'Y',
'ô' => 'o',
'Ô' => 'O',
'ö' => 'o',
'Ö' => 'O',
'û' => 'u',
'Û' => 'U',
'ù' => 'u',
'Ù' => 'U',
'ü' => 'u',
'Ü' => 'U',
],
// German
'de' => [
'Ä' => 'Ae',
'Ö' => 'Oe',
'Ü' => 'Ue',
'ä' => 'ae',
'ö' => 'oe',
'ü' => 'ue',
'ß' => 'ss',
'?' => 'SS',
],
// Austrian (German)
'de_at' => [
'Ä' => 'Ae',
'Ö' => 'Oe',
'Ü' => 'Ue',
'ä' => 'ae',
'ö' => 'oe',
'ü' => 'ue',
'ß' => 'sz',
'?' => 'SZ',
],
// Switzerland (German)
'de_ch' => [
'Ä' => 'Ae',
'Ö' => 'Oe',
'Ü' => 'Ue',
'ä' => 'ae',
'ö' => 'oe',
'ü' => 'ue',
'ß' => 'ss',
'?' => 'SS',
],
// Bengali (Bangla)
'bn' => [
'???' => 'vl',
'??' => 'psh',
'???' => 'bdh',
'???' => 'bj',
'???' => 'bd',
'???' => 'bb',
'???' => 'bl',
'?' => 'v',
'?' => 'b',
'???' => 'cNG',
'???' => 'cch',
'???' => 'cc',
'?' => 'ch',
'?' => 'c',
'???' => 'dhn',
'???' => 'dhm',
'???' => 'dgh',
'???' => 'ddh',
'???' => 'dv',
'???' => 'dm',
'???' => 'DD',
'?' => 'Dh',
'?' => 'dh',
'???' => 'dg',
'???' => 'dd',
'?' => 'D',
'?' => 'd',
'?' => '.',
'???' => 'Ghn',
'???' => 'Gdh',
'???' => 'GN',
'???' => 'Gn',
'???' => 'Gm',
'???' => 'Gl',
'???' => 'jNG',
'?' => 'Gh',
'?' => 'g',
'???' => 'hN',
'???' => 'hn',
'???' => 'hm',
'???' => 'hl',
'?' => 'h',
'???' => 'jjh',
'?' => 'jh',
'???' => 'jj',
'?' => 'j',
'?????' => 'kxN',
'?????' => 'kxm',
'???' => 'ksh',
'??' => 'ksh',
'???' => 'kk',
'???' => 'kT',
'???' => 'kt',
'???' => 'kl',
'???' => 'ks',
'?' => 'kh',
'?' => 'k',
'???' => 'lv',
'???' => 'ldh',
'??' => 'lkh',
'??' => 'lgh',
'??' => 'lph',
'???' => 'lk',
'???' => 'lg',
'???' => 'lT',
'???' => 'lD',
'???' => 'lp',
'???' => 'lm',
'???' => 'll',
'???' => 'lb',
'?' => 'l',
'???' => 'mth',
'???' => 'mf',
'???' => 'mv',
'????' => 'mpl',
'???' => 'mn',
'???' => 'mp',
'???' => 'mm',
'???' => 'ml',
'???' => 'mb',
'?' => 'm',
'?' => '0',
'?' => '1',
'?' => '2',
'?' => '3',
'?' => '4',
'?' => '5',
'?' => '6',
'?' => '7',
'?' => '8',
'?' => '9',
'?????' => 'Ngkx',
'???' => 'nch',
'???' => 'ngh',
'???' => 'nkh',
'???' => 'njh',
'????' => 'ngOU',
'????' => 'ngOI',
'???' => 'nc',
'???' => 'nk',
'???' => 'Ngx',
'???' => 'ngo',
'???' => 'Ngm',
'???' => 'nj',
'???' => 'ndh',
'???' => 'nTh',
'???' => 'NTh',
'???' => 'nth',
'????' => 'nga',
'????' => 'ngi',
'????' => 'ngI',
'????' => 'ngu',
'????' => 'ngU',
'????' => 'nge',
'????' => 'ngO',
'???' => 'NDh',
'??' => 'nsh',
'??' => 'Ngr',
'??' => 'NGr',
'??' => 'ngr',
'?' => 'Ng',
'?' => 'NG',
'?' => 'ng',
'???' => 'nn',
'???' => 'NN',
'???' => 'Nn',
'???' => 'nm',
'???' => 'Nm',
'???' => 'nd',
'???' => 'nT',
'???' => 'NT',
'???' => 'nD',
'???' => 'ND',
'???' => 'nt',
'???' => 'ns',
'?' => 'n',
'?' => 'N',
'?' => 'OI',
'?' => 'OU',
'?' => 'O',
'?' => 'OI',
'?' => 'OU',
'?' => 'o',
'?' => 'oo',
'???' => 'fl',
'???' => 'pT',
'???' => 'pt',
'???' => 'pn',
'???' => 'pp',
'???' => 'pl',
'???' => 'ps',
'?' => 'f',
'?' => 'p',
'?' => 'rri',
'?' => 'rri',
'?????' => 'rry',
'????' => 'ry',
'???' => 'rr',
'???' => 'Rg',
'?' => 'Rh',
'?' => 'R',
'?' => 'r',
'??' => 'r',
'???' => 'Sch',
'???' => 'ShTh',
'???' => 'Shf',
'?????' => 'skl',
'???' => 'skh',
'???' => 'sth',
'???' => 'sf',
'???' => 'Sc',
'???' => 'St',
'???' => 'Sn',
'???' => 'Sm',
'???' => 'Sl',
'???' => 'Shk',
'???' => 'ShT',
'???' => 'ShN',
'???' => 'Shp',
'???' => 'Shm',
'?????' => 'spl',
'???' => 'sk',
'???' => 'sT',
'???' => 'st',
'???' => 'sn',
'???' => 'sp',
'???' => 'sm',
'???' => 'sl',
'?' => 'S',
'?' => 'Sh',
'?' => 's',
'?' => 'u',
'?' => 'u',
'???' => 'oZ',
'???' => 'tth',
'?' => 'tt',
'???' => 'TT',
'???' => 'Tm',
'?' => 'Th',
'???' => 'tn',
'???' => 'tm',
'?' => 'th',
'???' => 'tt',
'?' => 'T',
'?' => 't',
'????' => 'AZ',
'?' => 'a',
'?' => 'a',
'??' => 'ya',
'?' => 'y',
'?' => 'i',
'?' => 'i',
'?' => 'ee',
'?' => 'ee',
'?' => 'uu',
'?' => 'uu',
'?' => 'e',
'?' => 'e',
'?' => 'z',
'??' => 'Z',
'??' => 'y',
'??' => 'w',
'??' => 'w',
'????' => 'x',
'?' => ':',
'?' => 'nn',
'??' => '',
],
// English
'en' => [
],
// Latin (+ Cyrillic ?) chars
//
// -> Mix of languages, but we need to keep this here, so that different languages can handle there own behavior.
'latin' => [
'?' => '0',
'¹' => '1',
'²' => '2',
'³' => '3',
'?' => '4',
'?' => '5',
'?' => '6',
'?' => '7',
'?' => '8',
'?' => '9',
'?' => '0',
'?' => '1',
'?' => '2',
'?' => '3',
'?' => '4',
'?' => '5',
'?' => '6',
'?' => '7',
'?' => '8',
'?' => '9',
'?' => '0',
'?' => '1',
'?' => '2',
'?' => '3',
'?' => '4',
'?' => '5',
'?' => '6',
'?' => '7',
'?' => '8',
'?' => '9',
'?' => '10',
'?' => '100',
'?' => '1000',
'?' => 'AA',
'?' => 'aa',
'Æ' => 'AE',
'æ' => 'ae',
'?' => 'AE',
'?' => 'ae',
'?' => 'AO',
'?' => 'ao',
'?' => 'AU',
'?' => 'au',
'?' => 'AV',
'?' => 'av',
'?' => 'av',
'?' => 'av',
'?' => 'AY',
'?' => 'ay',
'?' => 'db',
'?' => 'dz',
'?' => 'dz',
'?' => 'dezh',
'?' => 'et',
'?' => 'ff',
'?' => 'ffi',
'?' => 'ffl',
'?' => 'fi',
'?' => 'fl',
'?' => 'feng',
'?' => 'IJ',
'?' => 'ij',
'?' => 'ls',
'?' => 'lz',
'?' => 'lezh',
'?' => 'qp',
'?' => 'tc',
'?' => 'ts',
'?' => 'tesh',
'?' => 'OE',
'?' => 'oe',
'?' => 'OO',
'?' => 'oo',
'?' => 'SS',
'ß' => 'ss',
'?' => 'st',
'?' => 'st',
'?' => 'TZ',
'?' => 'tz',
'?' => 'ue',
'A?' => 'Ai',
'??' => 'ai',
'??' => 'Ei',
'??' => 'ei',
'??' => 'Oi',
'??' => 'oi',
'??' => 'Oy',
'??' => 'oy',
'??' => 'Yi',
'??' => 'yi',
'?' => 'a',
'?' => 'a',
'?' => 'a',
'?' => 'a',
'?' => 'a',
'?' => 'a',
'?' => 'a',
'?' => 'a',
'?' => 'A',
'?' => 'A',
'?' => 'A',
'?' => 'A',
'?' => 'A',
'?' => 'A',
'?' => 'A',
'?' => 'A',
'?' => 'a',
'?' => 'a',
'?' => 'a',
'?' => 'a',
'?' => 'a',
'?' => 'a',
'?' => 'a',
'?' => 'A',
'?' => 'A',
'?' => 'A',
'?' => 'A',
'?' => 'A',
'Ä' => 'A',
'ä' => 'a',
'À' => 'A',
'à' => 'a',
'Á' => 'A',
'á' => 'a',
'Â' => 'A',
'â' => 'a',
'Ã' => 'A',
'ã' => 'a',
'A?' => 'A',
'a?' => 'a',
'?' => 'A',
'?' => 'a',
'?' => 'A',
'?' => 'a',
'Å' => 'A',
'å' => 'a',
'?' => 'A',
'?' => 'a',
'?' => 'A',
'?' => 'a',
'?' => 'A',
'?' => 'a',
'?' => 'A',
'?' => 'a',
'?' => 'A',
'?' => 'a',
'?' => 'A',
'?' => 'a',
'ª' => 'a',
'?' => 'B',
'?' => 'E',
'?' => 'e',
'Ç' => 'C',
'ç' => 'c',
'?' => 'C',
'?' => 'c',
'C?' => 'C',
'c?' => 'c',
'C?' => 'C',
'c?' => 'c',
'?' => 'C',
'?' => 'c',
'?' => 'C',
'?' => 'c',
'?' => 'C',
'?' => 'c',
'C?' => 'C',
'c?' => 'c',
'?' => 'C',
'?' => 'c',
'C?' => 'C',
'c?' => 'c',
'C?' => 'C',
'c?' => 'c',
'C?' => 'C',
'c?' => 'c',
'Ð' => 'D',
'?' => 'D',
'ð' => 'd',
'?' => 'd',
'È' => 'E',
'É' => 'E',
'Ê' => 'E',
'Ë' => 'E',
'?' => 'E',
'?' => 'E',
'?' => 'E',
'?' => 'e',
'?' => 'E',
'?' => 'e',
'?' => 'E',
'?' => 'e',
'?' => 'E',
'?' => 'e',
'?' => 'E',
'?' => 'e',
'?' => 'E',
'?' => 'e',
'?' => 'E',
'?' => 'e',
'è' => 'e',
'é' => 'e',
'ê' => 'e',
'ë' => 'e',
'?' => 'e',
'?' => 'e',
'?' => 'f',
'?' => 'F',
'?' => 'f',
'?' => 'G',
'?' => 'G',
'?' => 'g',
'?' => 'g',
'?' => 'H',
'?' => 'H',
'?' => 'h',
'?' => 'h',
'Ì' => 'I',
'Í' => 'I',
'Î' => 'I',
'Ï' => 'I',
'?' => 'I',
'?' => 'I',
'?' => 'I',
'?' => 'I',
'ì' => 'i',
'í' => 'i',
'î' => 'i',
'ï' => 'i',
'?' => 'i',
'?' => 'i',
'?' => 'i',
'?' => 'i',
'?' => 'I',
'?' => 'i',
'I?' => 'I',
'i?' => 'i',
'?' => 'I',
'?' => 'i',
'?' => 'I',
'i' => 'i',
'?' => 'I',
'?' => 'i',
'?' => 'I',
'?' => 'i',
'?' => 'J',
'?' => 'j',
'J??' => 'J',
'j?' => 'j',
'J??' => 'J',
'j?' => 'j',
'J?' => 'J',
'j?' => 'j',
'J?' => 'J',
'j?' => 'j',
'J?' => 'J',
'j?' => 'j',
'?' => 'J',
'?' => 'j',
'J?' => 'J',
'?' => 'j',
'J?' => 'J',
'j' => 'j',
'J?' => 'J',
'j?' => 'j',
'J?' => 'J',
'j?' => 'j',
'J?' => 'J',
'j?' => 'j',
'?' => 'i',
'?' => 'i',
'?' => 'k',
'?' => 'L',
'?' => 'L',
'?' => 'L',
'?' => 'l',
'?' => 'l',
'?' => 'l',
'L?' => 'L',
'l?' => 'l',
'L?' => 'L',
'l?' => 'l',
'L?' => 'L',
'l?' => 'l',
'?' => 'L',
'?' => 'l',
'L?' => 'L',
'l?' => 'l',
'?' => 'L',
'?' => 'l',
'?' => 'L',
'?' => 'l',
'L?' => 'L',
'l?' => 'l',
'?' => 'L',
'?' => 'l',
'L?' => 'L',
'l?' => 'l',
'L?' => 'L',
'l?' => 'l',
'Ñ' => 'N',
'ñ' => 'n',
'?' => 'N',
'?' => 'n',
'?' => 'n',
'?' => 'N',
'?' => 'n',
'?' => 'N',
'?' => 'n',
'N?' => 'N',
'n?' => 'n',
'N?' => 'N',
'n?' => 'n',
'?' => 'N',
'?' => 'n',
'N?' => 'N',
'n?' => 'n',
'?' => 'N',
'?' => 'n',
'?' => 'N',
'?' => 'n',
'?' => 'N',
'?' => 'n',
'?' => 'N',
'?' => 'n',
'N?' => 'N',
'n?' => 'n',
'Ö' => 'O',
'Ò' => 'O',
'Ó' => 'O',
'Ô' => 'O',
'Õ' => 'O',
'?' => 'O',
'?' => 'O',
'?' => 'O',
'?' => 'O',
'?' => 'O',
'Ø' => 'O',
'?' => 'O',
'ö' => 'o',
'ò' => 'o',
'ó' => 'o',
'ô' => 'o',
'õ' => 'o',
'?' => 'o',
'?' => 'o',
'?' => 'o',
'?' => 'o',
'?' => 'o',
'ø' => 'o',
'?' => 'o',
'º' => 'o',
'O?' => 'O',
'o?' => 'o',
'?' => 'O',
'?' => 'o',
'?' => 'O',
'?' => 'o',
'?' => 'O',
'?' => 'o',
'?' => 'O',
'?' => 'o',
'?' => 'R',
'?' => 'R',
'?' => 'r',
'?' => 'r',
'?' => 'S',
'?' => 'S',
'?' => 's',
'?' => 'S',
'?' => 's',
'S?' => 'S',
's?' => 's',
'??' => 'S',
'?' => 's',
'S?' => 'S',
's?' => 's',
'?' => 'S',
'?' => 's',
'S?' => 'S',
's?' => 's',
'?' => 'S',
'?' => 's',
'?' => 'S',
'?' => 's',
'?' => 'S',
'?' => 's',
'?' => 'S',
'?' => 's',
'S?' => 'S',
's?' => 's',
'S?' => 'S',
's?' => 's',
'?' => 's',
'?' => 'T',
'?' => 'T',
'?' => 'T',
'Þ' => 'TH',
'?' => 't',
'?' => 't',
'?' => 't',
'þ' => 'th',
'T?' => 'T',
't?' => 't',
'T?' => 'T',
't?' => 't',
'T?' => 'T',
't?' => 't',
'T?' => 'T',
'?' => 't',
'T?' => 'T',
't?' => 't',
'?' => 'T',
'?' => 't',
'?' => 'T',
'?' => 't',
'?' => 'T',
'?' => 't',
'?' => 'T',
'?' => 't',
'T?' => 'T',
't?' => 't',
'T?' => 'T',
't?' => 't',
'Ü' => 'U',
'Ù' => 'U',
'Ú' => 'U',
'Û' => 'U',
'?' => 'U',
'?' => 'U',
'?' => 'U',
'?' => 'U',
'?' => 'U',
'?' => 'U',
'?' => 'U',
'?' => 'U',
'?' => 'U',
'?' => 'U',
'ü' => 'u',
'ù' => 'u',
'ú' => 'u',
'û' => 'u',
'?' => 'u',
'?' => 'u',
'?' => 'u',
'?' => 'u',
'?' => 'u',
'?' => 'u',
'?' => 'u',
'?' => 'u',
'?' => 'u',
'?' => 'u',
'U?' => 'U',
'u?' => 'u',
'?' => 'U',
'?' => 'u',
'U?' => 'U',
'u?' => 'u',
'?' => 'U',
'?' => 'u',
'?' => 'U',
'?' => 'u',
'?' => 'U',
'?' => 'u',
'?' => 'W',
'?' => 'w',
'?' => 'W',
'?' => 'w',
'?' => 'W',
'?' => 'w',
'?' => 'W',
'?' => 'w',
'?' => 'I',
'?' => 'i',
'?' => 'Ja',
'?' => 'ja',
'?' => 'Je',
'?' => 'je',
'?' => 'Je',
'?' => 'je',
'?' => 'Dz',
'?' => 'dz',
'?' => 'U',
'?' => 'u',
'?' => 'O',
'?' => 'o',
'?' => 'Ot',
'?' => 'ot',
'?' => 'U',
'?' => 'u',
'?' => 'Ja',
'?' => 'ja',
'?' => 'Ju',
'?' => 'ju',
'?' => 'Ja',
'?' => 'Ja',
'?' => 'Ks',
'?' => 'ks',
'?' => 'Ps',
'?' => 'ps',
'?' => 'X',
'?' => 'x',
'Ý' => 'Y',
'?' => 'Y',
'?' => 'Y',
'ý' => 'y',
'ÿ' => 'y',
'?' => 'y',
'?' => 'Y',
'?' => 'y',
'Y?' => 'Y',
'y?' => 'y',
'Y?' => 'Y',
'y?' => 'y',
'?' => 'Y',
'?' => 'y',
'Y?' => 'Y',
'y?' => 'y',
'?' => 'Y',
'?' => 'y',
'?' => 'Y',
'?' => 'y',
'?' => 'Y',
'?' => 'y',
'?' => 'Y',
'?' => 'y',
'?' => 'Shh',
'?' => 'shh',
'?' => 'Z',
'?' => 'z',
'Z?' => 'Z',
'z?' => 'z',
'?' => 'Z',
'?' => 'z',
'Z?' => 'Z',
'z?' => 'z',
'Z?' => 'Z',
'z?' => 'z',
'Z?' => 'Z',
'z?' => 'z',
'?' => 'Z',
'?' => 'z',
'?' => 'Z',
'?' => 'z',
'?' => 'Z',
'?' => 'z',
'?' => 'Z',
'?' => 'z',
'Z?' => 'Z',
'z?' => 'z',
'Z?' => 'Z',
'z?' => 'z',
],
// whitespace chars
' ' => [
"\xc2\xa0" => ' ', // 'NO-BREAK SPACE'
"\xe1\x9a\x80" => ' ', // 'OGHAM SPACE MARK'
"\xe2\x80\x80" => ' ', // 'EN QUAD'
"\xe2\x80\x81" => ' ', // 'EM QUAD'
"\xe2\x80\x82" => ' ', // 'EN SPACE'
"\xe2\x80\x83" => ' ', // 'EM SPACE'
"\xe2\x80\x84" => ' ', // 'THREE-PER-EM SPACE'
"\xe2\x80\x85" => ' ', // 'FOUR-PER-EM SPACE'
"\xe2\x80\x86" => ' ', // 'SIX-PER-EM SPACE'
"\xe2\x80\x87" => ' ', // 'FIGURE SPACE'
"\xe2\x80\x88" => ' ', // 'PUNCTUATION SPACE'
"\xe2\x80\x89" => ' ', // 'THIN SPACE'
"\xe2\x80\x8a" => ' ', // 'HAIR SPACE'
"\xe2\x80\xa8" => ' ', // 'LINE SEPARATOR'
"\xe2\x80\xa9" => ' ', // 'PARAGRAPH SEPARATOR'
"\xe2\x80\x8b" => ' ', // 'ZERO WIDTH SPACE'
"\xe2\x80\xaf" => ' ', // 'NARROW NO-BREAK SPACE'
"\xe2\x81\x9f" => ' ', // 'MEDIUM MATHEMATICAL SPACE'
"\xe3\x80\x80" => ' ', // 'IDEOGRAPHIC SPACE'
"\xef\xbe\xa0" => ' ', // 'HALFWIDTH HANGUL FILLER'
],
// commonly used in Word documents
'msword' => [
"\xc2\xab" => '<<', // « (U+00AB) in UTF-8
"\xc2\xbb" => '>>', // » (U+00BB) in UTF-8
"\xe2\x80\x98" => "'", // ? (U+2018) in UTF-8
"\xe2\x80\x99" => "'", // ? (U+2019) in UTF-8
"\xe2\x80\x9a" => "'", // ? (U+201A) in UTF-8
"\xe2\x80\x9b" => "'", // ? (U+201B) in UTF-8
"\xe2\x80\x9c" => '"', // ? (U+201C) in UTF-8
"\xe2\x80\x9d" => '"', // ? (U+201D) in UTF-8
"\xe2\x80\x9e" => '"', // ? (U+201E) in UTF-8
"\xe2\x80\x9f" => '"', // ? (U+201F) in UTF-8
"\xe2\x80\xb9" => "'", // ? (U+2039) in UTF-8
"\xe2\x80\xba" => "'", // ? (U+203A) in UTF-8
"\xe2\x80\x93" => '-', // ? (U+2013) in UTF-8
"\xe2\x80\x94" => '-', // ? (U+2014) in UTF-8
"\xe2\x80\xa6" => '...', // ? (U+2026) in UTF-8
],
// Currency
//
// url => https://en.wikipedia.org/wiki/Currency_symbol
'currency_short' => [
'?' => 'EUR',
'$' => '$',
'?' => 'Cr',
'?' => 'Fr.',
'£' => 'PS',
'?' => 'L.',
'?' => 'M',
'?' => 'mil',
'?' => 'N',
'?' => 'Pts',
'?' => 'Rs',
'??' => 'LKR',
'??' => 'LKR',
'?' => 'Rs',
'??' => 'NPR',
'?' => 'Rs',
'?' => 'Rs',
'?' => 'W',
'?' => 'NS',
'?' => 'KZT',
'?' => 'D',
'?' => 'AMD',
'?' => 'K',
'?' => 'TL',
'?' => 'AZN',
'?' => 'T',
'?' => 'Dr',
'?' => 'PYG',
'?' => 'GEL',
'?' => 'ARA',
'?' => 'UAH',
'?' => 'RUB',
'?' => 'GHS',
'?' => 'CL',
'¢' => 'c',
'¥' => 'YEN',
'?' => 'JPY',
'?' => 'BDT',
'?' => 'CNY',
'?' => 'SAR',
'?' => 'KR',
'?' => 'ECU',
'¤' => '$?',
'?' => 'THB',
'?' => 'AFN',
],
];
|