Not found locally for Date::Manip::Lang::finnish. Try Google search
The user wants me to transform a Perl man page HTML into an emoji-rich, visually scannable version. Let me analyze the document structure first. This is a documentation page for `Date::Manip::Lang::finnish` - a Finnish language support module for Date::Manip. The page contains: 1. NAME section 2. SYNOPSIS section 3. LANGUAGE EXPRESSIONS section (with many subsections) 4. KNOWN BUGS section 5. BUGS AND QUESTIONS section 6. SEE ALSO section 7. LICENSE section 8. AUTHOR section I need to: - Start with blocks
- Create a Quick Reference table after NAME
- Add emoji for visual enhancement
- Escape any bare < or > characters
- Keep the original structure intact
- Stay under 128,000 characters
This is a reference document listing all Finnish language words/expressions. The content is mostly lists of words, so I need to be careful with formatting.
Let me think about the structure:
```html
📛 NAME
🚀 Quick Reference
📋 SYNOPSIS
🌐 LANGUAGE EXPRESSIONS
📅 Month names and abbreviations
...
```
For the Finnish words, they're basically code-like identifiers (function names, words), so I should wrap them in ... but wait - looking at the rules:
"12. For function, method, and class reference sections (pydoc modules, ruby ri classes, perldoc function lists): use name(args) — description format WITHOUT per-item emoji."
These are word lists, not function lists per se. But they ARE reference data. The words could be considered like identifiers. Let me format them as within lists.
Actually, looking more carefully, this is a translation/language reference page where each word is just a single word or short phrase. I think wrapping them in tags makes sense to make them scannable.
For the numbers section (1-53), each number has a few variants. I'll format them as ordered lists with the number as the description.
Let me think about what to put in pre/code blocks:
- Delta values like "+0:0:0:1:0:0:0" - these are code-like
- The hour/minute/second separator patterns - these are regex patterns
- The times like "12:00:00" - code-like
The word lists themselves are just data - I'll wrap them in blocks since they look like code/data.
Actually, I think I should use for the word lists because they're reference data that users would copy. Let me think...
Looking at the rules:
"6. Code includes anything with: $variable, ->method, use Module;, function(), flags like -f --long"
"7. Even single-line code statements need "
The word lists are reference data but not really "code". However, since users will likely want to reference and possibly copy them, I'll use blocks for the word lists.
For the "Words that set the date, time, or both" section, those have format like:
```
huomenna +0:0:0:1:0:0:0
tanaan 0:0:0:0:0:0:0
```
These should definitely be in blocks.
For numbers 1-53 with their variants, I'll either use blocks or ordered lists with tags. Given there are 53 entries with many variants, is cleaner.
Let me start building this.
For the Quick Reference table, I need to think about what use cases this module supports. It's a language pack for date parsing, so:
- Parse Finnish dates
- Parse Finnish month names
- Parse Finnish day names
- Parse Finnish numbers
- Parse Finnish times
Let me draft this:
```html
🚀 Quick Reference
Use Case Command/Example Description
Parse Finnish month tammikuuJanuary in Finnish
Parse Finnish day maanantaiMonday in Finnish
...
```
Actually, this is a language pack, not a command-line tool, so the "command" column isn't quite right. Let me make it more appropriate - showing example Finnish expressions.
Let me now write the full HTML. I'll be careful about:
- Escaping < and > in code patterns like regex
- Using proper Unicode characters (UTF-8)
- Keeping structure intact
Let me look at the regex character carefully:
"\\. \\." in the source becomes "\. \." - this contains backslash-dot which is fine, no < or > to escape.
Let me start writing:
```html
📛 NAME
Date::Manip::Lang::finnish - Finnish language support for Date::Manip 🇫🇮
🚀 Quick Reference
Use Case Finnish Expression Description
January tammikuuMonth name (full)
Monday maanantaiDay name (full)
Today tänäänRelative date word
Tomorrow huomennaRelative date +1 day
Yesterday eilenRelative date -1 day
Noon keskipäiväTime set to 12:00
Midnight keskiyöTime set to 00:00
Now nytCurrent date/time
AM aamullaMorning designation
PM illallaEvening designation
Next ensiNext occurrence
Last viimeinenLast occurrence
```
Hmm, the Quick Reference shouldn't have per-item emoji per the rules. Just emoji on the section heading. Wait, rule 12 says "WITHOUT per-item emoji" but that's for function/method/class references specifically. The Quick Reference table is different - it's a summary table. I think the table content is fine.
Actually rule 19 says "Add descriptive emoji to option descriptions and list item text" - so this is allowed.
Let me reconsider the Quick Reference content. Since this is a language pack, the "Use Case" should be like "the concept" and "Command/Example" is the Finnish word.
Now let me think about the language expressions section. This is a HUGE listing. I need to format it carefully to not blow out the character limit.
For each subsection within LANGUAGE EXPRESSIONS, I'll use :
- 📅 Month names and abbreviations
- 📝 Month names
- list of full month names
- 🔤 Month abbreviations
- list of abbrev
Wait, rule 2 says "Sub-sections within a section → " - so I should use for subsections. Let me use h3.
Actually, looking at the original, the structure has:
- LANGUAGE EXPRESSIONS (h2)
- Month names and abbreviations (subsection, h3)
- full names list
- abbreviations list
- Day names and abbreviations (h3)
- full names list
- abbreviations list
- short abbrev list
- Delta field names (h3)
- Morning/afternoon times (h3)
- Each or every (h3)
- Next/Previous/Last occurrence (h3)
- Delta words for going forward/backward (h3)
- Business mode (h3)
- Numbers (h3)
- Ignored words (h3)
- Words that set the date, time, or both (h3)
- Hour/Minute/Second separators (h3)
- Fractional second separator (h3)
I'll use h3 for the main subsections. For things like "Next occurrence:", "Previous occurrence:", etc., I'll just use lists/paragraphs.
For the month names, day names, etc., I'll use pre/code blocks since they're reference data.
Let me think about character count. The numbers 1-53 takes a lot of space. Let me count:
The original Numbers section is very long - 53 entries each with 2-4 variants. If I use I can keep it compact.
Let me format numbers like this:
```html
🔢 Numbers
Numbers may be spelled out in a variety of ways. The following sets correspond to the numbers from 1 to 53:
1.
ensimmäinen
ensimmainen
yksi
2.
toinen
kaksi
...
```
This is similar to original structure but in pre/code blocks.
Actually, looking more carefully at the numbers, they have variants with ä/a distinctions. The original format is:
```
1.
ensimmäinen
ensimmainen
yksi
2.
toinen
kaksi
```
I think putting them all in one big pre/code block is fine.
Actually I should probably keep using for all these reference word lists to make them copyable and visually distinctive.
Let me now draft the full thing. I'll try to keep it concise.
Wait, I need to be careful: rule 8 says "Code blocks MUST contain EXACT original code — NO changes, NO added links". So I shouldn't add links inside pre/code blocks. The original has words in the code blocks - I'll just preserve them as-is.
Let me build the full HTML now.
For the SYNOPSIS section, the original text:
"This module contains a list of words and expressions supporting the language. It is not intended to be used directly (other Date::Manip modules will load it as needed)."
I'll preserve this.
For KNOWN BUGS, BUGS AND QUESTIONS, SEE ALSO, LICENSE, AUTHOR - I'll just add emoji to the headings.
Let me draft the structure:
```html
📛 NAME
Date::Manip::Lang::finnish - Finnish language support. 🇫🇮
🚀 Quick Reference
...
📋 SYNOPSIS
This module contains a list of words and expressions supporting the language. It is not intended to be used directly (other Date::Manip modules will load it as needed).
🌐 LANGUAGE EXPRESSIONS
The following is a list of all language words and expressions used to write times and/or dates.
All strings are case insensitive.
📅 Month names and abbreviations
When writing out the name of the month, several different variations may exist including full names and abbreviations.
The following month names may be used:
tammikuu
tammikuun
tammikuuta
helmikuu
helmikuun
helmikuuta
... etc
The following abbreviations may be used:
tammi
helmi
maalis
huhti
touko
kesa
kesä
heina
heinä
elo
syys
loka
marras
joulu
📆 Day names and abbreviations
When writing out the name of the day, several different variations may exist including full names and abbreviations.
The following day names may be used:
maanantai
maanantaina
tiistai
tiistaina
keskiviikko
keskiviikkona
torstai
torstaina
perjantai
perjantaina
lauantai
lauuantaina
sunnuntai
sunnuntaina
The following abbreviations may be used:
ma
ti
ke
to
pe
la
su
The following short (1-2 characters) abbreviations may be used:
ma
ti
ke
to
pe
la
su
```
OK this is getting long. Let me focus on getting it done.
For numbers 1-53, I'll use a single big pre/code block to keep it compact.
Let me finalize the formatting:
```html
🚀 Quick Reference
Use Case Finnish Expression English Equivalent
📅 Today tänään / tanaanSame date
➡️ Tomorrow huomenna+1 day
⬅️ Yesterday eilen-1 day
📆 Day after tomorrow ylihuomenna+2 days
🕛 Noon keskipäivä12:00:00
🕛 Midnight keskiyö00:00:00
⏰ Now nytCurrent date/time
🌅 AM aamullaMorning
🌙 PM illallaEvening
➡️ Next ensiNext occurrence
⬅️ Last viimeinenLast occurrence
🔢 Numbers yksi...viisikymmentäkolme1...53
```
Wait, the emoji for the "Use Case" column is fine - they describe what the Finnish expression does. This is good visual enhancement.
Actually I need to be careful - the rule says "Emoji may appear inside text content" but tables aren't lists. I'll interpret "inside text content" broadly to include table cells.
Now let me think about avoiding bare < and > characters. The original text has:
- No literal < or > that I can see
- The "yesterdayeilen" line is just adjacent text
- The regex patterns are "\. \." which is just escaped dots
Wait, looking again:
"yesterdayeilen -0:0:0:1:0:0:0"
That "yesterdayeilen" looks like a typo in the original (perhaps they meant "yesterday" + "eilen" but they got concatenated). It's actually present twice in the section. I'll preserve it as-is.
Hmm, actually looking at the second occurrence:
"yesterdayeilen -0:0:0:1:0:0:0"
It might be that there are two words concatenated in the source. Let me preserve as is.
Actually it appears only once in the "tomorrow/yesterday" type section. Looking at:
"huomenna +0:0:0:1:0:0:0
tanaan 0:0:0:0:0:0:0
toissapaivana -0:0:0:2:0:0:0
toissapäivänä -0:0:0:2:0:0:0
tänään 0:0:0:0:0:0:0
yesterdayeilen -0:0:0:1:0:0:0
ylihuomenna +0:0:0:2:0:0:0"
"yesterdayeilen" appears once with the value -0:0:0:1:0:0:0 (yesterday in Finnish). I'll preserve as is.
Now let me write the full HTML:
I'll keep the rendering tight. Let me build it section by section.
For numbers, instead of 53 separate blocks, I'll use one big pre/code:
```
1.
ensimmäinen
ensimmainen
yksi
2.
toinen
kaksi
...
```
Actually the original format uses spaces between numbers but no indentation for variants. Let me preserve the original format which seems to have just blank line separation between numbers, with the variant names on their own lines.
Let me draft the final version now. I need to keep it under 128,000 chars.
Let me count by section:
- Numbers section: roughly 53 entries with ~3 lines each = ~160 lines, ~70 chars per line = ~11,000 chars
- Month names section: 12 months * 3 lines + 12 abbreviations = ~36 + 12 = ~48 lines * 30 chars = ~1500 chars
- Day names section: 7 days * 2 lines + 2 abbrev lists = ~14 + 14 = ~28 lines * 20 chars = ~560 chars
- Delta field names: ~25 lines * 15 chars = ~400 chars
- Morning/afternoon: ~10 lines
- Each/every: ~3 lines
- Next/Previous/Last: ~10 lines
- Delta forward/backward: ~5 lines
- Business mode: ~10 lines
- Numbers: ~160 lines (as above)
- Ignored words: ~10 lines
- Words setting date/time: ~30 lines * 40 chars = ~1200 chars
- Separators: ~10 lines
Total content is around 15,000-20,000 chars plus headings. Easy to stay under limit.
Now let me finalize. I'll use the pre/code blocks for all word lists.
Wait, I realize for the "words that set date, time, or both" section, the format is:
```
huomenna +0:0:0:1:0:0:0
```
This is a fixed-width aligned format. The values are deltas. I'll preserve in pre/code.
For the "Hour/Minute/Second separators" section, the values are:
":" and ":"
"h" and ":"
These are pairs. Let me see:
": :" - both are colon
"\. \." - both are escaped dot
Wait looking at the original:
": :
h :"
This is presented as two columns. The first row is `:` `:` (hour-min separator, minute-second separator). The second row is `h` `:`.
Wait, the actual source is:
": :
h :
"
So:
Row 1: ":" ":" (hour-min=":", minute-sec=":")
Row 2: "h" ":" (hour-min="h", minute-sec=":")
Hmm, that means hour-min is "h" or ":", and minute-sec is ":" (which is the default colon). But the text says "If a language allows additional pairs, they are listed here" - so these are additional pairs.
Actually re-reading: "Some languages use different pairs. For example, French allows you to specify the time as 13h30:20, so it would use the following pairs:"
": :
h :"
So French has two pairs: ":" ":" and "h" ":". The first column in French's listing should be hour-min separator, second column minute-second separator. So "13h30:20" means hour-min is "h" and minute-sec is ":".
For Finnish, the section says:
"A pair of colons is ALWAYS allowed for all languages. If a language allows additional pairs, they are listed here:"
"\. \."
So Finnish allows "." "." as an additional pair (in addition to the default ":" ":"). That means you can write time like "13.30.20" in Finnish.
OK I'll just preserve the data as-is.
Now let me write the final HTML. I want to be efficient.
Let me organize:
```html
📛 NAME
...
🚀 Quick Reference
...
📋 SYNOPSIS
...
🌐 LANGUAGE EXPRESSIONS
...
📅 Month names and abbreviations
...
The following month names may be used:
...
The following abbreviations may be used:
...
📆 Day names and abbreviations
... similar structure
🔢 Delta field names
There are 7 fields: years, months, weeks, days, hours, minutes, seconds.
The names and abbreviations for these fields are:
...
🌅 Morning/afternoon times
...
...
🔄 Each or every
...
...
➡️ Next/Previous/Last occurrence
...
Next occurrence:
ensi
Previous occurrence:
viime
Last occurrence:
viimeinen
... (this h3 is fine, but using h4 for sub-categories is OK)
```
Wait, the rules say "Section titles (NAME, SYNOPSIS, DESCRIPTION, OPTIONS, EXAMPLES, SEE ALSO) → " and "Sub-sections within a section → ". So I should use h3 for top-level subsections and possibly h4 for deeper nesting? But the rules don't explicitly mention h4. Let me just use h3 for the major categories and not nest further, instead using or
for sub-categories.
Actually, looking at the structure, the "Next occurrence:", "Previous occurrence:", etc. labels are like inline labels. I can just use or tags without making them headings.
Let me use:
- for inline labels within a section
Like:
```html
➡️ Next/Previous/Last occurrence
Next occurrence:
ensi
Previous occurrence:
viime
Last occurrence:
viimeinen
```
That's cleaner.
Now for the Numbers section, I need to think about how to format it. With 53 entries and many variants, an ordered list would be very long. A pre/code block is more compact.
Let me use:
```html
🔢 Numbers
Numbers may be spelled out in a variety of ways. The following sets correspond to the numbers from 1 to 53:
1.
ensimmäinen
ensimmainen
yksi
2.
toinen
kaksi
3.
kolmas
kolme
...
```
This preserves the original structure exactly.
OK let me write out the full HTML now. I'll keep it tight.
Actually, let me double check on the "Each or every" section - it has a short phrase showing how to use it:
"EACH Monday
EVERY Monday
EVERY month"
These should probably be in pre/code as examples. Or maybe just paragraph text. Let me use pre/code for consistency.
Wait, looking at the original:
```
The following words may be used:
joka
jokainen
```
It's just stating the words. The phrases above are explaining context. I think the phrases like "EACH Monday" etc. should remain as descriptive text, not in code blocks. They're English language examples showing what the Finnish words translate to.
Actually they ARE in their own block formatting in the original. Let me wrap them in pre/code to match.
Hmm, rule 8 says "Code blocks MUST contain EXACT original code". But "EACH Monday" isn't really code, it's an example phrase. Maybe just put them in tags with for emphasis.
I'll use for the words/lists, and for the example phrases.
Let me draft the final HTML now:
```html
📛 NAME
Date::Manip::Lang::finnish - Finnish language support. 🇫🇮
🚀 Quick Reference
Use Case Finnish Expression English Equivalent
📅 Today tänään, tanaanCurrent date
➡️ Tomorrow huomenna+1 day
📆 Day after tomorrow ylihuomenna+2 days
📅 Day before yesterday toissapäivänä, toissapaivana-2 days
⬅️ Yesterday eilen-1 day
🕛 Noon keskipäivä, keskipäivällä, keskipaiva, keskipaivalla12:00:00
🕛 Midnight keskiyö, keskiyöllä, keskiyo, keskiyolla00:00:00
⏰ Now nytCurrent date and time
🌅 AM (morning) aamulla, aamupäivällä, aamupaivallaMorning time
🌙 PM (evening) illalla, iltapäivällä, iltapaivallaEvening time
➡️ Next occurrence ensiNext
⬅️ Previous occurrence viimePrevious
🔚 Last occurrence viimeinenLast
🔁 Each/Every joka, jokainenEach/Every
⏪ Delta past sittenAgo (past tense)
⏩ Delta future ssa, myöhemmin, myohemminLater (future)
💼 Business day arkipäivä, arkipaivaBusiness delta
🎯 Exact delta täsmälleen, tasmalleen, tasanExact delta
≈ Approximate noin, suunnilleen, osapuilleenApproximate delta
🕐 Time separator : or \.Hour/Minute/Sec separator
```
That's a good Quick Reference table.
Now let me write the LANGUAGE EXPRESSIONS section in detail. I'll compress where possible.
For each word list section, the original uses indentation but with my pre/code blocks I can simplify.
Let me write the month names:
```html
📅 Month names and abbreviations
When writing out the name of the month, several different variations may exist including full names and abbreviations.
The following month names may be used:
tammikuu
tammikuun
tammikuuta
helmikuu
helmikuun
helmikuuta
maaliskuu
maaliskuun
maaliskuuta
huhtikuu
huhtikuun
huhtikuuta
toukokuu
toukokuun
toukokuuta
kesäkuu
kesakuu
kesakuun
kesakuuta
heinäkuu
heinakuu
heinakuun
heinakuuta
elokuu
elokuun
elokuuta
syyskuu
syyskuun
syyskuuta
lokakuu
lokakuun
lokakuuta
marraskuu
marraskuun
marraskuuta
joulukuu
joulukuun
joulukuuta
The following abbreviations may be used:
tammi
helmi
maalis
huhti
touko
kesa
kesä
heina
heinä
elo
syys
loka
marras
joulu
```
This preserves the exact structure from the original.
For day names:
```html
📆 Day names and abbreviations
When writing out the name of the day, several different variations may exist including full names and abbreviations.
The following day names may be used:
maanantai
maanantaina
tiistai
tiistaina
keskiviikko
keskiviikkona
torstai
torstaina
perjantai
perjantaina
lauantai
lauuantaina
sunnuntai
sunnuntaina
The following abbreviations may be used:
ma
ti
ke
to
pe
la
su
The following short (1-2 characters) abbreviations may be used:
ma
ti
ke
to
pe
la
su
```
Wait, the day names list seems verbose with extra blank lines between entries. Let me consolidate:
Actually I should preserve the exact original formatting. Looking at the original:
```
maanantai
maanantaina
tiistai
...
```
There's a blank line between day entries. I'll preserve that.
Hmm actually I can simplify and remove the blank lines since they're visually similar. But rule says preserve original structure. Let me keep the formatting as close to original as possible.
Actually, for compactness and readability, I'll keep blank lines between groups since the original has them.
For Delta field names:
```html
🔢 Delta field names
These are the names (and abbreviations) for the fields in a delta. There are 7 fields: years, months, weeks, days, hours, minutes, seconds.
The names and abbreviations for these fields are:
vuotta
vuosi
v
kuukautta
kuukausi
kk
viikkoa
vk
viikko
paivaa
päivää
päivä
paiva
pv
tuntia
h
tunti
minuuttia
minuutti
min
sekuntia
s
sekunti
```
For Morning/afternoon:
```html
🌅 Morning/afternoon times
This is a list of expressions used to designate morning or afternoon time when a time is entered as a 12-hour time rather than a 24-hour time. For example, in English, the time "17:00" could be specified as "5:00 PM".
Morning and afternoon time may be designated by the following sets of words:
AM
A.M.
aamulla
aamupäivällä
aamupaivalla
PM
P.M.
illalla
iltapäivällä
iltapaivalla
```
For Each/Every:
```html
🔄 Each or every
There are a list of words that specify every occurrence of something. These are used in the following phrases:
EACH Monday
EVERY Monday
EVERY month
The following words may be used:
joka
jokainen
```
For Next/Previous/Last:
```html
➡️ Next/Previous/Last occurrence
There are a list of words that may be used to specify the next, previous, or last occurrence of something. These words could be used in the following phrases:
NEXT week
LAST Tuesday
PREVIOUS Tuesday
LAST day of the month
Next occurrence:
ensi
Previous occurrence:
viime
Last occurrence:
viimeinen
```
Wait actually, should I make these h4? The rules say sub-sections within a section use h3. But these "Next occurrence:", "Previous occurrence:", "Last occurrence:" are like sub-categories within the Next/Previous/Last section. The rule allows h3 for subsection, but doesn't say what to use for sub-sub-section.
To be safe, I'll use tags or with bold text for these sub-categorizations.
For Delta words:
```html
⏪ Delta words for going forward/backward in time
When parsing deltas, there are words that may be used to specify that the delta will refer to a time in the future or to a time in the past (relative to some date). In English, for example, you might say:
IN 5 days
5 days AGO
The following words may be used to specify deltas that refer to dates in the past or future respectively:
sitten
ssa
myöhemmin
myohemmin
```
For Business mode:
```html
💼 Business mode
This contains two lists of words which can be used to specify a standard (i.e. non-business) delta or a business delta.
Previously, it was used to tell whether the delta was approximate or exact, but now this list is not used except to force the delta to be standard.
The following words may be used (standard delta):
täsmälleen
tasmalleen
tasan
noin
suunnilleen
osapuileen
The following words may be used to specify a business delta:
arkipaiva
arkipäivä
```
Wait, the original has "osapuilleen" - let me check:
"osapuilleen" - yes that's the original.
Hmm I wrote "osapuileen" - that's a typo. Let me fix.
For Numbers:
```html
🔢 Numbers
Numbers may be spelled out in a variety of ways. The following sets correspond to the numbers from 1 to 53:
1.
ensimmäinen
ensimmainen
yksi
2.
toinen
kaksi
3.
kolmas
kolme
...
```
Let me transcribe all 53.
OK I need to carefully transcribe. Let me do all 53 entries:
1. ensimmäinen, ensimmainen, yksi
2. toinen, kaksi
3. kolmas, kolme
4. neljäs, neljas, neljä, nelja
5. viides, viisi
6. kuudes, kuusi
7. seitsemäs, seitsemas, seitsemän, seitseman
8. kahdeksas, kahdeksan
9. yhdeksäs, yhdeksas, yhdeksän, yhdeksan
10. kymmenes, kymmenen
11. yksitoista, yhdestoista
12. kaksitoista, kahdestoista
13. kolmetoista, kolmastoista
14. neljätoista, neljatoista, neljästoista, neljastoista
15. viisitoista, viidestoista
16. kuusitoista, kuudestoista
17. seitsemäntoista, seitsemantoista, seitsemästoista, seitsemastoista
18. kahdeksantoista, kahdeksastoista
19. yhdeksäntoista, yhdeksantoista, yhdeksästoista, yhdeksastoista
20. kahdeskymmenes, kaksikymmentä, kaksikymmenta
21. kahdeskymmenesensimmäinen, kahdeskymmenesensimmainen, kaksikymmentäyksi, kaksikymmentayksi
22. kahdeskymmenestoinen, kaksikymmentäkaksi, kaksikymmentakaksi
23. kahdeskymmeneskolmas, kaksikymmentäkolme, kaksikymmentakolme
24. kahdeskymmenesneljäs, kahdeskymmenesneljas, kaksikymmentäneljä, kaksikymmentanelja
25. kahdeskymmenesviides, kaksikymmentäviisi, kaksikymmentaviisi
26. kahdeskymmeneskuudes, kaksikymmentäkuusi, kaksikymmentakuusi
27. kahdeskymmenesseitsemäs, kahdeskymmenesseitsemas, kaksikymmentäseitsemän, kaksikymmentaseitseman
28. kahdeskymmeneskahdeksas, kaksikymmentäkahdeksan, kaksikymmentakahdeksan
29. kahdeskymmenesyhdeksäs, kahdeskymmenesyhdeksas, kaksikymmentäyhdeksän, kaksikymmentayhdeksan
30. kolmaskymmene, kolmekymmentä, kolmekymmenta
31. kolmaskymmenesensimmäinen, kolmaskymmenesensimmainen, kolmekymmentäyksi, kolmekymmentayksi
32. kolmaskymmenestoinen, kolmekymmentäkaksi, kolmekymmentakaksi
33. kolmaskymmeneskolmas, kolmekymmentäkolme, kolmekymmentakolme
34. kolmaskymmenesneljäs, kolmaskymmenesneljas, kolmekymmentäneljä, kolmekymmentanelja
35. kolmaskymmenesviides, kolmekymmentäviisi, kolmekymmentaviisi
36. kolmaskymmeneskuudes, kolmekymmentäkuusi, kolmekymmentakuusi
37. kolmaskymmenesseitsemäs, kolmaskymmenesseitsemas, kolmekymmentäseitsemän, kolmekymmentaseitseman
38. kolmaskymmeneskahdeksas, kolmekymmentäkahdeksan, kolmekymmentakahdeksan
39. kolmaskymmenesyhdeksäs, kolmaskymmenesyhdeksas, kolmekymmentäyhdeksän, kolmekymmentayhdeksan
40. neljäskymmenes, neljaskymmenes, neljäkymmentä, neljakymmenta
41. neljäskymmenesensimmäinen, neljaskymmenesensimmainen, neljäkymmentäyksi, neljakymmentayksi
42. neljäskymmenestoinen, neljaskymmenestoinen, neljäkymmentäkaksi, neljakymmentakaksi
43. neljäskymmeneskolmas, neljaskymmeneskolmas, neljäkymmentäkolme, neljakymmentakolme
44. neljäskymmenesneljäs, neljaskymmenesneljas, neljäkymmentäneljä, neljakymmentanelja
45. neljäskymmenesviides, neljaskymmenesviides, neljäkymmentäviisi, neljakymmentaviisi
46. neljäskymmeneskuudes, neljaskymmeneskuudes, neljäkymmentäkuusi, neljakymmentakuusi
47. neljäskymmenesseitsemäs, neljaskymmenesseitsemas, neljäkymmentäseitsemän, neljakymmentaseitseman
48. neljäskymmeneskahdeksas, neljaskymmeneskahdeksas, neljäkymmentäkahdeksan, neljakymmentakahdeksan
49. neljäskymmenesyhdeksäs, neljaskymmenesyhdeksas, neljäkymmentäyhdeksän, neljakymmentayhdeksan
50. viideskymmenes, viisikymmentä, viisikymmenta
51. viideskymmenesensimmäinen, viideskymmenesensimmainen, viisikymmentäyksi, viisikymmentayksi
52. viideskymmenestoinen, viisikymmentäkaksi, viisikymmentakaksi
53. viideskymmeneskolmas, viisikymmentäkolme, viisikymmentakolme
OK that's about 200 lines in pre/code.
For Ignored words:
```html
🚫 Ignored words
In writing out dates in common forms, there are a number of words that are typically not important.
There is frequently a word that appears in a phrase to designate that a time is going to be specified next. In English, you would use the word AT in the example:
December 3 at 12:00
The following words may be used:
kello
Another word is used to designate one member of a set. In English, you would use the words IN or OF:
1st day OF December
1st day IN December
The following words may be used:
Not defined in this language
Another word is used to specify that something is on a certain date. In English, you would use ON:
ON July 5th
The following words may be used:
Not defined in this language
```
Hmm wait, originally the empty list is shown as blank space. Let me preserve better:
```html
The following words may be used:
```
But that looks weird. Better to use the "Not defined in this language" message which matches the original semantic meaning.
Actually looking at the original:
```
The following words may be used:
Not defined in this language
```
The text "Not defined in this language" is in the original as a placeholder for the empty list. So this is actually content I should preserve. I'll put it in the pre/code block:
```html
Not defined in this language
```
Or maybe better - it's an explanatory note, not data. Let me put it as a paragraph:
```html
The following words may be used:
Not defined in this language
```
That's cleaner.
For Words that set date/time:
```html
📆 Words that set the date, time, or both
There are some words that can be used to specify a date, a time, or both relative to now.
Words that set the date are similar to the English words 'yesterday' or 'tomorrow'. These are specified as a delta which is added to the current time to get a date. The time is NOT set however, so the delta is only partially used (it should only include year, month, week, and day fields).
The following words may be used:
huomenna +0:0:0:1:0:0:0
tanaan 0:0:0:0:0:0:0
toissapaivana -0:0:0:2:0:0:0
toissapäivänä -0:0:0:2:0:0:0
tänään 0:0:0:0:0:0:0
yesterdayeilen -0:0:0:1:0:0:0
ylihuomenna +0:0:0:2:0:0:0
Words that set only the time of day are similar to the English words 'noon' or 'midnight'.
The following words may be used:
keskipaiva 12:00:00
keskipaivalla 12:00:00
keskipäivä 12:00:00
keskipäivällä 12:00:00
keskiyo 00:00:00
keskiyolla 00:00:00
keskiyö 00:00:00
keskiyöllä 00:00:00
Words that set the entire time and date (relative to the current time and date) are also available.
In English, the word 'now' is one of these.
The following words may be used:
nyt 0:0:0:0:0:0:0
```
For Hour/Minute/Second separators:
```html
🕐 Hour/Minute/Second separators
When specifying the time of day, the most common separator is a colon (:) which can be used for both separators.
Some languages use different pairs. For example, French allows you to specify the time as 13h30:20, so it would use the following pairs:
: :
h :
The first column is the hour-minute separator and the second column is the minute-second separator. Both are perl regular expressions. When creating a new translation, be aware that regular expressions with utf-8 characters may be tricky. For example, don't include the expression '[x]' where 'x' is a utf-8 character.
A pair of colons is ALWAYS allowed for all languages. If a language allows additional pairs, they are listed here:
\. \.
```
For Fractional second separator:
```html
🔢 Fractional second separator
When specifying fractional seconds, the most common way is to use a decimal point (.). Some languages may specify a different separator that might be used. If this is done, it is a regular expression.
The decimal point is ALWAYS allowed for all languages. If a language allows another separator, it is listed here:
Not defined in this language
```
Then the final sections:
```html
🐞 KNOWN BUGS
None known.
❓ BUGS AND QUESTIONS
Please refer to the Date::Manip::Problems documentation for information on submitting bug reports or questions to the author.
📚 SEE ALSO
- Date::Manip - main module documentation
⚖️ LICENSE
This script is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
✍️ AUTHOR
Sullivan Beck (sbeck AT cpan.org)
```
Wait, looking at the author link more carefully: `sbeck AT cpan.org`
This is a mailto link with the AT being inside text content surrounded by tag. The text content is "sbeck AT cpan.org" but that should be "sbeck AT cpan.org" rendered with underline on " AT ".
Actually the link text shown in the original is: `sbeck AT cpan.org` - meaning the displayed text is "sbeck AT cpan.org" with " AT " underlined. The href is "mailto:sbeck AT cpan.org" with a space in it.
This is a bit malformed (mailtos shouldn't have spaces), but I'll preserve as is.
Let me now finalize and write the HTML response.
Actually I want to double-check my understanding of "osapuilleen":
"osapuilleen" - let me look... yes original has "osapuilleen".
OK let me write the final version. I'll be careful with:
1. UTF-8 characters (preserve them)
2. pre/code blocks for all word lists
3. Proper escaping
4. Emoji only at section level (not per-item in lists)
5. Quick Reference table after NAME
6. h2 for main sections, h3 for sub-sections
Let me also think - in the Quick Reference table, I am putting emoji in table cells. The rule says "Emoji may appear inside text content, but NEVER replace the list structure with emoji-only lines." Tables are different from lists but I think putting emoji in table cells is fine and enhances the visual experience. The rule 12 says "Emoji-per-item in long lists hurts scannability" specifically for function/class references. The Quick Reference is meant to be scannable.
Looking at rule 21 again: "Use a with columns Use Case | Command | Description. Command cells use (NOT — pre blocks break table layout)." - I'll follow this.
OK let me write the final HTML. I need to be careful about UTF-8 in the Finnish text - I should preserve the umlauts (ä, ö, etc.).
Let me also check the time stamps "perl v5.32.1 2021-11-20" - this is the footer line. I'll omit it as it's just metadata for man page printing.
Let me now finalize.
One more thing - I want to use unicode emoji that are widely supported. The ones I've chosen are:
- 📛 NAME
- 🚀 Quick Reference
- 📋 SYNOPSIS
- 🌐 LANGUAGE EXPRESSIONS
- 📅 Month names
- 📆 Day names / Words that set date
- 🔢 Delta field names / Numbers
- 🌅 Morning/afternoon
- 🔄 Each or every
- ➡️ Next/Previous/Last
- ⏪ Delta words (backward in time)
- 💼 Business mode
- 🚫 Ignored words
- 🕐 Hour/Minute/Second separators
- 🔢 Fractional second separator
- 🐞 KNOWN BUGS
- ❓ BUGS AND QUESTIONS
- 📚 SEE ALSO
- ⚖️ LICENSE
- ✍️ AUTHOR
- 🇫🇮 Finnish flag
OK these are all standard Unicode emoji and should display widely.
Actually, should I use 📆 for both "Day names" and "Words that set date"? Let me differentiate:
- 📆 for Day names (day of week)
- 🗓️ for Words that set date/time (calendar dates)
Or use 📅 Month and 📆 Day consistently for calendar things.
Let me settle on:
- 📅 Month names and abbreviations
- 📆 Day names and abbreviations
- 🔢 Delta field names
- 🌅 Morning/afternoon times (since AM is like dawn/sunrise)
- 🔄 Each or every (cycle repetition)
- ⏩⏪ Next/Previous/Last occurrence - use ⏪ for previous, ⏩ for next, 🔚 for last
Actually let me just use one emoji per h3 since these are all kind of related. Let me use:
- 📅 Month names
- 🗓️ Day names
- 🔢 Delta field names
- ☀️ Morning/afternoon
- 🔁 Each/every
- 🔜 Next/Previous/Last (or similar)
- ⏪ Forward/backward in time
- 💼 Business mode
- 🔢 Numbers
- 🚫 Ignored words
- 🕒 Date/time relative words
- 🕐 Time separators
- 🔢 Fractional seconds
Let me finalize:
- 📅 Month names and abbreviations
- 🗓️ Day names and abbreviations
- 🧮 Delta field names
- ☀️ Morning/afternoon times
- 🔁 Each or every
- ⏩ Next/Previous/Last occurrence
- ⏪ Delta words for going forward/backward
- 💼 Business mode
- 🔢 Numbers
- 🚫 Ignored words
- 📆 Words that set the date, time, or both
- 🕐 Hour/Minute/Second separators
- ⌛ Fractional second separator
Wait, "Delta field names" - these are units like "years", "months", "days" etc. Let me use 📐 or 🧮. Actually a clock-ish thing would be ⏱️ or ⌛. Let me use ⏳ for delta/time intervals.
Final list:
- 📅 Month names and abbreviations
- 🗓️ Day names and abbreviations
- ⏳ Delta field names
- ☀️ Morning/afternoon times
- 🔁 Each or every
- 🔜 Next/Previous/Last occurrence
- ⏪⏩ Delta words for going forward/backward - I'll combine into ⏳ Delta words
- 💼 Business mode
- 🔢 Numbers
- 🚫 Ignored words
- 📆 Words that set the date, time, or both
- 🕐 Hour/Minute/Second separators
- . Fractional second separator - I'll use 🔬 or ⌛
Actually I think 💱 Delta - no, that's currency. Let me use 🕰️ for time-related. Or ⏳.
Let me go with:
- 📅 Month names and abbreviations
- 📆 Day names and abbreviations
- ⏱️ Delta field names
- 🌤️ Morning/afternoon times
- 🔁 Each or every
- ➡️ Next/Previous/Last occurrence
- ⏳ Delta words for going forward/backward in time
- 💼 Business mode
- 🔢 Numbers
- 🚫 Ignored words
- 🕒 Words that set the date, time, or both
- 🕐 Hour/Minute/Second separators
- 🔬 Fractional second separator
OK these are all reasonable. Let me finalize and write.
For "Next/Previous/Last occurrence" maybe use ⏩ since it's about time progression. Or just 🔀 (shuffle/random). I'll go with ⏩.
Actually let me check - the word "Next/Previous/Last" is about occurrences of recurring things. Like "next Monday" or "last Tuesday". This is calendar progression. Let me use ⏭️ for next/previous/last.
OK I'll just use ➡️ for Next/Previous/Last since "Next" is forward arrow.
Final structure:
```html
📛 NAME
Date::Manip::Lang::finnish - Finnish language support. 🇫🇮
🚀 Quick Reference
...
📋 SYNOPSIS
...
🌐 LANGUAGE EXPRESSIONS
...
All strings are case insensitive.
📅 Month names and abbreviations
...
...
📆 Day names and abbreviations
...
...
⏱️ Delta field names
...
...
☀️ Morning/afternoon times
...
...
🔁 Each or every
...
...
➡️ Next/Previous/Last occurrence
...
...
Next occurrence:
ensi
Previous occurrence:
viime
Last occurrence:
viimeinen
⏳ Delta words for going forward/backward in time
...
...
💼 Business mode
...
...
🔢 Numbers
...
...
🚫 Ignored words
...
...
🕒 Words that set the date, time, or both
...
...
🕐 Hour/Minute/Second separators
...
...
🔬 Fractional second separator
...
🐞 KNOWN BUGS
None known.
❓ BUGS AND QUESTIONS
...
📚 SEE ALSO
- ...
⚖️ LICENSE
...
✍️ AUTHOR
...
```
Looks good. Let me write the final HTML now.
I should be careful about one thing - the Finnish umlauts. Let me make sure I'm using the actual UTF-8 characters, not HTML entities where not needed. Since output is HTML, I can use UTF-8 characters directly in the text - browsers will render them correctly as long as the document is UTF-8 encoded.
But actually the entity encoding is also fine - I'll use direct UTF-8 since it's cleaner.
Let me write the HTML now. I'll aim for clean, compact output.
Actually, looking at the "Decimal separator" section again - the original says "Not defined in this language" - this is text, not in a code block. Let me preserve this exactly as a paragraph.
OK let me write the final response.
One more check - the "see also" section:
"Date::Manip - main module documentation"
This is a link. I'll format as ul/li.
Let me also check - the synopsis has a link to Date::Manip. I'll preserve.
For the AUTHOR section, the original link is:
`sbeck AT cpan.org`
I'll preserve this exactly.
OK writing now. I'll keep under 128,000 chars easily.
Let me also count my pre/code blocks carefully.
Actually, I realize for the time/date data lines like:
"huomenna +0:0:0:1:0:0:0"
The whitespace is significant (alignment). In a pre/code block, the alignment will be preserved. Good.
OK writing now:
Wait, I need to also handle the empty separator:
": :"
vs
"\. \."
The first row ": :" has two colons with some space. The second row "\. \." has two escaped dots with double space.
The text says "If a language allows additional pairs, they are listed here:" followed by "\. \."
So the actual separator pairs for Finnish are:
Default: ":" ":" (already always allowed)
Additional: "\." "\."
Wait, that doesn't quite make sense. Let me re-read.
"Both are perl regular expressions."
So:
- Hour-minute separator is a Perl regex
- Minute-second separator is a Perl regex
For Finnish, both are "\." (a literal dot in regex).
For default (always allowed), both are ":".
So Finnish would allow "13.30.20" as a time format.
OK I'll just preserve the data as is.
Now writing the final HTML:
For the numbers, let me double-check by counting entries:
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53 - that's 53 entries.
Now let me carefully transcribe each one based on the original:
1.
ensimmäinen
ensimmainen
yksi
2.
toinen
kaksi
3.
kolmas
kolme
4.
neljäs
neljas
neljä
nelja
5.
viides
viisi
6.
kuudes
kuusi
7.
seitsemäs
seitsemas
seitsemän
seitseman
8.
kahdeksas
kahdeksan
9.
yhdeksäs
yhdeksas
yhdeksän
yhdeksan
10.
kymmenes
kymmenen
11.
yksitoista
yhdestoista
12.
kaksitoista
kahdestoista
13.
kolmetoista
kolmastoista
14.
neljätoista
neljatoista
neljästoista
neljastoista
15.
viisitoista
viidestoista
16.
kuusitoista
kuudestoista
17.
seitsemäntoista
seitsemantoista
seitsemästoista
seitsemastoista
18.
kahdeksantoista
kahdeksastoista
19.
yhdeksäntoista
yhdeksantoista
yhdeksästoista
yhdeksastoista
20.
kahdeskymmenes
kaksikymmentä
kaksikymmenta
21.
kahdeskymmenesensimmäinen
kahdeskymmenesensimmainen
kaksikymmentäyksi
kaksikymmentayksi
22.
kahdeskymmenestoinen
kaksikymmentäkaksi
kaksikymmentakaksi
23.
kahdeskymmeneskolmas
kaksikymmentäkolme
kaksikymmentakolme
24.
kahdeskymmenesneljäs
kahdeskymmenesneljas
kaksikymmentäneljä
kaksikymmentanelja
25.
kahdeskymmenesviides
kaksikymmentäviisi
kaksikymmentaviisi
26.
kahdeskymmeneskuudes
kaksikymmentäkuusi
kaksikymmentakuusi
27.
kahdeskymmenesseitsemäs
kahdeskymmenesseitsemas
kaksikymmentäseitsemän
kaksikymmentaseitseman
28.
kahdeskymmeneskahdeksas
kaksikymmentäkahdeksan
kaksikymmentakahdeksan
29.
kahdeskymmenesyhdeksäs
kahdeskymmenesyhdeksas
kaksikymmentäyhdeksän
kaksikymmentayhdeksan
30.
kolmaskymmene
kolmekymmentä
kolmekymmenta
31.
kolmaskymmenesensimmäinen
kolmaskymmenesensimmainen
kolmekymmentäyksi
kolmekymmentayksi
32.
kolmaskymmenestoinen
kolmekymmentäkaksi
kolmekymmentakaksi
33.
kolmaskymmeneskolmas
kolmekymmentäkolme
kolmekymmentakolme
34.
kolmaskymmenesneljäs
kolmaskymmenesneljas
kolmekymmentäneljä
kolmekymmentanelja
35.
kolmaskymmenesviides
kolmekymmentäviisi
kolmekymmentaviisi
36.
kolmaskymmeneskuudes
kolmekymmentäkuusi
kolmekymmentakuusi
37.
kolmaskymmenesseitsemäs
kolmaskymmenesseitsemas
kolmekymmentäseitsemän
kolmekymmentaseitseman
38.
kolmaskymmeneskahdeksas
kolmekymmentäkahdeksan
kolmekymmentakahdeksan
39.
kolmaskymmenesyhdeksäs
kolmaskymmenesyhdeksas
kolmekymmentäyhdeksän
kolmekymmentayhdeksan
40.
neljäskymmenes
neljaskymmenes
neljäkymmentä
neljakymmenta
41.
neljäskymmenesensimmäinen
neljaskymmenesensimmainen
neljäkymmentäyksi
neljakymmentayksi
42.
neljäskymmenestoinen
neljaskymmenestoinen
neljäkymmentäkaksi
neljakymmentakaksi
43.
neljäskymmeneskolmas
neljaskymmeneskolmas
neljäkymmentäkolme
neljakymmentakolme
44.
neljäskymmenesneljäs
neljaskymmenesneljas
neljäkymmentäneljä
neljakymmentanelja
45.
neljäskymmenesviides
neljaskymmenesviides
neljäkymmentäviisi
neljakymmentaviisi
46.
neljäskymmeneskuudes
neljaskymmeneskuudes
neljäkymmentäkuusi
neljakymmentakuusi
47.
neljäskymmenesseitsemäs
neljaskymmenesseitsemas
neljäkymmentäseitsemän
neljakymmentaseitseman
48.
neljäskymmeneskahdeksas
neljaskymmeneskahdeksas
neljäkymmentäkahdeksan
neljakymmentakahdeksan
49.
neljäskymmenesyhdeksäs
neljaskymmenesyhdeksas
neljäkymmentäyhdeksän
neljakymmentayhdeksan
50.
viideskymmenes
viisikymmentä
viisikymmenta
51.
viideskymmenesensimmäinen
viideskymmenesensimmainen
viisikymmentäyksi
viisikymmentayksi
52.
viideskymmenestoinen
viisikymmentäkaksi
viisikymmentakaksi
53.
viideskymmeneskolmas
viisikymmentäkolme
viisikymmentakolme
OK that should be all 53. Let me put it all in a pre/code block.
Now let me write the final response. I'll try to be tight and not waste characters.
Final draft:
```html
📛 NAME
Date::Manip::Lang::finnish - Finnish language support. 🇫🇮
🚀 Quick Reference
Use Case Finnish Expression Meaning / Value
📅 January tammikuuMonth (full)
📅 Monday maanantaiDay of week
📆 Today tänään, tanaanCurrent date
➡️ Tomorrow huomenna+1 day
📆 Day after tomorrow ylihuomenna+2 days
📆 Day before yesterday toissapäivänä, toissapaivana-2 days
⬅️ Yesterday eilen-1 day
🕛 Noon keskipäivä, keskipaiva12:00:00
🕛 Midnight keskiyö, keskiyo00:00:00
⏰ Now nytCurrent date/time
🌅 AM aamullaMorning
🌙 PM illallaEvening
➡️ Next ensiNext occurrence
⬅️ Previous viimePrevious occurrence
🔚 Last viimeinenLast occurrence
🔁 Each/Every joka, jokainenEach/Every
⏪ Past delta sittenAgo
⏩ Future delta ssa, myöhemminLater
💼 Business arkipäiväBusiness delta
🎯 Exact täsmälleen, tasanExact delta
≈ Approx noin, suunnilleenApproximate delta
🔢 Numbers yksi ... viisikymmentäkolme1 ... 53
📋 SYNOPSIS
This module contains a list of words and expressions supporting the language. It is not intended to be used directly (other Date::Manip modules will load it as needed).
🌐 LANGUAGE EXPRESSIONS
The following is a list of all language words and expressions used to write times and/or dates.
All strings are case insensitive.
📅 Month names and abbreviations
When writing out the name of the month, several different variations may exist including full names and abbreviations.
The following month names may be used:
tammikuu
tammikuun
tammikuuta
helmikuu
helmikuun
helmikuuta
maaliskuu
maaliskuun
maaliskuuta
huhtikuu
huhtikuun
huhtikuuta
toukokuu
toukokuun
toukokuuta
kesäkuu
kesakuu
kesakuun
kesakuuta
heinäkuu
heinakuu
heinakuun
heinakuuta
elokuu
elokuun
elokuuta
syyskuu
syyskuun
syyskuuta
lokakuu
lokakuun
lokakuuta
marraskuu
marraskuun
marraskuuta
joulukuu
joulukuun
joulukuuta
The following abbreviations may be used:
tammi
helmi
maalis
huhti
touko
kesa
kesä
heina
heinä
elo
syys
loka
marras
joulu
📆 Day names and abbreviations
When writing out the name of the day, several different variations may exist including full names and abbreviations.
The following day names may be used:
maanantai
maanantaina
tiistai
tiistaina
keskiviikko
keskiviikkona
torstai
torstaina
perjantai
perjantaina
lauantai
lauuantaina
sunnuntai
sunnuntaina
The following abbreviations may be used:
ma
ti
ke
to
pe
la
su
The following short (1-2 characters) abbreviations may be used:
ma
ti
ke
to
pe
la
su
⏱️ Delta field names
These are the names (and abbreviations) for the fields in a delta. There are 7 fields: years, months, weeks, days, hours, minutes, seconds.
The names and abbreviations for these fields are:
vuotta
vuosi
v
kuukautta
kuukausi
kk
viikkoa
vk
viikko
paivaa
päivää
päivä
paiva
pv
tuntia
h
tunti
minuuttia
minuutti
min
sekuntia
s
sekunti
☀️ Morning/afternoon times
This is a list of expressions used to designate morning or afternoon time when a time is entered as a 12-hour time rather than a 24-hour time. For example, in English, the time "17:00" could be specified as "5:00 PM".
Morning and afternoon time may be designated by the following sets of words:
AM
A.M.
aamulla
aamupäivällä
aamupaivalla
PM
P.M.
illalla
iltapäivällä
iltapaivalla
🔁 Each or every
There are a list of words that specify every occurrence of something. These are used in the following phrases:
EACH Monday
EVERY Monday
EVERY month
The following words may be used:
joka
jokainen
➡️ Next/Previous/Last occurrence
There are a list of words that may be used to specify the next, previous, or last occurrence of something. These words could be used in the following phrases:
NEXT week
LAST Tuesday
PREVIOUS Tuesday
LAST day of the month
Next occurrence:
ensi
Previous occurrence:
viime
Last occurrence:
viimeinen
⏳ Delta words for going forward/backward in time
When parsing deltas, there are words that may be used to specify that the delta will refer to a time in the future or to a time in the past (relative to some date). In English, for example, you might say:
IN 5 days
5 days AGO
The following words may be used to specify deltas that refer to dates in the past or future respectively:
sitten
ssa
myöhemmin
myohemmin
💼 Business mode
This contains two lists of words which can be used to specify a standard (i.e. non-business) delta or a business delta.
Previously, it was used to tell whether the delta was approximate or exact, but now this list is not used except to force the delta to be standard.
The following words may be used (standard delta):
täsmälleen
tasmalleen
tasan
noin
suunnilleen
osapuilleen
The following words may be used to specify a business delta:
arkipaiva
arkipäivä
🔢 Numbers
Numbers may be spelled out in a variety of ways. The following sets correspond to the numbers from 1 to 53:
1.
ensimmäinen
ensimmainen
yksi
2.
toinen
kaksi
3.
kolmas
kolme
4.
neljäs
neljas
neljä
nelja
5.
viides
viisi
6.
kuudes
kuusi
7.
seitsemäs
seitsemas
seitsemän
seitseman
8.
kahdeksas
kahdeksan
9.
yhdeksäs
yhdeksas
yhdeksän
yhdeksan
10.
kymmenes
kymmenen
11.
yksitoista
yhdestoista
12.
kaksitoista
kahdestoista
13.
kolmetoista
kolmastoista
14.
neljätoista
neljatoista
neljästoista
neljastoista
15.
viisitoista
viidestoista
16.
kuusitoista
kuudestoista
17.
seitsemäntoista
seitsemantoista
seitsemästoista
seitsemastoista
18.
kahdeksantoista
kahdeksastoista
19.
yhdeksäntoista
yhdeksantoista
yhdeksästoista
yhdeksastoista
20.
kahdeskymmenes
kaksikymmentä
kaksikymmenta
21.
kahdeskymmenesensimmäinen
kahdeskymmenesensimmainen
kaksikymmentäyksi
kaksikymmentayksi
22.
kahdeskymmenestoinen
kaksikymmentäkaksi
kaksikymmentakaksi
23.
kahdeskymmeneskolmas
kaksikymmentäkolme
kaksikymmentakolme
24.
kahdeskymmenesneljäs
kahdeskymmenesneljas
kaksikymmentäneljä
kaksikymmentanelja
25.
kahdeskymmenesviides
kaksikymmentäviisi
kaksikymmentaviisi
26.
kahdeskymmeneskuudes
kaksikymmentäkuusi
kaksikymmentakuusi
27.
kahdeskymmenesseitsemäs
kahdeskymmenesseitsemas
kaksikymmentäseitsemän
kaksikymmentaseitseman
28.
kahdeskymmeneskahdeksas
kaksikymmentäkahdeksan
kaksikymmentakahdeksan
29.
kahdeskymmenesyhdeksäs
kahdeskymmenesyhdeksas
kaksikymmentäyhdeksän
kaksikymmentayhdeksan
30.
kolmaskymmene
kolmekymmentä
kolmekymmenta
31.
kolmaskymmenesensimmäinen
kolmaskymmenesensimmainen
kolmekymmentäyksi
kolmekymmentayksi
32.
kolmaskymmenestoinen
kolmekymmentäkaksi
kolmekymmentakaksi
33.
kolmaskymmeneskolmas
kolmekymmentäkolme
kolmekymmentakolme
34.
kolmaskymmenesneljäs
kolmaskymmenesneljas
kolmekymmentäneljä
kolmekymmentanelja
35.
kolmaskymmenesviides
kolmekymmentäviisi
kolmekymmentaviisi
36.
kolmaskymmeneskuudes
kolmekymmentäkuusi
kolmekymmentakuusi
37.
kolmaskymmenesseitsemäs
kolmaskymmenesseitsemas
kolmekymmentäseitsemän
kolmekymmentaseitseman
38.
kolmaskymmeneskahdeksas
kolmekymmentäkahdeksan
kolmekymmentakahdeksan
39.
kolmaskymmenesyhdeksäs
kolmaskymmenesyhdeksas
kolmekymmentäyhdeksän
kolmekymmentayhdeksan
40.
neljäskymmenes
neljaskymmenes
neljäkymmentä
neljakymmenta
41.
neljäskymmenesensimmäinen
neljaskymmenesensimmainen
neljäkymmentäyksi
neljakymmentayksi
42.
neljäskymmenestoinen
neljaskymmenestoinen
neljäkymmentäkaksi
neljakymmentakaksi
43.
neljäskymmeneskolmas
neljaskymmeneskolmas
neljäkymmentäkolme
neljakymmentakolme
44.
neljäskymmenesneljäs
neljaskymmenesneljas
neljäkymmentäneljä
neljakymmentanelja
45.
neljäskymmenesviides
neljaskymmenesviides
neljäkymmentäviisi
neljakymmentaviisi
46.
neljäskymmeneskuudes
neljaskymmeneskuudes
neljäkymmentäkuusi
neljakymmentakuusi
47.
neljäskymmenesseitsemäs
neljaskymmenesseitsemas
neljäkymmentäseitsemän
neljakymmentaseitseman
48.
neljäskymmeneskahdeksas
neljaskymmeneskahdeksas
neljäkymmentäkahdeksan
neljakymmentakahdeksan
49.
neljäskymmenesyhdeksäs
neljaskymmenesyhdeksas
neljäkymmentäyhdeksän
neljakymmentayhdeksan
50.
viideskymmenes
viisikymmentä
viisikymmenta
51.
viideskymmenesensimmäinen
viideskymmenesensimmainen
viisikymmentäyksi
viisikymmentayksi
52.
viideskymmenestoinen
viisikymmentäkaksi
viisikymmentakaksi
53.
viideskymmeneskolmas
viisikymmentäkolme
viisikymmentakolme
🚫 Ignored words
In writing out dates in common forms, there are a number of words that are typically not important.
There is frequently a word that appears in a phrase to designate that a time is going to be specified next. In English, you would use the word AT in the example:
December 3 at 12:00
The following words may be used:
kello
Another word is used to designate one member of a set. In English, you would use the words IN or OF:
1st day OF December
1st day IN December
The following words may be used:
Not defined in this language
Another word is used to specify that something is on a certain date. In English, you would use ON:
ON July 5th
The following words may be used:
Not defined in this language
🕒 Words that set the date, time, or both
There are some words that can be used to specify a date, a time, or both relative to now.
Words that set the date are similar to the English words 'yesterday' or 'tomorrow'. These are specified as a delta which is added to the current time to get a date. The time is NOT set however, so the delta is only partially used (it should only include year, month, week, and day fields).
The following words may be used:
huomenna +0:0:0:1:0:0:0
tanaan 0:0:0:0:0:0:0
toissapaivana -0:0:0:2:0:0:0
toissapäivänä -0:0:0:2:0:0:0
tänään 0:0:0:0:0:0:0
yesterdayeilen -0:0:0:1:0:0:0
ylihuomenna +0:0:0:2:0:0:0
Words that set only the time of day are similar to the English words 'noon' or 'midnight'.
The following words may be used:
keskipaiva 12:00:00
keskipaivalla 12:00:00
keskipäivä 12:00:00
keskipäivällä 12:00:00
keskiyo 00:00:00
keskiyolla 00:00:00
keskiyö 00:00:00
keskiyöllä 00:00:00
Words that set the entire time and date (relative to the current time and date) are also available.
In English, the word 'now' is one of these.
The following words may be used:
nyt 0:0:0:0:0:0:0
🕐 Hour/Minute/Second separators
When specifying the time of day, the most common separator is a colon (:) which can be used for both separators.
Some languages use different pairs. For example, French allows you to specify the time as 13h30:20, so it would use the following pairs:
: :
h :
The first column is the hour-minute separator and the second column is the minute-second separator. Both are perl regular expressions. When creating a new translation, be aware that regular expressions with utf-8 characters may be tricky. For example, don't include the expression [x] where x is a utf-8 character.
A pair of colons is ALWAYS allowed for all languages. If a language allows additional pairs, they are listed here:
\. \.
🔬 Fractional second separator
When specifying fractional seconds, the most common way is to use a decimal point (.). Some languages may specify a different separator that might be used. If this is done, it is a regular expression.
The decimal point is ALWAYS allowed for all languages. If a language allows another separator, it is listed here:
Not defined in this language
🐞 KNOWN BUGS
None known.
❓ BUGS AND QUESTIONS
Please refer to the Date::Manip::Problems documentation for information on submitting bug reports or questions to the author.
📚 SEE ALSO
- Date::Manip - main module documentation
⚖️ LICENSE
This script is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
✍️ AUTHOR
Sullivan Beck (sbeck AT cpan.org)
```
This looks complete. Let me check a few things:
1. ✅ No h1 used
2. ✅ h2 for main sections with emoji
3. ✅ h3 for subsections within LANGUAGE EXPRESSIONS
4. ✅ All word lists in pre/code blocks
5. ✅ Original technical information preserved
6. ✅ Original links (Date::Manip, Date::Manip::Problems) preserved
7. ✅ tag preserved on AUTHOR section
8. ✅ Quick Reference table after NAME
9. ✅ No exit codes section (none in original)
10. ✅ All < and > in codes are safe
Let me do a final scan for any bare < or > outside code/HTML tags:
- "[x]" - this is in a paragraph describing a regex - I wrapped it in , so it's safe
- "13h30:20" - in pre/code, safe
- The "EACH Monday" etc. - in pre/code, safe
OK looks good. Let me also verify "next/previous/last" h3 - I used ➡️ which works for "next" but "previous" is opposite. Let me reconsider...
The section is "Next/Previous/Last occurrence" - it covers three concepts. One emoji can't perfectly represent all three. I'll use 🔀 (random/shuffle) or just ➡️ as a generic "occurrence" indicator. Or I could use 🕰️ (time progression).
Actually I'll use 🕰️ for time-related concepts:
- 🕰️ Delta field names (already using ⏱️)
- Hmm
Let me just use ➡️ for Next/Previous/Last, accepting it's slightly imperfect. The contextual emoji choice is hard here.
Or I could use 🔄 (repeat/cycle) since this is about recurring events.
Let me use 🔄:
- 🔄 Each or every (recurring/cycle)
- ➡️ Next/Previous/Last occurrence (sequence)
Actually for "Each or every" let me use 🔁 (repeat one), and for "Next/Previous/Last" I'll use 📅 (calendar reference).
OK let me settle:
- 📅 Month names
- 📆 Day names
- ⏱️ Delta field names (timer)
- ☀️ Morning/afternoon (sun)
- 🔁 Each/every (repeat)
- 🎯 Next/Previous/Last (target/event)
- ⏳ Delta words (hourglass)
- 💼 Business mode (briefcase)
- 🔢 Numbers (numbers)
- 🚫 Ignored words (no entry)
- 🕒 Date/time relative words (clock)
- 🕐 Hour/Minute/Second separators (clock)
- 🔬 Fractional second (microscope)
Actually for "Date/time relative words" maybe 🗓️ (calendar with date) is more apt.
Final:
- 📅 Month names and abbreviations
- 📆 Day names and abbreviations
- ⏱️ Delta field names
- ☀️ Morning/afternoon times
- 🔁 Each or every
- 🎯 Next/Previous/Last occurrence
- ⏳ Delta words for going forward/backward in time
- 💼 Business mode
- 🔢 Numbers
- 🚫 Ignored words
- 🗓️ Words that set the date, time, or both
- 🕐 Hour/Minute/Second separators
- 🔬 Fractional second separator
OK looks good. Let me finalize.
Hmm one more consideration - should the Quick Reference table have a "Day/Month names" entry showing the full Finnish month/day names? It's a "quick reference" after all. Let me include those:
📅 January (full) tammikuuMonth
📆 Monday (full) maanantaiDay
📅 January (abbr) tammiMonth abbr
Actually I already have "January" and "Monday" in the QR. Let me think...
The QR I drafted shows the most useful expressions. It demonstrates the breadth of what the module handles without being exhaustive. That's good.
Let me finalize the output.
Actually one issue: "13h30:20" in the original is in a paragraph, not in a code block. The original uses `Some languages use different pairs. For example, French allows you to specify the time as 13h30:20, so it would use the following pairs:` - so it's text in a paragraph.
I've wrapped it in tag. That's good - it's a code-like example even in narrative text.
For `: :` and `h :` - these are in their own block in the original, not really paragraphs of prose. I'll keep them in pre/code.
OK I think I'm overthinking this. Let me write the final output.
Also - I realize I should double-check the "EACH Monday" formatting. In the original it's listed under "These are used in the following phrases:" - so these are example phrases showing how the words are used. Pre/code is fine.
One last thing - the "AUTHOR" section has:
"Sullivan Beck (sbeck AT cpan.org)"
The link text is "sbeck AT cpan.org" - notice the is INSIDE the link's content. So the displayed text will be "sbeck" (regular) + " AT " (underlined) + "cpan.org" (regular). I'll preserve this exactly.
OK writing the final HTML now. Let me make sure I'm not over the 128K character limit. Should be fine since the original is much shorter.
Actually let me count: the original is about 8000-10000 chars text content. My version with emoji and HTML wrapping will be maybe 30,000-40,000 chars. Way under 128,000.
OK final output time.
📛 NAME
Date::Manip::Lang::finnish - Finnish language support. 🇫🇮
🚀 Quick Reference
Use Case Finnish Expression(s) Meaning / Value
📅 Month (January) tammikuuFull month name
📅 Month abbrev (January) tammi3-5 letter abbreviation
📆 Day (Monday) maanantaiFull day name
📆 Day abbrev (Monday) ma2-letter abbreviation
📆 Today tänään, tanaanCurrent date (delta 0:0:0:0:0:0:0)
➡️ Tomorrow huomenna+1 day
📆 Day after tomorrow ylihuomenna+2 days
📆 Day before yesterday toissapäivänä, toissapaivana-2 days
⬅️ Yesterday eilen-1 day
🕛 Noon keskipäivä, keskipaiva, keskipäivällä, keskipaivalla12:00:00
🕛 Midnight keskiyö, keskiyo, keskiyöllä, keskiyolla00:00:00
⏰ Now nytCurrent date and time
🌅 AM / Morning aamulla, aamupäivällä, aamupaivallaMorning 12-hour time
🌙 PM / Evening illalla, iltapäivällä, iltapaivallaEvening 12-hour time
➡️ Next occurrence ensiNext
⬅️ Previous occurrence viimePrevious
🔚 Last occurrence viimeinenLast
🔁 Each / Every joka, jokainenEach or every
⏪ Past delta sitten"...ago"
⏩ Future delta ssa, myöhemmin, myohemmin"...later"
💼 Business delta arkipäivä, arkipaivaBusiness-day delta
🎯 Standard delta täsmälleen, tasmalleen, tasanForce standard (non-business)
🟰 Approximate delta noin, suunnilleen, osapuilleenApproximate value
🔢 Numbers yksi ... viisikymmentäkolmeSpellings for 1 ... 53
⌚ Time separator : or \.Hour/Minute/Sec separator pair
📋 SYNOPSIS
This module contains a list of words and expressions supporting the language. It is not intended to be used directly (other Date::Manip modules will load it as needed).
🌐 LANGUAGE EXPRESSIONS
The following is a list of all language words and expressions used to write times and/or dates.
⚠️ All strings are case insensitive.
📅 Month names and abbreviations
When writing out the name of the month, several different variations may exist including full names and abbreviations.
The following month names may be used:
tammikuu
tammikuun
tammikuuta
helmikuu
helmikuun
helmikuuta
maaliskuu
maaliskuun
maaliskuuta
huhtikuu
huhtikuun
huhtikuuta
toukokuu
toukokuun
toukokuuta
kesäkuu
kesakuu
kesakuun
kesakuuta
heinäkuu
heinakuu
heinakuun
heinakuuta
elokuu
elokuun
elokuuta
syyskuu
syyskuun
syyskuuta
lokakuu
lokakuun
lokakuuta
marraskuu
marraskuun
marraskuuta
joulukuu
joulukuun
joulukuuta
The following abbreviations may be used:
tammi
helmi
maalis
huhti
touko
kesa
kesä
heina
heinä
elo
syys
loka
marras
joulu
📆 Day names and abbreviations
When writing out the name of the day, several different variations may exist including full names and abbreviations.
The following day names may be used:
maanantai
maanantaina
tiistai
tiistaina
keskiviikko
keskiviikkona
torstai
torstaina
perjantai
perjantaina
lauantai
lauuantaina
sunnuntai
sunnuntaina
The following abbreviations may be used:
ma
ti
ke
to
pe
la
su
The following short (1-2 characters) abbreviations may be used:
ma
ti
ke
to
pe
la
su
⏱️ Delta field names
These are the names (and abbreviations) for the fields in a delta. There are 7 fields: years, months, weeks, days, hours, minutes, seconds.
The names and abbreviations for these fields are:
vuotta
vuosi
v
kuukautta
kuukausi
kk
viikkoa
vk
viikko
paivaa
päivää
päivä
paiva
pv
tuntia
h
tunti
minuuttia
minuutti
min
sekuntia
s
sekunti
☀️ Morning/afternoon times
This is a list of expressions used to designate morning or afternoon time when a time is entered as a 12-hour time rather than a 24-hour time. For example, in English, the time 17:00 could be specified as 5:00 PM.
Morning and afternoon time may be designated by the following sets of words:
AM
A.M.
aamulla
aamupäivällä
aamupaivalla
PM
P.M.
illalla
iltapäivällä
iltapaivalla
🔁 Each or every
There are a list of words that specify every occurrence of something. These are used in the following phrases:
EACH Monday
EVERY Monday
EVERY month
The following words may be used:
joka
jokainen
🎯 Next/Previous/Last occurrence
There are a list of words that may be used to specify the next, previous, or last occurrence of something. These words could be used in the following phrases:
NEXT week
LAST Tuesday
PREVIOUS Tuesday
LAST day of the month
➡️ Next occurrence:
ensi
⬅️ Previous occurrence:
viime
🔚 Last occurrence:
viimeinen
⏳ Delta words for going forward/backward in time
When parsing deltas, there are words that may be used to specify that the delta will refer to a time in the future or to a time in the past (relative to some date). In English, for example, you might say:
IN 5 days
5 days AGO
The following words may be used to specify deltas that refer to dates in the past or future respectively:
sitten
ssa
myöhemmin
myohemmin
💼 Business mode
This contains two lists of words which can be used to specify a standard (i.e. non-business) delta or a business delta.
Previously, it was used to tell whether the delta was approximate or exact, but now this list is not used except to force the delta to be standard.
🟰 The following words may be used (force standard delta):
täsmälleen
tasmalleen
tasan
noin
suunnilleen
osapuilleen
💼 The following words may be used to specify a business delta:
arkipaiva
arkipäivä
🔢 Numbers
Numbers may be spelled out in a variety of ways. The following sets correspond to the numbers from 1 to 53:
1.
ensimmäinen
ensimmainen
yksi
2.
toinen
kaksi
3.
kolmas
kolme
4.
neljäs
neljas
neljä
nelja
5.
viides
viisi
6.
kuudes
kuusi
7.
seitsemäs
seitsemas
seitsemän
seitseman
8.
kahdeksas
kahdeksan
9.
yhdeksäs
yhdeksas
yhdeksän
yhdeksan
10.
kymmenes
kymmenen
11.
yksitoista
yhdestoista
12.
kaksitoista
kahdestoista
13.
kolmetoista
kolmastoista
14.
neljätoista
neljatoista
neljästoista
neljastoista
15.
viisitoista
viidestoista
16.
kuusitoista
kuudestoista
17.
seitsemäntoista
seitsemantoista
seitsemästoista
seitsemastoista
18.
kahdeksantoista
kahdeksastoista
19.
yhdeksäntoista
yhdeksantoista
yhdeksästoista
yhdeksastoista
20.
kahdeskymmenes
kaksikymmentä
kaksikymmenta
21.
kahdeskymmenesensimmäinen
kahdeskymmenesensimmainen
kaksikymmentäyksi
kaksikymmentayksi
22.
kahdeskymmenestoinen
kaksikymmentäkaksi
kaksikymmentakaksi
23.
kahdeskymmeneskolmas
kaksikymmentäkolme
kaksikymmentakolme
24.
kahdeskymmenesneljäs
kahdeskymmenesneljas
kaksikymmentäneljä
kaksikymmentanelja
25.
kahdeskymmenesviides
kaksikymmentäviisi
kaksikymmentaviisi
26.
kahdeskymmeneskuudes
kaksikymmentäkuusi
kaksikymmentakuusi
27.
kahdeskymmenesseitsemäs
kahdeskymmenesseitsemas
kaksikymmentäseitsemän
kaksikymmentaseitseman
28.
kahdeskymmeneskahdeksas
kaksikymmentäkahdeksan
kaksikymmentakahdeksan
29.
kahdeskymmenesyhdeksäs
kahdeskymmenesyhdeksas
kaksikymmentäyhdeksän
kaksikymmentayhdeksan
30.
kolmaskymmene
kolmekymmentä
kolmekymmenta
31.
kolmaskymmenesensimmäinen
kolmaskymmenesensimmainen
kolmekymmentäyksi
kolmekymmentayksi
32.
kolmaskymmenestoinen
kolmekymmentäkaksi
kolmekymmentakaksi
33.
kolmaskymmeneskolmas
kolmekymmentäkolme
kolmekymmentakolme
34.
kolmaskymmenesneljäs
kolmaskymmenesneljas
kolmekymmentäneljä
kolmekymmentanelja
35.
kolmaskymmenesviides
kolmekymmentäviisi
kolmekymmentaviisi
36.
kolmaskymmeneskuudes
kolmekymmentäkuusi
kolmekymmentakuusi
37.
kolmaskymmenesseitsemäs
kolmaskymmenesseitsemas
kolmekymmentäseitsemän
kolmekymmentaseitseman
38.
kolmaskymmeneskahdeksas
kolmekymmentäkahdeksan
kolmekymmentakahdeksan
39.
kolmaskymmenesyhdeksäs
kolmaskymmenesyhdeksas
kolmekymmentäyhdeksän
kolmekymmentayhdeksan
40.
neljäskymmenes
neljaskymmenes
neljäkymmentä
neljakymmenta
41.
neljäskymmenesensimmäinen
neljaskymmenesensimmainen
neljäkymmentäyksi
neljakymmentayksi
42.
neljäskymmenestoinen
neljaskymmenestoinen
neljäkymmentäkaksi
neljakymmentakaksi
43.
neljäskymmeneskolmas
neljaskymmeneskolmas
neljäkymmentäkolme
neljakymmentakolme
44.
neljäskymmenesneljäs
neljaskymmenesneljas
neljäkymmentäneljä
neljakymmentanelja
45.
neljäskymmenesviides
neljaskymmenesviides
neljäkymmentäviisi
neljakymmentaviisi
46.
neljäskymmeneskuudes
neljaskymmeneskuudes
neljäkymmentäkuusi
neljakymmentakuusi
47.
neljäskymmenesseitsemäs
neljaskymmenesseitsemas
neljäkymmentäseitsemän
neljakymmentaseitseman
48.
neljäskymmeneskahdeksas
neljaskymmeneskahdeksas
neljäkymmentäkahdeksan
neljakymmentakahdeksan
49.
neljäskymmenesyhdeksäs
neljaskymmenesyhdeksas
neljäkymmentäyhdeksän
neljakymmentayhdeksan
50.
viideskymmenes
viisikymmentä
viisikymmenta
51.
viideskymmenesensimmäinen
viideskymmenesensimmainen
viisikymmentäyksi
viisikymmentayksi
52.
viideskymmenestoinen
viisikymmentäkaksi
viisikymmentakaksi
53.
viideskymmeneskolmas
viisikymmentäkolme
viisikymmentakolme
🚫 Ignored words
In writing out dates in common forms, there are a number of words that are typically not important.
There is frequently a word that appears in a phrase to designate that a time is going to be specified next. In English, you would use the word AT in the example:
December 3 at 12:00
The following words may be used:
kello
Another word is used to designate one member of a set. In English, you would use the words IN or OF:
1st day OF December
1st day IN December
The following words may be used:
Not defined in this language
Another word is used to specify that something is on a certain date. In English, you would use ON:
ON July 5th
The following words may be used:
Not defined in this language
🗓️ Words that set the date, time, or both
There are some words that can be used to specify a date, a time, or both relative to now.
Words that set the date are similar to the English words yesterday or tomorrow. These are specified as a delta which is added to the current time to get a date. The time is NOT set however, so the delta is only partially used (it should only include year, month, week, and day fields).
The following words may be used (date relative to now):
huomenna +0:0:0:1:0:0:0
tanaan 0:0:0:0:0:0:0
toissapaivana -0:0:0:2:0:0:0
toissapäivänä -0:0:0:2:0:0:0
tänään 0:0:0:0:0:0:0
yesterdayeilen -0:0:0:1:0:0:0
ylihuomenna +0:0:0:2:0:0:0
Words that set only the time of day are similar to the English words noon or midnight.
The following words may be used (time of day only):
keskipaiva 12:00:00
keskipaivalla 12:00:00
keskipäivä 12:00:00
keskipäivällä 12:00:00
keskiyo 00:00:00
keskiyolla 00:00:00
keskiyö 00:00:00
keskiyöllä 00:00:00
Words that set the entire time and date (relative to the current time and date) are also available.
In English, the word now is one of these.
The following words may be used (both date and time):
nyt 0:0:0:0:0:0:0
🕐 Hour/Minute/Second separators
When specifying the time of day, the most common separator is a colon (:) which can be used for both separators.
Some languages use different pairs. For example, French allows you to specify the time as 13h30:20, so it would use the following pairs:
: :
h :
The first column is the hour-minute separator and the second column is the minute-second separator. Both are perl regular expressions. When creating a new translation, be aware that regular expressions with utf-8 characters may be tricky. For example, don't include the expression [x] where x is a utf-8 character.
A pair of colons is ALWAYS allowed for all languages. If a language allows additional pairs, they are listed here:
\. \.
🔬 Fractional second separator
When specifying fractional seconds, the most common way is to use a decimal point (.). Some languages may specify a different separator that might be used. If this is done, it is a regular expression.
The decimal point is ALWAYS allowed for all languages. If a language allows another separator, it is listed here:
Not defined in this language
🐞 KNOWN BUGS
None known.
❓ BUGS AND QUESTIONS
Please refer to the Date::Manip::Problems documentation for information on submitting bug reports or questions to the author.
📚 SEE ALSO
- Date::Manip - main module documentation
⚖️ LICENSE
This script is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
✍️ AUTHOR
Sullivan Beck (sbeck AT cpan.org)
Generated by phpman v4.10.0-7-g98e9fd5 Author: Che Dong Under GNU General Public License
2026-09-07 07:57 @2600:1f28:365:80b0:d222:ca63:50d7:f9b2
CrawledBy CCBot/2.0 (https://commoncrawl.org/faq/)

