Skip to content
This repository has been archived by the owner on May 11, 2021. It is now read-only.

Commit

Permalink
Manually i18nize all of the minor exercises
Browse files Browse the repository at this point in the history
Summary:
Manually make modifications to all the exercises for i18n. Most of the problems revolved around:

- Wrapping Strings in variables or graphies with `$._`
- `data-if`s in the middle of sentences, that needed to be pulled out around the entire sentence
- Strings that needed to be put into Plural objects for pluralization
- Decoupling strings from logic

Test Plan:
Visit the changed exercises. Make sure the question renders
correctly and there are no javascript errors. Take all the hints and make sure
nothing is rendered incorrectly. Do the translations into box language, and
make sure that everything from the languages is boxy.

Reviewers: csilvers, john

Reviewed By: csilvers

CC: alpert, eater

Differential Revision: http://phabricator.khanacademy.org/D2504
  • Loading branch information
xymostech committed Jun 4, 2013
1 parent 9b11aaf commit de19411
Show file tree
Hide file tree
Showing 68 changed files with 1,186 additions and 562 deletions.
4 changes: 2 additions & 2 deletions exercises/adding_and_subtracting_decimals_word_problems.html
Expand Up @@ -229,7 +229,7 @@
</div>

<div class="question spin">
<p data-if="isMale(1)">{To get to school each morning|To get to work each morning|To visit his grandmother}, <var>person(1)</var> takes a <var>vehicle(1)</var> <var>distance_1</var> <var>plural_form(distance(1))</var> and a <var>vehicle(2)</var> <var>distance_2</var> <var>plural_form(distance(1))</var>. {In total, the journey takes <var>time_1</var> minutes.|}</p><p data-else="">{To get to school each morning|To get to work each morning|To visit her grandmother}, <var>person(1)</var> takes a <var>vehicle(1)</var> <var>distance_1</var> <var>plural_form(distance(1))</var> and a <var>vehicle(2)</var> <var>distance_2</var> <var>plural_form(distance(1))</var>. {In total, the journey takes <var>time_1</var> minutes.|}</p>
<p data-if="isMale(1)">{To get to school each morning|To get to work each morning|To visit his grandmother}, <var>person(1)</var> takes a <var>vehicle(1)</var> <var>distance_1</var> <var>plural_form(distance(1), distance_1)</var> and a <var>vehicle(2)</var> <var>distance_2</var> <var>plural_form(distance(1), distance_2)</var>. {In total, the journey takes <var>time_1</var> minutes.|}</p><p data-else="">{To get to school each morning|To get to work each morning|To visit her grandmother}, <var>person(1)</var> takes a <var>vehicle(1)</var> <var>distance_1</var> <var>plural_form(distance(1), distance_1)</var> and a <var>vehicle(2)</var> <var>distance_2</var> <var>plural_form(distance(1), distance_2)</var>. {In total, the journey takes <var>time_1</var> minutes.|}</p>
<p class="question">How many <var>plural_form(distance(1))</var> is <var>person(1)</var>'s journey in total?</p>
</div>

Expand All @@ -251,7 +251,7 @@
<div class="graphie" data-each="DUMMY as dummy" data-update="numbers">
graph.adder.showHint();
</div>
<p class="final_answer"><var>person(1)</var> travels <var>solution</var> <var>plural_form(distance(1))</var> in total.</p>
<p class="final_answer"><var>person(1)</var> travels <var>solution</var> <var>plural_form(distance(1), solution)</var> in total.</p>
</div>
</div>
</div>
Expand Down
60 changes: 40 additions & 20 deletions exercises/area_1.html
Expand Up @@ -9,11 +9,21 @@
<div class="exercise">
<div class="vars">
<var id="UNIT,UNIT_TEXT">randFromArray([
["in", "inch"],
["ft", "foot"],
["m", "meter"],
["cm", "centimeter"],
["", "unit"]
["in", new Plural(function(num) {
return $.ngettext("inch", "inches", num);
})],
["ft", new Plural(function(num) {
return $.ngettext("foot", "feet", num);
})],
["m", new Plural(function(num) {
return $.ngettext("meter", "meters", num);
})],
["cm", new Plural(function(num) {
return $.ngettext("centimeter", "centimeters", num);
})],
["", new Plural(function(num) {
return $.ngettext("unit", "units", num);
})]
])</var>
</div>
<div class="problems">
Expand All @@ -37,7 +47,7 @@

