InglêsFrancêsEspanhol

Ad


favicon do OnWorks

enc2xs - Online na nuvem

Execute enc2xs no provedor de hospedagem gratuita OnWorks no Ubuntu Online, Fedora Online, emulador online do Windows ou emulador online do MAC OS

Este é o comando enc2xs que pode ser executado no provedor de hospedagem gratuita OnWorks usando uma de nossas várias estações de trabalho online gratuitas, como Ubuntu Online, Fedora Online, emulador online do Windows ou emulador online do MAC OS

PROGRAMA:

NOME


enc2xs - Gerador de Módulo Perl Encode

SINOPSE


enc2xs - [opções]
enc2xs -M ModName mapfiles ...
enc2xs -C

DESCRIÇÃO


enc2xs constrói uma extensão Perl para uso pelo Encode de qualquer Unicode Character Mapping
arquivos (.ucm) ou arquivos de codificação Tcl (.enc). Além de ser usado internamente durante a construção
processo do módulo Encode, você pode usar enc2xs para adicionar sua própria codificação ao perl. Não
conhecimento de XS é necessário.

Links Guia


Se você quiser saber o menos possível sobre Perl, mas precisa adicionar uma nova codificação, basta
leia este capítulo e esqueça o resto.

0. Tenha um arquivo .ucm pronto. Você pode obtê-lo de algum lugar ou pode escrever o seu próprio em
scratch ou você pode pegar um da distribuição Encode e personalizá-lo. Para o
Formato UCM, consulte o próximo capítulo. No exemplo abaixo, chamarei meu teórico
codificação myascii, definido em meu.ucm. "$" é um prompt de shell.

$ls-F
meu.ucm

1. Emita um comando da seguinte maneira;

$ enc2xs -M Meu meu.ucm
gerando Makefile.PL
gerando My.pm
gerando README
gerando mudanças

Agora dê uma olhada em seu diretório atual. Deve ser assim.

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

Os seguintes arquivos foram criados.

Makefile.PL - script MakeMaker
My.pm - Codificar submódulo
t / My.t - arquivo de teste

1.1.
Se você quiser * .ucm instalado junto com os módulos, faça o seguinte;

Codificar $ mkdir
Codificar $ mv * .ucm
$ enc2xs -M My Encode / * ucm

2. Edite os arquivos gerados. Você não precisa se não tiver tempo E nenhuma intenção de
dê a outra pessoa. Mas é uma boa ideia editar o pod e adicionar mais testes.

3. Agora emita um comando que todos os Perl Mongers adoram:

$ perl Makefile.PL
Escrevendo Makefile para Encode :: My

4. Agora, tudo que você precisa fazer é fazer.

Faça $
cp My.pm blib / lib / Encode / My.pm
/ usr / local / bin / perl / usr / local / bin / enc2xs -Q -O \
-o codificar_t.c -f codificar_t.fnm
Lendo myascii (myascii)
Escrevendo formulário compilado
128 bytes em tabelas de string
384 bytes (75%) salvas em duplicatas
1 byte (0.775%) salvo usando substrings
....
chmod 644 blib / arch / auto / Encode / My / My.bs
$

O tempo que leva varia dependendo da velocidade da sua máquina e do tamanho do seu
codificação é. A menos que você esteja trabalhando em algo grande como euc-tw, não vai demorar muito
longo.

5. Você já pode "fazer a instalação", mas deve testar primeiro.

$ make teste
PERL_DL_NONLAZY = 1 / usr / local / bin / perl -Iblib / arch -Iblib / lib \
-e 'use Test :: Harness qw (& runtests $ verbose); \
$ verbose = 0; runtests @ARGV; ' t / *. t
t / meu .... ok
Todos os testes foram bem-sucedidos.
Arquivos = 1, testes = 2, 0 segundos de relógio de parede
(0.09 cusr + 0.01 csys = 0.09 CPU)

6. Se você estiver satisfeito com o resultado do teste, apenas "make install"

7. Se você deseja adicionar sua codificação à lista de carregamento por demanda do Encode (para que você não precise
"use Encode :: YourEncoding"), execute

enc2xs -C

para atualizar Encode :: ConfigLocal, um módulo que controla as configurações locais. Depois disso,
"use Encode;" é o suficiente para carregar suas codificações sob demanda.

A Unicode Personagem Mapa


A codificação usa o formato Unicode Character Map (UCM) para mapeamentos de caracteres de origem. Esse
formato é usado pelo pacote ICU da IBM e foi adotado por Nick Ing-Simmons para uso com o
Módulo de codificação. Uma vez que o UCM é mais flexível do que o mapa de codificação do Tcl e muito mais
amigável, este é o formato recomendado para Codificar agora.

Um arquivo UCM se parece com isso.

#
# Comentários
#
"US-ascii" # Obrigatório
"ascii" # Opcional
1 # Obrigatório; geralmente 1
1 # máx. # de bytes / char
\ x3F # Substituição char
#
MAPA DE ENCANTO
\ x0000 | 00 #
\ x0001 | 01 #
\ x0002 | 02 #
....
\ x007C | 7 # LINHA VERTICAL
\ x007D | 7 # SUPORTE CURLY DIREITO
\ x007E | 7 # TILDE
\ x007F | 7 #
FIM DO CHARMAP

· Tudo o que segue "#" é tratado como um comentário.

· A seção do cabeçalho continua até uma linha contendo a palavra CHARMAP. Esta seção
tem uma forma de valor, um par por linha. Strings usadas como valores devem ser
citado. Barewords são tratados como números. \ xXX representa um byte.

