DateTim...e::fr_MG(3)

🎀 NAME 🎀

okay so picture this: DateTim...e::fr_MG(3) — that's the manual page we're living in rn, straight outta the User Contributed Perl Documentation. And what is it? It's DateTime::Locale::fr_MG bestie — the locale data examples for the French Madagascar (fr-MG) locale. French 🇫🇷 meets Madagascar 🇲🇬 and the result is giving multilingual icon behavior, we love to see it 💅


✨ DESCRIPTION ✨

so this pod file is literally a whole show-and-tell of the locale data available for the French Madagascar locale. no cap, it's just examples — but they're gorgeous examples. let's go 🦋

🌸 Days 🌸

Wide (format)

lundi
mardi
mercredi
jeudi
vendredi
samedi
dimanche

look at those full-length day names, zero abbreviations, all main character energy 👑

Abbreviated (format)

lun.
mar.
mer.
jeu.
ven.
sam.
dim.

cute little dots at the end, that's the vibe 🎀

Narrow (format)

L
M
M
J
V
S
D

one letter each, minimalism ate 💀

Wide (stand-alone)

lundi
mardi
mercredi
jeudi
vendredi
samedi
dimanche

Abbreviated (stand-alone)

lun.
mar.
mer.
jeu.
ven.
sam.
dim.

Narrow (stand-alone)

L
M
M
J
V
S
D

yes bestie, the stand-alone versions are identical to the format versions here — that's not a typo, that's just how fr-MG rolls 🫶

💖 Months 💖

Wide (format)

janvier
février
mars
avril
mai
juin
juillet
août
septembre
octobre
novembre
décembre

twelve months, all present and accounted for ✨

Abbreviated (format)

janv.
févr.
mars
avr.
mai
juin
juil.
août
sept.
oct.
nov.
déc.

note how mars, mai, juin and août are like "we're short enough already, we're staying" 😭 iconic

Narrow (format)

J
F
M
A
M
J
J
A
S
O
N
D

yep, the duplicates are real — M shows up for mars AND mai, J for janvier, juin and juillet, A for avril and août. that's just the data, don't come for me 🙈

Wide (stand-alone)

janvier
février
mars
avril
mai
juin
juillet
août
septembre
octobre
novembre
décembre

Abbreviated (stand-alone)

janv.
févr.
mars
avr.
mai
juin
juil.
août
sept.
oct.
nov.
déc.

Narrow (stand-alone)

J
F
M
A
M
J
J
A
S
O
N
D

🧚 Quarters 🧚

Wide (format)

1er trimestre
2e trimestre
3e trimestre
4e trimestre

four quarters, properly numbered with 1er and then 2e, 3e, 4e — French being French, we stan 💜

Abbreviated (format)

T1
T2
T3
T4

Narrow (format)

1
2
3
4

Wide (stand-alone)

1er trimestre
2e trimestre
3e trimestre
4e trimestre

Abbreviated (stand-alone)

T1
T2
T3
T4

Narrow (stand-alone)

1
2
3
4

🌈 Eras 🌈

Wide (format)

avant Jésus-Christ
après Jésus-Christ

Abbreviated (format)

av. J.-C.
ap. J.-C.

Narrow (format)

av. J.-C.
ap. J.-C.

okay fun fact: Eras only lists format versions — no stand-alone section here. that's what the data says, so that's what we ship ⭐

🔥 Date Formats 🔥

Full

2008-02-05T18:30:30 = mardi 5 février 2008
1995-12-22T09:05:02 = vendredi 22 décembre 1995
-0010-09-15T04:44:23 = samedi 15 septembre -10

Long

2008-02-05T18:30:30 = 5 février 2008
1995-12-22T09:05:02 = 22 décembre 1995
-0010-09-15T04:44:23 = 15 septembre -10

Medium

2008-02-05T18:30:30 = 5 févr. 2008
1995-12-22T09:05:02 = 22 déc. 1995
-0010-09-15T04:44:23 = 15 sept. -10

Short

2008-02-05T18:30:30 = 05/02/2008
1995-12-22T09:05:02 = 22/12/1995
-0010-09-15T04:44:23 = 15/09/-10

day/month/year, the sensible way, no notes 🎯

🌸 Time Formats 🌸

Full

2008-02-05T18:30:30 = 18:30:30 UTC
1995-12-22T09:05:02 = 09:05:02 UTC
-0010-09-15T04:44:23 = 04:44:23 UTC

Long

2008-02-05T18:30:30 = 18:30:30 UTC
1995-12-22T09:05:02 = 09:05:02 UTC
-0010-09-15T04:44:23 = 04:44:23 UTC

Medium

