Серия «Энциклопедия символов «Юникодия»»

Энциклопедия символов «Юникодия»: отчёт весны 2024

Напоминаю: я пишу программу под Windows — энциклопедию символов и самую лучшую замену стандартной Таблице символов. Качать тут. Выглядит примерно так.

Энциклопедия символов «Юникодия»: отчёт весны 2024 Unicode, Таблица, Шрифт, Письменность, Программа, Видео, YouTube, Длиннопост

Вот она, моя прога

И первое, что видно…

Любимые символы

Энциклопедия символов «Юникодия»: отчёт весны 2024 Unicode, Таблица, Шрифт, Письменность, Программа, Видео, YouTube, Длиннопост

Новая вкладка

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

Можно создать список каких хочешь символов — например, часто используемых типографских. Или просто закладки на полноценные блоки: нажатие на синюю стрелочку около «U+1FAF6» переходит на вкладку «Блоки».

Подтягиваются шрифты

Руки Noto

Библиотека Noto к 15-му Юникоду привезла новые руки, вы уже их видели на заглавной странице — сделанные двумя цветами и как бы снятые широкоугольным объективом. Я их откладывал как из-за трудоёмкости, так и из-за сомнений: а достаточно контрастности? Оказалось, Юникодия приняла новые руки без вопросов, а BitBucket стал хуже — ну не смотрятся на размере пикселей в 15. А Slack вообще отказался принимать эти руки.

Все руки, кроме одной, автоматически перекрашиваются, и для тестирования этого механизма я сделал целую утилиту: а что в картинках изменилось? Обнаружил, кстати, много других глюков.

Энциклопедия символов «Юникодия»: отчёт весны 2024 Unicode, Таблица, Шрифт, Письменность, Программа, Видео, YouTube, Длиннопост

Разница между «было» и «стало», усиленная раз в 20

Видите, у вампирши яркие брови и тусклое лицо? Это значит, были какие-то ошибки в перекраске.

Изначально перекраска ставила целью экономить механическую работу, а не байты архива. Некоторые SVG-эмодзики глючили, я глюки исправлял — а чтобы исправить один раз, а не шесть, пять цветов кожи генерировались. Теперь, когда можно сравнивать «было/стало», можно и поэкономить, и десятка полтора человечков перекрашиваются — для пользователя не изменилось ни пикселя.

Египетские иероглифы

Энциклопедия символов «Юникодия»: отчёт весны 2024 Unicode, Таблица, Шрифт, Письменность, Программа, Видео, YouTube, Длиннопост

Был шимпанзе, стал гамадрил

В 2009 году, когда кодировали иероглифы, их брали из трудов Алана Гардинера — историчные, но корявые. В 2016 их заменили на профессиональный шрифт, возможно, Hieroglyphica, слегка погрешив против истины. С 2021 истину стали восстанавливать.

Энциклопедия символов «Юникодия»: отчёт весны 2024 Unicode, Таблица, Шрифт, Письменность, Программа, Видео, YouTube, Длиннопост

Лишь две строчки из большого списка

Мы работали вдвоём с немецким египтологом — я рисовал, он проверял. Когда он без предупреждения пропал, я спрашивал: а что с ним? Оказалось, уехал «в поля». Так и не сказал мне, насколько опасно/безопасно было в Египте.

Примерно 60% изменений — это люди. А именно: у действующего фараона прямая борода, у бога и бывшего фараона — длинным крючком (за исключением Пта, у него фараонская), у египтянина — короткая, у сирийца — острая. Кроме того, коровы, обезьяны, лодки и многое другое — около 70 иероглифов.

Ланна

Северотайская письменность, сейчас в опасности, одна из красивейших письменностей мира.

Энциклопедия символов «Юникодия»: отчёт весны 2024 Unicode, Таблица, Шрифт, Письменность, Программа, Видео, YouTube, Длиннопост

Северотайская Библия. Тайское письмо и ланна

В 1930-е ланна была заменена тайским письмом, и используется больше меньшинствами (тай-кхынами, лы), до которых националисты не дотянулись. Так что многие надписи на северотайском пишут и тайским письмом, и ланной.

Меня просто давила жаба: такая красота — и шрифтом без засечек? После долгих поисков нашёл шрифт, который корректно рисует хотя бы простейшие надписи из Википедии.

Энциклопедия символов «Юникодия»: отчёт весны 2024 Unicode, Таблица, Шрифт, Письменность, Программа, Видео, YouTube, Длиннопост

Ланна: было/стало

Символы каны для записи иностранных языков

Энциклопедия символов «Юникодия»: отчёт весны 2024 Unicode, Таблица, Шрифт, Письменность, Программа, Видео, YouTube, Длиннопост

