AnglaisFrançaisEspagnol

Ad


Icône de favori OnWorks

enc2xs - En ligne dans le Cloud

Exécutez enc2xs dans le fournisseur d'hébergement gratuit OnWorks sur Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

Il s'agit de la commande enc2xs qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

PROGRAMME:

Nom


enc2xs -- Générateur de module d'encodage Perl

SYNOPSIS


enc2xs -[options]
enc2xs -M ModName fichiers de mappage...
enc2xs -C

DESCRIPTION


enc2xs construit une extension Perl à utiliser par Encode à partir du mappage de caractères Unicode
(.ucm) ou des fichiers de codage Tcl (.enc). En plus d'être utilisé en interne pendant la construction
processus du module Encode, vous pouvez utiliser enc2xs pour ajouter votre propre encodage à perl. Non
la connaissance de XS est nécessaire.

Rapide Guide


Si vous voulez en savoir le moins possible sur Perl mais avez besoin d'ajouter un nouvel encodage, il suffit
lisez ce chapitre et oubliez le reste.

0. Préparez un fichier .ucm. Vous pouvez l'obtenir quelque part ou vous pouvez écrire le vôtre à partir de
scratch ou vous pouvez en récupérer un dans la distribution Encode et le personnaliser. Pour le
format UCM, voir le chapitre suivant. Dans l'exemple ci-dessous, j'appellerai ma théorie
encodant myascii, défini dans mon.ucm. "$" est une invite shell.

$ ls -F
mon.ucm

1. Exécutez une commande comme suit ;

$ enc2xs -M Mon my.ucm
génération de Makefile.PL
générer My.pm
génération du fichier README
générer des changements

Jetez maintenant un œil à votre répertoire actuel. Ça devrait ressembler à ça.

$ ls -F
Makefile.PL Mon.pm mon.ucm t/

Les fichiers suivants ont été créés.

Makefile.PL - Script MakeMaker
My.pm - Sous-module d'encodage
t/My.t - fichier de test

1.1.
Si vous souhaitez que *.ucm soit installé avec les modules, procédez comme suit ;

