[PATCH] string encoding for ISO 8859-1

--=-ksx2LhHNUfK9y24TTmGu
Content-Type: text/plain
Content-Transfer-Encoding: 7bit

All --

My computer uses the ISO8859-1 encoding natively, and I figure we
eventually want to be able to transode from whatever the specific
native encoding is to Unicode. So, I copied strnative.* and did
some basic editing to produce striso8859_1.*.

The problem is, what I've done really doesn't deal with the issues.

I may be misunderstanding, but I think 'strnative' needs to go away
and we need to determine the precise native encoding, and call the
string encodings what they are. Data management of single byte
character sets (SBCS) could presumably be shared, but I would
expect that in many cases comparisons would vary. So, I wonder if
strnative should really be some support routines usable by
str*, when * is a SBCS. This sort of thing will surely be needed
when we start thinking seriously about portable byte code, since
loading up some bytecode with a string constant tagged as being
encoded "native" doesn't allow the reader to know what to do
with it. I think "native" is a predicate that tells us whether
the string in question was encoded with the *current* platform's
native encoding or not, not some inherent property of the string.

I have the Unicode 3.0 book and CD, and there are transcoding
tables there for ISO8859-X to Unicode, which presumably we can add
to CVS and transform into C arrays with a simple program. I'm
thinking we aren't yet ready for that, but I could drop them in
somewhere in advance if desired.

The current setup doesn't support dynamically loaded encodings,
which I think we'll want to do sometime soon (since doing that will
make it easier to tinker with multiple encodings).

Bottom line on this stuff is that I'm attaching the patch, but I
think some combination of enhancing my understanding of the intent
of what's already there and enhancing what is there would be required
for me to turn this into something actually useful.


Regards,

-- Gregor
 _____________________________________________________________________ 
/     perl -e 'srand(-2091643526); print chr rand 90 for (0..4)'      \

   Gregor N. Purdy                          gregor@focusresearch.com
   Focus Research, Inc.                http://www.focusresearch.com/
   8080 Beckett Center Drive #203                   513-860-3570 vox
   West Chester, OH 45069                           513-860-3579 fax
\_____________________________________________________________________/

--=-ksx2LhHNUfK9y24TTmGu
Content-Type: text/plain
Content-Disposition: attachment; filename=iso8859.patch
Content-Transfer-Encoding: 7bit

? examples/assembly/queens.pasm
? languages/jako/queens.jako
Index: MANIFEST
===================================================================
RCS file: /home/perlcvs/parrot/MANIFEST,v
retrieving revision 1.36
diff -a -u -r1.36 MANIFEST
--- MANIFEST	2001/10/15 21:37:07	1.36
+++ MANIFEST	2001/10/17 12:08:49
@@ -38,6 +38,7 @@
 include/parrot/register.h
 include/parrot/stacks.h
 include/parrot/string.h
+include/parrot/striso8859_1.h
 include/parrot/strnative.h
 include/parrot/strutf16.h
 include/parrot/strutf32.h
@@ -82,6 +83,7 @@
 register.c
 stacks.c
 string.c
+striso8859_1.c
 strnative.c
 strutf16.c
 strutf32.c
Index: Makefile.in
===================================================================
RCS file: /home/perlcvs/parrot/Makefile.in,v
retrieving revision 1.29
diff -a -u -r1.29 Makefile.in
--- Makefile.in	2001/10/17 11:54:07	1.29
+++ Makefile.in	2001/10/17 12:08:49
@@ -4,7 +4,7 @@
 INC=include/parrot
 H_FILES = $(INC)/config.h $(INC)/exceptions.h $(INC)/io.h $(INC)/op.h $(INC)/register.h $(INC)/string.h $(INC)/events.h $(INC)/interpreter.h $(INC)/memory.h $(INC)/parrot.h $(INC)/stacks.h $(INC)/packfile.h $(INC)/global_setup.h $(INC)/vtable.h $(INC)/oplib/core_ops.h
 