Конкретно эти придуманы японцами незадолго до 2МВ

Движок GlyphWiki не очень подходит для рисования таких символов, и я плевался, когда вычищал. Нашёлся человек, нарисовавший их вручную.

Прочая функциональность

Предупреждение о других формах эмодзи. У некоторых эмодзи бывают другие формы — устаревшие, некорректные и просто другие. Современный флаг Афганистана, белый с шахáдой (девизом ислама), никто не принимает и рисует старый 2021 года. Пиньята (начинённая конфетами игрушка) бывает в форме звезды и в форме животного. Автобусную остановку рисует каждый свою местную. Микроб — рисуют бактерии, амёбы и даже КОВИД.

Энциклопедия символов «Юникодия»: отчёт весны 2024 Unicode, Таблица, Шрифт, Письменность, Программа, Видео, YouTube, Длиннопост

Вот, например, флаг Мартиники

Вычищаю ложь. Я, конечно, стараюсь проверять, что пишу, но иногда не получается. Например: есть аж два «эльбасанских письма» для албанского: одно было известно с самого начала, ибо его изобретатель, «учитель Тодри», всю жизнь его пропагандировал, пока не убили (будет этой осенью под именем «Todhri»). Второе — единственный образец изъяли в 1945 у расстрелянного коллаборациониста, коллекционера и филолога (есть с 2014 под именем «Elbasan»).

Энциклопедия символов «Юникодия»: отчёт весны 2024 Unicode, Таблица, Шрифт, Письменность, Программа, Видео, YouTube, Длиннопост

Эльбасанское Евангелие / Три молитвы шрифтом Тодри

Или не очень верно написал, что такое ночная азбука Барбье: она использует матрицу 2×6, но код там не двоичный, а сколько точек в левой колонке и сколько в правой — таким образом получается 6·6=36 букв.

Энциклопедия символов «Юникодия»: отчёт весны 2024 Unicode, Таблица, Шрифт, Письменность, Программа, Видео, YouTube, Длиннопост

Шарль Барбье, зрячий военный. И Луи Брайль, слепой учитель.

Последнее — про азбуку Брайля отлично рассказала Юлия Большакова, так что закончим её рассказом.

Спасибо за внимание!

Показать полностью 11 1

Энциклопедия символов «Юникодия» v2.1: что нового

Напоминаю: я пишу программу под Windows — энциклопедию символов и замену стандартной Таблице символов. Качать тут. Выглядит примерно так.

Энциклопедия символов «Юникодия» v2.1: что нового Unicode, Программа, Таблица, Шрифт, Письменность, Длиннопост

Новые подборки: Наука и техника, Латиница

Математика и астрология — две самых разбросанных по Юникоду подборки небуквенных символов. Пришлось как-то собирать воедино.

Энциклопедия символов «Юникодия» v2.1: что нового Unicode, Программа, Таблица, Шрифт, Письменность, Длиннопост

Также есть черчение и электричество, но это совсем маленькие подборочки.

(Может, когда-нибудь доберусь до комментариев к шахматным партиям, тоже интересный набор.)

Впоследствии придумал такой же рубрикатор для латиницы. Внешне это просто папочки в тех же Подборках, но за ними стоит небольшой движок, проверяющий: а ничего я не забыл? А точно заглавная буква стоит рядом со строчной?

Вообще есть три способа добраться до буквы расширенной латиницы — например, капительной I (ɪ), знакомой нам по английской транскрипции.

  1. Поискать среди вариаций буквы I.

  2. Поискать в символах английской транскрипции.

  3. Поискать в капительных буквах.

Отсюда три подборки для латиницы — по букве, по стране и по шрифту.

Энциклопедия символов «Юникодия» v2.1: что нового Unicode, Программа, Таблица, Шрифт, Письменность, Длиннопост

Пока ничего не придумал для нестандартных букв латиницы, чьи корни нелатинские: торн þ (от руны), бараньи рога ɤ (Википедия говорит, от греческого, но подозреваю, от старой кириллицы — это гласный, близкий к «у»), гортанная смы́чка ɂ (от надстрочных знаков), пятый тон Ƽ (от цифры) и прочая нечисть.

Юникод 15.1 бета

Добавлен полностью, без единого тóфу, на правах бета-версии, за двумя исключениями.

  1. Китай решил ответвиться от Юникода и добавить 614 иероглифов в пока не используемую плоскость 0A. Чтобы пресечь это вредительство, иероглифы быстренько проверили (получается, 603 из них новые и 11 повторных). На GlyphWiki творится такой беспредел, что не поймёшь, какие изображения верны, остаётся только ждать стабильного Юникода.

  2. Не перерисованны глифы в тангутском и алхимических символах.

