Raid ������ ��� ���

Содержание
  1. Символы Unicode: о чём должен знать каждый разработчик
  2. Введение в кодировку
  3. Краткая история кодировки
  4. Проблемы с ASCII
  5. Что такое кодовые страницы ASCII?
  6. Безумие какое-то.
  7. Так появился Unicode
  8. Unicode Transform Protocol (UTF)
  9. Что такое UTF-8 и как она работает?
  10. Напоследок про UTF
  11. Это всё?
  12. Заключение
  13. Raid Shadow Legends чат игры, ликбез в свободное время
  14. Найдены возможные дубликаты
  15. Специфический юмор
  16. Правила сообщества
  17. Ошибка новичка
  18. Когда знакомишься по ночам
  19. Водолаз родится
  20. Уроженец Бурятии отсидел 8 лет, так и не признав себя виновным
  21. Деточкин герой войны
  22. Казнить нельзя помиловать
  23. Удобное и надёжное устройство для надевания на детей штанишек
  24. Пельмень Билл Тернер
  25. О мужчинах и котах
  26. РПЦ. Неприятный осадок
  27. Это что ещё за оскорбления?
  28. Ответ на пост «Сработало»
  29. И ещё он зубки лечить умеет
  30. Не очень востребованная специальность
  31. Ответ на пост «Сработало»
  32. Шуганул цыгана-вымогателя в ТЦ
  33. Сработало

Символы Unicode: о чём должен знать каждый разработчик

Если вы пишете международное приложение, использующее несколько языков, то вам нужно кое-что знать о кодировке. Она отвечает за то, как текст отображается на экране. Я вкратце расскажу об истории кодировки и о её стандартизации, а затем мы поговорим о её использовании. Затронем немного и теорию информатики.

Введение в кодировку

Компьютеры понимают лишь двоичные числа — нули и единицы, это их язык. Больше ничего. Одно число называется байтом, каждый байт состоит из восьми битов. То есть восемь нулей и единиц составляют один байт. Внутри компьютеров всё сводится к двоичности — языки программирования, движений мыши, нажатия клавиш и все слова на экране. Но если статья, которую вы читаете, раньше была набором нулей и единиц, то как двоичные числа превратились в текст? Давайте разберёмся.

Краткая история кодировки

На заре своего развития интернет был исключительно англоязычным. Его авторам и пользователям не нужно было заботиться о символах других языков, и все нужды полностью покрывала кодировка American Standard Code for Information Interchange (ASCII).

ASCII — это таблица сопоставления бинарных обозначений знакам алфавита. Когда компьютер получает такую запись:

то с помощью ASCII он преобразует её во фразу «Hello world».

Один байт (восемь бит) был достаточно велик, чтобы вместить в себя любую англоязычную букву, как и управляющие символы, часть из которых использовалась телепринтерами, так что в те годы они были полезны (сегодня уже не особо). К управляющим символам относился, например 7 (0111 в двоичном представлении), который заставлял компьютер издавать сигнал; 8 (1000 в двоичном представлении) — выводил последний напечатанный символ; или 12 (1100 в двоичном представлении) — стирал весь написанный на видеотерминале текст.

В те времена компьютеры считали 8 бит за один байт (так было не всегда), так что проблем не возникало. Мы могли хранить все управляющие символы, все числа и англоязычные буквы, и даже ещё оставалось место, поскольку один байт может кодировать 255 символов, а для ASCII нужно только 127. То есть неиспользованными оставалось ещё 128 позиций в кодировке.

Вот как выглядит таблица ASCII. Двоичными числами кодируются все строчные и прописные буквы от A до Z и числа от 0 до 9. Первые 32 позиции отведены для непечатаемых управляющих символов.

Проблемы с ASCII

Позиции со 128 по 255 были пустыми. Общественность задумалась, чем их заполнить. Но у всех были разные идеи. Американский национальный институт стандартов (American National Standards Institute, ANSI) формулирует стандарты для разных отраслей. Там утвердили позиции ASCII с 0 по 127. Их никто не оспаривал. Проблема была с остальными позициями.

Вот чем были заполнены позиции 128-255 в первых компьютерах IBM:

Какие-то загогулины, фоновые иконки, математические операторы и символы с диакретическим знаком вроде é. Но разработчики других компьютерных архитектур не поддержали инициативу. Всем хотелось внедрить свою собственную кодировку во второй половине ASCII.

Все эти различные концовки назвали кодовыми страницами.

Что такое кодовые страницы ASCII?

Здесь собрана коллекция из более чем 465 разных кодовых страниц! Существовали разные страницы даже в рамках какого-то одного языка, например, для греческого и китайского. Как можно было стандартизировать этот бардак? Или хотя бы заставить его работать между разными языками? Или между разными кодовыми страницами для одного языка? В языках, отличающихся от английского? У китайцев больше 100 000 иероглифов. ASCII даже не может всех их вместить, даже если бы решили отдать все пустые позиции под китайские символы.

Эта проблема даже получила название Mojibake (бнопня, кракозябры). Так говорят про искажённый текст, который получается при использовании некорректной кодировки. В переводе с японского mojibake означает «преобразование символов».

Пример бнопни (кракозябров).

Безумие какое-то.

Именно! Не было ни единого шанса надёжно преобразовывать данные. Интернет — это лишь монструозное соединение компьютеров по всему миру. Представьте, что все страны решили использовать собственные стандарты. Например, греческие компьютеры принимают только греческий язык, а английские отправляют только английский. Это как кричать в пустой пещере, тебя никто не услышит.

ASCII уже не удовлетворял жизненным требованиям. Для всемирного интернета нужно было создать что-то другое, либо пришлось бы иметь дело с сотнями кодовых страниц.

��� Если только ������ вы не хотели ��� бы ��� читать подобные параграфы. �֎֏0590֐��׀ׁׂ׃ׅׄ׆ׇ

Так появился Unicode

Unicode расшифровывают как Universal Coded Character Set (UCS), и у него есть официальное обозначение ISO/IEC 10646. Но обычно все используют название Unicode.

Этот стандарт помог решить проблемы, возникавшие из-за кодировки и кодовых страниц. Он содержит множество кодовых пунктов (кодовых точек), присвоенных символам из языков и культур со всего мира. То есть Unicode — это набор символов. С его помощью можно сопоставить некую абстракцию с буквой, на которую мы хотим ссылаться. И так сделано для каждого символа, даже египетских иероглифов.

Читайте также:  Расположение папки рабочего стола windows 10

Кто-то проделал огромную работу, сопоставляя каждый символ во всех языках с уникальными кодами. Вот как это выглядит:

Префикс U+ говорит о том, что это стандарт Unicode, а число — это результат преобразования двоичных чисел. Стандарт использует шестнадцатеричную нотацию, которая является упрощённым представлением двоичных чисел. Здесь вы можете ввести в поле что угодно и посмотреть, как это будет преобразовано в Unicode. А здесь можно полюбоваться на все 143 859 кодовых пунктов.

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

Осталось добавить последний ингредиент.

Unicode Transform Protocol (UTF)

UTF — протокол кодирования кодовых пунктов в Unicode. Он прописан в стандарте и позволяет кодировать любой кодовый пункт. Однако существуют разные типы UTF. Они различаются количеством байтов, используемых для кодировки одного пункта. В UTF-8 используется один байт на пункт, в UTF-16 — два байта, в UTF-32 — четыре байта.

Но если у нас есть три разные кодировки, то как узнать, какая из них применяется в конкретном файле? Для этого используют маркер последовательности байтов (Byte Order Mark, BOM), который ещё называют сигнатурой кодировки (Encoding Signature). BOM — это двухбайтный маркер в начале файл, который говорит о том, какая именно кодировка тут применена.

В интернете чаще всего используют UTF-8, она также прописана как предпочтительная в стандарте HTML5, так что уделю ей больше всего внимания.

Этот график построен в 2012-м, UTF-8 становилась доминирующей кодировкой. И всё ещё ею является.

Что такое UTF-8 и как она работает?

UTF-8 кодирует с помощью одного байта каждый кодовый пункт Unicode с 0 по 127 (как в ASCII). То есть если вы писали программу с использованием ASCII, а ваши пользователи применяют UTF-8, они не заметят ничего необычного. Всё будет работать как задумано. Обратите внимание, как это важно. Нам нужно было сохранить обратную совместимость с ASCII в ходе массового внедрения UTF-8. И эта кодировка ничего не ломает.

Как следует из названия, кодовый пункт состоит из 8 битов (один байт). В Unicode есть символы, которые занимают несколько байтов (вплоть до 6). Это называют переменной длиной. В разных языках удельное количество байтов разное. В английском — 1, европейские языки (с латинским алфавитом), иврит и арабский представлены с помощью двух байтов на кодовый пункт. Для китайского, японского, корейского и других азиатских языков используют по три байта.

Если нужно, чтобы символ занимал больше одного байта, то применяется битовая комбинация, обозначающая переход — он говорит о том, что символ продолжается в нескольких следующих байтах.

И теперь мы, как по волшебству, пришли к соглашению, как закодировать шумерскую клинопись (Хабр её не отображает), а также значки emoji!

Подытожив сказанное: сначала читаем BOM, чтобы определить версию кодировки, затем преобразуем файл в кодовые пункты Unicode, а потом выводим на экран символы из набора Unicode.

Напоследок про UTF

Коды являются ключами. Если я отправлю ошибочную кодировку, вы не сможете ничего прочесть. Не забывайте об этом при отправке и получении данных. В наших повседневных инструментах это часто абстрагировано, но нам, программистам, важно понимать, что происходит под капотом.

Как нам задавать кодировку? Поскольку HTML пишется на английском, и почти все кодировки прекрасно работают с английским, мы можем указать кодировку в начале раздела .

Важно сделать это в самом начале , поскольку парсинг HTML может начаться заново, если в данный момент используется неправильная кодировка. Также узнать версию кодировки можно из заголовка Content-Type HTTP-запроса/ответа.

Если HTML-документ не содержит упоминания кодировки, спецификация HTML5 предлагает такое интересное решение, как BOM-сниффинг. С его помощью мы по маркеру порядка байтов (BOM) можем определить используемую кодировку.

Это всё?

Unicode ещё не завершён. Как и в случае с любым стандартом, мы что-то добавляем, убираем, предлагаем новое. Никакие спецификации нельзя назвать «завершёнными». Обычно в год бывает 1-2 релиза, найти их описание можно здесь.

Если вы дочитали до конца, то вы молодцы. Предлагаю сделать домашнюю работу. Посмотрите, как могут ломаться сайты при использовании неправильной кодировки. Я воспользовался этим расширением для Google Chrome, поменял кодировку и попытался открывать разные страницы. Информация была совершенно нечитаемой. Попробуйте сами, как выглядит бнопня. Это поможет понять, насколько важна кодировка.

Заключение

При написании этой статьи я узнал о Майкле Эверсоне. С 1993 года он предложил больше 200 изменений в Unicode, добавил в стандарт тысячи символов. По состоянию на 2003 год он считался самым продуктивным участником. Он один очень сильно повлиял на облик Unicode. Майкл — один из тех, кто сделал интернет таким, каким мы его сегодня знаем. Очень впечатляет.

Надеюсь, мне удалось показать вам, для чего нужны кодировки, какие проблемы они решают, и что происходит при их сбоях.

Источник

Raid Shadow Legends чат игры, ликбез в свободное время

Вот такой вот Парадокс)))

Найдены возможные дубликаты

Специфический юмор

10.4K постов 28.2K подписчика

Правила сообщества

делитесь гениальными шутками, будьте печеньками!

ты удивляешься почему в ингейм чате так пусто? так все просто — он неудобен, и в большинстве игорь только для галочки.

Mafia City — народ сидит в телеге, причем в основном голосом.

Genghin Impact — телега, дискорд.

Можно я попрошу в следующий раз обрезать с скриншота все лишнее, как интерфейс, так и повторы сообщений?

для антуража первый скриншот можно оставить как есть, чтобы было пояснение что это клан-чат

Читайте также:  Что делать если долго выключается компьютер windows 10 при завершении работы

Ну я про такое намекал

Сам пошутил — сам посмеялся

Ошибка новичка

Когда знакомишься по ночам

Водолаз родится

Уроженец Бурятии отсидел 8 лет, так и не признав себя виновным

Новость аж за прошлый год, но мне только сейчас попалась. Здесь тоже вроде не публиковали, по крайней мере поиск ни чего не нашел.

«Вчера, 17 января из исправительной колонии в Твери на свободу вышел уроженец Бурятии Чимит Тармаев, он так и не признал себя виновным в умышленном убийстве, за которое его посадили. Об этом сообщил телеканал «Ариг УС». Его встретила мама Мара Тармаева, которая прождала сына долгих восемь лет.

Дело Тармаева прогремело в начале 2000-х по всей России. В 2011 на парня в московском метро напали шесть дагестанцев. Он пытался избежать драки, пересел в другой вагон, но нападавшие вытащили его. Завязалась драка, в которой Чимит смертельно ранил одного из обидчиков. Тармаеву дали 8 лет лишения свободы – за предумышленное убийство. Были бесконечные апелляции, акции и пикеты в поддержку парня. Все говорили, что он был вынужден обороняться. Суд оказался непреклонен.

Тармаев не признал решение суда. Когда к нему в камеру заходили сотрудники колонии, он говорил: «Незаконно осужденный Тармаев Чимит Борисович 1980 года рождения». Отказывался пришивать тюремный номер к своей робе. Говорил, что не преступник. Из-за этого протеста Чимита не отпустили по УДО. В итоге он отсидел весь положенный срок.»

Деточкин герой войны

Казнить нельзя помиловать

* Kinderbereich — детская комната

** Kind (ребенок), Еrbe (наследие), Reich (рейх)

Удобное и надёжное устройство для надевания на детей штанишек

Пельмень Билл Тернер

О мужчинах и котах

Жаль, что спутники жизни не заводятся, как коты. Приходишь ты домой, а у подъезда тебя ждёт чутка потрепанный, с доверчивым взглядом, на всё согласный паренёк😅

РПЦ. Неприятный осадок

Не являюсь сильно верующим, но переживаю большую утрату.

Поэтому иногда захожу в церковь и ставлю свечку за упокой.

И воспринимаю это как личный ритуал, который для меня важен.

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

Поставив несколько свечей, сел на лавку и погрузился в раздумья.

Не догорев даже на пол сантиметра , свечка была потушена сотрудницей храма (я хз как их назвать, которые там прибираются/чистят и тд)

На мой резонный вопрос: «извините, но зачем вы потушили?», сотрудница сначала замешкалась, а потом сказал что-то вроде «мне надо убрать постамент, потом я снова зажгу» и убежала.

Посмотрев на чистый постамент, я так и не понял, что она хотела убрать.

Просидев ещё какое-то время, я понял что никто больше этих свечей не зажжет.

Сразу в голове возник мем «Сова эффективный менеджер в РПЦ».

Потом вспомнилась бедная церковь Кипра, где место, куда ставят свечи, всё пропитано воском и сами свечи бесплатные (у нас кстати все чётко, перевод на карту Сбера с обязательной пометкой «пожертвование на храм», вот тут они всё продумали)

Как-то так гадко стало.

Лучше бы и не заходил.

Спасибо РПЦ, но я как-нибудь без вас дальше.

Это что ещё за оскорбления?

Ответ на пост «Сработало»

Когда я начинал работать у новых русских, не было ещё ни южан ни узбеков ни таджиков. Потом стали их завозить пачками, жили они где нибудь в подвале строящегося дома. Меня пригласили отделывать квартиру в новом доме. Хозяйка попросила меня сходить к этим работникам и попросить их вынести строительный мусор. Мол они работают за копейки а у меня золотые ручки и нечего распыляться на грязные работы. Сходил к этим работникам, так они цену заломили больше чем я зарабатывал в два раза. Назвал хозяйке сумму, та без раздумий выдала нужную сумму.
На следующий день я с другом сам вынес этот мусор.