-O_FILES = global_setup$(O) interpreter$(O) parrot$(O) register$(O) core_ops$(O) memory$(O) packfile$(O) stacks$(O) string$(O) strnative$(O) strutf8$(O) strutf16$(O) strutf32$(O) transcode$(O)
+O_FILES = global_setup$(O) interpreter$(O) parrot$(O) register$(O) core_ops$(O) memory$(O) packfile$(O) stacks$(O) string$(O) striso8859_1$(O) strnative$(O) strutf8$(O) strutf16$(O) strutf32$(O) transcode$(O)
 
 #DO NOT ADD C COMPILER FLAGS HERE
 #Add them in Configure.pl--look for the
@@ -34,8 +34,8 @@
 $(TEST_PROG): test_main$(O) $(O_FILES)
 	$(CC) $(CFLAGS) -o $(TEST_PROG) $(O_FILES) test_main$(O) $(C_LIBS)
 
-$(PDUMP): pdump$(O) packfile$(O) memory$(O) global_setup$(O) string$(O) strnative$(O) strutf8$(O) strutf16$(O) strutf32$(O) transcode$(O)
-	$(CC) $(CFLAGS) -o $(PDUMP) pdump$(O) packfile$(O) memory$(O) global_setup$(O) string$(O) strnative$(O) strutf8$(O) strutf16$(O) strutf32$(O) transcode$(O) $(C_LIBS)
+$(PDUMP): pdump$(O) packfile$(O) memory$(O) global_setup$(O) string$(O) striso8859_1$(O) strnative$(O) strutf8$(O) strutf16$(O) strutf32$(O) transcode$(O)
+	$(CC) $(CFLAGS) -o $(PDUMP) pdump$(O) packfile$(O) memory$(O) global_setup$(O) string$(O) striso8859_1$(O) strnative$(O) strutf8$(O) strutf16$(O) strutf32$(O) transcode$(O) $(C_LIBS)
 
 test_main$(O): $(H_FILES)
 
@@ -57,6 +57,8 @@
 global_setup$(O): $(H_FILES)
 
 string$(O): $(H_FILES)
+
+striso8859_1$(O): $(H_FILES)
 
 strnative$(O): $(H_FILES)
 