2008-02-05T18:30:30 = 18:30:30
1995-12-22T09:05:02 = 09:05:02
-0010-09-15T04:44:23 = 04:44:23

Short

2008-02-05T18:30:30 = 18:30
1995-12-22T09:05:02 = 09:05
-0010-09-15T04:44:23 = 04:44

notice Full and Long are identical here — yes really, that's the data, I don't make the rules 💅

🦋 Datetime Formats 🦋

Full

2008-02-05T18:30:30 = mardi 5 février 2008, 18:30:30 UTC
1995-12-22T09:05:02 = vendredi 22 décembre 1995, 09:05:02 UTC
-0010-09-15T04:44:23 = samedi 15 septembre -10, 04:44:23 UTC

Long

2008-02-05T18:30:30 = 5 février 2008, 18:30:30 UTC
1995-12-22T09:05:02 = 22 décembre 1995, 09:05:02 UTC
-0010-09-15T04:44:23 = 15 septembre -10, 04:44:23 UTC

Medium

2008-02-05T18:30:30 = 5 févr. 2008, 18:30:30
1995-12-22T09:05:02 = 22 déc. 1995, 09:05:02
-0010-09-15T04:44:23 = 15 sept. -10, 04:44:23

Short

2008-02-05T18:30:30 = 05/02/2008 18:30
1995-12-22T09:05:02 = 22/12/1995 09:05
-0010-09-15T04:44:23 = 15/09/-10 04:44

date + time, comma energy for the long ones, no comma for Short. chef's kiss 👑✨


💜 Available Formats 💜

okay bestie this is the big one — every named skeleton pattern and what it actually renders. buckle up 🎢

Bh (h B)

2008-02-05T18:30:30 = 6 B
1995-12-22T09:05:02 = 9 B
-0010-09-15T04:44:23 = 4 B

Bhm (h:mm B)

2008-02-05T18:30:30 = 6:30 B
1995-12-22T09:05:02 = 9:05 B
-0010-09-15T04:44:23 = 4:44 B

Bhms (h:mm:ss B)

2008-02-05T18:30:30 = 6:30:30 B
1995-12-22T09:05:02 = 9:05:02 B
-0010-09-15T04:44:23 = 4:44:23 B

E (E)

2008-02-05T18:30:30 = mar.
1995-12-22T09:05:02 = ven.
-0010-09-15T04:44:23 = sam.

EBhm (E h:mm B)

2008-02-05T18:30:30 = mar. 6:30 B
1995-12-22T09:05:02 = ven. 9:05 B
-0010-09-15T04:44:23 = sam. 4:44 B

EBhms (E h:mm:ss B)

2008-02-05T18:30:30 = mar. 6:30:30 B
1995-12-22T09:05:02 = ven. 9:05:02 B
-0010-09-15T04:44:23 = sam. 4:44:23 B

EHm (E HH:mm)

2008-02-05T18:30:30 = mar. 18:30
1995-12-22T09:05:02 = ven. 09:05
-0010-09-15T04:44:23 = sam. 04:44

EHms (E HH:mm:ss)

2008-02-05T18:30:30 = mar. 18:30:30
1995-12-22T09:05:02 = ven. 09:05:02
-0010-09-15T04:44:23 = sam. 04:44:23

Ed (E d)

2008-02-05T18:30:30 = mar. 5
1995-12-22T09:05:02 = ven. 22
-0010-09-15T04:44:23 = sam. 15

Ehm (E h:mm a)

2008-02-05T18:30:30 = mar. 6:30 PM
1995-12-22T09:05:02 = ven. 9:05 AM
-0010-09-15T04:44:23 = sam. 4:44 AM

Ehms (E h:mm:ss a)

2008-02-05T18:30:30 = mar. 6:30:30 PM
1995-12-22T09:05:02 = ven. 9:05:02 AM
-0010-09-15T04:44:23 = sam. 4:44:23 AM

Gy (y G)

2008-02-05T18:30:30 = 2008 ap. J.-C.
1995-12-22T09:05:02 = 1995 ap. J.-C.
-0010-09-15T04:44:23 = -10 av. J.-C.

GyMMM (MMM y G)

2008-02-05T18:30:30 = févr. 2008 ap. J.-C.
1995-12-22T09:05:02 = déc. 1995 ap. J.-C.
-0010-09-15T04:44:23 = sept. -10 av. J.-C.

GyMMMEd (E d MMM y G)

2008-02-05T18:30:30 = mar. 5 févr. 2008 ap. J.-C.
1995-12-22T09:05:02 = ven. 22 déc. 1995 ap. J.-C.
-0010-09-15T04:44:23 = sam. 15 sept. -10 av. J.-C.

