АнглийскийФранцузскийИспанский

Ad


Значок OnWorks

enc2xs - Интернет в облаке

Запустите enc2xs в бесплатном хостинг-провайдере OnWorks через Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS

Это команда enc2xs, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.

ПРОГРАММА:

ИМЯ


enc2xs - Генератор модулей кодирования Perl

СИНТАКСИС


enc2xs - [параметры]
enc2xs -M ModName mapfiles ...
enc2xs -C

ОПИСАНИЕ


enc2xs создает расширение Perl для использования с помощью кодирования из любого отображения символов Unicode
файлы (.ucm) или файлы кодирования Tcl (.enc). Помимо внутреннего использования во время сборки
процесс модуля Encode, вы можете использовать enc2xs чтобы добавить свою кодировку в perl. Нет
знание XS необходимо.

САЙТ Гид


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

0. Подготовьте файл .ucm. Вы можете получить его откуда-нибудь или написать свой собственный из
нуля, или вы можете взять один из дистрибутива Encode и настроить его. Для
Формат UCM см. В следующей главе. В приведенном ниже примере я назову свой теоретический
кодирование myascii, определенное в мой.ucm. «$» - это приглашение оболочки.

$ лс -F
мой.ucm

1. Выполните следующую команду;

$ enc2xs -M Мой my.ucm
создание Makefile.PL
создание My.pm
создание README
генерирование изменений

Теперь взгляните на свой текущий каталог. Должно получиться вот так.

$ лс -F
Makefile.PL My.pm my.ucm t /

Были созданы следующие файлы.

Makefile.PL - скрипт MakeMaker
My.pm - подмодуль кодирования
t / My.t - тестовый файл

1.1.
Если вы хотите установить * .ucm вместе с модулями, сделайте следующее:

$ mkdir Кодировать
Кодирование $ mv * .ucm
$ enc2xs -M My Encode / * ucm

2. Отредактируйте созданные файлы. Вы не обязаны, если у вас нет времени и нет намерения
отдай это кому-нибудь другому. Но рекомендуется отредактировать модуль и добавить дополнительные тесты.

3. Теперь выполните команду, которую любят все Perl Mongers:

$ Perl Makefile.PL
Написание Makefile для Encode :: My

4. Теперь все, что вам нужно сделать, это сделать.

Сделать $
cp My.pm blib / lib / Encode / My.pm
/ usr / локальный / bin / perl / usr / локальный / bin / enc2xs -Q -O \
-o encode_t.c -f encode_t.fnm
Чтение myascii (myascii)
Написание составной формы
128 байт в строковых таблицах
384 байта (75%) сохранены при обнаружении дубликатов
1 байт (0.775%) сохранен с использованием подстрок
....
chmod 644 blib / arch / auto / Encode / My / My.bs
$

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

5. Вы уже можете "произвести установку", но сначала вы должны протестировать.

$ сделать тест
PERL_DL_NONLAZY = 1 / usr / local / bin / perl -Iblib / arch -Iblib / lib \
-e 'использовать Test :: Harness qw (& runtests $ verbose); \
$ verbose = 0; runtests @ARGV; ' т / *. т
т / Мой .... хорошо
Все тесты прошли успешно.
Файлы = 1, Тесты = 2, 0 секунд
(0.09 cusr + 0.01 csys = 0.09 ЦП)

6. Если вас устраивает результат теста, просто «сделайте установку».

7. Если вы хотите добавить свою кодировку в список загрузки по запросу Encode (чтобы вам не приходилось
"используйте Encode :: YourEncoding"), запустите

enc2xs -C

для обновления Encode :: ConfigLocal, модуля, который управляет локальными настройками. После этого,
"использовать кодирование;" достаточно для загрузки ваших кодировок по запросу.

Ассоциация Unicode Характер Карта


Encode использует формат карты символов Unicode (UCM) для сопоставления исходных символов. Этот
формат используется пакетом IBM ICU и был принят Ником Инг-Симмонсом для использования с
Модуль кодирования. Поскольку UCM более гибок, чем карта кодирования Tcl, и гораздо более удобен для пользователей.
дружественный, сейчас это рекомендуемый формат для кодирования.

Файл UCM выглядит так.

#
# Комментарии
#
"US-ascii" # Обязательно
"ascii" # Необязательно
1 # Обязательно; обычно 1
1 # Макс. # байтов / символ
\ x3F # Символ замены
#
ЧАРМАП
\ x0000 | 00 #
\ x0001 | 01 #
\ x0002 | 02 #
....
\ x007C | 7 # ВЕРТИКАЛЬНАЯ ЛИНИЯ
\ x007D | 7 # ПРАВЫЙ ИЗГОТОВЛЕННЫЙ КРОНШТЕЙН
\ x007E | 7 # ТИЛЬДА
\ x007F | 7 #
КОНЕЦ ОБРАЗЦА

· Все, что следует за "#", рассматривается как комментарий.

· Раздел заголовка продолжается до строки, содержащей слово CHARMAP. Эта секция
имеет форму ценностное , по одной паре в строке. Строки, используемые в качестве значений, должны быть
цитируется. Голые слова рассматриваются как числа. \ xXX представляет байт.

Большинство ключевых слов говорят сами за себя. субсимвол означает символ подстановки, а не
подхарактер. Когда вы декодируете последовательность Unicode в эту кодировку, но не соответствуете
символ найден, будет использоваться определенная здесь последовательность байтов. В большинстве случаев
значение здесь \ x3F; в ASCII это вопросительный знак.

