From 6324e7e2ad0c567d5550c672c027bb429e92d914 Mon Sep 17 00:00:00 2001 From: Fridolin Somers Date: Wed, 29 Apr 2015 12:24:23 +0200 Subject: [PATCH] Bug 14078 - converting from ISO5426 is not complete Conversion of MARC from ISO5426 is defined in C4::Charset::char_decode5426(). Each character or combined characters conversion is defined in a map. This patch changes some odd actual conversions. In char_decode5426(), only characters between 0xC0 and 0xDF will be used for combining with following charater : ($char >= 0xC0 && $char <= 0xDF) So conversion like "$chars{0x81d1}=0x00b0" will never be used. Rules for "h with breve below" use combining with 0xf9 but looks like the correct caracter is 0xd5. See http://www.gymel.com/charsets/MAB2.html Signed-off-by: Frederic Demians Signed-off-by: Jonathan Druart --- C4/Charset.pm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/C4/Charset.pm b/C4/Charset.pm index 667c2d2..c0f829a 100644 --- a/C4/Charset.pm +++ b/C4/Charset.pm @@ -820,7 +820,7 @@ $chars{0x97}=0x003c;#3/2leftlowsinglequotationmark $chars{0x98}=0x003e;#3/2leftlowsinglequotationmark $chars{0xfa}=0x0153; #oe $chars{0xea}=0x0152; #oe -$chars{0x81d1}=0x00b0; +#$chars{0x81d1}=0x00b0; # FIXME useless #### ## combined characters iso5426 @@ -1122,8 +1122,8 @@ $chars{0xd375}=0x0173; # small u with ogonek $chars{0xd441}=0x1e00; # capital a with ring below $chars{0xd461}=0x1e01; # small a with ring below # 5/5 half circle below -$chars{0xf948}=0x1e2a; # capital h with breve below -$chars{0xf968}=0x1e2b; # small h with breve below +$chars{0xd548}=0x1e2a; # capital h with breve below +$chars{0xd568}=0x1e2b; # small h with breve below # 5/6 dot below $chars{0xd641}=0x1ea0; # capital a with dot below $chars{0xd642}=0x1e04; # capital b with dot below -- 2.1.0