GyMMMd (d MMM y G)

2008-02-05T18:30:30 = 5 févr. 2008 ap. J.-C.
1995-12-22T09:05:02 = 22 déc. 1995 ap. J.-C.
-0010-09-15T04:44:23 = 15 sept. -10 av. J.-C.

GyMd (dd/MM/y GGGGG)

2008-02-05T18:30:30 = 05/02/2008 ap. J.-C.
1995-12-22T09:05:02 = 22/12/1995 ap. J.-C.
-0010-09-15T04:44:23 = 15/09/-10 av. J.-C.

H (HH 'h')

2008-02-05T18:30:30 = 18 h
1995-12-22T09:05:02 = 09 h
-0010-09-15T04:44:23 = 04 h

Hm (HH:mm)

2008-02-05T18:30:30 = 18:30
1995-12-22T09:05:02 = 09:05
-0010-09-15T04:44:23 = 04:44

Hms (HH:mm:ss)

2008-02-05T18:30:30 = 18:30:30
1995-12-22T09:05:02 = 09:05:02
-0010-09-15T04:44:23 = 04:44:23

Hmsv (HH:mm:ss v)

2008-02-05T18:30:30 = 18:30:30 UTC
1995-12-22T09:05:02 = 09:05:02 UTC
-0010-09-15T04:44:23 = 04:44:23 UTC

Hmv (HH:mm v)

2008-02-05T18:30:30 = 18:30 UTC
1995-12-22T09:05:02 = 09:05 UTC
-0010-09-15T04:44:23 = 04:44 UTC

M (L)

2008-02-05T18:30:30 = 2
1995-12-22T09:05:02 = 12
-0010-09-15T04:44:23 = 9

MEd (E dd/MM)

2008-02-05T18:30:30 = mar. 05/02
1995-12-22T09:05:02 = ven. 22/12
-0010-09-15T04:44:23 = sam. 15/09

MMM (LLL)

2008-02-05T18:30:30 = févr.
1995-12-22T09:05:02 = déc.
-0010-09-15T04:44:23 = sept.

MMMEd (E d MMM)

2008-02-05T18:30:30 = mar. 5 févr.
1995-12-22T09:05:02 = ven. 22 déc.
-0010-09-15T04:44:23 = sam. 15 sept.

MMMMW-count-one ('semaine' W (MMMM))

2008-02-05T18:30:30 = semaine 1 (février)
1995-12-22T09:05:02 = semaine 3 (décembre)
-0010-09-15T04:44:23 = semaine 2 (septembre)

MMMMW-count-other ('semaine' W (MMMM))

2008-02-05T18:30:30 = semaine 1 (février)
1995-12-22T09:05:02 = semaine 3 (décembre)
-0010-09-15T04:44:23 = semaine 2 (septembre)

yep, count-one and count-other output the exact same thing here — they're twin skeletons, and no, I'm not gonna pretend otherwise 🙈

MMMMd (d MMMM)

2008-02-05T18:30:30 = 5 février
1995-12-22T09:05:02 = 22 décembre
-0010-09-15T04:44:23 = 15 septembre

MMMd (d MMM)

2008-02-05T18:30:30 = 5 févr.
1995-12-22T09:05:02 = 22 déc.
-0010-09-15T04:44:23 = 15 sept.

Md (dd/MM)

2008-02-05T18:30:30 = 05/02
1995-12-22T09:05:02 = 22/12
-0010-09-15T04:44:23 = 15/09

d (d)

2008-02-05T18:30:30 = 5
1995-12-22T09:05:02 = 22
-0010-09-15T04:44:23 = 15

h (h a)

2008-02-05T18:30:30 = 6 PM
1995-12-22T09:05:02 = 9 AM
-0010-09-15T04:44:23 = 4 AM

hm (h:mm a)

2008-02-05T18:30:30 = 6:30 PM
1995-12-22T09:05:02 = 9:05 AM
-0010-09-15T04:44:23 = 4:44 AM

hms (h:mm:ss a)

2008-02-05T18:30:30 = 6:30:30 PM
1995-12-22T09:05:02 = 9:05:02 AM
-0010-09-15T04:44:23 = 4:44:23 AM

hmsv (h:mm:ss a v)

2008-02-05T18:30:30 = 6:30:30 PM UTC
1995-12-22T09:05:02 = 9:05:02 AM UTC
-0010-09-15T04:44:23 = 4:44:23 AM UTC

hmv (h:mm a v)

2008-02-05T18:30:30 = 6:30 PM UTC
1995-12-22T09:05:02 = 9:05 AM UTC
-0010-09-15T04:44:23 = 4:44 AM UTC