Index: string.c
===================================================================
RCS file: /home/perlcvs/parrot/string.c,v
retrieving revision 1.13
diff -a -u -r1.13 string.c
--- string.c	2001/10/10 18:21:04	1.13
+++ string.c	2001/10/17 12:08:49
@@ -19,10 +19,11 @@
  */
 void
 string_init(void) {
-    Parrot_string_vtable[enc_native] = string_native_vtable();
-    Parrot_string_vtable[enc_utf8] = string_utf8_vtable();
-    Parrot_string_vtable[enc_utf16] = string_utf16_vtable();
-    Parrot_string_vtable[enc_utf32] = string_utf32_vtable();
+    Parrot_string_vtable[enc_native]    = string_native_vtable();
+    Parrot_string_vtable[enc_utf8]      = string_utf8_vtable();
+    Parrot_string_vtable[enc_utf16]     = string_utf16_vtable();
+    Parrot_string_vtable[enc_utf32]     = string_utf32_vtable();
+    Parrot_string_vtable[enc_iso8859_1] = string_iso8859_1_vtable();
 }
 
 /*=for api string string_make
Index: striso8859_1.c
===================================================================
RCS file: striso8859_1.c
diff -N striso8859_1.c
--- /dev/null	Wed Oct 17 03:32:26 2001
+++ striso8859_1.c	Wed Oct 17 05:08:49 2001
@@ -0,0 +1,129 @@
+/* striso8859_1.c
+ *  Copyright: (When this is determined...it will go here)
+ *  CVS Info
+ *     $Id:  $
+ *  Overview:
+ *     This defines the iso8859_1 string routines.
+ *  Data Structure and Algorithms:
+ *  History:
+ *  Notes:
+ *  References:
+ */
+
+#include "parrot/parrot.h"
+
+/* Functions for handling strings in iso8859_1 byte format. */
+
+/*=for api string_iso8859_1 string_8_compute_strlen
+   return the length of s
+*/
+static INTVAL 
+string_iso8859_1_compute_strlen (STRING *s) {
+    return s->bufused;
+}
+
+/*=for api string_iso8859_1 string_iso8859_1_max_bytes
+   return the max bytes needed for x characters.
+*/
+static INTVAL 
+string_iso8859_1_max_bytes (INTVAL x) {
+    return x;
+}
+
+/*=for api string_iso8859_1 string_iso8859_1_concat
+   concatenate two strings
+*/
+static STRING*
+string_iso8859_1_concat(STRING* a, STRING* b, INTVAL flags) {
+    if (flags && a->encoding != b->encoding) {
+	/* Transcode */
+	STRING* t = b;
+	b = string_make(NULL, 0, enc_iso8859_1, 0, 0);
+	(Parrot_transcode_table[t->encoding->which][enc_iso8859_1])(t, b);
+    }
+    /* b is now in iso8859_1 format */
+    string_grow(a, a->strlen + b->strlen);
+    mem_sys_memcopy((void*)((ptrcast_t)a->bufstart + a->strlen), b->bufstart, b->strlen);
+    a->strlen = a->bufused = a->strlen + b->strlen;
+    return a;
+}
+
+/*=for api string_iso8859_1 string_iso8859_1_chopn
+   remove the last n characters from s
+*/
+static STRING*
+string_iso8859_1_chopn(STRING* s, INTVAL n) {
+    s->bufused -= n;
+    s->strlen -= n;
+    return s;
+}
+
+/*=for api string_iso8859_1 string_iso8859_1_substr
+   substring out length characters from src starting from offset
+   and store in dest.  Grow dest if needed.  Return dest
+*/
+static STRING*
+string_iso8859_1_substr(STRING* src, INTVAL offset, INTVAL length, STRING* dest)
+{
+    if (dest->encoding->which != enc_iso8859_1) {
+        /* It is now, matey. */
+        dest->encoding = &(Parrot_string_vtable[enc_iso8859_1]);
+    }
+    
+    /* Offset and length have already been "normalized" */
+    string_grow(dest, length);
+    mem_sys_memcopy(dest->bufstart, (void*)((ptrcast_t)src->bufstart + offset), length);
+    dest->strlen = dest->bufused = length;
+    
+    return dest;
+}
+
+/*=for api string_iso8859_1 string_iso8859_1_compare
+   compare two strings
+*/
+static INTVAL
+string_iso8859_1_compare(STRING* s1, STRING* s2) {
+    INTVAL cmp;
+
+    if (s1->bufused < s2->bufused) {
+        cmp = memcmp(s1->bufstart, s2->bufstart, s1->bufused);
+        if (cmp == 0) {
+            cmp = -1;
+        }
+    }
+    else {
+        cmp = memcmp(s1->bufstart, s2->bufstart, s2->bufused);
+        if (cmp == 0 && s1->bufused > s2->bufused) {
+            cmp = 1;
+        }
+    }
+
+    return cmp;
+}
+
+/*=for api string_iso8859_1 string_iso8859_1_vtable
+   return the vtable for the iso8859_1 string
+*/
+STRING_VTABLE 
+string_iso8859_1_vtable (void) {
+    STRING_VTABLE sv = {
+	enc_iso8859_1,
+	string_iso8859_1_compute_strlen,
+	string_iso8859_1_max_bytes,
+	string_iso8859_1_concat,
+	string_iso8859_1_chopn,
+	string_iso8859_1_substr,
+	string_iso8859_1_compare,
+    };
+    return sv;
+}
+
+/*
+ * Local variables:
+ * c-indentation-style: bsd
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil 
+ * End:
+ *
+ * vim: expandtab shiftwidth=4:
+*/
Index: include/parrot/string.h
===================================================================
RCS file: /home/perlcvs/parrot/include/parrot/string.h,v
retrieving revision 1.5
diff -a -u -r1.5 string.h
--- include/parrot/string.h	2001/10/10 18:21:04	1.5
+++ include/parrot/string.h	2001/10/17 12:08:49
@@ -16,11 +16,14 @@
 typedef struct parrot_string STRING;
 typedef struct string_vtable STRING_VTABLE;
 