<div class="solution" data-type="multiple">
<span class="sol" data-forms="integer"><var>S * S</var></span>
square <var>AMBIGUOUS_PLURAL(UNIT_TEXT)</var>
square <var>plural_form(UNIT_TEXT)</var>
</div>

<div class="hints">
Expand All @@ -61,12 +71,12 @@
The length is <var>S</var> <var>UNIT_TEXT</var> and
the width is <var>S</var> <var>UNIT_TEXT</var>, so the
area is <code><var>S</var>\times<var>S</var></code>
square <var>AMBIGUOUS_PLURAL(UNIT_TEXT)</var>.
square <var>plural_form(UNIT_TEXT, S * S)</var>.
</p><p data-else="">
The length is <var>S</var> <var>AMBIGUOUS_PLURAL(UNIT_TEXT, S)</var> and
the width is <var>S</var> <var>AMBIGUOUS_PLURAL(UNIT_TEXT, S)</var>, so the
The length is <var>S</var> <var>plural_form(UNIT_TEXT, S)</var> and
the width is <var>S</var> <var>plural_form(UNIT_TEXT, S)</var>, so the
area is <code><var>S</var>\times<var>S</var></code>
square <var>AMBIGUOUS_PLURAL(UNIT_TEXT)</var>.
square <var>plural_form(UNIT_TEXT, S * S)</var>.
</p>
</div>
<div>
Expand All @@ -76,7 +86,7 @@
</code></p>
<p>
We can also count <var>S * S</var>
square <var>AMBIGUOUS_PLURAL(UNIT_TEXT)</var>.
square <var>plural_form(UNIT_TEXT, S * S)</var>.
</p>
<div class="graphie" data-update="area">
_(S * S).times(function(n) {
Expand Down Expand Up @@ -111,7 +121,7 @@

<div class="solution" data-type="multiple">
<span class="sol" data-forms="integer"><var>L * W</var></span>
square <var>AMBIGUOUS_PLURAL(UNIT_TEXT)</var>
square <var>plural_form(UNIT_TEXT)</var>
</div>

<div class="hints">
Expand All @@ -134,11 +144,21 @@
});
</div>
<p>
<span data-if="isSingular(L)">The length is <var>L</var> <var>UNIT_TEXT</var>.</span><span data-else="">The length is <var>L</var> <var>AMBIGUOUS_PLURAL(UNIT_TEXT, L)</var>.</span>
<span data-if="isSingular(W)">The width is <var>W</var> <var>UNIT_TEXT</var>.</span><span data-else="">The width is <var>W</var> <var>AMBIGUOUS_PLURAL(UNIT_TEXT, W)</var>.</span>
<span>Thus the
area is <code><var>L</var>\times<var>W</var></code>
square <var>AMBIGUOUS_PLURAL(UNIT_TEXT)</var>.</span>
<span data-if="isSingular(L)">
The length is <var>L</var> <var>UNIT_TEXT</var>.
</span><span data-else="">
The length is <var>L</var> <var>plural_form(UNIT_TEXT, L)
</var>.</span>
<span data-if="isSingular(W)">
The width is <var>W</var> <var>UNIT_TEXT</var>.
</span><span data-else="">
The width is <var>W</var> <var>plural_form(UNIT_TEXT, W)</var>.
</span>
<span>
Thus the area is
<code><var>L</var>\times<var>W</var></code>
square <var>plural_form(UNIT_TEXT, L * W)</var>.
</span>
</p>
</div>
<div>
Expand All @@ -148,7 +168,7 @@
</code></p>
<p>
We can also count <var>L * W</var>
square <var>AMBIGUOUS_PLURAL(UNIT_TEXT)</var>.
square <var>plural_form(UNIT_TEXT, L * W)</var>.
</p>
<div class="graphie" data-update="area">
_(L * W).times(function(n) {
Expand Down Expand Up @@ -201,7 +221,7 @@

<div class="solution" data-type="multiple">
<span class="sol" data-forms="integer"><var>SHAPE.area</var></span>
square <var>AMBIGUOUS_PLURAL(UNIT_TEXT)</var>
square <var>plural_form(UNIT_TEXT)</var>
</div>

<div class="hints">
Expand All @@ -217,7 +237,7 @@
</div>
<p>
The area is <code><var>SHAPE.area</var></code> square
<var>AMBIGUOUS_PLURAL(UNIT_TEXT)</var>.
<var>plural_form(UNIT_TEXT, SHAPE.area)</var>.
</p>
</div>
</div>
Expand Down
26 changes: 19 additions & 7 deletions exercises/area_of_parallelograms.html
Expand Up @@ -74,11 +74,21 @@
<div class="exercise">
<div class="vars" data-ensure="Math.abs(SH) &lt;= B">
<var id="UNIT,UNIT_TEXT">randFromArray([
["in", "inch"],
["ft", "foot"],
["m", "meter"],
["cm", "centimeter"],
["", "unit"]
["in", new Plural(function(num) {
return $.ngettext("inch", "inches", num);
})],
["ft", new Plural(function(num) {
return $.ngettext("foot", "feet", num);
})],
["m", new Plural(function(num) {
return $.ngettext("meter", "meters", num);
})],
["cm", new Plural(function(num) {
return $.ngettext("centimeter", "centimeters", num);
})],
["", new Plural(function(num) {
return $.ngettext("unit", "units", num);
})]
])</var>

<var id="B">randRange(1, 8)</var>
Expand All @@ -96,7 +106,7 @@

<div class="solution" data-type="multiple">
<span class="sol" data-forms="integer"><var>K</var></span>
square <var>AMBIGUOUS_PLURAL(UNIT_TEXT)</var>
square <var>plural_form(UNIT_TEXT)</var>
</div>

<div class="hints">
Expand All @@ -107,7 +117,9 @@
graph.p.drawHeight();
</div>
<div>
<p>By moving a slice of the parallelogram, we can see that its area is equal to that of a rectangle with the same base and height.</p>
<p>By moving a slice of the parallelogram, we can see
that its area is equal to that of a rectangle with the
same base and height.</p>
<div class="graphie" data-update="parallelogram">
graph.p.sliceHint();
graph.p.animHint();
Expand Down
62 changes: 40 additions & 22 deletions exercises/area_of_squares_and_rectangles.html
Expand Up @@ -9,11 +9,21 @@
<div class="exercise">
<div class="vars">
<var id="UNIT,UNIT_TEXT">randFromArray([
["in", "inch"],
["ft", "foot"],
["m", "meter"],
["cm", "centimeter"],
["", "unit"]
["in", new Plural(function(num) {
return $.ngettext("inch", "inches", num);
})],
["ft", new Plural(function(num) {
return $.ngettext("foot", "feet", num);
})],
["m", new Plural(function(num) {
return $.ngettext("meter", "meters", num);
})],
["cm", new Plural(function(num) {
return $.ngettext("centimeter", "centimeters", num);
})],
["", new Plural(function(num) {
return $.ngettext("unit", "units", num);
})]
])</var>
</div>
<div class="problems">
Expand All @@ -27,12 +37,12 @@
<var>UNIT_TEXT</var> long. What is its area?
</span><span data-else="" data-unwrap="">
One side of a square is <code><var>S</var></code>
<var>AMBIGUOUS_PLURAL(UNIT_TEXT, S)</var> long. What is its area?
<var>plural_form(UNIT_TEXT, S)</var> long. What is its area?
</span></p>

<div class="solution" data-type="multiple">
<span class="sol" data-forms="integer"><var>S * S</var></span> square
<var>AMBIGUOUS_PLURAL(UNIT_TEXT)</var>
<var>plural_form(UNIT_TEXT)</var>
</div>

<div class="hints">
Expand Down Expand Up @@ -63,12 +73,12 @@
The length is <var>S</var> <var>UNIT_TEXT</var> and
the width is <var>S</var> <var>UNIT_TEXT</var>, so the
area is <code><var>S</var>\times<var>S</var></code>
square <var>AMBIGUOUS_PLURAL(UNIT_TEXT)</var>.
square <var>plural_form(UNIT_TEXT, S * S)</var>.
</p><p data-else="">
The length is <var>S</var> <var>AMBIGUOUS_PLURAL(UNIT_TEXT, S)</var> and
the width is <var>S</var> <var>AMBIGUOUS_PLURAL(UNIT_TEXT, S)</var>, so the
The length is <var>S</var> <var>plural_form(UNIT_TEXT, S)</var> and
the width is <var>S</var> <var>plural_form(UNIT_TEXT, S)</var>, so the
area is <code><var>S</var>\times<var>S</var></code>
square <var>AMBIGUOUS_PLURAL(UNIT_TEXT)</var>.
square <var>plural_form(UNIT_TEXT, S * S)</var>.
</p>
</div>
<div>
Expand All @@ -78,7 +88,7 @@
</code></p>
<p>
We can also count <var>S * S</var>
square <var>AMBIGUOUS_PLURAL(UNIT_TEXT)</var>.
square <var>plural_form(UNIT_TEXT, S * S)</var>.
</p>
<div class="graphie" data-update="area">
_(S * S).times(function(n) {
Expand All @@ -98,12 +108,12 @@

<p class="question">
The area of a square is <code><var>S * S</var></code>
square <var>AMBIGUOUS_PLURAL(UNIT_TEXT)</var>. How long is each side?
square <var>plural_form(UNIT_TEXT, S * S)</var>. How long is each side?
</p>

<div class="solution" data-type="multiple">
<span class="sol" data-forms="integer"><var>S</var></span>
<var>plural(UNIT_TEXT)</var>
<var>plural_form(UNIT_TEXT)</var>
</div>

<div class="hints">
Expand Down Expand Up @@ -146,7 +156,7 @@
</p><p data-else="">
The sides of a square are all the same length, so each
side must be <code><var>S</var></code>
<var>AMBIGUOUS_PLURAL(UNIT_TEXT, S)</var> long.
<var>plural_form(UNIT_TEXT, S)</var> long.
</p>
</div>
</div>
Expand All @@ -162,18 +172,18 @@
<span data-if="isSingular(L)">A rectangle is
<code><var>L</var></code> <var>UNIT_TEXT</var>
long.</span><span data-else="">A rectangle is
<code><var>L</var></code> <var>AMBIGUOUS_PLURAL(UNIT_TEXT, L)</var>
<code><var>L</var></code> <var>plural_form(UNIT_TEXT, L)</var>
long.</span>
<span data-if="isSingular(W)">The rectangle is also
<code><var>W</var></code> <var>UNIT_TEXT</var>
wide. What is its area?</span><span data-else="">The rectangle is also
<code><var>W</var></code> <var>AMBIGUOUS_PLURAL(UNIT_TEXT, W)</var>
<code><var>W</var></code> <var>plural_form(UNIT_TEXT, W)</var>
wide. What is its area?</span>
</p>

<div class="solution" data-type="multiple">
<span class="sol" data-forms="integer"><var>L * W</var></span> square
<var>AMBIGUOUS_PLURAL(UNIT_TEXT)</var>
<var>plural_form(UNIT_TEXT)</var>
</div>

<div class="hints">
Expand Down Expand Up @@ -203,11 +213,19 @@
});
</div>
<p>
<span data-if="isSingular(L)">The length is <var>L</var> <var>UNIT_TEXT</var>.</span><span data-else="">The length is <var>L</var> <var>AMBIGUOUS_PLURAL(UNIT_TEXT, L)</var>.</span>
<span data-if="isSingular(W)">The width is <var>W</var> <var>UNIT_TEXT</var>.</span><span data-else="">The width is <var>W</var> <var>AMBIGUOUS_PLURAL(UNIT_TEXT, W)</var>.</span>
<span data-if="isSingular(L)">
The length is <var>L</var> <var>UNIT_TEXT</var>.
</span><span data-else="">
The length is <var>L</var> <var>plural_form(UNIT_TEXT, L)</var>.
</span>
<span data-if="isSingular(W)">
The width is <var>W</var> <var>UNIT_TEXT</var>.
</span><span data-else="">
The width is <var>W</var> <var>plural_form(UNIT_TEXT, W)</var>.
</span>
<span>Thus the
area is <code><var>L</var>\times<var>W</var></code>
square <var>AMBIGUOUS_PLURAL(UNIT_TEXT)</var>.</span>
square <var>plural_form(UNIT_TEXT, L * W)</var>.</span>
</p>
</div>
<div>
Expand All @@ -217,7 +235,7 @@
</code></p>
<p>
We can also count <var>L * W</var>
square <var>AMBIGUOUS_PLURAL(UNIT_TEXT)</var>.
square <var>plural_form(UNIT_TEXT, L * W)</var>.
</p>
<div class="graphie" data-update="area">
_(L * W).times(function(n) {
Expand Down

0 comments on commit de19411

Please sign in to comment.