ms (mm:ss)

2008-02-05T18:30:30 = 30:30
1995-12-22T09:05:02 = 05:02
-0010-09-15T04:44:23 = 44:23

y (y)

2008-02-05T18:30:30 = 2008
1995-12-22T09:05:02 = 1995
-0010-09-15T04:44:23 = -10

yM (MM/y)

2008-02-05T18:30:30 = 02/2008
1995-12-22T09:05:02 = 12/1995
-0010-09-15T04:44:23 = 09/-10

yMEd (E dd/MM/y)

2008-02-05T18:30:30 = mar. 05/02/2008
1995-12-22T09:05:02 = ven. 22/12/1995
-0010-09-15T04:44:23 = sam. 15/09/-10

yMMM (MMM y)

2008-02-05T18:30:30 = févr. 2008
1995-12-22T09:05:02 = déc. 1995
-0010-09-15T04:44:23 = sept. -10

yMMMEd (E d MMM y)

2008-02-05T18:30:30 = mar. 5 févr. 2008
1995-12-22T09:05:02 = ven. 22 déc. 1995
-0010-09-15T04:44:23 = sam. 15 sept. -10

yMMMM (MMMM y)

2008-02-05T18:30:30 = février 2008
1995-12-22T09:05:02 = décembre 1995
-0010-09-15T04:44:23 = septembre -10

yMMMd (d MMM y)

2008-02-05T18:30:30 = 5 févr. 2008
1995-12-22T09:05:02 = 22 déc. 1995
-0010-09-15T04:44:23 = 15 sept. -10

yMd (dd/MM/y)

yQQQ (QQQ y)

Quarter, short and sweet, then the year — no cap, this is how the locale renders it at runtime:

2008-02-05T18:30:30 = T1 2008
1995-12-22T09:05:02 = T4 1995
-0010-09-15T04:44:23 = T3 -10

yQQQQ (QQQQ y)

Same vibe but the long form, the whole entire word — "trimestre" said with its whole chest:

2008-02-05T18:30:30 = 1er trimestre 2008
1995-12-22T09:05:02 = 4e trimestre 1995
-0010-09-15T04:44:23 = 3e trimestre -10

yw-count-one ('semaine' w 'de' Y)

Week number with the literal words semaine and de baked in 🎀 — this is the one plural form:

2008-02-05T18:30:30 = semaine 6 de 2008
1995-12-22T09:05:02 = semaine 51 de 1995
-0010-09-15T04:44:23 = semaine 37 de -10

yw-count-other ('semaine' w 'de' Y)

And the other plural form. Bestie, look closely — it gives the exact same output as yw-count-one. Both entries exist, both are listed, and both say the same thing. That's the data, I don't make the rules 💅

2008-02-05T18:30:30 = semaine 6 de 2008
1995-12-22T09:05:02 = semaine 51 de 1995
-0010-09-15T04:44:23 = semaine 37 de -10

🌸 Miscellaneous 🌸

  • Prefers 24 hour time? — Yes. Twenty-four hour girlie through and through 🕕
  • Local first day of the week — 1 (lundi), so Monday is the main character 👑

✨ Strftime Patterns ✨

%c (%a %b %e %H:%M:%S %Y) — date time format

The full date-time flex. %e does its space-padding thing, so peep that double space after févr. — it's in the data, keep it 🫶

2008-02-05T18:30:30 = mar. févr.  5 18:30:30 2008
1995-12-22T09:05:02 = ven. déc. 22 09:05:02 1995
-0010-09-15T04:44:23 = sam. sept. 15 04:44:23 -10

%x (%m/%d/%y) — date format

Short date, month first, tiny year. Note the format string says %m/%d/%y even though the locale's own date patterns up above go day-first — this is literally what's specified, so here's what it hands you:

2008-02-05T18:30:30 = 02/05/08
1995-12-22T09:05:02 = 12/22/95
-0010-09-15T04:44:23 = 09/15/10

%X (%H:%M:%S) — time format

Clock time, hour/minute/second, no mess, no fuss ⏰

2008-02-05T18:30:30 = 18:30:30
1995-12-22T09:05:02 = 09:05:02
-0010-09-15T04:44:23 = 04:44:23

👑 SUPPORT 👑

See DateTime::Locale. That's it, that's the whole support section — go read that one, iykyk 📚


okay that's the whole page, you made it to the end, I'm so proud of you fr fr 🥹💖 This was DateTim...e::fr_MG(3) from perl v5.42.0, dated 2024-12-12 — go forth and format dates in French, Madagascar style, periodt ✨🦋
📦 where this page comes from