I started a (STAMP)[https://github.com/jeremyw/stamp] port for Pharo http://smalltalkhub.com/mc/dh83/c/main which follows an example drive date-formatting scheme. Instead of using a cryptic compressed form you use an example string DateAndTime now stompFormat: '2012-12-31 14:32:12'. DateAndTime now stompFormat: '2012/31/12 14:32:12'. best cami On 2012-10-28, at 17:56, Stéphane Ducasse <stephane.ducasse@inria.fr> wrote:
On Oct 28, 2012, at 11:08 AM, Benoit St-Jean wrote:
Hello everyone,
While looking at bug 6596, I started wondering why we didn't have more options to print dates (and/or their parts). I've gathered "date formats" printing options from various sources and started implementing all those different formats and options. I have implemented 6 new methods to print the different date components/parts/timespans.
Do you think this stuff would be useful?
Yes I often just want the one that is not there :) Note that in French we have
14 mai 2002
So it would be good to support it. I imagine that we can with the #(d m y) description.
Anything missing?
Here are the supported format options I came up with. Most of them are already implemented, now it's just a matter of writing the numerous missing unit tests! ;)
Comments, complaints and suggestions are welcome!
a) Year formats (#printYearWithFormat:)
May 14, -7 May 14 2002
1-Year, signed (-7 and 2002) 2-Year, last 2 digits, signed (-07 and 02) 3-Year, last 3 digits, signed (-007 and 002) 4-Year, last 4 digits or more digits if year is greater than 9999, signed (-0007 and 2002) 5-Year, unsigned (7 and 2002) 6-Year, last 2 digits, unsigned (07 and 02) 7-Year, last 3 digits, unsigned (007 and 002) 8-Year, last 4 digits or more digits if year is greater than 9999, unsigned (0007 and 2002) 9-Year in roman numerals (n/a and MMII) 10-Year (full, no padding) with epoch AD/BC (7 BC and 2002 AD) 11-Year (full, no padding) with epoch A.D./B.C. (7 B.C. and 2002 A.D.) 12-Year (full, no padding) with epoch ad/bc (7 bc and 2002 ad) 13-Year (full, no padding) with epoch a.d./b.c. (7 b.c. and 2002 a.d.)
b) Month formats (#printMonthWithFormat:)
Tuesday, September 18 2012
1-Month , no padding (9) 2-Month padded to 2 digits (09) 3-Month name abreviation (Sep) 4-Month name (September) 5-Month name abreviation in uppercase (SEP) 6-Month name in uppercase (SEPTEMBER) 7-Month name abreviation in lowercase (sep) 8-Month name in lowercase (september) 9-Month number in Roman numerals (IX)
c) Day formats (#printDayWithFormat:)
Saturday, December 1 2012
1-Day of the month, no padding (1) 2-Day of the month padded to 2 digits (01) 3-Abbreviated day of week (Sat) 4-Complete day of week (Saturday) 5-Abbreviated day of week in uppercase (SAT) 6-Complete day of week in uppercase (SATURDAY) 7-Abbreviated day of week in lowercase (sat) 8-Complete day of week lowercase (saturday) 9-Day of the month with english suffix (1st) 10-Day of the year (336) 11-Day of the year with English suffix (336th) 12-Day of the week index [0=sunday 6 = saturday] (6) 13-Day of the week index [1=sunday 7 = saturday] (7) 14-Day of the week index [0=monday 6 = sunday] (5) 15-Day of the week index [1=monday 7 = sunday] (6) 16-Julian day, i.e. days since January 1, 4712 BC (2456263)
d) Week formats (#printWeekWithFormat:)
1-Week of the year (1..53) where Sunday if the first day of the week 2-Week of the year (1..53) where Monday if the first day of the week
e) Era formats (#printEraWithFormat:)
1-Era AD or BC 2-Era A.D. or B.C. 3-Era ad or bc 4-Era a.d. or b.c.
f) Century formats (#printCenturyWithFormat:)
1-Century (20) 2-Century with English suffix (20th)
----------------- Benoit St-Jean Yahoo! Messenger: bstjean A standpoint is an intellectual horizon of radius zero. (Albert Einstein)