Интернационализация, локализация, кодиране, Исландия и превод на уебсайт за японска котка
Има много информация, когато става въпрос за интернационализация, локализация и кодиране в уеб приложенията. Има и много неразбиране относно това, което всеки предоставя за уеб приложение. Ето моето мнение…
Когато уеб браузърът се свърже с уеб сървър, той предава доста променливи и отправя допълнителни заявки, ето един пример:
GET / HTTP / 1.1
Водещ: www.dknewmedia.com
Потребителски агент: Mozilla / 5.0 (Macintosh; U; Intel Mac OS X; en-US; rv: 1.8.1.3) Gecko / 20070309 Firefox / 2.0.0.3
Приемам: HTTP Приемам = text / xml, application / xml, application / xhtml + xml, text / html; q = 0.9, text / plain; q = 0.8, image / png, * / *; q = 0.5
Accept-Language: en-us, en; q = 0.5
Приемане-кодиране: gzip, дефлация
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Интернационализация
Интернационализацията е съставна част от много неща:
- Локализация: Способността да се идентифицира от кой език и местоположение е посетителят. Това става чрез HTTP заявки, където посетителят се идентифицира от локал. В моя случай това е en-US. „En“ е английски, а „US“ е САЩ. Това е настройка в моята операционна система.
- Времеви зони: Възможността за настройка за часовите зони. Това обикновено се постига чрез задаване на сървъра на средно време по Гринуич (GMT) и след това позволява на потребителите да задават своите локални отмествания от GMT.
- Кодиране на знаци: Това е възможността за правилно показване на езикови набори от символи. Той е различен от локализацията, тъй като локализацията може да ми каже езика и региона на компютъра, от който се прави заявката, но няма да ми каже от кой език четец иска ... това зависи от читателя!
Забележете в моята HTTP заглавка, когато браузърът направи заявката, той каза на сървъра, че иска моя локал (Accept-Language: en-us); обаче също така трябва да каже на сървъра какъв набор от символи се иска (Accept-Charset: Accept-Charset: ISO-8859-1, utf-8; q = 0.7, *; q = 0.7) ISO-8859-1 и utf -8 са и двата допустими набора от символи.
Локализация
В този фантастичен объркан свят локализацията никога вече не диктува езика. Въпреки че съм в en-US, мога абсолютно да чета различен език, използвайки различен набор от символи ... това се случва, когато използвам Google хинди (Всъщност не използвам Google хинди). Моята молба за локал и набор от символи са идентични, както когато поискам Google английски страница, но всъщност получавам страница, която не мога да прочета, защото нямам набор от символи. Всичко се появява ???????????… Обаче мога да заредя този набор от символи във Firefox (Firefox> Предпочитания> Разширени> Езици):
Ако заредя този език, след това мога да поискам страницата в нейния естествен набор от символи и да я покажа на компютъра си, въпреки че локалът ми по подразбиране е en-US!
Така че ... ако съм студент по хинди, изучавам английски в Purdue и съм свързан чрез VPN към училищния сървър, на почивка в Австралия ... има 3 различни настройки, които трябва да бъдат приложени към приложението, за да бъде наистина интернационализирано - и нито един зависят от другия.
Моят локал ще се появи като en-US, но моята часова зона е Австралия, но езикът, който искам от уебсайта, може да е хинди. Ако трябва да програмирам моето заявление за подаване предположения въз основа на локала на моя компютър бих сбъркал напълно - хранейки човека с английски в източна часова зона. В идеалния случай бих програмирал моето приложение да предложи и двете език и настройки на часовата зона ... но не бих ги предположил въз основа на локал.
Исландия - най-добрият пример
Не знаем за многоезичните и многоезичните предизвикателства в Съединените щати, където сме all говорят английски [предполага се сарказъм]. В някои страни, като Исландия, макар родният език да е исландски, невероятните исландски хора израстват, изучавайки 3 езика! Тъй като Исландия е държава в средата на Европа и Северна Америка, техните компании работят на множество континенти, езици, диалекти на езици и множество часови зони от своя работен плот!
Много исландски уебсайтове са изградени на американски английски, английски, исландски, испански, испански, френски и немски! Само си представете колко предизвикателно би било да се изгради Icelandair's уеб приложения и системи за продажба на билети ... уау!
ОТКАЗ ОТ ОТГОВОРНОСТ: Имах абсолютно удоволствието да работя с най -добрите хора от Icelandair и мога да ви кажа, че те са едни от най -талантливите и приятелски настроени професионалисти, с които имах удоволствието да работя. Това е просто невероятна страна и хора! Отидете на посещение ... вземете Icelandair и не забравяйте да посетите Синя лагуна!
Език срещу кодиране
Има дори различни кодировки на символи в рамките на един език, които не си играят добре помежду си! Пример: Японски имейл, написан на Shift-JIS, може да стане нечетлив на компютъра на японец с локализация, зададена на ja-JP, тъй като техният пощенски сървър разпознава само EUC-JP. В идеалния случай клиентът трябва да може да зададе какво кодиране би искал, както и какъв език - просто да гарантира, че кодирането и езикът са съвместими с това, което клиентът иска.
Ако искам да чета японски, може да се наложи да избера както японски като мой език, така и Shift-JIS за кодиране, за да се покаже правилно този език. Ето още малко объркване, което да добавите към микса ... някои видове кодиране поддържат няколко езика. UNICODE / UTF8 поддържа десетки. И обратното е вярно. Някои езици могат да се четат в много видове кодиране. Ако това няма смисъл ... Извинявам се, това е много сложен въпрос.
Някой ден вярвам (надявам се), че всичко това ще се промени. Мисля, че оригиналните дизайнери на кодове за локализация се надяваха, че комбинацията език-държава ще бъде всичко, което е необходимо ... но ние станахме далеч по-сложни. Не забравяйте, че голяма част от това е разработено преди съществуването на Интернет. С появата на ГИС, може би човек може да избере кодирането си и ГИС ще обработва информация за часовата зона и локала.
Интернационализация
Обратно към подкрепата за интернационализация. Ако искате да предоставите интернационализирано приложение, трябва:
- Поддържа множество типове кодиране, езици и има файлове за превод, за да се покажат тези преводи.
- Позволете на клиента да зададе своя език и дори може би техния тип кодиране, ако е необходимо.
- Поддържайте часовите зони, като позволявате на потребителите да препращат своята часова зона в сравнение с GMT.
- Използвайте кодове за локализация с повишено внимание ... те НЕ изобразяват точно това, което вашият потребител всъщност иска, нито какво могат да прочетат.
превод
Машинният превод е все още в зародиш. Има редица уебсайтове там (и WordPress Plugins), които предлагат машинен превод на вашия сайт. Не се изкушавайте да направите това ... има две причини защо:
- Ако машинният превод работи, потребителят, който проверява вашия сайт, вече ще има преводач, с който да работи.
- Машинен превод е гадно.
Не ми вярвате? Ето ви японски превод:
Поставено от Файл Masatsu - пич с много снимки на котки:
Японски запис в блога
??
- 00:29:35 от masatsu??????????????????????????
???????????????????????????????????? (?)?
??????????????????????????????????????????
?????????????????????????????????????????????????????????????????????? (?)
?????????????????
??????????????
??
?????????????????????????????????????????
???????????????????????????????
????????????????????????????????????????
????????????????????????????????????????
?????????? Аг ???????????????????????????????????????????????????
Машинен превод:
?? Хан ?????
-00: 29: 35 от МасацуИмето на първия светец на един / слона, който се появи на вчерашния „а / флот от юмрук на звяра ?? рейнджър ““ ?? Хан ???? ” с / радио актьор Ютака Мизушима….
? (?), който прави сепиите лесно.
Защото дори радиоактьорът на първия светец, господарю ????? на а / котката са китайските дюли на Нагай Ичиро = драконова топка жезълът на а / на ?? Рейнджър прилича на хората, които остроумните забележки познават лесно.
?????? (Потта), която забравих напълно тази година "тайната на името на супер флота", на обичайната практика всяка година?,
?????? Ако пиша със закъснение тази година,
??????? светиня ??? (може ли как?)? хеликоптер (?? не се реже) Fukami ?? (? или наблюдавам в състояние да?) an / е това, което прави
?????? С, става „кутия /? /?“, С други думи, „кунг фу“, когато се подреди и смени главата на а / името.
?????? Въпреки че се казва, че се увеличават още две, се твърди, че може да се превърне в това име.
Истината се казва „възраст“, защото символът на сребърния елемент е Ag?, Въпреки че името на „???? сребро ”Такаока? техник на ??????? мислех, че героят се казва „?“ е бил използван с асоциацията на филм със сребърен екран, ако го извика с допълнителен член.
?????? Аз обаче мисля егоистично, че моята теория не е свързана с това, че “?” е включен в / китайски иероглиф.
Сигурен съм, че обръщането на полярността на този превод би осигурило също толкова четлива дикция на английски. Разбрахте записа, нали?