+/* TODO: This approach thwarts loading new encodings at run time */
+
 typedef enum {
     enc_native,
     enc_utf8,
     enc_utf16,
     enc_utf32,
+    enc_iso8859_1,
     enc_foreign,
     enc_max
 } encoding_t;
@@ -92,6 +95,7 @@
 #include "parrot/strutf8.h"
 #include "parrot/strutf16.h"
 #include "parrot/strutf32.h"
+#include "parrot/striso8859_1.h"
 #endif
 
 /*
Index: include/parrot/striso8859_1.h
===================================================================
RCS file: striso8859_1.h
diff -N striso8859_1.h
--- /dev/null	Wed Oct 17 03:32:26 2001
+++ striso8859_1.h	Wed Oct 17 05:08:49 2001
@@ -0,0 +1,29 @@
+/* striso8859_1.h
+ *  Copyright: (When this is determined...it will go here)
+ *  CVS Info
+ *     $Id: $
+ *  Overview:
+ *     Native string handling functions header
+ *  Data Structure and Algorithms:
+ *  History:
+ *  Notes:
+ *  References:
+ */
+
+#if !defined(PARROT_STRISO8859_1_H_GUARD)
+#define PARROT_STRISO8859_1_H_GUARD
+
+STRING_VTABLE
+string_iso8859_1_vtable (void);
+
+#endif
+
+/*
+ * Local variables:
+ * c-indentation-style: bsd
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil 
+ * End:
+ *
+ * vim: expandtab shiftwidth=4:
+*/

--=-ksx2LhHNUfK9y24TTmGu--

0
gregor (98)
10/17/2001 12:21:51 PM
perl.perl6.internals 7376 articles. 0 followers. Follow

5 Replies
431 Views

Similar Articles

[PageSpeed] 20
Get it on Google Play
Get it on Apple App Store

On Wed, Oct 17, 2001 at 08:21:51AM -0400, Gregor N. Purdy wrote:
> I may be misunderstanding, but I think 'strnative' needs to go away
> and we need to determine the precise native encoding,

Please don't apply this; I think you are misunderstanding.
strnative is equivalent to LANG=C. It *is* the precise native
encoding.

-- 
Only two things are infinite: the universe and human ignorance. -A. Einstein
0
simon
10/17/2001 12:49:44 PM
Simon --

> > I may be misunderstanding, but I think 'strnative' needs to go away
> > and we need to determine the precise native encoding,
> 
> Please don't apply this; I think you are misunderstanding.
> strnative is equivalent to LANG=C. It *is* the precise native
> encoding.

No problem. I wasn't planning on committing it. I was just using it
as an illustration.

I'm going to elaborate a little, because I'm not sure I made clear
what was bugging me. I'll just beg a little lattitude. I'll also
go re-read the parrot string docs to see if that helps. But, in
the mean time...


Its still likely that I'm misunderstanding the intent, but I think
that a .pbc file created by me with LANG=C is not necessarily going
to generate string constants that have the same meaning when you go
to run it on your platform of choice, which sounds bad to me.

I guess I'm having trouble getting my brain around this being one
piece of information. I think its two:

  1. The interpreter's native string encoding, being whatever was
     convenient for the interpreter writer. In our case, we're
     writing the interpreter in C, and C has an idea of what its
     character encoding is, and hopefully we'll at some point
     be able to determine that it is ISO8859-1 or whatever.

     NOTE: I'm assuming that since string encodings are part of
     the abstract definition of Parrot, and that nothing says
     all implementations of Parrot must be in C, we have to avoid
     C-isms in the Parrot *definition* even though we are going
     to turn right around and use C-isms in the *implementation*.

  2. The encoding for the chunk-o-memory the interpreter is about
     to turn into a STRING, having found said chunk in the packfile's
     const_table.

I'm not denying that there *is* a native encoding, but I think
*calling* it "native" vs. calling it by its actual name (such as
"iso8859-1", or whatever is detected/configured), isn't helpful
when someone on another platform goes to read your .pbc file.

