* GSWeb/GSWResourceManager.m

+ GSLanguageFromISOLanguage:
use 2 steps to find language, first supplied one 'ja-jp'
if that fails, use 'ja'



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@30859 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Dave Wetzel 2010-06-26 02:52:00 +00:00
parent 029c4d499e
commit ea3fe3f1e4
2 changed files with 30 additions and 3 deletions

View file

@ -1,3 +1,9 @@
2010-06-25 David Wetzel <dave@turbocat.de>
* GSWeb/GSWResourceManager.m
+ GSLanguageFromISOLanguage:
use 2 steps to find language, first supplied one 'ja-jp'
if that fails, use 'ja'
2010-06-23 David Wetzel <dave@turbocat.de>
* GSWeb/GSWResourceManager.m
reformat statics, add TheStringsTableLock

View file

@ -796,11 +796,32 @@ static NSString * _cachedStringForKey(GSWResourceManager * resmanager, NSString
}
//--------------------------------------------------------------------
//NDFN
/*
* more specific names like 'ja-jp' have priority over 'ja'
* that way, de-at could return a different language than 'de'
* As they have some different words...
*/
+(NSString*)GSLanguageFromISOLanguage:(NSString*)ISOLanguage
{
return [localISO2GSLanguages objectForKey:[[ISOLanguage stringByTrimmingSpaces] lowercaseString]];
};
NSString * searchStr = [[ISOLanguage stringByTrimmingSpaces] lowercaseString];
NSString * langName = nil;
langName = [localISO2GSLanguages objectForKey:searchStr];
if (!langName) {
// try to get only the prefix of 'ja-jp'
NSRange minusRange = [searchStr rangeOfString:@"-"];
if (minusRange.location != NSNotFound) {
searchStr = [searchStr substringToIndex:minusRange.location];
langName = [localISO2GSLanguages objectForKey:searchStr];
}
}
return langName;
}
//--------------------------------------------------------------------
//NDFN