Состав строки в Подборках

Энциклопедия символов «Юникодия» v2.1: что нового Unicode, Программа, Таблица, Шрифт, Письменность, Длиннопост

Как видите, в новом эмодзике целых восемь символов! Данное отображение — компромисс: минибраузер плохо выводит картинки в HD, а горизонтальная линейка красива, но не показывает названий.

Проверка обновлений

Энциклопедия символов «Юникодия» v2.1: что нового Unicode, Программа, Таблица, Шрифт, Письменность, Длиннопост

Пока самая простая, использующая функциональность GitHub. Качать и устанавливать всё равно придётся вручную.

Подтягиваются шрифты

Появился Noto Kawi, так что теперь не нужен выпрошенный у кого-то несвободный шрифт с балийско-яванской кодировкой. Новые символы в балийском, кáннаде, ходжки и других теперь полноценные, а не затычки.

Убрал жестокие тормоза с корейско-японскими символами на Windows 7 — не думал, что причиной будет один гугловский (!) OTF. Сильно урезал и переименовал, по своей новой традиции, из Noto в «Юто» (простите, по-английски не напишешь — автоцензура кидается).

Новый шрифт жестового письма Саттон: глифы гугловские, таблицы собственные.

Полностью перебраны изображения базовых умляутов (0300…036F): здесь «хорош» как Cambria, так и Noto, пришлось делать свои изображения-затычки.

Нарисовал символы затёртых египетских иероглифов так, чтобы походило на монохромные глифы. Сильно мешает дыра в функциональности Inkscape: не может превращать узорную заливку в контуры, и всё тебе, пришлось собирать штриховку вручную.

Энциклопедия символов «Юникодия» v2.1: что нового Unicode, Программа, Таблица, Шрифт, Письменность, Длиннопост

Также нашёл шрифт с древней глаголицей, и это внесло в Юникодию…

Переключаемый стиль

Существуют два стиля глаголицы, болгарский и хорватский. Оба унифицированы, главным считается болгарский — понятнее, если нарисовать современной типографикой. А почему бы не показывать тот или другой, на выбор?

Энциклопедия символов «Юникодия» v2.1: что нового Unicode, Программа, Таблица, Шрифт, Письменность, Длиннопост
Энциклопедия символов «Юникодия» v2.1: что нового Unicode, Программа, Таблица, Шрифт, Письменность, Длиннопост

Впоследствии реализовал и другой стилевой канал: существует семейство письменностей, восходящих к согдийской, которое пишется сплошной вязью слева направо по столбцам! В Юникоде они пишутся кто слева направо, кто справа налево, и теперь есть выбор: показывать горизонтально или вертикально.

Энциклопедия символов «Юникодия» v2.1: что нового Unicode, Программа, Таблица, Шрифт, Письменность, Длиннопост

Язык оригинала — английский

Изначально был русский, но это мешает привлекать переводчиков. Переход на английский потребовал две функции от программы-переводчика:

  1. Преобразовать проекты в новую форму.

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

Прочие мелочи

Написал свой механизм работы с формами множественного числа: «71 символ».

Энциклопедия символов «Юникодия» v2.1: что нового Unicode, Программа, Таблица, Шрифт, Письменность, Длиннопост

Добавлена история поиска.

Энциклопедия символов «Юникодия» v2.1: что нового Unicode, Программа, Таблица, Шрифт, Письменность, Длиннопост

Спасибо!

Показать полностью 11

Энциклопедия символов «Юникодия»: год спустя

Напоминаю: я пишу программу под Windows — энциклопедию символов и замену стандартной Таблице символов. Качать тут. Выглядит примерно так.

Энциклопедия символов «Юникодия»: год спустя Unicode, Windows, Программа, Таблица, Шрифт, Длиннопост

И первое, что вы здесь видите…

Графические эмодзи

Я втянул библиотеку эмодзи Google Noto, и теперь все эмодзики гипертекстовые векторные. Честно, мне Noto не очень нравится: недостаточно контрастные. Но что делать, это пока лучшая из бесплатных библиотек эмодзи: Twemoji вообще блёклая, OpenMoji совсем уж вычурная.

Имеющийся SVG-движок не работает с контурами обрезки, и я где-то месяц находил чёрные пятна и устранял их сам, программой Inkscape.

Для чего я это делал?.. А для новой функции.

Энциклопедия символов «Юникодия»: год спустя Unicode, Windows, Программа, Таблица, Шрифт, Длиннопост

Подборки

Подборок пока не очень много. Две из них — «Эмодзи» и «Необычные ККЯ-иероглифы» — нашлись в таблицах Юникода, остальное моё собственное.