And, I think a STRING should never say "I'm a native string". It
should say "I'm an ISO8859-1 string", and the interpreter should
say "aha! that's my native encoding; cool." or "ok. That's not my
native encoding; I'd better go load up support for it...".


Regards,

-- Gregor
 _____________________________________________________________________ 
/     perl -e 'srand(-2091643526); print chr rand 90 for (0..4)'      \

   Gregor N. Purdy                          gregor@focusresearch.com
   Focus Research, Inc.                http://www.focusresearch.com/
   8080 Beckett Center Drive #203                   513-860-3570 vox
   West Chester, OH 45069                           513-860-3579 fax
\_____________________________________________________________________/

0
gregor
10/17/2001 1:14:06 PM
On Wed, 17 Oct 2001, Gregor N. Purdy wrote:
>   2. The encoding for the chunk-o-memory the interpreter is about
>      to turn into a STRING, having found said chunk in the packfile's
>      const_table.
Perhaps we should always output string constants as UTF8?  This would
avoid the problems with PBC compatablity.  For efficency, we might want to
downgrade the string to the native encoding on loading if we see that the
native encoding will fit the string without being lossy.  (Shouldn't the
transcoding functions tell their caller that?)

	-=- James Mastros
-- 
Put bin Laden out like a bad cigar: http://www.fieler.com/terror
"You know what happens when you bomb Afghanastan?  Thats right, you knock
over the rubble."	-=- SLM

0
jmm203
10/17/2001 4:37:25 PM
At 01:49 PM 10/17/2001 +0100, Simon Cozens wrote:
>On Wed, Oct 17, 2001 at 08:21:51AM -0400, Gregor N. Purdy wrote:
> > I may be misunderstanding, but I think 'strnative' needs to go away
> > and we need to determine the precise native encoding,
>
>Please don't apply this; I think you are misunderstanding.
>strnative is equivalent to LANG=C. It *is* the precise native
>encoding.

I'm not sure we should have an encoding called just 'native', at least not 
in the source. Each encoding should have a name, and the interpreter should 
know which one it should consider native and default. I'm OK with us asking 
at configure time what the native encoding is, though.

					Dan

--------------------------------------"it's like this"-------------------
Dan Sugalski                          even samurai
dan@sidhe.org                         have teddy bears and even
                                      teddy bears get drunk

0
dan
10/17/2001 4:43:12 PM
On Wed, 17 Oct 2001, Gregor N. Purdy wrote:
> Its still likely that I'm misunderstanding the intent, but I think
> that a .pbc file created by me with LANG=C is not necessarily going
> to generate string constants that have the same meaning when you go
> to run it on your platform of choice, which sounds bad to me.
It occours to me that this is applicable to utf16 and utf32 too; they
aren't unambigius unless they start with a BOM (Byte Order Marker), or
have their byteorder specified some other way.  Mayhap we should have utf8
(which is unambigous, though apparently is lossy for some asian
languages), and have string encodings utf16, utf16bom, where utf16 is in
the _running_ interpreter's byteorder, and utf16bom always begins with a
byte-order-marker.  (And so on for utf32)

