Запрос Unicode из командной строки


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

С помощью этого инструмента вы можете запросить базу данных Unicode (полная поддержка Unicode 12.1) из интерфейса командной строки. Например, вы работаете с HTML и хотите найти HTML-экранирование знака евро? Скажите uni, чтобы он идентифицировал его:

> унифицировать €

cpoint dec utf-8 html name ‘€’ U + 20AC 8364 e2 82 ac & euro; ЗНАК ЕВРО (Currency_Symbol)

или понятия не имею, как выглядит знак евро? uni может работать и в обратном направлении:

> уни поиск евро

cpoint dec utf-8 html name ‘₠’ U + 20A0 8352 e2 82 a0 & # x20a0; ЗНАК ЕВРО-ВАЛЮТЫ (Currency_Symbol)

‘€’ U + 20AC 8364 e2 82 ac & euro; ЗНАК ЕВРО (Currency_Symbol)

Но почему доступ к Unicode из интерфейса командной строки является преимуществом? Как и во всем остальном, необходимо иметь в своем распоряжении интерфейс командной строки для выполнения операций на основе интерфейса командной строки. Для начала вы можете автоматизировать и писать программы, загружаемые со стандартного ввода, с помощью uni:

> head -c2 README.markdown | uni i cpoint dec utf-8 html name ‘[‘ U + 005B 91 5b & lsqb; ЛЕВЫЙ КВАДРАТНЫЙ КРОНШТЕЙН (Open_Punctuation)

‘!’ U + 0021 33 21 & excl; Восклицательный знак (Other_Punctuation)

Кроме того, вам не нужно тратить время на просмотр веб-страниц для поиска кодовых точек, представлений и другой информации о наборе символов, как это делал я при выполнении мелкозернистой «криминалистики», пытаясь отладить некоторые сценарии CGI, испорченные UTF8- связанный вопрос. Как описано в Perl Unicode Forensics:

Проблема заключалась в том, что один и тот же сценарий CGI давал разные результаты при запуске на разных серверах. В первом случае греческие символы, отправленные клиентом и потребленные сервером, попадают в базу данных должным образом, а во втором случае одни и те же данные в рамках того же рабочего процесса оказываются «мусором». Например, греческий символ заглавной буквы A или альфа заканчивается как последовательность «Γ \ 201».

Пытаясь отличить греческую альфу от латинской A, мне пришлось просматривать таблицы Latin1 / iso-8859-1 и Greek / iso-8859-7, чтобы найти нужную информацию. С uni я мог просто набрать:

Это магия.

Кроме того, мне пришлось искать те же символы в таблице UTF8, чтобы вернуть их байтовое представление. Что ж, uni would уже позаботились об этом на предыдущем шаге, сэкономив мое время и рассудок.

Но uni идет еще дальше; он может работать и со смайликами!

> uni e cry

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

Он также поставляется в виде исходных или предварительно созданных двоичных файлов для многих платформ, что особенно полезно в Windows. Чтобы получить больше удовольствия от этой платформы, перейдите на новый терминал Windows. Для получения дополнительной информации о том, как Windows и консоль решают эти проблемы, ознакомьтесь с проблемами Unicode в Perl.

В заключение, если вы имеете дело с Unicode, обязательно попробуйте uni. Он станет вашим лучшим другом.


Добавить комментарий