Энциклопедия символов «Юникодия»: год спустя Unicode, Windows, Программа, Таблица, Шрифт, Длиннопост

Пришлось решать и такую задачу: вот я подредактировал внерасовую жёлтую руку под ограниченный SVG-движок. Что делать с пятью расовыми руками от белой до чёрной? Написал программную перекраску в нужную расу.

Английский и украинский

Перевёл программу на все языки, какие знаю. Для этого написал целую программу редактирования языковых ресурсов. Небольшую и неполную, но учитывающую весь мой опыт коммерческой локализации «живой» программы. И потихоньку дописываю в эту программу все задачи, какие нужны: например, декодировать текст Си++ u8"раз\nдва"sv в «раз//два». Или найти, где я при переводе забыл абзац-другой (таких рассказов нашлось штук девять в английском и пять в украинском).

Энциклопедия символов «Юникодия»: год спустя Unicode, Windows, Программа, Таблица, Шрифт, Длиннопост

Задачи, не связанные с «Юникодией»,— например, поддержка посторонних языковых ресурсов вроде CSV — так и висят почти год. Хочу довести состояние «Юникодии» до production/stable, а переводчик так и останется вечной альфой — ну, если не придётся переводить что-то другое.

Юникод 15

Четыре основных новых блока Юникода 15.

  • Эмодзи — быстро появились у Гугла.

  • Алфавит Нага для языка мундари — сам намалевал корявый, но действующий шрифт. Не кучу глифов, а именно шрифт!

  • Кави (старояванский) — выпросил разрешение у индонезийца: существует великое множество стилей кави и даже есть открытый шрифт в стиле поздних каменных монументов, но я хочу именно канонический, шрифт ранних надписей на меди.

  • Китайские иероглифы — что-то сделал старый знакомый Эндрю Уэст. А остальные были загружены с GlyphWiki самодельным пакетом программ.

Для чего собственный загрузчик? Чтобы иметь уверенность в 146%, что шрифт получился технически корректный. Загрузчик состоит из трёх программ: собственно загрузчика (скачать иероглифы с GlyphWiki), переработчика (превратить ломаные в кривые, разрулить стандартные некорректности вроде задваивания вершин) и Python-скрипта для FontForge (собрать шрифт).

Старый чужой GlyphWiki-шрифт остался, ведь задача корректности решена не полностью.

Для остальных мелких блоков нарисовал недействующие глифы-затычки.

HD

Установил «Юникодию» на чей-то ноутбук и удивился (если не сказать покрепче). Программную часть сделал за неделю, а триста иконок — мучил почти два месяца, с декабря до февраля. Так долго, потому что заодно с HD делал и украинский: переделанные иконки оказались хорошим маркером, что уже вычитано.

Энциклопедия символов «Юникодия»: год спустя Unicode, Windows, Программа, Таблица, Шрифт, Длиннопост

Большинство иконок — просто SVG-графика, иногда с отметками, чтобы выровнять по пикселям доминирующую линию. Штук пятнадцать рисуются программно, особым движком: игральные карты — не смог зашить в SVG закруглённую рамку, символы со старых компьютеров — хочу пиксели, даже если рука и нога слегка вылезут из виду…

Энциклопедия символов «Юникодия»: год спустя Unicode, Windows, Программа, Таблица, Шрифт, Длиннопост

Программные штуки

Порядок сортировки. Было понятно, что триста блоков в исторически сложившемся порядке — это ужас, так что сделал три варианта сортировки: по алфавиту, континенту+алфавиту и коду. По умолчанию — континент+алфавит, ведь часто вы знаете, письмо европейское или африканское, или вообще международная нотация.

Из-за этого вместо «Игральные карты» написал «Карты игральные», как в справочниках. А вот «Пехлеви псалтырское» и «Шоу Бернарда алфавит» писать побоялся.

Энциклопедия символов «Юникодия»: год спустя Unicode, Windows, Программа, Таблица, Шрифт, Длиннопост

Развыделение комбобокса. Чисто визуальная, плавающая, но противная ошибка: выбираешь какой-то блок, и вдруг на экране оказываются два фокуса ввода: на таблице (истинный) и на выпадающем списке (ложный). Писал самые разные разглючки, ошибка затаивалась, но появлялась с новой силой. Начал уже прикручивать к списку собственную «шкурку», якобы решило проблему… — и как только к шкурке приделал «микро-фокус» от повисшего курсора, проблема вернулась! Источник понятен, шкурку тут же убрал, а разглючка заняла одну строку.

Поиск по числовому значению. Работают форматы 12, 1/4, 0.25, 0,25, 0/3. Последний ищет только символ 0/3 из бейсбольных сводок (запрещён на Пикабу в монолитном виде, потому пишу так). Арабские цифры всегда предпочтительнее остальных.

