DateTim...ale::ml(3)

💖 so you wanna know about DateTime::Locale::ml(3)

okay bestie, welcome to part 1 of 2 of the User Contributed Perl Documentation for DateTime::Locale::ml. it's giving very "niche but iconic" — we're talking the locale data examples for the Malayalam (ml) locale. grab a snack 🍓, this one's a long read.


✨ NAME ✨

DateTime::Locale::ml — locale data examples for the Malayalam (ml) locale. that's the whole name, periodt. 👑


🌸 DESCRIPTION 🌸

this pod file is literally just a showcase. it contains examples of the locale data available for the Malayalam locale — every day name, month name, quarter, era, and every single date/time format pattern, all laid out so you can see exactly what you'd get. no cap, it's a whole museum. 🖼️


🗓️ Days

Wide (format)

the full-length day names, format style:

തിങകളാഴച
ചൊവവാഴച
ബധനാഴച
വയാഴാഴച
വെളളിയാഴച
ശനിയാഴച
ഞായറാഴച

Abbreviated (format)

shortened versions, format style — still cute, just quicker:

തിങകൾ
ചൊവവ
ബധൻ
വയാഴം
വെളളി
ശനി
ഞായർ

Narrow (format)

the itty-bitty ones, format style. be careful, these are teeny:

തി
ചൊ
ബു
വയാ
വെ
ശ
ഞ

Wide (stand-alone)

same wide names, but stand-alone style:

തിങകളാഴച
ചൊവവാഴച
ബധനാഴച
വയാഴാഴച
വെളളിയാഴച
ശനിയാഴച
ഞായറാഴച

Abbreviated (stand-alone)

abbreviated, stand-alone style:

തിങകൾ
ചൊവവ
ബധൻ
വയാഴം
വെളളി
ശനി
ഞായർ

Narrow (stand-alone)

narrow, stand-alone style. and yes — the last one here is ഞാ, while the format narrow version up there was ഞ. tiny difference, huge vibes. don't mix 'em up 💅

തി
ചൊ
ബു
വയാ
വെ
ശ
ഞാ

🌙 Months

Wide (format)

all twelve, full length:

ജനവരി
ഫെബരവരി
മാർചച്
ഏപരിൽ
മേയ്
ജൺ
ജലൈ
ഓഗസററ്
സെപററംബർ
ഒകടോബർ
നവംബർ
ഡിസംബർ

Abbreviated (format)

abbreviated months, format style:

ജനു
ഫെബരു
മാർ
ഏപരി
മേയ്
ജൺ
ജലൈ
ഓഗ
സെപററം
ഒകടോ
നവം
ഡിസം

Narrow (format)

the mini months, format style:

ജ
ഫെ
മാ
ഏ
മെ
ജൺ
ജൂ
ഓ
സെ
ഒ
ന
ഡി

Wide (stand-alone)

wide months again, stand-alone this time:

ജനവരി
ഫെബരവരി
മാർചച്
ഏപരിൽ
മേയ്
ജൺ
ജലൈ
ഓഗസററ്
സെപററംബർ
ഒകടോബർ
നവംബർ
ഡിസംബർ

Abbreviated (stand-alone)

abbreviated, standing on its own:

ജനു
ഫെബരു
മാർ
ഏപരി
മേയ്
ജൺ
ജലൈ
ഓഗ
സെപററം
ഒകടോ
നവം
ഡിസം

Narrow (stand-alone)

narrow months, stand-alone. yes it's identical to the format one, no that's not a typo, that's just the data 🫶

ജ
ഫെ
മാ
ഏ
മെ
ജൺ
ജൂ
ഓ
സെ
ഒ
ന
ഡി

🧚 Quarters

Wide (format)

quarter one through four, all dressed up:

ഒനനാം പാദം
രണടാം പാദം
മനനാം പാദം
നാലാം പാദം

Abbreviated (format)

abbreviated quarters — and listen, they're the exact same strings as the wide ones here, so don't come for me, I'm just the messenger:

ഒനനാം പാദം
രണടാം പാദം
മനനാം പാദം
നാലാം പാദം

