Comic Mono

Когда работал в «Яндексе», много общался с хорошими дизайнерами — обычно по работе, но и дружил со многими. То и дело слышал, что все люди делятся на два типа — на тех, кто ненавидит семейство шрифтов «Комик Санс» и тех, кому всё равно.

Я на тот момент состоял в лагере ненавистников. Этот шрифт у меня рождал до того бурный эмоциональный отклик, что я долгое время хейтил компанию «Самсунг» только за то, что в их телефонах этот шрифт можно было установить в интерфейс.

А тут в на просторах вдруг наткнулся на чудну́ю химеру — шрифт «Комик Моно», то есть «Комик Санс», переделанный под консоль.

Подумал — вот прикол, дай-ка попробую поставить себе в консоль, насколько это может быть плохо? Поставил и обнаружил, что мне всё равно…

Скриншот FAR2L 2.4.1-beta: два окна с проектами 99-Apple-I и Acid0, файлы .git, README.md, answer.php, index.html; внизу пути и команды
Comic Mono в консольной программе FAR2L, запущенной на «Маке»

…было минут пятнадцать. Всё-таки я из того типа людей, которые «Комик Санс» ненавидят. Дизайнеры, кстати, ошибались, типов не два — знаю, что есть люди, которым он нравится.

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

4 комментария

«⠀» (Braille Pattern Blank)

Недавно один из символов Юникода немного потрепал мне нервы — в одном из структурированных файлов, содержащих пользовательский ввод встретилось что-то, что не смогло нормально сконвертироваться из UTF-8 в CP1251. Зачем там нужна именно эта кодировка оставим за скобками — ну вот такие требования.

Случаи, когда что-то не может сконвертироваться мы специально отлавливаем, так как иногда оказывается, что всё-таки можно. Особенно показателен случай с «й», когда вместо одной буквы пришла «и» скомбинированная с отдельной краткой — в Юникоде так можно. Нормализация почему-то эту пару не объединила и конвертация падала на этой странной букве.

Скриншот терминала: предупреждение о Ruby в macOS и команды irb, проверяющие символ \xE2\xA0\x80 как «BRAILLE PATTERN BLANK» через unicode/name.
Выводим символ — пусто; проверяем — пробельный ли? нет; смотрим его название

Вот и в этот раз на чём-то упало, но увидеть это что-то не удалось — выглядел виновник как обычный пробельный символ. Я довольно быстро вычленил его код, по нему в стандарте нашли символ — это оказался пробел в азбуке Брайля. Если вдруг вы не знаете, это специальная тактильная точечная азбука для слепых, визуализация которой есть в Юникоде.

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

Библиотека libiconv конвертировать его отказалась, хотя, как по мне, он вполне может быть сконвертирован в обычный пробел, что мы теперь и делаем.

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