Код ест текст

Иногда всё ещё можно наткнуться в интернете на страницу с "иероглифами" или инсталлируя программу получить много вопросительных знаков вместо осмысленных указаний.
Почему с компьютерами проще говорить по-английски?

Дело в кодировках.

Компьютеру живётся просто - он работает с числами. Грузит числа, обрабатывает числа, считает числа, спит и во сне видит числа.
Это мы, странные органические создания, придумали такую неэффективную вещь, как письменность. Ну что ж с нами делать, раз выдумали - надо с этим работать как-то.

АСКИ

А раз есть только числа, надо текст перевести в числа. Это и есть кодирование. Придумали таблицу и давай всё по ней переводить туда сюда. Каждому символу дали число, каждой точке, запятой, пробелу и кавычке, не говоря уже о буквах.

Было весело - таблица на 256 символов, полно места! Если посчитать, то куда уж больше? На буквы хватает - большие и маленькие, да и на знаки препинания, а ещё можно забубенить туда каких-нибудь штук чтобы орнаменты рисовать на радость пользователям командной строки! (см. символы 176-223) Программисты своего не упустили и в самом начале использовали первые символы вместо команд. (см. символы 0-32)

И назвали это дело ASCII. Ура!

Символы ASCII с 0 по 127(стандарт).


Символы ASCII с 128 по 256 (расширенная).


Если интересно, попробуйте на досуге сделать вот что:

  1. зажать правый альт (Alt gr, серый альт);
  2. последовательно нажать несколько цифр на дополнительной клавиатуре (это справа цифры, которые как на калькуляторе расположены);
  3. отпустить правый альт;
Напечатается символ из вышеприведённой таблицы. Набрали 3, 5 - получили решётку. В таком духе.

Интернациональный облом.

Но вот облом. Хватило-то с лихвой, да вот только на английский алфавит. Вот тогда и началось не понять что. Все, кому не лень, выдумывали свои новые таблицы вместо этой. Сначала просто заменяли графические символы за 127 на русские (или другие) буквы, потом придумывали вообще другие варианты в зависимости от нужд и разговорного языка. Т.е. у арабов свои, у украинцев - свои и т.д. Про японцев и китайцев молчу.
Однако как только вставал вопрос о двух языках сразу - появлялись трения. На моей памяти в одну ASCII таблицу пытались впихнуть русские и латышские символы вместе. В общем международный диалог не ладился.
Стоит заметить, что я не видел кодировки без английских букв - т.е. русский и английский, испанский и английский, в таком духе.
В результате имеем что имеем.

Список популярных кодировок: (смело пролистывайте, ничего интересного)
-----------------------------------------------------------------------------
-----------------------------------------------------------------------------
Все существующие кодировки: http://www.iana.org/assignments/character-sets

Думаем обо всех.

И только спустя какое-то время и 100 кодировок появилась идея всё свести в одну. Сделали несколько вариантов, но распространение и признание получила (барабанная дробь!) UTF-8, он же Unicode. Грубо говоря уникод содержит символы из всех языков мира и нет разницы на каком языке мы пишем, можно использовать одну и ту же кодировку. Сейчас на неё переходят сайты в интернете и программисты при написании программ. Последние Linux дистрибутивы все на UTF-8. Windows её поддерживает (как же иначе!) но система всё равно живёт на англоязычной кодировке (посему иногда бывают вопросики в русских инсталляторах).

И раз уж вы дочитали до сюда...

А пользователям какое дело-то???

Напоровшись в следующий раз на страницу с "иероглифами" если вы полагаете, что она всё-таки должна быть на русском, поменяйте кодировку страницы.
В firefox: View - Character Encoding - ...
Для русского языка самые частые:
  • KOI8-R
  • CP1251 (Windows-1251)
Напоровшись на инсталлятор или программу с вопросами вместо букв, зайдите в Regional Settings и проверьте, отмечены ли кодировки того языка, который не отображается.
Control Panel - Regional and Language Options - Advanced.
Там ставится язык, который будет использован для не-юникод программ (у меня стоит русский, что и вам советую) и список кодировок.

Хотя вряд ли вам это пригодится потому что самое распространенное включено и так, а указав что вы из России или Латвии - так и подавна.

В интернете в страницах часто прописывают какая кодировка стоит и броузер сам всё делает, так что мои советы для редких исключений.

Пользуйтесь юникодом, нам и без кодировок понимания не хватает. :)

2 комментариев

Анонимный комментирует...

Хоть проблема и редкая, но у меня следующая неприятность, которую вряд ли можно устранить. Вобщем в regional settings стоит русский язык для не-юникодов. Однако tildes rakstveidis не может мне правильно исправить мой текст на латышском, тк программа видимо не юникод и требует в региональних настройках латышский язык. Если бы я грамотно писал по латышский, я бы даже наверно не задал этот вопрос, несмотря на то, что этот редактор почти ничего не исправляет.:) Но вот как есть...

П.С. может в замен этому можно использовать ворд с его словарями, но где эти словари брать и как их устанавливать узнать руки не доходили, ибо чтобы он мне русский язык проверял, пришлось руссификатор ставить, что меня, однако, не очень радует. (office 2007)

комментирует...

Tilde заменяет функции, которые уже есть в ворде. Почему-то часто только ради них и ставят. По-моему глупо.

Так вот... Есть MUI и есть Proofing Tools.

MUI это Multilanguage User Interface для Windows. Хочется "панель управления" вместо "control panel" и "veidnis" вместо "wizard" - делаем.

Proofing Tools это проверка грамматики для офиса от Microsoft. Они весят немного и доступны для разных языков. Я только их и использую для проверки, когда большинство использует Tilde.

Как-то так.

Отправить комментарий