> I will need to think about the best current workaround for this, but right > now I am (and have been) swamped, sorry.
I've tried the following code and it seems to work for me. Can you think of any reason why it might not work? As I understand from the unicode standard [1], V is supposed to prefer the metazone timezone abbreviation, which is what my users commonly expect (in America: EST, EDT, CST, CDT, MST, MDT, PST, PDT, etc; in India: IST). Thanks! NSLocale *indianEnglishLocale = [[[NSLocale alloc] initWithLocaleIdentifier:@"en_IN"] autorelease]; NSTimeZone *timeZone = [NSTimeZone timeZoneWithName:@"Asia/Kolkata"]; NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease]; [dateFormatter setLocale:indianEnglishLocale]; [dateFormatter setDateFormat:@"V"]; // or @"zzz" [dateFormatter setTimeZone:timeZone]; NSLog(@"V date string: %@", [dateFormatter stringFromDate:[NSDate date]]); [1] http://unicode.org/reports/tr35/tr35-10.html#Date_Format_Patterns -Heath Borders heath.bord...@gmail.com Twitter: heathborders http://heath-tech.blogspot.com On Mon, Feb 13, 2012 at 12:09 PM, Peter Edberg <pedb...@apple.com> wrote: > > On Feb 2, 2012, at 7:56 AM, John Joyce wrote: > >> >> On Feb 2, 2012, at 2:20 AM, Peter Edberg wrote: >> >>> >>> On Jan 31, 2012, at 2:35 PM, cocoa-dev-requ...@lists.apple.com wrote: >>>> ---------------------------------------------------------------------- >>>> >>>> Message: 1 >>>> Date: Tue, 31 Jan 2012 14:10:13 -0600 >>>> From: Heath Borders <heath.bord...@gmail.com> >>>> To: cocoa-dev <cocoa-dev@lists.apple.com> >>>> >>>> Peter, >>>> >>>> If I set the locale to "en_IN" shouldn't that show the short time zone? >>>> >>>> NSLocale *indianEnglishLocale = [[[NSLocale alloc] >>>> initWithLocaleIdentifier:@"en_IN"] autorelease]; >>>> NSTimeZone *timeZone = [NSTimeZone timeZoneWithName:@"Asia/Kolkata"]; >>>> NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] >>>> autorelease]; >>>> dateFormatter.locale = indianEnglishLocale; >>>> dateFormatter.dateFormat = @"z"; >>>> dateFormatter.timeZone = timeZone; >>>> >>>> NSLog(@"date string: %@", [dateFormatter stringFromDate:[NSDate date]]); >>>> NSLog(@"time zone abbreviation: %@", [timeZone >>>> abbreviationForDate:[NSDate date]]); >>>> >>>> output: >>>> >>>> date string: GMT+05:30 >>>> time zone abbreviation: IST >>>> >>>> -Heath Borders >>> >>> >>> Heath, >>> Yes, you are correct, for the example you provided above, [dateFormatter >>> stringFromDate:[NSDate date]] *should* use the short time zone name "IST". >>> The fact that it does not is due to a deficiency in the "en_IN" locale data >>> in the versions of CLDR data used by ICU in the current OSX and iOS >>> releases (CLDR 1.9.1 and 2.0 respectively). The "en_IN" locale in those >>> CLDR versions did not override or supplement any of the timezone name data >>> from the base "en" locale, whose default content is for "en_US". >>> >>> This is already fixed for the CLDR 21 release coming in a few days. That is >>> being incorporated into ICU 49 which will be picked up in future OSX and >>> iOS releases. >>> >>> - Peter E >>> > >> Is there any recommended workaround approach for this kind of scenario until >> those updates are incorporated? >> More specifically, how would one best implement a workaround that would be >> easily overridden by (or not clash terribly) the fix when it is eventually >> incorporated into a release? >> Any best practices or recommendations in that area? > > I will need to think about the best current workaround for this, but right > now I am (and have been) swamped, sorry. > - Peter E > >> > > > _______________________________________________ > > Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) > > Please do not post admin requests or moderator comments to the list. > Contact the moderators at cocoa-dev-admins(at)lists.apple.com > > Help/Unsubscribe/Update your Subscription: > https://lists.apple.com/mailman/options/cocoa-dev/heath.borders%40gmail.com > > This email sent to heath.bord...@gmail.com _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com