Альтернативные имена символов. Вы это уже видели на картинке «1.7 vs 1.9». А вот что творится в египетских иероглифах (выпросил базу у одного голландского любителя Египта).

Энциклопедия символов «Юникодия»: год спустя Unicode, Windows, Программа, Таблица, Шрифт, Длиннопост

В таблицах Юникода есть и другая интересная информация о символах — например, восклицательный знак имеет альтернативные названия «factorial» и «bang». Из-за HD всё это приостановлено. Может, после пары недель простоя начну снова — если буду жив. Спасибо.

Показать полностью 8

Энциклопедия символов «Юникодия» v1.1: я это сделал!

Напоминаю: я пишу программу под Windows — энциклопедию символов и замену стандартной Таблице символов. Качать тут.


Я дошёл уже до версии 1.1, и вот что вышло. Пишу крупные изменения и 1.0, и 1.1.

Энциклопедия символов «Юникодия» v1.1: я это сделал! Unicode, Windows, Программа, Разработка, Шрифт, Приложение, Программирование, Таблица, Длиннопост

Поддержка ВСЕГО Юникода 14


Вы правильно прочитали, не осталось ни одного тофу. Под Windows 10/11, разумеется — пользователям 7-ки больших обещаний не делаю. На картинке сверху — моя интерпретация кипро-минойской письменности, добавленной этой осенью. Да, сам рисовал шрифт, и вот откуда эта интерпретация взялась.


1. Реальный памятник, найденный где-то на Турецком Кипре.

2. Его факсимиле.

3. Прорисовка Майкла Эверсона (2020).

Энциклопедия символов «Юникодия» v1.1: я это сделал! Unicode, Windows, Программа, Разработка, Шрифт, Приложение, Программирование, Таблица, Длиннопост

Египетские и анатолийские иероглифы


Вообще-то в коллекции Noto для них есть отличные шрифты. Анатолийские выше всяких похвал, а у египетских один недостаток: как отрендерить в маленькую клеточку Юникодии? Ларчик просто открывался: OTF, который я кое за какие технические подробности недолюбливал. Но тут сильно другой рендерер конкретно для этого шрифта сработал на все 146%.

Энциклопедия символов «Юникодия» v1.1: я это сделал! Unicode, Windows, Программа, Разработка, Шрифт, Приложение, Программирование, Таблица, Длиннопост

Впоследствии выяснилась запара: символы счётных палочек иногда «проваливаются между пикселей». Нарисованы девять палочек, а видны только три! Их я просто скопировал в свой резервный TTF и прохинтовал, но тут случилось забавное: под Windows 7 я никак не мог прописать в заголовках резервного шрифта, что иероглифы поддерживаются. Я на подобный глючок натыкался и раньше, и под Windows 10 тоже — решилось просто, в Qt есть стандартный обход QRawFont.


А анатолийские — просто за компашку получили OTF-шрифт. Попробовал также заменить OTF’ом пахау хмонг, чей рендеринг мне тоже не нравился — не получилось.


Китайский, корейский, японский

Энциклопедия символов «Юникодия» v1.1: я это сделал! Unicode, Windows, Программа, Разработка, Шрифт, Приложение, Программирование, Таблица, Длиннопост

ККЯ-символов всего 115 тысяч, или 79% всего Юникода. Из них 94 тысячи иероглифов, остальное — корейский, тангутский, спецсимволы, японский, киданьский, нюй-шу, примерно в таком порядке. И где достать шрифты, которые поддержат такую громадину?


Оказалось, есть сайт GlyphWiki, оперативно реагирующий на изменения в Юникоде, но тамошние SVG — а значит, все шрифты, сделанные из них — технически страшны. И есть типограф Эндрю Уэст, который потихоньку клепает шрифт Babelstone Han. Собственно, задача — собрать из того и другого подходящую коллекцию. Шрифт с GlyphWiki я заменил другим, и целую ночь торчал в FontForge, исправляя хоть самые страшные глюки. Заодно ушло 10 мегабайт архива. Но это значит, что для пользователей Windows 7 ушли несколько древних письменностей, в частности готский — были за компашку в одном шрифте и исчезли в другом. Простите уж, я и не обещал пользователям 7-ки полную поддержку всего.


Декапитализация


К сожалению, в стандартах Юникода символы называются большими буквами: CANADIAN SYLLABICS WOODS-CREE FINAL TH. Но у меня с самого начала всё няшно и цивильно, и за это отвечает декапитализация — система из 700 правил и 250 исключений. Это немало, но строк-то в Юникоде 45 тысяч — даже такая недоавтоматика лучше ручной работы.