· CHARMAP запускает раздел карты персонажей. Каждая строка имеет следующий вид:

\ xXX .. | 0 # комментарий
^ ^ ^
| | + - Флаг возврата
| + -------- Закодированная последовательность байтов
+ -------------- Идентификатор символа Юникода в шестнадцатеричном формате

Формат примерно такой же, как и у раздела заголовка, за исключением флага возврата: |
с последующим 0..3. Смысл возможных значений следующий:

| 0 Безопасное путешествие туда и обратно. Символ, декодированный в Unicode, кодируется обратно в тот же байт
последовательность. Этот флаг есть у большинства персонажей.

| 1 Откат для юникода -> кодировка. При просмотре enc2xs добавляет этот символ для
кодировать только карту.

| 2 Пропустить отображение субсимволов, если нет кодовой точки.

| 3 Откат для кодирования -> юникод. При просмотре enc2xs добавляет этот символ для
только декодировать карту.

· И, наконец, END OF CHARMAP завершает раздел.

Когда вы вручную создаете файл UCM, вы должны скопировать ascii.ucm или существующий
кодировку, близкую к вашей, а не писать свою с нуля.

Когда вы это сделаете, убедитесь, что вы ушли как минимум U0000 в U0020 как есть, если только ваша среда
это EBCDIC.

ПРЕДОСТЕРЕЖЕНИЕ: не все функции в UCM реализованы. Например, icu: state не используется.
Из-за этого вам нужно написать модуль Perl, если вы хотите поддерживать алгоритмические
кодировок, особенно серии ISO-2022. К таким модулям относятся Encode :: JP :: 2022_JP,
Кодировать :: KR :: 2022_KR и Кодировать :: TW :: HZ.

справиться дублировать отображения
Когда вы создаете карту, вы ДОЛЖНЫ сделать ваши сопоставления безопасными. То есть,
"encode ('your-encoding', decode ('your-encoding', $ data)) eq $ data" означает все
символы, помеченные как «| 0». Вот как в этом убедиться:

· Отсортируйте карту в порядке Unicode.

· Если у вас есть повторяющаяся запись, отметьте одну из них «| 1» или «| 3».

· И убедитесь, что запись '| 1' или '| 3' СЛЕДУЕТ за записью '| 0'.

Вот пример из big5-eten.

\ xF2550 \ xF9 | 9
\ xA2550 \ xA2 | 4

Внутреннее кодирование -> Юникод и Юникод -> Карта кодирования выглядит так;

От E до UU до E
--------------------------------------
\ xF9 \ xF9 => U2550 U2550 => \ xF9 \ xF9
\ xA2 \ xA4 => U2550

Таким образом, это безопасно для \ xF9 \ xF9. Но если линия вверху перевернута, вот что
случается.

От E до UU до E
--------------------------------------
\ xA2 \ xA4 => U2550 U2550 => \ xF9 \ xF9
(\ xF9 \ xF9 => U2550 теперь перезаписан!)

Пакет Encode поставляется с укмлинт, грубая, но достаточная утилита для проверки
целостность файла UCM. Проверьте это в каталоге Encode / bin.

В случае сомнений вы можете использовать ucmsort, еще одна утилита в каталоге Encode / bin.

закладки


· Домашняя страница ICUhttp://www.icu-project.org/>

· Таблицы сопоставления символов ICUhttp://site.icu-project.org/charts/charset>

· ICU: данные преобразованияhttp://www.icu-project.org/userguide/conversion-data.html>

Используйте enc2xs онлайн с помощью сервисов onworks.net


Бесплатные серверы и рабочие станции

Скачать приложения для Windows и Linux

  • 1
    Плагин Eclipse Tomcat
    Плагин Eclipse Tomcat
    Плагин Eclipse Tomcat предоставляет
    простая интеграция сервлета tomcat
    контейнер для разработки java
    веб-приложения. Вы можете присоединиться к нам для
    обсуждение ...
    Скачать подключаемый модуль Eclipse Tomcat
  • 2
    WebTorrent Desktop
    WebTorrent Desktop
    WebTorrent Desktop предназначен для потоковой передачи
    торренты на Mac, Windows или Linux. Это
    подключается как к BitTorrent, так и к
    Одноранговые узлы WebTorrent. Теперь нет
    нужно ждать ...
    Скачать WebTorrent для рабочего стола
  • 3
    GenX
    GenX
    GenX - это научная программа для улучшения
    коэффициент отражения рентгеновских лучей, нейтрон
    отражательная способность и поверхностные рентгеновские лучи
    данные дифракции с использованием дифференциального
    алгоритм эволюции ....
    Скачать GenX
  • 4
    pspp4windows
    pspp4windows
    PSPP — программа для статистического
    анализ выборочных данных. это бесплатно
    замена фирменной программе
    СПСС. PSPP имеет как текстовую, так и
    графические нас...
    Скачать pspp4windows
  • 5
    Расширения Git
    Расширения Git
    Git Extensions - это автономный инструмент пользовательского интерфейса
    для управления репозиториями Git. Это также
    интегрируется с проводником Windows и
    Microsoft Visual Studio
    (2015/2017/2019). Ч ...
    Скачать расширения Git
  • 6
    eSpeak: синтез речи
    eSpeak: синтез речи
    Механизм преобразования текста в речь для английского и
    многие другие языки. Компактный размер с
    четкое, но искусственное произношение.
    Доступен в виде программы командной строки с
    много ...
    Скачать eSpeak: синтез речи
  • Больше »

Команды Linux

Ad