Narrow (format)

narrow quarters are literally just digits. iconic minimalism:

1
2
3
4

Wide (stand-alone)

wide quarters, stand-alone:

ഒനനാം പാദം
രണടാം പാദം
മനനാം പാദം
നാലാം പാദം

Abbreviated (stand-alone)

abbreviated quarters, stand-alone — same strings again, slay for consistency:

ഒനനാം പാദം
രണടാം പാദം
മനനാം പാദം
നാലാം പാദം

Narrow (stand-alone)

narrow quarters, stand-alone, back to being digits:

1
2
3
4

👑 Eras

Wide (format)

the big historical era names:

കരിസതവിന് മമപ്
ആനനോ ഡൊമിനി

Abbreviated (format)

short and sweet:

ബി.സി.
എഡി

Narrow (format)

even shorter (well — same short, actually):

ബി.സി.
എഡി
heads up: Eras only ships format styles in this data — no stand-alone block down here, so don't go looking for one 🔍

🌈 Date Formats

these are the date-only styles, and each one shows the same three timestamps so you can compare. the timestamps are 2008-02-05T18:30:30, 1995-12-22T09:05:02, and -0010-09-15T04:44:23. keep those exact, they're load-bearing.

Full

2008-02-05T18:30:30 = 2008, ഫെബരവരി 5, ചൊവവാഴച
1995-12-22T09:05:02 = 1995, ഡിസംബർ 22, വെളളിയാഴച
-0010-09-15T04:44:23 = -10, സെപററംബർ 15, ശനിയാഴച

Long

2008-02-05T18:30:30 = 2008, ഫെബരവരി 5
1995-12-22T09:05:02 = 1995, ഡിസംബർ 22
-0010-09-15T04:44:23 = -10, സെപററംബർ 15

Medium

2008-02-05T18:30:30 = 2008, ഫെബരു 5
1995-12-22T09:05:02 = 1995, ഡിസം 22
-0010-09-15T04:44:23 = -10, സെപററം 15

Short

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

⏰ Time Formats

time-only now. notice how Full and Long both slap a UTC on the end, but Medium and Short keep it casual and drop it.

Full

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

Long

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

Medium

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

Short

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

🦋 Datetime Formats

date + time, glued together, exactly how the locale wants it.

Full

2008-02-05T18:30:30 = 2008, ഫെബരവരി 5, ചൊവവാഴച 6:30:30 PM UTC
1995-12-22T09:05:02 = 1995, ഡിസംബർ 22, വെളളിയാഴച 9:05:02 AM UTC
-0010-09-15T04:44:23 = -10, സെപററംബർ 15, ശനിയാഴച 4:44:23 AM UTC

Long

2008-02-05T18:30:30 = 2008, ഫെബരവരി 5 6:30:30 PM UTC
1995-12-22T09:05:02 = 1995, ഡിസംബർ 22 9:05:02 AM UTC
-0010-09-15T04:44:23 = -10, സെപററംബർ 15 4:44:23 AM UTC

Medium

2008-02-05T18:30:30 = 2008, ഫെബരു 5 6:30:30 PM
1995-12-22T09:05:02 = 1995, ഡിസം 22 9:05:02 AM
-0010-09-15T04:44:23 = -10, സെപററം 15 4:44:23 AM

Short

2008-02-05T18:30:30 = 5/2/08 6:30 PM
1995-12-22T09:05:02 = 22/12/95 9:05 AM
-0010-09-15T04:44:23 = 15/9/-10 4:44 AM

🎀 Available Formats

okay this is the big one — every named pattern this locale exposes, with the pattern itself in parentheses next to the name. the B in a bunch of these is a placeholder that just renders as literal B in the output examples below, and the v renders as UTC. iykyk. 💅

Bh (B h)

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

Bhm (B h:mm)

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

Bhms (B h:mm:ss)

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

E (ccc)

2008-02-05T18:30:30 = ചൊവവ
1995-12-22T09:05:02 = വെളളി
-0010-09-15T04:44:23 = ശനി

EBhm (E, B h:mm)

