[ic] German umlaut problem with the scan tag!

Mike Heins mikeh@minivend.com
Mon, 9 Oct 2000 08:05:55 -0400


Quoting Mike Heins (mikeh@minivend.com):
> Quoting jojo@buchonline.net (jojo@buchonline.net):
> > Hi list,
> > 
> > I´ve trouble to get the scan tag working with german umlaut. I want to
> > use this codes
> > 
> > ---snip--------
> > [area href=scan
> >            arg=|
> >            ml=20
> >            st=sql
> >            sf=category
> >            se=[item-field category]
> > ---snip--------
> > 
> > and I´ve a category name "Komödie". I get an URL with "Kom%f6die"
> > instead of "Komödie". I can´t use the form tag, because the list of
> > the category names is not stable and I can´t make an images for all the
> > category names or for any changed category names.
> > 
> > Any ideas or solutions?
> 
> You have to follow the FAQ topic and add su=yes. Why this should be
> required in the middle of a word, I don't know, but it is.
> 

I looked at this a little bit, and the current stuff will not work
for non-US locale characters in the LANG=C environment. It should
have worked if your domain is set to de_DE.

I did find a place where the whole pre-screen search was less than
optimal, so try this patch to Search.pm (which is in CVS):

Index: Search.pm
===================================================================
RCS file: /anon_cvs/repository/interchange/lib/Vend/Search.pm,v
retrieving revision 1.6
retrieving revision 1.7
diff -r1.6 -r1.7
3c3
< # $Id: Search.pm,v 1.6 2000/09/14 08:25:52 heins Exp $
---
> # $Id: Search.pm,v 1.7 2000/10/09 11:53:02 heins Exp $
29c29
< $VERSION = substr(q$Revision: 1.6 $, 10);
---
> $VERSION = substr(q$Revision: 1.7 $, 10);
798,799c798,800
< 		$pat = "$begin$pat" if $begin;
< 		$pat =~ s/(\w+)/$bound$1$bound/g if $bound;
---
> 		$pat =~ s/(.*)/$bound$1$bound/
> 			if $bound;
> 		$pat =~ s/^(?:\\b)?/$begin/ if $begin;
841,842c842,844
< 		$pat = "$begin$pat" if $begin;
< 		$pat =~ s/(\w+)/$bound$1$bound/g if $bound;
---
> 		$pat =~ s/(.*)/$bound$1$bound/
> 			if $bound;
> 		$pat =~ s/^(?:\\b)?/$begin/ if $begin;

-- 
Akopia, Inc., 131 Willow Lane, Floor 2, Oxford, OH  45056
phone +1.513.523.7621 fax 7501 <heins@akopia.com>

Research is what I'm doing when I don't know what I'm doing.
-- Wernher Von Braun