$ mkdir Encoder
$ mv *.ucm Encoder
$ enc2xs -M Mon code/*ucm

2. Modifiez les fichiers générés. Vous n'êtes pas obligé de le faire si vous n'avez pas le temps ET aucune intention de le faire
le donner à quelqu'un d'autre. Mais c'est une bonne idée d'éditer le pod et d'ajouter plus de tests.

3. Maintenant, lancez une commande que tous les Perl Mongers adorent :

$ perl Makefile.PL
Écrire un Makefile pour Encode::My

4. Il ne vous reste plus qu'à faire.

Faire $
cp Mon.pm blib/lib/Encode/Mon.pm
/usr/local/bin/perl /usr/local/bin/enc2xs -Q -O \
-o encode_t.c -f encode_t.fnm
Lecture de myascii (myascii)
Rédaction d'un formulaire compilé
128 octets dans les tables de chaînes
384 octets (75 %) enregistrés en repérant les doublons
1 octet (0.775%) enregistré à l'aide de sous-chaînes
....
chmod 644 blib/arch/auto/Encode/Mon/Mon.bs
$

Le temps nécessaire varie en fonction de la vitesse de votre machine et de la taille de votre
l'encodage est. À moins que vous ne travailliez sur quelque chose de gros comme euc-tw, cela ne prendra pas trop
longtemps.

5. Vous pouvez déjà "faire l'installation", mais vous devez d'abord tester.

$ faire le test
PERL_DL_NONLAZY=1 /usr/local/bin/perl -Iblib/arch -Iblib/lib\
-e 'use Test::Harness qw(&runtests $verbose); \
$verbeux=0 ; tests d'exécution @ARGV;' t/*.t
t/Mon....ok
Tous les tests réussis.
Fichiers=1, Tests=2, 0 secondes d'horloge murale
(0.09 cusr + 0.01 csys = 0.09 CPU)

6. Si vous êtes satisfait du résultat du test, il suffit de "faire l'installation"

7. Si vous souhaitez ajouter votre encodage à la liste de chargement à la demande d'Encode (vous n'avez donc pas à
"utiliser Encode::YourEncoding"), exécutez

enc2xs -C

pour mettre à jour Encode::ConfigLocal, un module qui contrôle les paramètres locaux. Après ça,
"utiliser Encoder ;" suffit pour charger vos encodages à la demande.

La Unicode Personnage Carte


Encode utilise le format Unicode Character Map (UCM) pour les mappages de caractères source. Cette
format est utilisé par le package ICU d'IBM et a été adopté par Nick Ing-Simmons pour une utilisation avec le
Module d'encodage. Étant donné qu'UCM est plus flexible que la carte de codage de Tcl et beaucoup plus d'utilisateurs
convivial, c'est le format recommandé pour Encoder maintenant.

Un fichier UCM ressemble à ceci.

#
# Commentaires
#
"US-ascii" # Obligatoire
"ascii" # Facultatif
1 # Obligatoire ; généralement 1
1 # Max. # d'octets/caractère
\x3F # Caractère de substitution
#
CARTE CHARMANTE
\x0000 |00 #
\x0001 |01 #
\x0002 |02 #
....
\x007C |7 # LIGNE VERTICALE
\x007D |7 # ACCROCHE BOUCLÉE DROITE
\x007E |7 # TILDE
\x007F |7 #
FIN CHARMAP

· Tout ce qui suit "#" est traité comme un commentaire.

· La section d'en-tête continue jusqu'à une ligne contenant le mot CHARMAP. Cette section
a une forme de Plus-value, une paire par ligne. Les chaînes utilisées comme valeurs doivent être
cité. Les mots nus sont traités comme des nombres. \xXX représente un octet.

La plupart des mots-clés sont explicites. sous-caractère signifie caractère de substitution, pas
sous-caractère. Lorsque vous décodez une séquence Unicode vers cet encodage mais pas de correspondance
caractère est trouvé, la séquence d'octets définie ici sera utilisée. Pour la plupart des cas, le
la valeur ici est \x3F ; en ASCII, c'est un point d'interrogation.

· CHARMAP démarre la section de la carte des caractères. Chaque ligne a une forme comme suit :

\xXX.. |0 # commentaire
^ ^ ^
| | +- Indicateur de repli
| +-------- Séquence d'octets codés
+-------------- ID de caractère Unicode en hexadécimal

Le format est à peu près le même que celui d'une section d'en-tête, à l'exception de l'indicateur de repli : |
suivi de 0..3. La signification des valeurs possibles est la suivante :

|0 Aller-retour en toute sécurité. Un caractère décodé en Unicode revient au même octet
séquence. La plupart des personnages ont ce drapeau.

|1 Repli pour unicode -> encodage. Lorsqu'il est vu, enc2xs ajoute ce caractère pour le
encoder la carte uniquement.

|2 Ignore le mappage des sous-caractères s'il n'y a pas de point de code.

|3 Repli pour l'encodage -> unicode. Lorsqu'il est vu, enc2xs ajoute ce caractère pour le
décoder la carte uniquement.

· Et enfin, END OF CHARMAP termine la section.

Lorsque vous créez manuellement un fichier UCM, vous devez copier ascii.ucm ou un fichier existant
encodage proche du vôtre, plutôt que d'écrire le vôtre à partir de zéro.

Lorsque vous le faites, assurez-vous de laisser au moins U0000 à U0020 tel quel, à moins que votre environnement
est EBCDIC.

MISE EN GARDE: toutes les fonctionnalités d'UCM ne sont pas implémentées. Par exemple, icu:state n'est pas utilisé.
Pour cette raison, vous devez écrire un module perl si vous souhaitez prendre en charge les algorithmes
codages, notamment la série ISO-2022. Ces modules incluent Encode::JP::2022_JP,
Encoder::KR::2022_KR et Encoder::TW::HZ.

Faire face avec dupliquer cartographies
Lorsque vous créez une carte, vous DEVEZ sécuriser vos mappages aller-retour. C'est-à-dire,
"encoder('votre-encodage', decode('votre-encodage', $data)) eq $data" signifie tout
caractères marqués comme « |0 ». Voici comment vous en assurer :

· Triez votre carte dans l'ordre Unicode.

· Lorsque vous avez une entrée en double, marquez l'une ou l'autre avec '|1' ou '|3'.

· Et assurez-vous que l'entrée '|1' ou '|3' SUIT l'entrée '|0'.

Voici un exemple de big5-eten.

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

Encodage interne -> Unicode et Unicode -> La carte d'encodage ressemble à ceci ;

E à UU à E
--------------------------------------
\xF9\xF9 => U2550 U2550 => \xF9\xF9
\xA2\xA4 => U2550

C'est donc un aller-retour sans danger pour \xF9\xF9. Mais si la ligne ci-dessus est à l'envers, voici ce que
arrive.

E à UU à E
--------------------------------------
\xA2\xA4 => U2550 U2550 => \xF9\xF9
(\xF9\xF9 => U2550 est maintenant écrasé !)

Le package Encode est fourni avec ucmlint, un utilitaire grossier mais suffisant pour vérifier
l'intégrité d'un fichier UCM. Vérifiez dans le répertoire Encode/bin pour cela.

En cas de doute, vous pouvez utiliser tri par tri, encore un autre utilitaire sous le répertoire Encode/bin.

les signets du MSEPSH


· Page d'accueil de l'USIhttp://www.icu-project.org/>

· Tables de mappage de caractères ICUhttp://site.icu-project.org/charts/charset>

· ICU : données de conversionhttp://www.icu-project.org/userguide/conversion-data.html>

Utilisez enc2xs en ligne à l'aide des services onworks.net


Serveurs et postes de travail gratuits

Télécharger des applications Windows et Linux

  • 1
    Plugin Eclipse Tomcat
    Plugin Eclipse Tomcat
    Le plugin Eclipse Tomcat fournit
    intégration simple d'une servlet Tomcat
    conteneur pour le développement de java
    des applications Web. Vous pouvez nous rejoindre pour
    discussion...
    Télécharger le plug-in Eclipse Tomcat
  • 2
    WebTorrent Desktop
    WebTorrent Desktop
    WebTorrent Desktop est pour le streaming
    torrents sur Mac, Windows ou Linux. Ce
    se connecte à la fois à BitTorrent et
    Pairs WebTorrent. Maintenant il n'y a pas
    faut attendre...
    Télécharger WebTorrent Desktop
  • 3
    GenX
    GenX
    GenX est un programme scientifique pour affiner
    réflexivité aux rayons X, neutrons
    réflectivité et rayons X de surface
    données de diffraction utilisant le différentiel
    algorithme d'évolution....
    Télécharger GenX
  • 4
    pspp4windows
    pspp4windows
    Le PSPP est un programme de statistiques
    analyse des données échantillonnées. C'est gratuit
    remplacement du programme propriétaire
    SPSS. PSPP dispose à la fois de texte et
    graphique nous...
    Télécharger pspp4windows
  • 5
    Extensions Git
    Extensions Git
    Git Extensions est un outil d'interface utilisateur autonome
    pour la gestion des référentiels Git. Ça aussi
    s'intègre à l'explorateur Windows et
    Microsoft Visual Studio
    (2015/2017/2019). E...
    Télécharger les extensions Git
  • 6
    eSpeak: synthèse vocale
    eSpeak: synthèse vocale
    Moteur de synthèse vocale pour l'anglais et
    beaucoup d'autres langues. Taille compacte avec
    prononciation claire mais artificielle.
    Disponible en tant que programme en ligne de commande avec
    de nombreux ...
    Télécharger eSpeak : synthèse vocale
  • Plus "

Commandes Linux

Ad