2008-02-05T18:30:30 = ചൊവവ, B 6:30
1995-12-22T09:05:02 = വെളളി, B 9:05
-0010-09-15T04:44:23 = ശനി, B 4:44

EBhms (E, B h:mm:ss)

2008-02-05T18:30:30 = ചൊവവ, B 6:30:30
1995-12-22T09:05:02 = വെളളി, B 9:05:02
-0010-09-15T04:44:23 = ശനി, B 4:44:23

EHm (E HH:mm)

2008-02-05T18:30:30 = ചൊവവ 18:30
1995-12-22T09:05:02 = വെളളി 09:05
-0010-09-15T04:44:23 = ശനി 04:44

EHms (E 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

Ed (d, E)

2008-02-05T18:30:30 = 5, ചൊവവ
1995-12-22T09:05:02 = 22, വെളളി
-0010-09-15T04:44:23 = 15, ശനി

Ehm (E 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

Ehms (E 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

Gy (G y)

2008-02-05T18:30:30 = എഡി 2008
1995-12-22T09:05:02 = എഡി 1995
-0010-09-15T04:44:23 = ബി.സി. -10

GyMMM (G y MMM)

2008-02-05T18:30:30 = എഡി 2008 ഫെബരു
1995-12-22T09:05:02 = എഡി 1995 ഡിസം
-0010-09-15T04:44:23 = ബി.സി. -10 സെപററം

GyMMMEd (G y MMM d, E)

2008-02-05T18:30:30 = എഡി 2008 ഫെബരു 5, ചൊവവ
1995-12-22T09:05:02 = എഡി 1995 ഡിസം 22, വെളളി
-0010-09-15T04:44:23 = ബി.സി. -10 സെപററം 15, ശനി

GyMMMd (G y MMM d)

2008-02-05T18:30:30 = എഡി 2008 ഫെബരു 5
1995-12-22T09:05:02 = എഡി 1995 ഡിസം 22
-0010-09-15T04:44:23 = ബി.സി. -10 സെപററം 15

GyMd (M/d/y G)

2008-02-05T18:30:30 = 2/5/2008 എഡി
1995-12-22T09:05:02 = 12/22/1995 എഡി
-0010-09-15T04:44:23 = 9/15/-10 ബി.സി.

H (HH)

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

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 (d/M, E)

2008-02-05T18:30:30 = 5/2, ചൊവവ
1995-12-22T09:05:02 = 22/12, വെളളി
-0010-09-15T04:44:23 = 15/9, ശനി

MMM (LLL)

2008-02-05T18:30:30 = ഫെബരു
1995-12-22T09:05:02 = ഡിസം
-0010-09-15T04:44:23 = സെപററം

MMMEd (MMM d, E)

2008-02-05T18:30:30 = ഫെബരു 5, ചൊവവ
1995-12-22T09:05:02 = ഡിസം 22, വെളളി
-0010-09-15T04:44:23 = സെപററം 15, ശനി

MMMMEd (MMMM d, E)

2008-02-05T18:30:30 = ഫെബരവരി 5, ചൊവവ
1995-12-22T09:05:02 = ഡിസംബർ 22, വെളളി
-0010-09-15T04:44:23 = സെപററംബർ 15, ശനി

MMMMW-count-one (MMMM - ആഴച W)

2008-02-05T18:30:30 = ഫെബരവരി - ആഴച 1
1995-12-22T09:05:02 = ഡിസംബർ - ആഴച 3
-0010-09-15T04:44:23 = സെപററംബർ - ആഴച 2

MMMMW-count-other (MMMM - ആഴച W)

2008-02-05T18:30:30 = ഫെബരവരി - ആഴച 1
1995-12-22T09:05:02 = ഡിസംബർ - ആഴച 3
-0010-09-15T04:44:23 = സെപററംബർ - ആഴച 2

MMMMd (MMMM d)

2008-02-05T18:30:30 = ഫെബരവരി 5
1995-12-22T09:05:02 = ഡിസംബർ 22
-0010-09-15T04:44:23 = സെപററംബർ 15

MMMd (MMM d)

and that's exactly where part 1 runs out of data, bestie — part 2 picks it right back up from here 🫶✨

...and the drip continues, no heading needed bestie, we're literally mid-list:

2008-02-05T18:30:30 = ഫെബരു 5
1995-12-22T09:05:02 = ഡിസം 22
-0010-09-15T04:44:23 = സെപററം 15

MMdd (dd/MM)

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

Md (d/M)

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

d (d)

Just the day, no notes 💅

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)

the v is the vibe check of time zones, aka UTC here 🕰️

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
Not me pointing at -10 — yes, negative years are a whole thing and the output literally shows -10. Iconic and slightly cursed. 💀

yM (y-MM)

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

yMEd (d-M-y, E)

2008-02-05T18:30:30 = 5-2-2008, ചൊവവ
1995-12-22T09:05:02 = 22-12-1995, വെളളി
-0010-09-15T04:44:23 = 15-9--10, ശനി

yMM (y-MM)

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

yMMM (y MMM)

2008-02-05T18:30:30 = 2008 ഫെബരു
1995-12-22T09:05:02 = 1995 ഡിസം
-0010-09-15T04:44:23 = -10 സെപററം

yMMMEd (y MMM d, E)

2008-02-05T18:30:30 = 2008 ഫെബരു 5, ചൊവവ
1995-12-22T09:05:02 = 1995 ഡിസം 22, വെളളി
-0010-09-15T04:44:23 = -10 സെപററം 15, ശനി

yMMMM (y MMMM)

the full-month glow-up ✨

2008-02-05T18:30:30 = 2008 ഫെബരവരി
1995-12-22T09:05:02 = 1995 ഡിസംബർ
-0010-09-15T04:44:23 = -10 സെപററംബർ

yMMMd (y MMM d)

2008-02-05T18:30:30 = 2008 ഫെബരു 5
1995-12-22T09:05:02 = 1995 ഡിസം 22
-0010-09-15T04:44:23 = -10 സെപററം 15

yMd (d/M/y)

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

yQQQ (y QQQ)

quarters, but make them short 🎀

2008-02-05T18:30:30 = 2008 ഒനനാം പാദം
1995-12-22T09:05:02 = 1995 നാലാം പാദം
-0010-09-15T04:44:23 = -10 മനനാം പാദം

yQQQQ (y QQQQ)

quarters again, same energy, long form:

2008-02-05T18:30:30 = 2008 ഒനനാം പാദം
1995-12-22T09:05:02 = 1995 നാലാം പാദം
-0010-09-15T04:44:23 = -10 മനനാം പാദം

yw-count-one (Y-ലെ ആഴച w)

week-of-year, singular flavour 🗓️

2008-02-05T18:30:30 = 2008-ലെ ആഴച 6
1995-12-22T09:05:02 = 1995-ലെ ആഴച 51
-0010-09-15T04:44:23 = -10-ലെ ആഴച 37

yw-count-other (Y-ലെ ആഴച w)

and the "other" plural form, same numbers, still serving:

2008-02-05T18:30:30 = 2008-ലെ ആഴച 6
1995-12-22T09:05:02 = 1995-ലെ ആഴച 51
-0010-09-15T04:44:23 = -10-ലെ ആഴച 37

Miscellaneous 💫

the little settings that lowkey rule everything:

  • Prefers 24 hour time? No
  • Local first day of the week: 1 (തിങകളാഴച)

Strftime Patterns 🌸

for the old-school girlies who still think in strftime:

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

2008-02-05T18:30:30 = ചൊവവ ഫെബരു  5 18:30:30 2008
1995-12-22T09:05:02 = വെളളി ഡിസം 22 09:05:02 1995
-0010-09-15T04:44:23 = ശനി സെപററം 15 04:44:23 -10

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

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

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 the whole thing — go be date-literate, bestie 🫶


mwah, that's a wrap from your girl — this is perl v5.42.0, dated 2024-12-12, and you just read DateTim...ale::ml(3) 💖✨ no cap, the Malayalam locale ate and left no crumbs 🎀

📦 where this page comes from