Context
time(h, m) => What Time Is It?
Source string description
TRANS: The rules to print the time in the localized language.
Example syntax:
time(h, 15) => a quarter to hour(h) am_pm(h) |
The left hand side of the rule defines a pattern with a variable 'h' and a
value '15'.
The right hand side, when applied, will use the text "a quarter to " and call
the first rule matching hour(h) after substituting the variable 'h' by its value,
and call the rule matching am_pm(h).
Internal spaces are significant on the right side of a rule. In calls, all
arguments which are not numbers are considered to be variables. The rule parser
is very simple and will let many syntax errors go ignored.
A rule ends with the character '|'.
The character '_' is a anonymous variable.
The character '#' can be used to concatenate two text fragments. For instance:
plural(1) => |
plural(_) => s |
hour(h) => number(h) hour#plural(h) |
Use '\#' to use a # character, for instance in a pango color
tag like <span foreground="\#FF0055">
You can put range conditions on firing a rule, with the syntax [var1 < var2] or
[var1 < var2 < var3]. For instance:
hours(h) [h < 12] => in the morning |
hours(h) [12 < h < 18] => in the afternoon |
hours(_) => in the night |
These rules will be called with the root pattern "time(hour, minute)", with the
variable 'hour' bound to the current hour and the variable 'minute' to the
current minute.
Order of rules is important. Rules are tried from first to last. So most precise
rule must be placed first in the list.
You can validate your set of rules by running the command line:
python timewriter.py LANG
You should use pango markup to respect the same colors as for the clock hands.
Look at the README file from the activity for explanations on how to create
rules.
Can foresee incorrect cases in Danish, though certainly not disabilitating. "Half past two" can't be translated into Danish, as it should be [expressed in the Danish way] "Thirty minutes past two". I wonder how this has been solved in other GNOME/KDE applications. Numbers beyond twenty should perhaps be replaced by numbers in Danish.
TRANS: The rules to print the time in the localized language.
Example syntax:
time(h, 15) => a quarter to hour(h) am_pm(h) |
The left hand side of the rule defines a pattern with a variable 'h' and a
value '15'.
The right hand side, when applied, will use the text "a quarter to " and call
the first rule matching hour(h) after substituting the variable 'h' by its value,
and call the rule matching am_pm(h).
Internal spaces are significant on the right side of a rule. In calls, all
arguments which are not numbers are considered to be variables. The rule parser
is very simple and will let many syntax errors go ignored.
A rule ends with the character '|'.
The character '_' is a anonymous variable.
The character '#' can be used to concatenate two text fragments. For instance:
plural(1) => |
plural(_) => s |
hour(h) => number(h) hour#plural(h) |
Use '\#' to use a # character, for instance in a pango color
tag like <span foreground="\#FF0055">
You can put range conditions on firing a rule, with the syntax [var1 < var2] or
[var1 < var2 < var3]. For instance:
hours(h) [h < 12] => in the morning |
hours(h) [12 < h < 18] => in the afternoon |
hours(_) => in the night |
These rules will be called with the root pattern "time(hour, minute)", with the
variable 'hour' bound to the current hour and the variable 'minute' to the
current minute.
Order of rules is important. Rules are tried from first to last. So most precise
rule must be placed first in the list.
You can validate your set of rules by running the command line:
python timewriter.py LANG
You should use pango markup to respect the same colors as for the clock hands.
Look at the README file from the activity for explanations on how to create
rules.
String age
11 months ago
Last updated
11 months ago
Source string age
11 months ago
time(0, 0) => <span foreground="\#005FE4">hour(0)</span> |
time(h, 0) => <span foreground="\#005FE4">hour(h)</span> o'clock am_pm(h) |
time(h, m) [m < 31] => <span foreground="\#00B20D">min(m)</span> past <span foreground="\#005FE4">hour(h)</span> am_pm(h) |
time(h, m) [30 < m] => <span foreground="\#00B20D">min(m)</span> to <span foreground="\#005FE4">hour1(h)</span> am_pm(h) |
min(1) => one minute |
min(2) => two minutes |
min(3) => three minutes |
min(4) => four minutes |
min(5) => five minutes |
min(6) => six minutes |
min(7) => seven minutes |
min(8) => eight minutes |
min(9) => nine minutes |
min(10) => ten minutes |
min(11) => eleven minutes |
min(12) => twelve minutes |
min(13) => thirteen minutes |
min(14) => fourteen minutes |
min(15) => a quarter |
min(16) => sixteen minutes |
min(17) => seventeen minutes |
min(18) => eighteen minutes |
min(19) => nineteen minutes |
min(20) => twenty minutes |
min(21) => twenty-one minutes |
min(22) => twenty-two minutes |
min(23) => twenty-three minutes |
min(24) => twenty-four minutes |
min(25) => twenty-five minutes |
min(26) => twenty-six minutes |
min(27) => twenty-seven minutes |
min(28) => twenty-eight minutes |
min(29) => twenty-nine minutes |
min(30) => half |
min(31) => twenty-nine minutes |
min(32) => twenty-eight minutes |
min(33) => twenty-seven minutes |
min(34) => twenty-six minutes |
min(35) => twenty-five minutes |
min(36) => twenty-four minutes |
min(37) => twenty-three minutes |
min(38) => twenty-two minutes |
min(39) => twenty-one minutes |
min(40) => twenty minutes |
min(41) => nineteen minutes |
min(42) => eighteen minutes |
min(43) => seventeen minutes |
min(44) => sixteen minutes |
min(45) => a quarter |
min(46) => fourteen minutes |
min(47) => thirteen minutes |
min(48) => twelve minutes |
min(49) => eleven minutes |
min(50) => ten minutes |
min(51) => nine minutes |
min(52) => eight minutes |
min(53) => seven minutes |
min(54) => six minutes |
min(55) => five minutes |
min(56) => four minutes |
min(57) => three minutes |
min(58) => two minutes |
min(59) => one minute |
min(60) => sixty minutes |
hour(0) => midnight |
hour(1) => one |
hour(2) => two |
hour(3) => three |
hour(4) => four |
hour(5) => five |
hour(6) => six |
hour(7) => seven |
hour(8) => eight |
hour(9) => nine |
hour(10) => ten |
hour(11) => eleven |
hour(12) => noon |
hour(13) => one |
hour(14) => two |
hour(15) => three |
hour(16) => four |
hour(17) => five |
hour(18) => six |
hour(19) => seven |
hour(20) => eight |
hour(21) => nine |
hour(22) => ten |
hour(23) => eleven |
hour1(0) => one |
hour1(1) => two |
hour1(2) => three |
hour1(3) => four |
hour1(4) => five |
hour1(5) => six |
hour1(6) => seven |
hour1(7) => eight |
hour1(8) => nine |
hour1(9) => ten |
hour1(10) => eleven |
hour1(11) => noon |
hour1(12) => one |
hour1(13) => two |
hour1(14) => three |
hour1(15) => four |
hour1(16) => five |
hour1(17) => six |
hour1(18) => seven |
hour1(19) => eight |
hour1(20) => nine |
hour1(21) => ten |
hour1(22) => eleven |
hour1(23) => midnight |
am_pm(h) [ h < 12] => AM |
am_pm(_) => PM
time(0, 0) => <span foreground="\#005FE4">hour(0)</span> |
time(h, 0) => <span foreground="\#005FE4">hour(h)</span> am_pm(h) |
time(h, m) [m < 31] => <span foreground="\#00B20D">min(m)</span> over <span foreground="\#005FE4">hour(h)</span> am_pm(h) |
time(h, m) [30 < m] => <span foreground="\#00B20D">min(m)</span> i <span foreground="\#005FE4">hour1(h)</span> am_pm(h) |
min(1) => et minut |
min(2) => to minutter |
min(3) => tre minutter |
min(4) => fire minutter |
min(5) => fem minutter |
min(6) => seks minutter |
min(7) => syv minutter |
min(8) => otte minutter |
min(9) => ni minutter |
min(10) => ti minutter |
min(11) => elleve minutter |
min(12) => tolv minutter |
min(13) => tretten minutter |
min(14) => fjorten minutter |
min(15) => et kvarter |
min(16) => seksten minutter |
min(17) => sytten minutter |
min(18) => atten minutter |
min(19) => nitten minutter |
min(20) => tyve minutter |
min(21) => enogtyve minutter |
min(22) => toogtyve minutter |
min(23) => treogtyve minutter |
min(24) => fireogtyve minutter |
min(25) => femogtyve minutter |
min(26) => seksogtyve minutter |
min(27) => syvogtyve minutter |
min(28) => otteogtyve minutter |
min(29) => niogtyve minutter |
min(30) => halv |
min(31) => niogtyve minutter |
min(32) => otteogtyve minutter |
min(33) => syvogtyve minutter |
min(34) => seksogtyve minutter |
min(35) => femogtyve minutter |
min(36) => fireogtyve minutter |
min(37) => treogtyve minutter |
min(38) => toogtyve minutter |
min(39) => enogtyve minutter |
min(40) => tyve minutter |
min(41) => nitten minutter |
min(42) => atten minutter |
min(43) => sytten minutter |
min(44) => tretten minutter |
min(45) => et kvarter |
min(46) => fjorten minutter |
min(47) => tretten minutter |
min(48) => tolv minutter |
min(49) => elleve minutter |
min(50) => ti minutter |
min(51) => ni minutter |
min(52) => otte minutter |
min(53) => syv minutter |
min(54) => seks minutter |
min(55) => fem minutter |
min(56) => fire minutter |
min(57) => tre minutter |
min(58) => to minutter |
min(59) => et minut |
min(60) => tres minutter |
hour(0) => midnat |
hour(1) => en |
hour(2) => to |
hour(3) => tre |
hour(4) => fire |
hour(5) => fem |
hour(6) => seks |
hour(7) => syv |
hour(8) => otte |
hour(9) => ni |
hour(10) => ti |
hour(11) => elleve |
hour(12) => middag |
hour(13) => en |
hour(14) => to |
hour(15) => tre |
hour(16) => fire |
hour(17) => fem |
hour(18) => seks |
hour(19) => syv |
hour(20) => otte |
hour(21) => ni |
hour(22) => ti |
hour(23) => elleve |
hour1(0) => en |
hour1(1) => to |
hour1(2) => tre |
hour1(3) => fire |
hour1(4) => fem |
hour1(5) => seks |
hour1(6) => syv |
hour1(7) => otte |
hour1(8) => ni |
hour1(9) => ti |
hour1(10) => elleve |
hour1(11) => middag |
hour1(12) => en |
hour1(13) => to |
hour1(14) => tre |
hour1(15) => fire |
hour1(16) => fem |
hour1(17) => seks |
hour1(18) => syv |
hour1(19) => otte |
hour1(20) => ni |
hour1(21) => ti |
hour1(22) => elleve |
hour1(23) => midnat |
am_pm(h) [ h < 12] => AM |
am_pm(_) => PM