Oh dear! What a convoluted process!  It's incredible!

OK, the e in the Bibliotheque is "grave". So does this mean
that all I need is to change the acute to grave and x62 to x61?
I will test it out and let you know, thanks Ed!

--Jackie

On Wed, 5 Jan 2005, Ed Summers wrote:

> On Tue, Jan 04, 2005 at 02:20:55PM -0500, Jackie Shieh wrote:
> > MARC::Field->new('710','2','', a=>'Bibliotheque nationale de france.')
> >                                            ^
>
> I'm assuming that you want a combining acute on the e, and that you want to
> encode with MARC-8 since UTF-8 in MARC data hasn't hit the mainstream yet...
> eventhough I've heard OCLC is converting all their MARC data to UTF-8.
>
> This is kind of a pain, but here's how you could do it. You need to
> escape to ExtendedLatin, add the combining acute, escape back to
> BasicLatin, and then put the 'e'. Or in code:
>
>     # building blocks for escaping G0 to ExtendedLatin and
>     # back to BasicLatin, details at:
>     # http://www.loc.gov/marc/specifications/speccharmarc8.html
>     $escapeToExtendedLatin = chr(0x1B).chr(0x28).chr(0x21).chr(0x45);
>     $escapeToBasicLatin = chr(0x1B).chr(0x28).chr(0x52);
>
>     # acute in the G0 register is chr(0x62) from the table at:
>     # http://lcweb2.loc.gov/cocoon/codetables/45.html
>     $acute = $escapeToExtendedLatin.chr(0x62).$escapeToBasicLatin;
>
>     # now make the field
>     $field = MARC::Field->new( '710', '2', '',
>         a => 'Biblioth'.$acute.'eque nationale de france.' );
>
> This is long because I wanted to explain what was going on...I imagine
> it could be compressed nicely...maybe
>
> Please give this a try on one record and make sure your catalog displays
> it properly before doing anything drastic to your data. Like I needed
> to mention that :-)
>
> //Ed
>

Reply via email to