И ещё он зубки лечить умеет

Список заслуг данного товарища:

— Запретил машины всех цветов, кроме белого. Просто так.

— Поставил 15-метровый золотой памятник собаке.

— Запретил всем до определённого возраста покидать страну. Просто так.

— В начале пандемии строго запретил маски и перчатки вплоть до ареста. Так сказать, именем своей власти отменил вирус.

— Приказал всем в срочном порядке носить банку сиропа солодки.

— На заседаниях читает министрам стихи о своей любимой лошади и заставляет их учить их

— Лично издал несколько десятков книг, в т.ч. обязательные школьные учебники и пособия по медицине

— Лично выиграл несколько десятков чемпионатов страны, например, скачки, автокросс, стрельба и т.п.

— Изобрёл гольф (игру такую с клюшкой)

— Запретил женщинам водить (молодец?)

— Приказал всем в правительстве подкрашивать волосы сединой по мере того, как сам седеет

— Изобрёл гоночный автомобиль (начертил и собрал)

— Изобрёл новый вид спорта: «велобаскетбол»

— Приказал всем молодожёнам фотографироваться на фоне своего портрета

— Создал комиссию по проверке надлежащего расположения своих портретов и их своевременного обновления

— Исполнил на ТВ несколько «хитов» под которые танцует вся страна. Так же исполнил рэп с внуком в прямом эфире.

— Построил мегашикарный мраморно-золотой пустой аэропорт и порт, откуда ничего не летает и не ходит

и многое другое.

Не очень востребованная специальность

Ответ на пост «Сработало»

Батя как-то рассказал за чашкой водки. Взялись они бригадой (4 человека) керамогранит выкладывать в ТЦ крупном. А так как площади там огромные,то таких бригад там было несколько. Ну мы простреляли лазером пол,маяки где надо поставили,ориентир выделили и пошли. Неспешно так,качественно. А рядом армяне,на глазок хуярят так быстро быстро. Ещё ржут над нами.

Читайте также:  Почему ноутбук не видит динамики windows 10

-Эй,уруский, как улитка работаешь,так денег не заработаешь,я свою сдэлаю, твой забэру!

Проходит пара дней,приезжает подрядчик. Смотрит работу батиной бригады.

-Норм все,только медленно делаете,надо бы побыстрей.

-Да сам посмотри,уровень стяжки плавает сильно,даже маячки пришлось ставить. Клея уходит больше,время теряем. Ну и шов надо выдержать,под 45 сложнее его держать.

-Окей,я вам узбека на смеси тогда выделю.

Уходит к армянам. Слышу орёт матами.Интересно стало,пошёл посмотреть. Смотрю и ржу. Плитка плавает,уголки задраны,шов в разнобой. Подрядчик носится по плитке, разнос устраивает. Топнул от сердца ногой,а под ним плитка трескается. Керамогранит 10мм толщиной лопнул от удара ногой в итальянском ботинке.

-Это че,блядь, за хуйня.

-Ээээ, плитка плохой.

-Какой плитка плохой??Это керамогранит итальянский, 10 мм толщина!

Сел на коленки и давай простукивать, а там почти вся плитка «гуляет», пустот много. Забраковал работу,выгнал их к хуям. А поле бате отдал.

Пока батя свою площадь доделывал, загнал того узбеки на вторую половину стяжку ровнять. А с ровной стяжкой и работа быстрее пошла.

Вот так «уруский» работу у армян забрал, а не наоборот)

Батя как начнёт байки свои строительные травить, хрюкаешь аки сучара всегда)

Шуганул цыгана-вымогателя в ТЦ

Вчера, в ТЦ Небо, г.Нижний Новгород, 4 этаж, время около 19:00. Народу — битком.

Сижу в проходе на лавке, в телефон втыкаю, жду жену с малым из магаза.