Энциклопедия символов «Юникодия» v1.1: я это сделал! Unicode, Windows, Программа, Разработка, Шрифт, Приложение, Программирование, Таблица, Длиннопост

«Canadian» — название письменности, сделать с большой буквы и включить следующий механизм.

«syllabics» — ключевое слово. Оставить с маленькой, но после сделать большую букву.

«Woods-Cree» и «final» — прилагательные. Если есть большая буква, она проталкивается по прилагательным дальше до Th. Так что получилось бы «Woods-cree final Th», но лесные кри — индейское племя и в английском с больших букв.


Уже четыре правила.


Не буду всё перечислять, но новых правил декапитализации я добавил очень много. Самое чувствительное — отыскал и отметил альтернативные написания имени Аллах. А также вручную перебрал все названия с «ligature» — никакая автоматика не расставит правильно большие буквы в каком-нибудь «Hebrew ligature Yiddish Yod Yod Patah».


Поиск


Уже следующей осенью моя программа устареет — появится Юникод 15, в котором будут веер, афро-гребень и WiFi. К тому же некоторые программы (и моя Юникодия тоже!) вовсю пользуются личными символами. Так что поиск по несуществующим символам стал более подробным. Вот, например, что увидим, когда поищем «590».

Энциклопедия символов «Юникодия» v1.1: я это сделал! Unicode, Windows, Программа, Разработка, Шрифт, Приложение, Программирование, Таблица, Длиннопост

При том, что ближайший символ к 590 — это U+0591, какой-то еврейский умляут, я не стал его выводить, а коряво воспроизвёл иконку.


Видим ещё одну фишку — поиск не только по шестнадцатеричному коду, но и по десятичному. Нашло не только U+0590, но и 590₁₀=24E. Поиск по названиям существовал и ранее, причём достаточно адекватный.


Собственные изображения спецсимволов


Некоторым символам — форматирующим или с особой функциональностью — в общем, забранным в пунктир — приходится делать своё изображение. Эти изображения хранятся в моём резервном шрифте в пользовательских позициях (E001 и далее), налажен механизм отрисовки. Вот несколько штук.

Энциклопедия символов «Юникодия» v1.1: я это сделал! Unicode, Windows, Программа, Разработка, Шрифт, Приложение, Программирование, Таблица, Длиннопост
Описания


Постарался проверить всё. Например, индийские письменности слоговые — как в каждой из них работает запись сложных слогов? Условный «стол» даже в родственных письменностях может писаться совершенно по-разному.


• са то ла  (то, что я обозначил чертой, называется «вирама» или «халанта» и стирает букву «а» из слога) — исходная письменность брахми, а также некоторые малоразвитые письменности Юго-Восточной Азии

• сᵊ то лᵊ — гласная по умолчанию «а» стала немой или почти немой — пенджабский с письменностью гурмукхи

• сᵀо ла — во втором слоге знакомая нам вирама, а в первом «с» и «т» склеились в лигатуру — так работает хинди с письменностью деванагари

• с то л — лаосский в XX веке отказался от гласной по умолчанию


А правда ли, что юникодными знаками европейских нот можно записать «Кузнечика»? Оказалось, нет. Даже несмотря на то, что играется на одной гитарной струне.

Энциклопедия символов «Юникодия» v1.1: я это сделал! Unicode, Windows, Программа, Разработка, Шрифт, Приложение, Программирование, Таблица, Длиннопост

В левосторонних письменностях кхароштхи и ханифи перед текстами-образцами для правильного рендеринга добавил знак RLM.

Энциклопедия символов «Юникодия» v1.1: я это сделал! Unicode, Windows, Программа, Разработка, Шрифт, Приложение, Программирование, Таблица, Длиннопост

Теперь слог «дхик» закодирован именно так, как в описании, только перед ним RLM = right-to-left mark. Копируй, вставляй, разбирай на символы — всё честно, как и подобает энциклопедии Юникода. (Раньше было ка+вирама+дха+и — и неловкое объяснение: простите, по-другому не рендерит.)


Недоработал: когда писалась статья, уже нашёл пару незначительных ошибок в описаниях. Ничего критичного, исправлю в следующей версии. (А ещё в версии 1.1 допустил неудачный рендеринг десятка латинских умляутов — это уже критично, быстренько перевыпустил.)


Так что спасибо за внимание!

Показать полностью 9

Энциклопедия символов «Юникодия» v0.2: дневник разработки

Напоминаю: я пишу программу для Windows — энциклопедию символов и замену стандартной Таблице символов. Качать тут.


Выглядит примерно так.

Энциклопедия символов «Юникодия» v0.2: дневник разработки Unicode, Windows, Программа, Шрифт, Разработка, Приложение, Таблица, Длиннопост