A maioria das palavras-chave são autoexplicativas. subchar significa caractere de substituição, não
subcaractere. Quando você decodifica uma sequência Unicode para esta codificação, mas sem correspondência
caractere for encontrado, a seqüência de bytes definida aqui será usada. Na maioria dos casos, o
o valor aqui é \ x3F; em ASCII, é um ponto de interrogação.

· CHARMAP inicia a seção do mapa de personagens. Cada linha tem o seguinte formato:

\ xXX .. | 0 # comentário
^^^
| | + - Bandeira reserva
| + -------- Sequência de bytes codificados
+ -------------- ID de caractere Unicode em hexadecimal

O formato é quase o mesmo que uma seção de cabeçalho, exceto pelo sinalizador de fallback: |
seguido por 0..3. O significado dos valores possíveis é o seguinte:

| 0 Seguro de ida e volta. Um caractere decodificado para Unicode codifica de volta para o mesmo byte
seqüência. A maioria dos personagens tem esta bandeira.

| 1 Fallback para Unicode -> codificação. Quando visto, enc2xs adiciona este caractere para o
codificar apenas o mapa.

| 2 Ignore o mapeamento de subcaracteres caso não haja nenhum ponto de código.

| 3 Fallback para codificação -> unicode. Quando visto, enc2xs adiciona este caractere para o
decodifique apenas o mapa.

· E finalmente, END OF CHARMAP encerra a seção.

Ao criar manualmente um arquivo UCM, você deve copiar ascii.ucm ou um existente
codificação próxima à sua, em vez de escrever a sua própria do zero.

Ao fazer isso, certifique-se de deixar pelo menos U0000 para U0020 como está, a menos que seu ambiente
é EBCDIC.

EMBARGO: nem todos os recursos do UCM são implementados. Por exemplo, icu: state não é usado.
Por causa disso, você precisa escrever um módulo perl se quiser dar suporte a algoritmos
codificações, principalmente a série ISO-2022. Esses módulos incluem Encode :: JP :: 2022_JP,
Encode :: KR :: 2022_KR e Encode :: TW :: HZ.

Lidar com duplicar mapeamentos
Ao criar um mapa, você DEVE tornar seus mapeamentos seguros de ida e volta. Isso é,
"encode ('your-encoding', decode ('your-encoding', $ data)) eq $ data" significa todos
caracteres marcados como "| 0". Veja como ter certeza:

· Classifique seu mapa em ordem Unicode.

· Quando você tiver uma entrada duplicada, marque qualquer uma com '| 1' ou '| 3'.

· E certifique-se de que a entrada '| 1' ou '| 3' SEGUE a entrada '| 0'.

Aqui está um exemplo de big5-eten.

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

Codificação interna -> Unicode e Unicode -> Mapa de codificação tem esta aparência;

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

Portanto, é seguro para viagens de ida e volta para \ xF9 \ xF9. Mas se a linha acima está de cabeça para baixo, aqui está o que
acontece.

E para UU para E
--------------------------------------
\ xA2 \ xA4 => U2550 U2550 => \ xF9 \ xF9
(\ xF9 \ xF9 => U2550 agora foi substituído!)

O pacote Encode vem com ucmlint, um utilitário bruto, mas suficiente para verificar o
integridade de um arquivo UCM. Verifique no diretório Encode / bin para isso.

Em caso de dúvida, você pode usar ucmsort, ainda outro utilitário no diretório Encode / bin.

Bookmarks


· Home Page da UTIhttp://www.icu-project.org/>

· Tabelas de mapeamento de caracteres ICUhttp://site.icu-project.org/charts/charset>

· ICU: Dados de conversãohttp://www.icu-project.org/userguide/conversion-data.html>

Use enc2xs online usando serviços onworks.net


Servidores e estações de trabalho gratuitos

Baixar aplicativos Windows e Linux

  • 1
    Plugin Eclipse Tomcat
    Plugin Eclipse Tomcat
    O plug-in Eclipse Tomcat fornece
    integração simples de um servlet tomcat
    container para o desenvolvimento de java
    Aplicativos da web. Você pode se juntar a nós para
    discussão ...
    Baixe o plug-in Eclipse Tomcat
  • 2
    Área de trabalho do WebTorrent
    Área de trabalho do WebTorrent
    WebTorrent Desktop é para streaming
    torrents no Mac, Windows ou Linux. Isto
    conecta-se ao BitTorrent e
    Peers WebTorrent. Agora não há
    precisa esperar por ...
    Baixar WebTorrent Desktop
  • 3
    GenX
    GenX
    GenX é um programa científico para refinar
    reflexividade de raios-x, nêutron
    refletividade e raio-x de superfície
    dados de difração usando o diferencial
    algoritmo de evolução ....
    Baixar GenX
  • 4
    pspp4windows
    pspp4windows
    O PSPP é um programa de estatística
    análise de dados amostrados. é grátis
    substituição do programa proprietário
    SPSS. PSPP tem base em texto e
    gráfico nós...
    Baixar pspp4windows
  • 5
    Extensões Git
    Extensões Git
    Extensões Git é uma ferramenta de IU independente
    para gerenciar repositórios Git. Isso também
    integra-se com o Windows Explorer e
    Microsoft Visual Studio
    (2015/2017/2019). º...
    Baixar extensões do Git
  • 6
    eSpeak: síntese de voz
    eSpeak: síntese de voz
    Mecanismo de conversão de texto em fala para inglês e
    muitas outras línguas. Tamanho compacto com
    pronúncia clara, mas artificial.
    Disponível como um programa de linha de comando com
    muitos ...
    Baixar eSpeak: síntese de fala
  • Mais "

Comandos Linux

Ad