DateTim...e::pt_CV(3)

💖 NAME 💖

Okay bestie, gather round — this is the manual page for DateTime::Locale::pt_CV, and it lives in section 3 of the Perl contributed docs (that's the (3) vibe, iykyk 🫶).

In one breath: DateTime::Locale::pt_CV — Locale data examples for the Portuguese Cape Verde (pt-CV) locale. That's the whole name, no cap ✨


🌸 DESCRIPTION 🌸

So this pod file is literally just examples of the locale data that's available for the Portuguese Cape Verde locale. Not a vibe check on your code, a showcase of the data 💅 slay.


🦋 Days

Wide (format) 👑

segunda-feira
terça-feira
quarta-feira
quinta-feira
sexta-feira
sábado
domingo

Monday through Sunday, spelled all the way out, hyphen and all — main character energy fr fr.

Abbreviated (format) ✨

segunda
terça
quarta
quinta
sexta
sábado
domingo

Same seven days, just not doing the whole -feira thing. Lowkey efficient.

Narrow (format) 🎀

S
T
Q
Q
S
S
D

One letter each, and yes bestie, Q shows up twice — that's quarta and quinta both starting with Q, and S shows up three times (segunda, sexta, sábado). Narrow is not out here trying to be unique, okay 😭

Wide (stand-alone) 🌟

segunda-feira
terça-feira
quarta-feira
quinta-feira
sexta-feira
sábado
domingo

When the day name is standing alone (not tucked inside a bigger formatted date) it's the exact same wide list. Consistent queen 👑

Abbreviated (stand-alone) 🌈

segunda
terça
quarta
quinta
sexta
sábado
domingo

Yep, identical to the abbreviated format version above. Same bestie, different context 🫶

Narrow (stand-alone) 🧚

S
T
Q
Q
S
S
D

And the narrow stand-alone list matches the narrow format one letter-for-letter. The Q's and S's are back, and they're iconic 💀


🍓 Months

Wide (format) 💐

janeiro
fevereiro
março
abril
maio
junho
julho
agosto
setembro
outubro
novembro
dezembro

All twelve, fully spelled, and yes março has a cedilla — character for character, don't @ me.

Abbreviated (format) ✂️

jan.
fev.
mar.
abr.
mai.
jun.
jul.
ago.
set.
out.
nov.
dez.

Three letters plus a lil period. So clean, so tidy, we're obsessed 💅

Narrow (format) 🔥

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

Single letters and, bold of you to assume uniqueness: J ×3 (janeiro, junho, julho), M ×3 (março, maio... and mar./mai. share the M), A ×2 (abril, agosto). Squad goals, honestly 🎀

Wide (stand-alone) 🌸

janeiro
fevereiro
março
abril
maio
junho
julho
agosto
setembro
outubro
novembro
dezembro

Stand-alone wide = format wide. Zero drama, zero differences ✨

Abbreviated (stand-alone) 🦋

jan.
fev.
mar.
abr.
mai.
jun.
jul.
ago.
set.
out.
nov.
dez.

Same twelve abbreviations again. Matching set, periodt 💖

Narrow (stand-alone) ⭐

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

Same twelve single letters. The duplicates are still duplicating, ngl 🙈


👑 Quarters

Wide (format) 💜

1.º trimestre
2.º trimestre
3.º trimestre
4.º trimestre

Note the cute lil º masculine ordinal after each digit — that's the vibe 🌟

Abbreviated (format) 🌟

T1
T2
T3
T4

Narrow (format) 💀

1
2
3
4

Wide (stand-alone) 🫶

1.º trimestre
2.º trimestre
3.º trimestre
4.º trimestre

Abbreviated (stand-alone) 🎀

T1
T2
T3
T4

Narrow (stand-alone) 💅

1
2
3
4

Every single quarter variant is identical between format and stand-alone. No notes, it just works 😌


🧚 Eras

Wide (format) 📜

antes de Cristo
depois de Cristo

Abbreviated (format) ✨

a.C.
d.C.

Narrow (format) 🌸

a.C.
d.C.

Three variants listed, and the abbreviated and narrow ones are literally the same strings. Ate 💅


🔥 Date Formats

Full 🌈

 2008-02-05T18:30:30 = terça-feira, 5 de fevereiro de 2008
 1995-12-22T09:05:02 = sexta-feira, 22 de dezembro de 1995
-0010-09-15T04:44:23 = sábado, 15 de setembro de -10

Long 💜

 2008-02-05T18:30:30 = 5 de fevereiro de 2008
 1995-12-22T09:05:02 = 22 de dezembro de 1995
-0010-09-15T04:44:23 = 15 de setembro de -10

Medium ⭐

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

Short 🎀

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

Notice the negative year on that third line stays negative in every single one — -10 is not getting smoothed over, bestie 🙈


🦋 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

Full and Long are twinsies, Medium and Short drop the UTC — going from most detailed to most chill 🌈


🍓 Datetime Formats

Full 🎀

2008-02-05T18:30:30 = terça-feira, 5 de fevereiro de 2008, 18:30:30 UTC
1995-12-22T09:05:02 = sexta-feira, 22 de dezembro de 1995, 09:05:02 UTC
-0010-09-15T04:44:23 = sábado, 15 de setembro de -10, 04:44:23 UTC

Long 🧚

2008-02-05T18:30:30 = 5 de fevereiro de 2008, 18:30:30 UTC
1995-12-22T09:05:02 = 22 de dezembro de 1995, 09:05:02 UTC
-0010-09-15T04:44:23 = 15 de setembro de -10, 04:44:23 UTC

Medium 💜

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

Short ⭐

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

Date + time, glued together with a comma, scaling from "whole entire sentence" down to "just the numbers" 🔥


🌸 Available Formats

Okay this is the big one — every named format pattern, with its three sample outputs. Buckle up bestie, we're going through all of them 🫶

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 (ccc)

2008-02-05T18:30:30 = terça
1995-12-22T09:05:02 = sexta
-0010-09-15T04:44:23 = sábado

EBhm (E h:mm B)

2008-02-05T18:30:30 = terça 6:30 B
1995-12-22T09:05:02 = sexta 9:05 B
-0010-09-15T04:44:23 = sábado 4:44 B

EBhms (E h:mm:ss B)

2008-02-05T18:30:30 = terça 6:30:30 B
1995-12-22T09:05:02 = sexta 9:05:02 B
-0010-09-15T04:44:23 = sábado 4:44:23 B

EHm (E, HH:mm)

2008-02-05T18:30:30 = terça, 18:30
1995-12-22T09:05:02 = sexta, 09:05
-0010-09-15T04:44:23 = sábado, 04:44

EHms (E, HH:mm:ss)

2008-02-05T18:30:30 = terça, 18:30:30
1995-12-22T09:05:02 = sexta, 09:05:02
-0010-09-15T04:44:23 = sábado, 04:44:23

Ed (E, d)

2008-02-05T18:30:30 = terça, 5
1995-12-22T09:05:02 = sexta, 22
-0010-09-15T04:44:23 = sábado, 15

Ehm (E, h:mm a)

2008-02-05T18:30:30 = terça, 6:30 p.m.
1995-12-22T09:05:02 = sexta, 9:05 a.m.
-0010-09-15T04:44:23 = sábado, 4:44 a.m.

Yes — p.m. and a.m. with the periods, lowercase a/p. Character-for-character, bestie 💅

Ehms (E, h:mm:ss a)

2008-02-05T18:30:30 = terça, 6:30:30 p.m.
1995-12-22T09:05:02 = sexta, 9:05:02 a.m.
-0010-09-15T04:44:23 = sábado, 4:44:23 a.m.

Gy (y G)

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

GyMMM (MMM 'de' y G)

2008-02-05T18:30:30 = fev. de 2008 d.C.
1995-12-22T09:05:02 = dez. de 1995 d.C.
-0010-09-15T04:44:23 = set. de -10 a.C.

GyMMMEd (E, d 'de' MMM 'de' y G)

2008-02-05T18:30:30 = terça, 5 de fev. de 2008 d.C.
1995-12-22T09:05:02 = sexta, 22 de dez. de 1995 d.C.
-0010-09-15T04:44:23 = sábado, 15 de set. de -10 a.C.

GyMMMd (d 'de' MMM 'de' y G)

2008-02-05T18:30:30 = 5 de fev. de 2008 d.C.
1995-12-22T09:05:02 = 22 de dez. de 1995 d.C.
-0010-09-15T04:44:23 = 15 de set. de -10 a.C.

GyMd (dd/MM/y GGGGG)

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

H (HH)

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

Zero-padded, two digits, always — even the 09 and the 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

Heads up: the month number is not zero-padded here — that's why February is 2 and September is 9, not 02/09 👀

MEd (E, dd/MM)

2008-02-05T18:30:30 = terça, 05/02
1995-12-22T09:05:02 = sexta, 22/12
-0010-09-15T04:44:23 = sábado, 15/09

MMM (LLL)

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

MMMEd (E, d/MM)

2008-02-05T18:30:30 = terça, 5/02
1995-12-22T09:05:02 = sexta, 22/12
-0010-09-15T04:44:23 = sábado, 15/09

MMMMEd (ccc, d 'de' MMMM)

2008-02-05T18:30:30 = terça, 5 de fevereiro
1995-12-22T09:05:02 = sexta, 22 de dezembro
-0010-09-15T04:44:23 = sábado, 15 de setembro

MMMMW-count-one (W.'ª' 'semana' 'de' MMMM)

2008-02-05T18:30:30 = 1.ª semana de fevereiro
1995-12-22T09:05:02 = 3.ª semana de dezembro
-0010-09-15T04:44:23 = 2.ª semana de setembro

MMMMW-count-other (W.'ª' 'semana' 'de' MMMM)

2008-02-05T18:30:30 = 1.ª semana de fevereiro
1995-12-22T09:05:02 = 3.ª semana de dezembro
-0010-09-15T04:44:23 = 2.ª semana de setembro

Yep, -count-one and -count-other list the same pattern and the same three outputs here. That's just what the data says, bestie 🫶

MMMMd (d 'de' MMMM)

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

MMMd (d/MM)

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

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 (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 p.m.
1995-12-22T09:05:02 = 9 a.m.
-0010-09-15T04:44:23 = 4 a.m.

hm (h:mm a)

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

hms (h:mm:ss a)

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

hmsv (h:mm:ss a v)

2008-02-05T18:30:30 = 6:30:30 p.m. UTC
1995-12-22T09:05:02 = 9:05:02 a.m. UTC
-0010-09-15T04:44:23 = 4:44:23 a.m. UTC

hmv (h:mm a v)

2008-02-05T18:30:30 = 6:30 p.m. UTC
1995-12-22T09:05:02 = 9:05 a.m. UTC
-0010-09-15T04:44:23 = 4:44 a.m. 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

Minutes and seconds only — yes, it starts 30:30 on the first line, that's minutes 30 then seconds 30. Do not come for me, it's literally what's written 💀

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 = terça, 05/02/2008
1995-12-22T09:05:02 = sexta, 22/12/1995
-0010-09-15T04:44:23 = sábado, 15/09/-10

yMM (MM/y)


okay bestie that's where part 1 cuts off — the list keeps going in part 2, so don't close the tab 🫶

...okay so the tail end of one of those blocks got sliced in half at the page break, and here's the whole thing, verbatim:

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

And now the rest of the pattern squad, one by one. Every single one gets the pattern string in parentheses and the same three sample timestamps: 2008-02-05T18:30:30, 1995-12-22T09:05:02, and -0010-09-15T04:44:23 (yes bestie that's a negative year, she's ancient, we respect her 💀👑).

yMMM — pattern MM/y

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

yMMMEEEEd — pattern EEEE, d/MM/y

2008-02-05T18:30:30 = terça-feira, 5/02/2008
1995-12-22T09:05:02 = sexta-feira, 22/12/1995
-0010-09-15T04:44:23 = sábado, 15/09/-10

yMMMEd — pattern E, d/MM/y

2008-02-05T18:30:30 = terça, 5/02/2008
1995-12-22T09:05:02 = sexta, 22/12/1995
-0010-09-15T04:44:23 = sábado, 15/09/-10

yMMMM — pattern MMMM 'de' y

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

yMMMMEd — pattern ccc, d 'de' MMMM 'de' y

2008-02-05T18:30:30 = terça, 5 de fevereiro de 2008
1995-12-22T09:05:02 = sexta, 22 de dezembro de 1995
-0010-09-15T04:44:23 = sábado, 15 de setembro de -10

yMMMMd — pattern d 'de' MMMM 'de' y

2008-02-05T18:30:30 = 5 de fevereiro de 2008
1995-12-22T09:05:02 = 22 de dezembro de 1995
-0010-09-15T04:44:23 = 15 de setembro de -10

yMMMd — pattern d/MM/y

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

yMd — pattern dd/MM/y

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

yQQQ — pattern QQQQ 'de' y

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

yQQQQ — pattern QQQQ 'de' y (yes, same pattern as yQQQ above — nope, not a typo on my end, that's literally what's written 💅)

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

yw-count-one — pattern w.'ª' 'semana' 'de' Y

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

yw-count-other — pattern w.'ª' 'semana' 'de' Y

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

💫 Miscellaneous 💫

The little odds and ends, and honestly? Immaculate vibes:

  • Prefers 24 hour time? — Yes ✨ (no am/pm chaos in this house, we're clocking 18:30:30 and we're happy about it)
  • Local first day of the week — 1 (segunda-feira) 🎀 (Monday girlies rise up)

🦋 Strftime Patterns 🦋

Different formatting system, same energy. All three of the classic strftime patterns, with their real pattern in parentheses and their sample outputs:

%c — %a %d %b %Y %T — the date time format 🕰️

2008-02-05T18:30:30 = terça 05 fev. 2008 18:30:30
1995-12-22T09:05:02 = sexta 22 dez. 1995 09:05:02
-0010-09-15T04:44:23 = sábado 15 set. -10 04:44:23

%x — %d/%m/%Y — the date format 🌸

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

%X — %T — the 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 🫶

That's literally it, bestie: See DateTime::Locale. 👑 That's the whole support section. Go read that page, it's the main character of this whole saga.


And that's a wrap! 🎀 This lil' beauty is documented in the perl v5.42.0 docs, dated 2024-12-12 — go forth and format your dates in glorious Cape Verdean Portuguese, you absolute icon 💖✨🦋

📦 where this page comes from