Меня месяц не было. И за это время я добавил четыре письменности: соёмбо, анатолийские иероглифы, мру и кое-что ещё. Почему так мало и что четвёртое — об этом позже.


Народ просил HTML-мнемоники. Я разобрался, как выдрать данные с сайта W3C, и вот оно перед вами.

Энциклопедия символов «Юникодия» v0.2: дневник разработки Unicode, Windows, Программа, Шрифт, Разработка, Приложение, Таблица, Длиннопост

Обратите внимание, всё в каких-то серых ссылках. Действуют они просто: щелчок — копирование в буфер.

Энциклопедия символов «Юникодия» v0.2: дневник разработки Unicode, Windows, Программа, Шрифт, Разработка, Приложение, Таблица, Длиннопост

Также нажатие кнопки-стрелки → перенесёт курсор на следующую строку. Очень удобно, когда пробегаемся по неизвестной письменности, чтобы найти нужный символ.

Энциклопедия символов «Юникодия» v0.2: дневник разработки Unicode, Windows, Программа, Шрифт, Разработка, Приложение, Таблица, Длиннопост

Узнаёте зелёный символ? Он самый, беременный мужчина, главный смайлик этого сентября. В общем, встречайте Юникод 14!

Энциклопедия символов «Юникодия» v0.2: дневник разработки Unicode, Windows, Программа, Шрифт, Разработка, Приложение, Таблица, Длиннопост

В моей эмблеме есть пасхальное яйцо. Думал: заподозрит какой-нибудь японист или нет — оно осталось незамеченным.

• Розовый кубик — ККЯ, катакана Ю. (Хирагана красивее, но посчитал её неуместной, ведь она для чисто японских слов.)

• Зелёный — Тихий/Индийский океан, лонтара НИ. Это не один символ, но два, буква «на» с огласовкой.

• Коричневый — Африка, эфиопский КО.

• Красный — Америка, чероки ДИ.

• Синий — Европа, кириллический малый юс. Изначально был каким-то носовым звуком, но в поздней кириллице трансформировался в Я.


И подобных пасхальных яиц у меня немало. Скажем, иконка блока «Кириллица дополнительная» — буква ПЦ, а иконка алхимических символов — аква-вита, водно-спиртовая смесь.


Кто был на моём Гитхабе, те знают моё обещание: Юникод 14 я прописываю, когда хоть одну новую письменность реализуют шрифтом. Одна есть — виткутький алфавит.

Энциклопедия символов «Юникодия» v0.2: дневник разработки Unicode, Windows, Программа, Шрифт, Разработка, Приложение, Таблица, Длиннопост

Известны как минимум четыре местечковых алфавита XVIII–XIX века для записи албанского. Из них в Юникоде два — эльбасанский и виткутьский. Причин такого «зоопарка» две: конспирация от турок (Албания получила независимость в 1912 с распадом Турции) и желание албанских просвещённых умов иметь свой алфавит (просто посмотрите, что вокруг: Болгария с кириллицей, Греция со своим алфавитом…)


Я и своими силами закрыл несколько дырок Юникода 14 — в прошлой версии 1949 не-ККЯ тофу (так называют квадратики, когда в шрифте нет нужного символа), в этой 1878. Например, из строчной буквы «с» я как-то сделал киргизский сом.

Энциклопедия символов «Юникодия» v0.2: дневник разработки Unicode, Windows, Программа, Шрифт, Разработка, Приложение, Таблица, Длиннопост

(Простите, что «Стиль ОС» показывает российский рубль — в шрифте PT Sans рублём забили весь блок валютных символов, рассчитывая, что где-то рубль всё-таки поставят.)


Также из новых символов профессионалы сделали почти все ККЯ, треть арабского, эфиопскую и канадскую слоговую.


Строка ввода в верхнем правом углу перестала быть засеренной, и неспроста — появился минимальный поиск!

Энциклопедия символов «Юникодия» v0.2: дневник разработки Unicode, Windows, Программа, Шрифт, Разработка, Приложение, Таблица, Длиннопост

Пока есть четыре способа поиска: по шестнадцатеричному коду, по HTML-мнемонике, по ключевым словам и разбор на символы.


Разбор — очень интересная функция. Введём в строку поиска эмодзи «рыжий мужчина»…

Энциклопедия символов «Юникодия» v0.2: дневник разработки Unicode, Windows, Программа, Шрифт, Разработка, Приложение, Таблица, Длиннопост

…и видим, что оно состоит из трёх символов: мужчины, ZWJ и рыжих волос. Никакой подсказки по поиску нет, мне ещё придётся думать, как её сделать.


Я ещё много сделал по мелочам, но, думаю, пора закругляться. Спасибо за внимание!