Гля, какой-то «уголек»-цыган (Ц) технично зажал пацана славянской внешности в углу и что-то сосредоточенно втирает. Пацан (П) явно напуган.

Телефон в карман, подхожу.

— . ну я же вижу — ты хорошо одетый, телефон дорогой. Слушай, па-браццки, посмотри по карманам, ну есть же деньги, памаги немножко.

В край охуели, думаю.

— Что происходит? Проблемы?

Ц — Нет, просто раговариваем.

П — Он у меня деньги просит.

— Ты вкрай походу оборзел, белоснежка! Охрану позвать?

(Ц) «быстро цокая штиблетами по кафелю» — Да кого хочешь зови, мне похую! Никого не боюсь!

Ага, бля, оно и видно. остались мы с пацаном вдвоем

— Ну и нахрена ты остановился? Шел бы себе и шел!

— Я очень испугался. Он сказал что сам из Махачкалы («мой внутренний махачкалинец заржал в голос») и ему на билет нехватает.

— В следующий раз не останавливайся. И не стесняйся позвать на помощь! Ты тут один?

— Нет, мама в кафе.

— Вот и топай к ней!

Я сам родился и вырос в Махачкале, даром что славянин. Никакого отношения к этому городу цыганенок не имеет, это 100%.

Потом вокруг меня терся какой-то дядя с претензией на спортивное телосложение. Я демонстративно снял пальто и часы, глядя ему в глаза. Он о чем-то задумался и исчез. А может мне и показалось.

Я подошел к охране и сообщил, что у них беспределит какой-то мелкий бес. Охрана тяжело вздохнула и пошла перепиздеть с кем-то по рации. Спасибо хоть не нахер послала.

Учите своих детей если и не постоять за себя, то хотя бы не стесняться позвать на помощь! Да и самим не надо бояться вмешаться и не пройти мимо. Я не претендую на подвиг «парня из метро» (никакого сарказма, парень реально герой), просто не надо бояться! Мы у себя дома! А то это дерьмо совсем на шею сядет.

Сработало

Крупных объект. Ведётся отделка в семиэтажном офисном здании в Казани, на Можайского.

Я со своей бригадой из четырёх человек, забрал один этаж (укладка плитки в коридорах на пол, настил линолеума в офисных помещениях и облицовка четырёх санузлов (по два в каждой стороне)).

Через некоторое время пришла другая бригада — южане из 6-ти человек.

Хорошо помню момент, когда заказчик договаривался с ними, точнее с тем из них, кто увереннее владел русским, о стоимости работ за укладку плитки.

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

По тем временам (Казань, 2007 год) цена была хорошая: с учётом того, что коридоры — это «погонаж» — на них очень хорошо зарабатываешь, а в санузлах, разумеется, нужно было подольше повозиться.

Бригада эта, в первую очередь, бросилась на коридоры. А когда закончили и получили за это деньги (около 80% от суммы), то встал вопрос про укладку плитки в санузлах.

Друзья решили пойти на попятную — поднять цену. Мол, изначально не правильно поняли и всё такое.

Я был свидетелем насыщенного спора, который состоялся между ними и прорабом. Отчаянные доводы прораба о горящих сроках и о том, что южане его сильно подводят эффекта не произвели никакого. Было видно, они не планировали сдаваться и под конец спора уже начали хвататься за инструмент, показывая, что вот-вот готовы уйти.

— Давай 500 рублей, тогда возьмёмся, — сказал тот, что лучше владел русским.

— Ладно! Чёрт с вами! 50000 отдаю за оба санузла — это всё, что могу! — он это сказал так, словно оторвал от сердца последние деньги и пошёл на немыслимые уступки, и после небольшой паузы добавил, — по рукам?!

— Хорошо, — довольно ответил тот, кто лучше говорил по-русски.

Южане в тот же день с воодушевлением принялась за работу.

В общей сложности в двух санузлах было 120 м2. Если помножить на 450, то получается сумма 54000.

— Я сам не ожидал, что это сработает, — удивлённо ответил прораб, когда я его спросил, как он до этого додумался.

Источник

Оцените статью