You are here: Foswiki>Tasks Web>Item1330 (05 Jul 2015, GeorgeClark)Edit Attach

Item1330: Wikiwords with Umlauts arent detected

pencil
Priority: Normal
Current State: Closed
Released In: 2.0.0
Target Release: major
Applies To: Engine
Component: FoswikiRender, I18N
Branches:
Reported By: FlurinRindisbacher
Waiting For:
Last Change By: GeorgeClark

Installed Version and Configuration

Version

Foswiki-1.0.3, Sat, 28 Feb 2009, build 2773, Plugin API version 2.0

Configuration

  • Locale: de_CH.utf8
  • Charset: utf-8
  • OS: Debian Stable (Lenny)

Problem Description

Wikiwords containing Umlauts aren't detected. Examples: (I know, these words doesnt make sense...)

Tested in foswiki-1.0.3 and trunk.foswiki.org (see http://trunk.foswiki.org/Sandbox/TestTopic19 )

-- FlurinRindisbacher - 19 Mar 2009

If you enable locale it may partly work but there is a problem with non A-Z that we need to address.

I did not have time to find my other open bug item but it is there and it dates back to (tm)wiki days.

-- KennethLavrsen - 19 Mar 2009

hi there, adding ÜÖÄ / üöä to UpperNational / LowerNational in LocalSite.cfg makes it work. i just found that browsing the source in lib/Foswiki.pm

what about adding some characters to $regex depending on which localisation is choosen? (for example üöä would be sufficient for most german speaking countries)

-- FlurinRindisbacher - 21 Mar 2009

You don't need utf-8 for German, and you don't need to add some trick to make this work.

What you want is this:
$Foswiki::cfg{Site}{CharSet} = 'iso-8859-15';
$Foswiki::cfg{Site}{Locale} = 'de_DE.ISO-8859-15';
$Foswiki::cfg{UseLocale} = 1;
$Foswiki::cfg{Site}{LocaleRegexes} = 1;
$Foswiki::cfg{UpperNational} = '';
$Foswiki::cfg{LowerNational} = '';

  1. The first line tells into which locale the utf-8 text should be recoded when needed.
  2. The second line tells perl which locale to use for everything, including regexp classes such as :upper: and :lower:
  3. The next line tells Foswiki to use these perl locales
  4. The 4th line tells Foswiki to use these perl locales for regexp, otherwise, they use the default 'A-Z' + UpperNational and 'a-z' + LowerNational

With that setup the WikiWords with umlauts are rendered correctly, and you won't have your warning logs filing up with warning messages that you shouldn't set utf-8 as a site charset.

-- OlivierRaginel - 29 Apr 2009

Thanks, this solves the problem. (or the upgrade to 1.0.5? ) (For Debian Users) On my UTF-8 system, i had to generate the "de_DE.ISO-8859-15"-locale the following way:

vim /etc/locale.gen and remove the # before de_DE.ISO-8859-15 then run the command locale-gen.

-- FlurinRindisbacher - 30 Apr 2009

Even though Flurin had his problem resolved I believe we still have a todo to as a minimum document how to setup these things.

And on an international site with more than one language it may also be better to do it differently and maybe even manually list the upper/lower case chars.

-- KennethLavrsen - 14 Sep 2009

There might be a problem with the Create New Topic page. The check on wikiword is in javascript, so it will mark a german word as non-wikiword.

-- ArthurClemens - 14 Sep 2009

Thats right, creating a New Topic with äöü etc. is not accepted as WikiWord.

-- SaschaBuechel - 22 May 2010

Works ok in the unicode core 1.2

-- JozefMojzis - 24 Jun 2015

ItemTemplate edit

Summary Wikiwords with Umlauts arent detected
ReportedBy FlurinRindisbacher
Codebase 1.0.3, trunk
SVN Range Foswiki-1.0.0, Thu, 08 Jan 2009, build 1878
AppliesTo Engine
Component FoswikiRender, I18N
Priority Normal
CurrentState Closed
WaitingFor
Checkins
TargetRelease major
ReleasedIn 2.0.0
CheckinsOnBranches
trunkCheckins
masterCheckins
ItemBranchCheckins
Release01x01Checkins
Topic revision: r12 - 05 Jul 2015, GeorgeClark
The copyright of the content on this website is held by the contributing authors, except where stated elsewhere. See Copyright Statement. Creative Commons License    Legal Imprint    Privacy Policy