Показать полностью 9

Юникодия v0.1 — моя энциклопедия символов

Я ещё студентом хотел сделать энциклопедию символов Юникода. И за всё это время, пока я хотел, Юникод разросся с 49 тысяч символов до 140 тысяч.


Но всё-таки я сделал, хоть и не до конца, и получилась такая себе замена Таблицы символов Windows. Вот результат 4,5 месяцев работы одного человека в нерабочее время.

Юникодия v0.1 — моя энциклопедия символов Unicode, Windows, Программа, Длиннопост, Шрифт, Разработка, Приложение, Программирование, Таблица

Сами понимаете, ни один шрифт не покроет всего Юникода. Кто-то предлагает комплект из трёх шрифтов, покрывающий весь Юникод 13 — но этот комплект коммерческий, и качество я не проверял. А нам, опенсорсникам, приходится искать — и хорошо, что Гугл сделал проект Noto (внимание, шрифты лучше брать прямо с их Гитхаба).


Но не Noto единым: на арабский, сирийский и ККЯ (китайский, корейский, японский) они просто забили, и они давно и безнадёжно неполные. Лаосский, готский и один из грузинских алфавитов — неканоничные глифы. Венгерские руны — просто жестоко глючат. Так что поиск шрифтов был сложным делом.


Да, вот ссылка на программу. Она бесплатная и открытая, пока только для Windows.


Программа на данный момент может немного. Она покрывает всю базовую и 2-ю плоскость Юникода, изрядный кусок 1-й и примерно половину 3-й. Позволяет простейшую навигацию по этому хозяйству, копирует символы в буфер, даёт небольшую информацию по письменностям, блокам и разным терминам — вот и всё.


Название самое лобовое: Юникод+энциклопедия → Юникодия.


Думая над эмблемой, сначала я хотел стебнуться над эмблемой Юнилевера и сделать вместо «положительных» образов конфет, птичек, ДНК и прочего разные символы из Юникода.

Юникодия v0.1 — моя энциклопедия символов Unicode, Windows, Программа, Длиннопост, Шрифт, Разработка, Приложение, Программирование, Таблица

Но потом подумал, что это уж слишком. У меня уже были мысли каким-то образом разделить письменности на Европу, Азию, Тихий океан, Америку, Африку и международные — так что возникла идея собрать букву U из разноцветных кубиков.

Юникодия v0.1 — моя энциклопедия символов Unicode, Windows, Программа, Длиннопост, Шрифт, Разработка, Приложение, Программирование, Таблица

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


ККЯ — это примерно ¾ Юникода, и ткни куда-то в середину таблицы — попадёшь в иероглиф. Потому все ККЯ, кроме часто нужных катаканы и хираганы (японских язбук), изначально свёрнуты.

Юникодия v0.1 — моя энциклопедия символов Unicode, Windows, Программа, Длиннопост, Шрифт, Разработка, Приложение, Программирование, Таблица

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


Что будет дальше? Показ как можно большего куска Юникода — и точно всех не-ККЯ. (Кстати, индийскую письменность нандинагари за неимением шрифта я сам как-то коряво начёркал.) Поиск, как без него — пока он «засерен», но это первое, что будет работать. Некий рубрикатор для эмодзи. Может, какие-то утилиты для китайских иероглифов — но без посторонней помощи я этого не сделаю. Утилита для показа разных начертаний жестового письма Валери Саттон — я уже знаю, какая, это просто не было приоритетом версии 0.1.


Вот «моргалы выколю» на жестовом письме Саттон.

Юникодия v0.1 — моя энциклопедия символов Unicode, Windows, Программа, Длиннопост, Шрифт, Разработка, Приложение, Программирование, Таблица

Есть ли аналоги? Наш самый первый аналог — Таблица символов Windows. Правда, она ограничена одной задачей — поиском в шрифтах того или иного символа. А со здоровенным Юникодом часта другая задача — найти, есть ли в каком-то системном шрифте редкий символ.


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


Unicode-table.com — внимание, без адблокера не соваться. Автор сделал большую работу, но всё ещё много автоматических переводов и мало нетривиальной информации, к тому же сайт около года не обновляется. На самом деле мы с его автором сотрудничаем: я деру данные у него, он у меня.


BabelMap — бесплатная программа с моей же философией. Она несколько меньше, так как не тащит полные шрифты. Зато автор китаевед, и есть неплохой поиск по иероглифам.


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


Спасибо за внимание!

Юникодия v0.1 — моя энциклопедия символов Unicode, Windows, Программа, Длиннопост, Шрифт, Разработка, Приложение, Программирование, Таблица
Показать полностью 6
Отличная работа, все прочитано!