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
- opensuse-leap 16.0: perl-DateTime-Locale 1.440000-160000.2.2 · Artistic-1.0 OR GPL-1.0-or-later
- 💖 girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms