- Vi motiverar upp folket i Burkina Faso med den kodnings-falerade staten Côte d'Ivoire som skräckexempel: Hur blir framtiden om diktaturen eller vad det blir plötsligt inför något udda franskt tecken som resulterar i att nästan allt skrivit om land på nätet berör data-defekter av olika slag.
- Att våga lösa problem tillsammans med invandrarna istället åt eller mot dem: Dessutom ges ett fint exempel på hur man kan hantera problem med olika unicode-grupperingar runt om i världen när de märkt att du falerat i hur du kodat deras geo-region eller religion och dom är ute efter att koda tillbaka dig till sämre service eller tänkbart ned i graven (tecken-kodning är verkligen verksamhetskritiskt för vem som helst). Som bonus kommer vi utan extra åtgärd lärt oss ett kombinerat afrikanskt-/ arabiskt-språk när vi implementerat exempel-åtgärderna...
- Mer data ger desto mer IT: Slutligen löser vi kodningsproblem med filer lättare genom att sätta Emacs artificiella intelligens under egen-hantering programmatiskt (mindre egen kod och inget problem av meta-m rätt kommande, rätt teckenkodning o.s.v.). En riktigt fet klassisk AI ger en gedigen lösning på allt tänkbart runt strängar och kodning.
När nu så mycket nyhetsintresse igen riktas (i "normaliserad" mening för franska Västafrika: D.v.s. lite mindre än många andra delar av världen för samma händelser) låt oss inte glömma Burkina Faso's grannland Cote d'Ivoire [sic].
Cote d'Ivoire är nationen som är själva varningssignalen på att problem runt unicode, mer komplexa filsystem, komprimering, databaser m.m. dykt upp.
Eller som denna i unicode falerade staten vill kalla sig: Côte d'Ivoire (dutten ovanför o är en περισπώμενος - vi kan säkert ta för givet att det bara är att kopiera en lite grekisk-text i Blogger så blir det rätt i webbläsare efter publicering - d.v.s. något vi ritat runt något: Circumflex) Låt oss illustrera vad denna nation blivit känd för med några jämförelser i antal sökresultat jag får på Google.com för:
Överst i kombination med encoding varande nu både beskrivande vad unicode gör av alla tänkbara tecken som vad det är och vad standarden beskriver sig som:
Och så kommer Cote d'Ivoire:
I jämförelse med Sverige som inte försökt visa upp en till "IT-sida" genom att kalla sig Svärge (eller varför inte Svårge för att ge norrlänningarna med sitt svårmod lite utrymme):
Tillsammans med några mer eller mindre fungerande (eller om vi så vill periodvis i alla fall ganska trasiga unicode-stöd):
Det är bl.a. en iso-standard:
Och kallas SO/IEC 10646 för 16-bitars varianten (så många tecken hit eller dit ingen för troligt en försvarlig mängd ens använt i tryckt text innan krävs 16-bitar för att ge varje tecken en unik-representation: I kontrast med sju bitars ascii eller i ofta nog tillräckligt alfabet - [A-Za-z0-9 ]).
Och Wiktionary förklarar när vägen mot tecken-falerad stat började:
"Usage notes
The country was originally known in English as Ivory Coast, and corresponding translations in other languages. In October 1985 the government requested that the country be known as Côte d'Ivoire in every language. Read more at Wikipedia."
Från: C%C3%B4te_d%27Ivoire | Wiktionary
Nå mången minns nog detta land. Förutom ett känt test-fall gäller ju att åtminstone alla länder, alla större städer, alla befolkningsgrupper, alla patientgrupper, alla politiska partier och organisationer, alla språk, allt särskilt intresserat, allt "känsligt" rörande hur dom själva framställs, allt som inte kan tala för dom själva (d.v.s. behöver barn, döda, brottsoffer m.fl. utan möjlighet att verifiera representeras oavsett sunda begränsningar redan innan det ska den som representerar dem se till att representera dem korrekt eftersom de har sämre möjlighet att själva reagera) o.s.v. representerade vad man bör ha respekt att hantera rätt - Medan President Ôbama kan ta ett litet fel och om inte får antas själv eller via myndigheter kunna betala någon på ambassaden som sitter och Obama-korrekturläser post-publicering), och allt och alla som kan för dig bli "störande agiterade" ensamma eller i grupp (betar vi nyhetsuppmärksammat genom att reta upp alla halv- till helfnoskiga muslimska extremister är det klokt att de försöker mörda oss för något vi begriper snarare än något mer udda esoteriskt brott p.g.a. av felkodning av namn eller religiöst koncept så vi inte verkat helt okunniga rörande vad vi kritiserat).
Annars sitter någon (kanske jag för annat) och testar lite för att dom tycker att det är kul eller för att störa din viktiga applikationer med en massa upprörda innevånare från ett land i Västafrika (om det inte är finländare, ryssarna, japanerna, kineserna, allt indiskt o.s.v.) i stavningen ganska likt något du såg på skärmen men inte hittade i Wikipedia eller på nätet som visar sig ha invandrat sista 20 åren i betydande antal till Sverige så de kan irritera dig i person (du noterar att den afrikanska medarbetaren en underleverantör till din bostadsrättsförening använder har slutat att städa rätt utanför din dörr och tittande på honom genom dörrens öga ser du att han som sopar mot den dörr, när han är klar med din trappuppgång och du öppnar dörren noterar du en massa damm och smuts sopat mot just din dörr medan alla andra dörrar är rena. Du vet nu att du kodat något engagerat felaktigt. Kanske sa Emacs att det var - eller menade att det tolkades som - Mule medan det såg helt rätt ut. Rekommenderad åtgärd jag gjorde för att visa mig särskilt trevligt intresserad av kulturen o.s.v. och försöka luska ut om det satts upp någon som grupp lokalt rörande någon tecken-kodning eller liknande jag skrivit:
- Vi lär oss lite Swahili. Mitt Afrika, Swahili, Vår biståndsminister och Spanskan i Österlandet / Väst (2011-08-31). Idag mer tillbaka i mitt gamla cyniska jag har jag nu svårt att se mig själv riktigt lägga märke till vad man råkat trampa på då eller efteråt. Men likväl ett intressant språk att ha tittat lite på även om danskdjävlar, finländare, tyskdjävlar eller fransmän ej ska förvänta sig att jag tänker lära mig något av deras språk).
- Vi intresserar oss med vårt nya språk så långt vi nu lärt: Hakuna Matata: \152343\112343\252343\212343 ???
Svarar han eller hon i unicode är det signikant. Det drabbade mig här. Eftersom jag inte brytt mig i att förbereda något jag begrep vad jag sa adderade det på riskdimensionerna ännu mer. Mär jag försökte minnas vad han svarade med måste jag uppenbart kommit fel eftersom siffer-kodningen jag mindes han svarade med ej blev något meningsfullt när jag slog upp det. Kostade mycket av kompenserande kultur-engagerade åtgärder efterföljande redan dyra Swahili. Men jag var mindre cynisk dom här åren. Förövrigt har jag råkat ut med samma problem med Swahili. Man lär sig en del bra med från parlören ganska diffusa begrep om hur annat låter. Och pratar lite och får en massa svar som man inte begriper ett dugg av och som tycks bli som agiterat och motiverat när det blir tydligt att man inte begriper dem. Vad Lejonkungens härligt köttätande idyll med vegetariska alternativ helt missade att visa något av.
Mer av dåligt hantverk i hela området teckenkodning jag och andra hederliga IT-arbetare nu lider av
I kombination med en annan väldigt vanlig ISO-standard för tecken kodning (som jag ej lyckades köpa för 0 kr från Sis men jag såg något relaterat spännande runt Fortran som behov eller intresse tidigare att lära mig ännu ej presenterat sig för: Datorgrafi - Anpassning GKS-FORTRAN som jag nog ska spara till och ha roligt med när jag förtjänat något kul som dessutom säkert många gånger kommer visa sig värdefull att ha.
Hoppas att SIS gjort något runt iso-teckenkoderna och COBOL (1950-talets programmering mycket "bandmaskin" sekventiellt i hantering av indata och vad man idag när problematiskt att få ut datat från för portning till något modernt ibland hanterar genom att fotografera av skärmen med data (som i inlägg länkat föreslaget för ett system jag ej vet eller minns nu i alla fall vad det är byggt i) och köra in i bildanalys) och C-64 BASIC V2 också).
Faktiskt när man gör bildanalys på dokument med text blir hela frågan om "förslappade lyx-bokstäver" en felkälla på enorma magnituder. Minst fel får man när man bara håller sig till [A-Za-z0-9 ] samt punkter (rätt antal ungefär blanksteg är stort ej trivialt värde). Lösningar som försöker något mer än bara lite mer än så börjar ge sig på för alla jag sett föreslå rena orimligheter trots uppenbart i delar användande språkmodeller (hur vanligt nu matematiska uttryck tolkas vara: Troligen ej tolkas alls hos dem när de grekiska plötsligt dyker upp mellan ett par engelska ord). Minsta lilla defekt i avbildningen genom fotografering eller så jämförbart (eller en utmanande bakgrund till texten i en bildruta från ett filmklipp) får dem gärna att hamna fel. Ganska speciellt faktiskt eftersom man ändå hållit på en väldig massa ord med identifikation av bokstäver i text.
Återvänder vi här till Côte d'Ivoire gäller att en god språkmodell i tecken förekomst, kunskap om statistik frekvens för förekommande entiteter, samband för flergram mellan ord och kanske också hänsyn grammatik (även om jag tror för det sista att det inte ger så himla mycket för identifikation tecken).
Ett bra exempel på vardags-praktiskt fungerande såväl som ett gott råd till Côte d'Ivoire (och kanske Frankrike jag misstänksamt spekulerar bär en stor del av ansvaret för denna falerade unicode stat) har vi med Google resp. pdf-inskanningen på DTIC.mil (DTIC.mil använder Google COOP - eller vad de numera kallar det men i generation ungefär introducerad på sidan samtidigt med COOP tror jag) så vi kan samma lösning för samma dokument:
I sökresultatet:
Jag ar många gånger stört mig av hur ändå utmanande det kan vara att få över sådana här pdf-representationer av av-fotograferade till text. Helst skulle man vilja göra något som att bara markera allt och kopiera det. Om ens PDF-läsare visar bokstäverna rätt så borde man i all rimlighet få ut det rätt. Visst att det kan tortera dig många år att få flexibel mångsidighet runt unicode och allt besläktat att fungera vettigt runt indata du importerar men efter en fem år fungerar det ändå ganska vettigt i konvertering hit och dit även om av och till något på vägen falerar och man ej får den enkelhet görande det möjligt att kontrollera filerna manuellt direkt i Emacs eller annat lämpligt med rätt tecken genom att öppna dem utan råkar på diverse escape-tecken som vanligen vid problem (när jag oftare fick dem en tre år sedan) tog två bytes.
Ger vi oss på att kopiera titeln från vad nu för pdf-läsare Putty i Google Chrome har som default får vi:
A23 209 'areahandbook series!
COte d'Ivore 7
a country study,
-
0 DSTIWUh)
Distribution
f r STEMNTApprovcd uIlIc
UnlimitedI
release; 0
Konverterar vi PDF-dokumentet till text med pdftotext får vi faktiskt ett bättre resultat:
Egentligen oavsett vad jag senare kan ha skrivit om utmaningar m.m. för att lösa sådant här: Borde sådana här program egentligen inte bara fungera så man får något bra ut från dem? Jag och de flesta tycker nog det. Och det kan inte alltid vara att alla vi ska lösa problem en eller ett fåtal kunde lösa i sitt program. Det vore bara dålig tim-ekonomi och som uppskalad lösning vad som kan skada ekonomisk tillväxt och tar oss innan fordismen effektivisering av kundgrupper till standardiserade produkter effektivt tillverkade. Lite som att varje bostadsområde tillverkar en egen bil lite hur som helst beroende på vem som ska ha den.
Som man kan se från första sidan av PDF-dokumenten är en dimension av problematiken att man använder fonter i olika storlek och på olika sidor vilket är information om blanksteg m.m. konvertering ej utnyttjar (problemområdet i alla flexibilitet av vad vi skapar är emellertid knappast helt trivialt att göra nytta av i ett program som pdftotext även om man faktiskt kan hitta en del arbeten praktiskt och information tänkbart användbar om vi går mycket längre tillbaka i datahistorien till tiden när man arbetade man hålkort och önskade göra inläsning så snabb som möjlig och därför utnyttja samlad representation av sådant som grafer: Kanske. "Pikografering?").
Låt oss avsluta med ett citat från det översta sökresultatet jag tycker behandlar det hela väldigt ofullständigt men ändå en variant av hundra tusentals man troligen kan hitta när man söker på detta spännande IT-land:
"Java stores Strings internally as an array of chars, which are 16 bit unsigned values. This was based on an earlier Unicode standard that supported 64K characters.
Your String constant "Côte d'Ivoire" is in this format. If your character encoding on your XML document is correct then the String read from there will also be in the correct format. So possible errors are:
The XML document doesn't declare a character encoding;
The declared character encoding does not match the actual character encoding used.
Perhaps the XML string is being treated as US-ASCII instead of UTF-8. I would output both and eyeball them. If they look the same, compare them character by character to see where teh comparison fails. You may also want to compare the UTF8 encoding of your constant String to what's in the XML document:
byte[] bytes = "Côte d'Ivoire".getBytes("UTF-8");
It gets more complicated when you start getting into "supplementary characters". These are characters beyond the originally intended 64K ("code points" in Unicode parlance). See Supplementary Characters in the Java Platform. This isn't an issue with any of the characters you're using but it's worth noting for completeness."
Från: Comparing utf-8 strings in java | Stackoverflow.com
Ett mer korrekt svar är att antingen har vi "smutsiga strängar", "smutsiga XML-dokument" m.m. i någon okynnes kodning i vilket fall man tar reda på vilken den är och ŕensar bort den eller behåller den, eller kodar den i något större mer omfattande. Det är som PDF-dokument: Vi tittar hur de kodat sina tecken och omvandlar det när vi förstår det till vår representation. Sådan information är angiven i filerna så det är bara att titta efter (lite p.s.s. som NTFS innehåller information om filernas förehållande, vilka rättigheter de har, hur gamla de är m.m. Bara att titta efter i din fil-hanterare så vet du).
Komplettering: Lite surt att Blogger.com verkar klara av en περισπώμενος ovan för o. Det är på så många sätt så fel när en plattform för att hjälpa oss att skriva för läsaren saboterar en enkel avslutande illustration av själva problemet. Egentligen borde man kopiera en några GB stor binär-fil för att hjälpa Blogger rätt här men det är ju också fel att jag ska sitta och vänta på det att bli klart innan man får ett fint felmeddelande att göra skärmdump av.
Låt Emacs AI lösa det
Emacs bör tror jag vara den mest omfattande och avancerade artificiella intelligensen i klassisk mening som finns tillgänglig åtminstone kostnadsfritt (troligen rörande vad som rör själva de normala användningsområdena som stränghantering m.m. den mest avancerade). Det går att hitta oerhört mycket man kan komma åt programmatiskt utan att ens behöva tvinga sig lära sig Lisp. Och vi har dessutom av och till en försvarlig mängd kunskap (i annan mening än diverse lisp-script) som ex. kodnings-varianter. Nedan "completions" på värden att sätta set-selection-coding-system. Notera varianterna för dos, unix och mac och betänk att normalt sätter det hela rätt kodning för också "utmanade" filer och brukar efter "omsparning" för sådana utmanade filer ge resultat fungerande naturligt mycket väl med Linux-miljö (dock unicode går av och till defunct i något när ny versioner kommer oavsett Linux eller annat: Nu sedan några år ska man dock ej längre behöva ha problem att lösa själv längre även om man kanske bättre försiktigt uppdaterar stödet om man har behov av stora delar av det väldigt välfungerande: En indirekt effekt av detta är att stora delar av vad som diskuteras rörande problem med unicode i Linux såväl som bl.a. Perl idag är helt defunct därför att de rör väldigt tids-lokaliserade problem).
Possible completions are:
adobe-standard-encoding adobe-standard-encoding-dos
adobe-standard-encoding-mac adobe-standard-encoding-unix
alternativnyj alternativnyj-dos
alternativnyj-mac alternativnyj-unix
big5 big5-dos
big5-hkscs big5-hkscs-dos
big5-hkscs-mac big5-hkscs-unix
big5-mac big5-unix
binary chinese-big5
chinese-big5-dos chinese-big5-hkscs
chinese-big5-hkscs-dos chinese-big5-hkscs-mac
chinese-big5-hkscs-unix chinese-big5-mac
chinese-big5-unix chinese-gb18030
chinese-gb18030-dos chinese-gb18030-mac
chinese-gb18030-unix chinese-gbk
chinese-gbk-dos chinese-gbk-mac
chinese-gbk-unix chinese-hz
chinese-hz-dos chinese-hz-mac
chinese-hz-unix chinese-iso-7bit
chinese-iso-7bit-dos chinese-iso-7bit-mac
chinese-iso-7bit-unix chinese-iso-8bit
chinese-iso-8bit-dos chinese-iso-8bit-mac
chinese-iso-8bit-unix cn-big5
cn-big5-dos cn-big5-hkscs
cn-big5-hkscs-dos cn-big5-hkscs-mac
cn-big5-hkscs-unix cn-big5-mac
cn-big5-unix cn-gb
cn-gb-2312 cn-gb-2312-dos
cn-gb-2312-mac cn-gb-2312-unix
cn-gb-dos cn-gb-mac
cn-gb-unix compound-text
compound-text-dos compound-text-mac
compound-text-unix compound-text-with-extensions
compound-text-with-extensions-dos compound-text-with-extensions-mac
compound-text-with-extensions-unix cp1047
cp1047-dos cp1047-mac
cp1047-unix cp1125
cp1125-dos cp1125-mac
cp1125-unix cp1250
cp1250-dos cp1250-mac
cp1250-unix cp1251
cp1251-dos cp1251-mac
cp1251-unix cp1252
cp1252-dos cp1252-mac
cp1252-unix cp1253
cp1253-dos cp1253-mac
cp1253-unix cp1254
cp1254-dos cp1254-mac
cp1254-unix cp1255
cp1255-dos cp1255-mac
cp1255-unix cp1256
cp1256-dos cp1256-mac
cp1256-unix cp1257
cp1257-dos cp1257-mac
cp1257-unix cp1258
cp1258-dos cp1258-mac
cp1258-unix cp437
cp437-dos cp437-mac
cp437-unix cp737
cp737-dos cp737-mac
cp737-unix cp850
cp850-dos cp850-mac
cp850-unix cp851
cp851-dos cp851-mac
cp851-unix cp852
cp852-dos cp852-mac
cp852-unix cp855
cp855-dos cp855-mac
cp855-unix cp857
cp857-dos cp857-mac
cp857-unix cp858
cp858-dos cp858-mac
cp858-unix cp860
cp860-dos cp860-mac
cp860-unix cp861
cp861-dos cp861-mac
cp861-unix cp862
cp862-dos cp862-mac
cp862-unix cp863
cp863-dos cp863-mac
cp863-unix cp865
cp865-dos cp865-mac
cp865-unix cp866
cp866-dos cp866-mac
cp866-unix cp866u
cp866u-dos cp866u-mac
cp866u-unix cp869
cp869-dos cp869-mac
cp869-unix cp874
cp874-dos cp874-mac
cp874-unix cp878
cp878-dos cp878-mac
cp878-unix cp932
cp932-dos cp932-mac
cp932-unix cp936
cp936-dos cp936-mac
cp936-unix cp949
cp949-dos cp949-mac
cp949-unix cp950
cp950-dos cp950-mac
cp950-unix ctext
ctext-dos ctext-mac
ctext-no-compositions ctext-no-compositions-dos
ctext-no-compositions-mac ctext-no-compositions-unix
ctext-unix ctext-with-extensions
ctext-with-extensions-dos ctext-with-extensions-mac
ctext-with-extensions-unix cyrillic-alternativnyj
cyrillic-alternativnyj-dos cyrillic-alternativnyj-mac
cyrillic-alternativnyj-unix cyrillic-iso-8bit
cyrillic-iso-8bit-dos cyrillic-iso-8bit-mac
cyrillic-iso-8bit-unix cyrillic-koi8
cyrillic-koi8-dos cyrillic-koi8-mac
cyrillic-koi8-unix devanagari
devanagari-dos devanagari-mac
devanagari-unix dos
ebcdic-uk ebcdic-uk-dos
ebcdic-uk-mac ebcdic-uk-unix
ebcdic-us ebcdic-us-dos
ebcdic-us-mac ebcdic-us-unix
emacs-internal emacs-mule
emacs-mule-dos emacs-mule-mac
emacs-mule-unix euc-china
euc-china-dos euc-china-mac
euc-china-unix euc-cn
euc-cn-dos euc-cn-mac
euc-cn-unix euc-japan
euc-japan-1990 euc-japan-1990-dos
euc-japan-1990-mac euc-japan-1990-unix
euc-japan-dos euc-japan-mac
euc-japan-unix euc-jis-2004
euc-jis-2004-dos euc-jis-2004-mac
euc-jis-2004-unix euc-jisx0213
euc-jisx0213-dos euc-jisx0213-mac
euc-jisx0213-unix euc-jp
euc-jp-dos euc-jp-mac
euc-jp-unix euc-korea
euc-korea-dos euc-korea-mac
euc-korea-unix euc-kr
euc-kr-dos euc-kr-mac
euc-kr-unix euc-taiwan
euc-taiwan-dos euc-taiwan-mac
euc-taiwan-unix euc-tw
euc-tw-dos euc-tw-mac
euc-tw-unix eucjp-ms
eucjp-ms-dos eucjp-ms-mac
eucjp-ms-unix gb18030
gb18030-dos gb18030-mac
gb18030-unix gb2312
gb2312-dos gb2312-mac
gb2312-unix gbk
gbk-dos gbk-mac
gbk-unix georgian-academy
georgian-academy-dos georgian-academy-mac
georgian-academy-unix georgian-ps
georgian-ps-dos georgian-ps-mac
georgian-ps-unix greek-iso-8bit
greek-iso-8bit-dos greek-iso-8bit-mac
greek-iso-8bit-unix hebrew-iso-8bit
hebrew-iso-8bit-dos hebrew-iso-8bit-mac
hebrew-iso-8bit-unix hp-roman8
hp-roman8-dos hp-roman8-mac
hp-roman8-unix hz
hz-dos hz-gb-2312
hz-gb-2312-dos hz-gb-2312-mac
hz-gb-2312-unix hz-mac
hz-unix ibm1047
ibm1047-dos ibm1047-mac
ibm1047-unix ibm437
ibm437-dos ibm437-mac
ibm437-unix ibm850
ibm850-dos ibm850-mac
ibm850-unix ibm851
ibm851-dos ibm851-mac
ibm851-unix ibm852
ibm852-dos ibm852-mac
ibm852-unix ibm855
ibm855-dos ibm855-mac
ibm855-unix ibm857
ibm857-dos ibm857-mac
ibm857-unix ibm860
ibm860-dos ibm860-mac
ibm860-unix ibm861
ibm861-dos ibm861-mac
ibm861-unix ibm862
ibm862-dos ibm862-mac
ibm862-unix ibm863
ibm863-dos ibm863-mac
ibm863-unix ibm865
ibm865-dos ibm865-mac
ibm865-unix ibm869
ibm869-dos ibm869-mac
ibm869-unix ibm874
ibm874-dos ibm874-mac
ibm874-unix in-is13194-devanagari
in-is13194-devanagari-dos in-is13194-devanagari-mac
in-is13194-devanagari-unix iso-2022-7bit
iso-2022-7bit-dos iso-2022-7bit-lock
iso-2022-7bit-lock-dos iso-2022-7bit-lock-mac
iso-2022-7bit-lock-ss2 iso-2022-7bit-lock-ss2-dos
iso-2022-7bit-lock-ss2-mac iso-2022-7bit-lock-ss2-unix
iso-2022-7bit-lock-unix iso-2022-7bit-mac
iso-2022-7bit-ss2 iso-2022-7bit-ss2-dos
iso-2022-7bit-ss2-mac iso-2022-7bit-ss2-unix
iso-2022-7bit-unix iso-2022-8bit-ss2
iso-2022-8bit-ss2-dos iso-2022-8bit-ss2-mac
iso-2022-8bit-ss2-unix iso-2022-cjk
iso-2022-cjk-dos iso-2022-cjk-mac
iso-2022-cjk-unix iso-2022-cn
iso-2022-cn-dos iso-2022-cn-ext
iso-2022-cn-ext-dos iso-2022-cn-ext-mac
iso-2022-cn-ext-unix iso-2022-cn-mac
iso-2022-cn-unix iso-2022-int-1
iso-2022-int-1-dos iso-2022-int-1-mac
iso-2022-int-1-unix iso-2022-jp
iso-2022-jp-1978-irv iso-2022-jp-1978-irv-dos
iso-2022-jp-1978-irv-mac iso-2022-jp-1978-irv-unix
iso-2022-jp-2 iso-2022-jp-2-dos
iso-2022-jp-2-mac iso-2022-jp-2-unix
iso-2022-jp-2004 iso-2022-jp-2004-dos
iso-2022-jp-2004-mac iso-2022-jp-2004-unix
iso-2022-jp-3 iso-2022-jp-3-dos
iso-2022-jp-3-mac iso-2022-jp-3-unix
iso-2022-jp-dos iso-2022-jp-mac
iso-2022-jp-unix iso-2022-kr
iso-2022-kr-dos iso-2022-kr-mac
iso-2022-kr-unix iso-8859-1
iso-8859-1-dos iso-8859-1-mac
iso-8859-1-unix iso-8859-10
iso-8859-10-dos iso-8859-10-mac
iso-8859-10-unix iso-8859-11
iso-8859-11-dos iso-8859-11-mac
iso-8859-11-unix iso-8859-13
iso-8859-13-dos iso-8859-13-mac
iso-8859-13-unix iso-8859-14
iso-8859-14-dos iso-8859-14-mac
iso-8859-14-unix iso-8859-15
iso-8859-15-dos iso-8859-15-mac
iso-8859-15-unix iso-8859-16
iso-8859-16-dos iso-8859-16-mac
iso-8859-16-unix iso-8859-2
iso-8859-2-dos iso-8859-2-mac
iso-8859-2-unix iso-8859-3
iso-8859-3-dos iso-8859-3-mac
iso-8859-3-unix iso-8859-4
iso-8859-4-dos iso-8859-4-mac
iso-8859-4-unix iso-8859-5
iso-8859-5-dos iso-8859-5-mac
iso-8859-5-unix iso-8859-6
iso-8859-6-dos iso-8859-6-mac
iso-8859-6-unix iso-8859-7
iso-8859-7-dos iso-8859-7-mac
iso-8859-7-unix iso-8859-8
iso-8859-8-dos iso-8859-8-e
iso-8859-8-e-dos iso-8859-8-e-mac
iso-8859-8-e-unix iso-8859-8-i
iso-8859-8-i-dos iso-8859-8-i-mac
iso-8859-8-i-unix iso-8859-8-mac
iso-8859-8-unix iso-8859-9
iso-8859-9-dos iso-8859-9-mac
iso-8859-9-unix iso-latin-1
iso-latin-1-dos iso-latin-1-mac
iso-latin-1-unix iso-latin-10
iso-latin-10-dos iso-latin-10-mac
iso-latin-10-unix iso-latin-2
iso-latin-2-dos iso-latin-2-mac
iso-latin-2-unix iso-latin-3
iso-latin-3-dos iso-latin-3-mac
iso-latin-3-unix iso-latin-4
iso-latin-4-dos iso-latin-4-mac
iso-latin-4-unix iso-latin-5
iso-latin-5-dos iso-latin-5-mac
iso-latin-5-unix iso-latin-6
iso-latin-6-dos iso-latin-6-mac
iso-latin-6-unix iso-latin-7
iso-latin-7-dos iso-latin-7-mac
iso-latin-7-unix iso-latin-8
iso-latin-8-dos iso-latin-8-mac
iso-latin-8-unix iso-latin-9
iso-latin-9-dos iso-latin-9-mac
iso-latin-9-unix iso-safe
iso-safe-dos iso-safe-mac
iso-safe-unix japanese-cp932
japanese-cp932-dos japanese-cp932-mac
japanese-cp932-unix japanese-iso-7bit-1978-irv
japanese-iso-7bit-1978-irv-dos japanese-iso-7bit-1978-irv-mac
japanese-iso-7bit-1978-irv-unix japanese-iso-8bit
japanese-iso-8bit-dos japanese-iso-8bit-mac
japanese-iso-8bit-unix japanese-shift-jis
japanese-shift-jis-2004 japanese-shift-jis-2004-dos
japanese-shift-jis-2004-mac japanese-shift-jis-2004-unix
japanese-shift-jis-dos japanese-shift-jis-mac
japanese-shift-jis-unix junet
junet-dos junet-mac
junet-unix koi8
koi8-dos koi8-mac
koi8-r koi8-r-dos
koi8-r-mac koi8-r-unix
koi8-t koi8-t-dos
koi8-t-mac koi8-t-unix
koi8-u koi8-u-dos
koi8-u-mac koi8-u-unix
koi8-unix korean-cp949
korean-cp949-dos korean-cp949-mac
korean-cp949-unix korean-iso-7bit-lock
korean-iso-7bit-lock-dos korean-iso-7bit-lock-mac
korean-iso-7bit-lock-unix korean-iso-8bit
korean-iso-8bit-dos korean-iso-8bit-mac
korean-iso-8bit-unix lao
lao-dos lao-mac
lao-unix latin-0
latin-0-dos latin-0-mac
latin-0-unix latin-1
latin-1-dos latin-1-mac
latin-1-unix latin-10
latin-10-dos latin-10-mac
latin-10-unix latin-2
latin-2-dos latin-2-mac
latin-2-unix latin-3
latin-3-dos latin-3-mac
latin-3-unix latin-4
latin-4-dos latin-4-mac
latin-4-unix latin-5
latin-5-dos latin-5-mac
latin-5-unix latin-6
latin-6-dos latin-6-mac
latin-6-unix latin-7
latin-7-dos latin-7-mac
latin-7-unix latin-8
latin-8-dos latin-8-mac
latin-8-unix latin-9
latin-9-dos latin-9-mac
latin-9-unix mac
mac-roman mac-roman-dos
mac-roman-mac mac-roman-unix
mik mik-dos
mik-mac mik-unix
mule-utf-8 mule-utf-8-dos
mule-utf-8-mac mule-utf-8-unix
next next-dos
next-mac next-unix
no-conversion no-conversion-multibyte
old-jis old-jis-dos
old-jis-mac old-jis-unix
pt154 pt154-dos
pt154-mac pt154-unix
raw-text raw-text-dos
raw-text-mac raw-text-unix
roman8 roman8-dos
roman8-mac roman8-unix
ruscii ruscii-dos
ruscii-mac ruscii-unix
shift_jis shift_jis-2004
shift_jis-2004-dos shift_jis-2004-mac
shift_jis-2004-unix shift_jis-dos
shift_jis-mac shift_jis-unix
sjis sjis-dos
sjis-mac sjis-unix
tcvn tcvn-5712
tcvn-5712-dos tcvn-5712-mac
tcvn-5712-unix tcvn-dos
tcvn-mac tcvn-unix
th-tis620 th-tis620-dos
th-tis620-mac th-tis620-unix
thai-tis620 thai-tis620-dos
thai-tis620-mac thai-tis620-unix
tibetan tibetan-dos
tibetan-iso-8bit tibetan-iso-8bit-dos
tibetan-iso-8bit-mac tibetan-iso-8bit-unix
tibetan-mac tibetan-unix
tis-620 tis-620-dos
tis-620-mac tis-620-unix
tis620 tis620-dos
tis620-mac tis620-unix
undecided undecided-dos
undecided-mac undecided-unix
unix us-ascii
us-ascii-dos us-ascii-mac
us-ascii-unix utf-16
utf-16-be utf-16-be-dos
utf-16-be-mac utf-16-be-unix
utf-16-dos utf-16-le
utf-16-le-dos utf-16-le-mac
utf-16-le-unix utf-16-mac
utf-16-unix utf-16be
utf-16be-dos utf-16be-mac
utf-16be-unix utf-16be-with-signature
utf-16be-with-signature-dos utf-16be-with-signature-mac
utf-16be-with-signature-unix utf-16le
utf-16le-dos utf-16le-mac
utf-16le-unix utf-16le-with-signature
utf-16le-with-signature-dos utf-16le-with-signature-mac
utf-16le-with-signature-unix utf-7
utf-7-dos utf-7-imap
utf-7-imap-dos utf-7-imap-mac
utf-7-imap-unix utf-7-mac
utf-7-unix utf-8
utf-8-auto utf-8-auto-dos
utf-8-auto-mac utf-8-auto-unix
utf-8-dos utf-8-emacs
utf-8-emacs-dos utf-8-emacs-mac
utf-8-emacs-unix utf-8-mac
utf-8-unix utf-8-with-signature
utf-8-with-signature-dos utf-8-with-signature-mac
utf-8-with-signature-unix vietnamese-tcvn
vietnamese-tcvn-dos vietnamese-tcvn-mac
vietnamese-tcvn-unix vietnamese-viqr
vietnamese-viqr-dos vietnamese-viqr-mac
vietnamese-viqr-unix vietnamese-viscii
vietnamese-viscii-dos vietnamese-viscii-mac
vietnamese-viscii-unix vietnamese-vscii
vietnamese-vscii-dos vietnamese-vscii-mac
vietnamese-vscii-unix viqr
viqr-dos viqr-mac
viqr-unix viscii
viscii-dos viscii-mac
viscii-unix vscii
vscii-dos vscii-mac
vscii-unix windows-1250
windows-1250-dos windows-1250-mac
windows-1250-unix windows-1251
windows-1251-dos windows-1251-mac
windows-1251-unix windows-1252
windows-1252-dos windows-1252-mac
windows-1252-unix windows-1253
windows-1253-dos windows-1253-mac
windows-1253-unix windows-1254
windows-1254-dos windows-1254-mac
windows-1254-unix windows-1255
windows-1255-dos windows-1255-mac
windows-1255-unix windows-1256
windows-1256-dos windows-1256-mac
windows-1256-unix windows-1257
windows-1257-dos windows-1257-mac
windows-1257-unix windows-1258
windows-1258-dos windows-1258-mac
windows-1258-unix windows-936
windows-936-dos windows-936-mac
windows-936-unix x-ctext
x-ctext-dos x-ctext-mac
x-ctext-unix x-ctext-with-extensions
x-ctext-with-extensions-dos x-ctext-with-extensions-mac
x-ctext-with-extensions-unix