Strings would always be /stored/ in utf16bom, and thus be
machine-independent, but upon loading them, you can always convert to
utf16 trivialy (chop off the first 2 bytes for UTF16, or the first four
for UTF32).  (Encodings without the BOM are easyer to deal with because
you don't have to worry about different byteorders -- all numbers have the
machine's native byteorder.)

I'd love to see the same thing happen with "native" encodings, but there
seems to be no lossless encoding we can use.

Hm.  Perhaps we need to seperate "encoding" from "type": Encoding
specifies how the hunk 'o storage encodes the codepoints, and type
specifies what codepoints map to what characters.

Thus, we could have BIG-5, utf8 encoded data.  This is
machine-independent, and also lossless for things originaly coded in BIG5.

(Of course, this could also easily have n^2 problems.)

	-=-  James Mastros

-- 
Put bin Laden out like a bad cigar: http://www.fieler.com/terror
"You know what happens when you bomb Afghanastan?  Thats right, you knock
over the rubble."	-=- SLM

0
jmm203
10/17/2001 6:29:03 PM
Reply:

Similar Artilces:

Si la firma no es =?ISO-8859-1?Q?v=E1lida_debido_a_un_pr?= =?ISO-8859-1?Q?oblema_de_los_valores_de_confianza_de_alg=FA?= =?ISO-8859-1?Q?n_certificado=2C_vea_o_cambio_dichos_valores_?= =?ISO-8859-1?Q?c
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1"> <title></title> </head> <body> <p><big><big><big><big><big>Si la firma no es v&aacute;lida debido a un problema resuelto de los valores de confianza de alg&uacute;n certificado, vea o cambio dichos valores con el Gestor de certificados. </big></big></big></big></big></p> <...

=?ISO-8859-1?Q?[PATCH]_feel_the_the_ba=DF_(encodi?= =?ISO-8859-1?Q?ng_problems_in_the_regex_engine)?=
------=_Part_157968_2041415.1174351234197 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: quoted-printable Content-Disposition: inline There is a problem with how the regexp engine handles certain types of escapes and strings of different encodings. For instance: perl -wle'$x=3Dqq(\x{DF}); $x=3D~/$x|\x{100}/ and print qq(ok)' produces the following: Malformed UTF-8 character (unexpected non-continuation byte 0x7c, immediately after start byte 0xdf) in regexp compilation at -e line 1. As far as I can tell in blead this is becaus...

=?iso-8859-1?Q?Puede_guardar_nombres_y_direcciones_autom=E1ticamente_en_l?= =?iso-8859-1?Q?a_Libreta_de_direcciones_simplemente_contestando_a_un_mens?= =?iso-8859-1?Q?aje.?=
This is a multi-part message in MIME format. ------=_NextPart_000_01A9_01C3675C.2BA80670 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Puede guardar nombres y direcciones autom=E1ticamente en la Libreta de = direcciones simplemente contestando a un mensaje. ------=_NextPart_000_01A9_01C3675C.2BA80670 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML><HEAD> <META http-equi...

=?ISO-8859-1?Q?Enhancing_TabView_Accessibility_with_WAI-?= =?ISO-8859-1?Q?ARIA_Roles_and_States_=BB_Yahoo!_User_Inter?= =?ISO-8859-1?Q?face_Blog?=
Here is to the Mozilla community: http://yuiblog.com/blog/2008/07/30/tabview-aria/ Therein is also a little nodge for NVDA, www.nvda-project.org. Enjoy and spread. Thanks, Victor Thanks Victor! I've added it to http://wiki.codetalks.org/wiki/index.php/How_to_create_accessible_JavaScript_widgets The asynchronous tab pane content loading is an interesting use case for ARIA Live Regions... what do others think? cheers, David Victor Tsaran wrote: > Here is to the Mozilla community: > http://yuiblog.com/blog/2008/07/30/tabview-aria/ > Therein is also a litt...

=?iso-8859-1?Q?Microsoft=AE_Windows=AE_Cryptographic_Next_Generation_Soft?= =?iso-8859-1?Q?ware_Development_Kit_for_Windows_Vista_and_Windows_Server_?= =?iso-8859-1?Q?2008?=
Brief Description Windows CNG SDK Version 1.3 The CNG SDK contains documentation, code, and tools designed to help you develop cryptographic applications and libraries targeting the Windows Vista SP1 and Windows Server 2008 Operating Systems. http://www.microsoft.com/downloads/details.aspx?FamilyID=1ef399e9-b018-49db-a98b-0ced7cb8ff6f&DisplayLang=en -- "Never drive faster than your ANGEL can fly" ...

=?ISO-8859-1?Q?Discontent_about_Sencha_conference_in_L?= =?ISO-8859-1?Q?ondon_-_=A3799_for_a_very_shoddy_experience?= =?ISO-8859-1?Q?_it_seems?=
http://www.amberweinberg.com/overpriced-developer-conferences/ wow, that sounds bad. ...

=?ISO-8859-1?Q?Using_WAI-ARIA_Roles_and_States_with_?= =?ISO-8859-1?Q?the_YUI_Menu_Control_=BB_Yahoo!_User_Interf?= =?ISO-8859-1?Q?ace_Blog?=
Hello everyone, Just wanted to share with you our blog entry about the new version of the ARIA-enabled menu from the Yahoo! User Interface Library http://yuiblog.com/blog/2007/12/21/menu-waiaria/ This is published worldwide on YDN. The cool thing about the new menu is that we are using the ARIA roles and states in the way they work starting from Firefox3. So please test away and share with the rest. Regards, Victor ...

=?iso-8859-1?Q?Almacena_el_estado_actual_del_documento_como_una_versi=F3n?= =?iso-8859-1?Q?_distinta._Haga_clic_en_Guardar_ahora_y_despu=E9s_escriba_?= =?iso-8859-1?Q?un_comentario_acerca_de_la_versi=
This is a multi-part message in MIME format. ------=_NextPart_000_0044_01C37005.5CE2F130 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Almacena el estado actual del documento como una versi=F3n distinta. = Haga clic en Guardar ahora y despu=E9s escriba un comentario acerca de = la versi=F3n en el cuadro Comentarios acerca de la versi=F3n. ------=_NextPart_000_0044_01C37005.5CE2F130 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable <!DOCTYPE HTML PUBLIC "-//W3...

=?iso-8859-1?Q?S=F3lo_puede_enviar_su_respuesta_a_m=E1s_de_un_grupo_de_no?= =?iso-8859-1?Q?ticias_a_la_vez_si_est=E1n_en_el_mismo_servidor_de_noticia?= =?iso-8859-1?Q?s.?=
This is a multi-part message in MIME format. ------=_NextPart_000_0083_01C36764.B2F4BD00 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable S=F3lo puede enviar su respuesta a m=E1s de un grupo de noticias a la = vez si est=E1n en el mismo servidor de noticias. ------=_NextPart_000_0083_01C36764.B2F4BD00 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML><HEAD> <META http-equiv=...

=?iso-8859-1?q?Smartphone_Alcatel_com_op=E7=E3o_para_3_sistemas_?= =?iso-8859-1?q?operacionais=3A_Android=2C_Windows_Phone_e_FirefoxO?= =?iso-8859-1?q?S?=
http://g1.globo.com/tecnologia/ces/2015/noticia/2015/01/alcatel-lanca-relogio-e-celular-com-opcao-para-3-sistemas-operacionais.html O que vcs acham? ...

=?ISO-8859-1?Q?Problem_selecting_signing_certificate_in_?= =?ISO-8859-1?Q?Thunderbird=2E_It=B4s_a_UTF-8_codification_issu?= =?ISO-8859-1?Q?e=3F?=
Hi all, I�m trying to configure a user certificate for mail signing purposes in Thunderbird (I�ve tested it in 1.5 and 2.0 versions with identical results). This certificate is stored in a smart card, and I access to it through a correctly installed PKCS11 module. The DN of my user certificate has special caracters, like �, or �. When ThunderBird allows me to choose the user certificate that I want to use for mail signing, it shows me only its serial number ("3C:91:44:B1") in the certificate selection menu. My problem emerges because thunderbird show me this option wi...

=?ISO-8859-1?Q?werbung_im_internet_geld_verdienen_=2C_schnell_viel_ge?= =?ISO-8859-1?Q?ld_gewinnen_=2C_wirklich_geld_im_internet_verdienen_=2C_geld_ver?= =?ISO-8859-1?Q?diene_im_internet_=2C_ich_schne
werbung im internet geld verdienen , schnell viel geld gewinnen , wirklich geld im internet verdienen , geld verdiene im internet , ich schnelles geld machen , sicher geld machen , spielen und echtes geld gewinnen wie wo , m=F6glichkeiten im internet geld , * * * +++ SOFORT GEWINN +++ REICH WERDEN +++ * http://WWW.SOFORT-GEWINN-JETZT-1.NET http://WWW.SOFORT-GEWINN-JETZT-1.NET http://WWW.SOFORT-GEWINN-JETZT-1.NET http://WWW.SOFORT-GEWINN-JETZT-1.NET http://WWW.SOFORT-GEWINN-JETZT-1.NET http://WWW.SOFORT-GEWINN-JETZT-1.NET * * * online spielen und geld kann man on...

=?iso-8859-1?q?Smartphone_Alcatel_com_op=E7=E3o_para_3_sistemas_?= =?iso-8859-1?q?operacionais=3A_Android=2C_Windows_Phone_e_FirefoxO?= =?iso-8859-1?q?S?=
http://g1.globo.com/tecnologia/ces/2015/noticia/2015/01/alcatel-lanca-relogio-e-celular-com-opcao-para-3-sistemas-operacionais.html O que vcs acham? ...

=?ISO-8859-1?Q?immobilienfinanzierung_trotz_schufa_=2C_g=FCnstige_immo?= =?ISO-8859-1?Q?bilienkredit_=2C_immobilienfinanzierung_kfw_=2C_bauspardarlehen_?= =?ISO-8859-1?Q?oder_=2C_baufinanzierung_laufz
immobilienfinanzierung trotz schufa , g=FCnstige immobilienkredit , immobilienfinanzierung kfw , bauspardarlehen oder , baufinanzierung laufzeit , eigenheimzulage 2 kind , 1 hypothek 2 hypothek , + + +++ GUENSTIGE KREDITE ONLINE +++ KREDITE IM INTERNET OHNE SCHUFA IMMOBILIEN +++ + http://WWW.IMMOBILIEN-KREDIT-ONLINE.NL http://WWW.IMMOBILIEN-KREDIT-ONLINE.NL http://WWW.IMMOBILIEN-KREDIT-ONLINE.NL http://WWW.IMMOBILIEN-KREDIT-ONLINE.NL http://WWW.IMMOBILIEN-KREDIT-ONLINE.NL http://WWW.IMMOBILIEN-KREDIT-ONLINE.NL http://WWW.IMMOBILIEN-KREDIT-ONLINE.NL http://WWW.IMMOBILIEN-KREDIT...

Web resources about - [PATCH] string encoding for ISO 8859-1 - perl.perl6.internals

Encoding (memory) - Wikipedia, the free encyclopedia
Visual, acoustic, and semantic encodings are the most intensively used. Other encodings are also used. Acoustic encoding is the encoding of auditory ...

Twitter image encoding challenge
If a picture's worth 1000 words, how much of a picture can you fit in 140 characters? Note : That's it folks! Bounty deadline is here, and after ...

【medical-news】Genetic Variation in NR1H4 Encoding the Bile Acid Receptor FXR - 医药生命科学动态跟踪 -丁香园论坛
Context: Bile acid signaling via farnesoid X receptor (FXR) regulates glucose and lipid levels, fat mass, and hepatic steatosis in animal models.Objective: ...

HandBrake Open Source video transcoder v0.10 released with hundreds of new features including H.265 and ...
... can be used for transcribing many different types of files/codecs to almost any other. Today’s headliner updates include H.265 and VP8 encoding. ...

CJK Type - CJK Fonts, Character Sets & Encodings. All CJK. All of the time.
As I wrote nearly a year ago , the Adobe-Identity-0 ROS is useful for building special-purpose fonts, especially CJK ones whose glyph coverage ...

Link Encoding Goes Mobile With Deep Links From Bitly
... Facebook and Google have been competing to bring the best solution for tracking deeplinks . This week, Bitly announced its own linking encoding ...

Encoding Articles - AppAdvice iPhone/iPad News
Latest Encoding Articles - AppAdvice iPhone/iPad News

AirMovie - Enjoy the videos in your PC anytime, anywhere with NO ENCODING!!
Holen Sie sich „AirMovie - Enjoy the videos in your PC anytime, anywhere with NO ENCODING!!“ im App Store. Sehen Sie sich Screenshots, Bewertungen ...

More tips on encoding video for Apple TV and iPod, from us to you
Apple tells video podcasters how to encode their content, which is also useful …

Handbrake 0.9.6 gives some, takes some encoding features
The Handbrake Project has announced an update to its open-source, cross-platform video transcoding utility. Handbrake 0.9.6 includes new and ...

Resources last updated: 1/16/2016 11:12:01 AM