англійськафранцузькаіспанська

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...
enc2xs -C

ОПИС


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

Швидко керівництво


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

0. Підготуйте файл .ucm. Ви можете отримати його звідкись або написати власний
scratch або ви можете взяти його з дистрибутива Encode і налаштувати його. Для
Формат UCM, див. наступний розділ. У наведеному нижче прикладі я буду називати свій теоретичний
кодування myascii, визначені в my.ucm. "$" - це підказка оболонки.

$ls -F
my.ucm

1. Видати команду таким чином;

$ enc2xs -M Мій my.ucm
створення Makefile.PL
створення My.pm
створення README
створення Змін

Тепер подивіться на свій поточний каталог. Це має виглядати так.

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

Були створені такі файли.

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

1.1.
Якщо ви хочете встановити *.ucm разом з модулями, зробіть наступне;

$ mkdir Кодування
$ mv *.ucm Кодувати
$ enc2xs -M Моє кодування/*ucm

2. Відредагуйте створені файли. Вам не потрібно, якщо у вас немає часу І наміру
віддати комусь іншому. Але це гарна ідея відредагувати модуль і додати більше тестів.

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

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

4. Тепер все, що вам потрібно зробити, це зробити.

$ марка
cp My.pm blib/lib/Encode/My.pm
/usr/local/bin/perl /usr/local/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;' т/*.т
t/My.... ok
Всі тести успішні.
Файли=1, тести=2, 0 сек
(0.09 cusr + 0.01 csys = 0.09 ЦП)

6. Якщо ви задоволені результатом тесту, просто «здійсніть встановлення»

7. Якщо ви хочете додати своє кодування до списку завантаження запиту Encode (тобто вам не потрібно
"use Encode::YourEncoding"), запустіть

enc2xs -C

щоб оновити модуль Encode::ConfigLocal, який керує локальними налаштуваннями. Після того,
"використовувати кодування;" достатньо, щоб завантажити кодування на вимогу.

Команда Unicode Характер карта


Encode використовує формат Unicode Character Map (UCM) для зіставлення вихідних символів. Це
формат використовується пакетом ICU IBM і був прийнятий Ніком Інг-Сіммонсом для використання з
Модуль кодування. Оскільки 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

· Все, що стоїть після «#», розглядається як коментар.

· Розділ заголовка продовжується до тих пір, поки не з’явиться рядок зі словом CHARMAP. Цей розділ
має форму значення, одна пара на рядок. Рядки, які використовуються як значення, мають бути
цитується. Голі слова розглядаються як числа. \xXX представляє байт.

Більшість ключових слів зрозумілі самі за собою. subchar означає символ заміни, не
підсимвол. Коли ви декодуєте послідовність Unicode до цього кодування, але немає відповідності
Знайдено символ, буде використана послідовність байтів, визначена тут. У більшості випадків
значення тут \x3F; в ASCII це знак питання.

· CHARMAP запускає розділ карти символів. Кожен рядок має наступну форму:

\xXX.. |0 # коментар
^ ^ ^
| | +- Запасний прапор
| +-------- Закодована послідовність байтів
+-------------- Ідентифікатор символу Unicode у шістнадцятковій формі

Формат приблизно такий же, як і розділ заголовка, за винятком резервного прапорця: |
потім 0..3. Значення можливих значень таке:

|0 Безпечна поїздка в обидва боки. Символ, декодований у Unicode, кодується назад у той самий байт
послідовність. Більшість персонажів мають цей прапор.

|1 Запасний варіант для Unicode -> кодування. Коли його бачать, enc2xs додає цей символ для
тільки кодувати карту.

|2 Пропустити відображення підсимволів, якщо не буде кодової точки.

|3 Запасний варіант для кодування -> Unicode. Коли його бачать, enc2xs додає цей символ для
лише декодувати карту.

· І, нарешті, END OF CHARMAP закінчує розділ.

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

Коли ви це зробите, переконайтеся, що ви принаймні пішли U0000 до U0020 як є, якщо не ваше оточення
є EBCDIC.

КЕВЕЙТ: не всі функції в UCM реалізовані. Наприклад, icu:state не використовується.
Через це вам потрібно написати модуль perl, якщо ви хочете підтримувати алгоритмічні
кодування, зокрема серії ISO-2022. Такі модулі включають Encode::JP::2022_JP,
Encode::KR::2022_KR і Encode::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 поставляється з ucmlint, груба, але достатня утиліта для перевірки
цілісність файлу 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 робочий стіл
    WebTorrent робочий стіл
    WebTorrent Desktop призначений для потокової передачі
    торренти на Mac, Windows або Linux. Це
    підключається до BitTorrent і
    Однолітки WebTorrent. Тепер немає
    треба чекати...
    Завантажити WebTorrent Desktop
  • 3
    GenX
    GenX
    GenX – це наукова програма для вдосконалення
    відбиваюча здатність рентгенівських променів, нейтрон
    відбивна здатність і поверхневий рентген
    дифракційні дані за допомогою диференціала
    еволюційний алгоритм...
    Завантажте GenX
  • 4
    pspp4windows
    pspp4windows
    PSPP — програма для статистики
    аналіз вибіркових даних. Це безкоштовно
    заміна на пропрієтарну програму
    SPSS. PSPP має як текстові, так і
    графічний нас...
    Завантажте pspp4windows
  • 5
    Розширення Git
    Розширення Git
    Git Extensions — це окремий інструмент інтерфейсу користувача
    для керування сховищами Git. Це також
    інтегрується з Провідником Windows і
    Microsoft Visual Studio
    (2015/2017/2019). Ч...
    Завантажте розширення Git
  • 6
    eSpeak: синтез мови
    eSpeak: синтез мови
    Система синтезу мовлення для англійської та
    багато інших мов. Компактний розмір с
    чітка, але штучна вимова.
    Доступна як програма командного рядка з
    багато ...
    Завантажте eSpeak: синтез мовлення
  • Детальніше »

Команди Linux

Ad