Skip to content

Commit 01f775a

Browse files
committed
Merge pull request #822 from eignnx/i18n-embedded
Move Text from Embedded page into Translation Files
2 parents a696651 + 913a876 commit 01f775a

File tree

6 files changed

+168
-65
lines changed

6 files changed

+168
-65
lines changed

locales/en-US/embedded.ftl

Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
### Translation file for https://www.rust-lang.org/what/embedded
2+
3+
## templates/what/embedded.hbs
4+
5+
# Page Title
6+
embedded-page-title = Embedded devices
7+
8+
9+
## Why Rust? (templates/components/what/pitch.hbs)
10+
11+
embedded-pitch-heading = Why Rust?
12+
13+
embedded-pitch-analysis-alt = A microscope
14+
embedded-pitch-analysis-heading = Powerful static analysis
15+
embedded-pitch-analysis-description =
16+
Enforce pin and peripheral configuration at compile time. Guarantee that resources won’t be used by unintended parts of your application.
17+
18+
embedded-pitch-memory-alt = A RAM stick
19+
embedded-pitch-memory-heading = Flexible memory
20+
embedded-pitch-memory-description =
21+
Dynamic memory allocation is optional. Use a global allocator and dynamic data structures. Or leave out the heap altogether and statically allocate everything.
22+
23+
embedded-pitch-concurrency-alt = Gears
24+
embedded-pitch-concurrency-heading = Fearless concurrency
25+
embedded-pitch-concurrency-description =
26+
Rust makes it impossible to accidentally share state between threads. Use any concurrency approach you like, and you’ll still get Rust’s strong guarantees.
27+
28+
embedded-pitch-interop-alt = Handshake
29+
embedded-pitch-interop-heading = Interoperability
30+
embedded-pitch-interop-description =
31+
Integrate Rust into your existing C codebase or leverage an existing SDK to write a Rust application.
32+
33+
embedded-pitch-portability-alt = Luggage trolley
34+
embedded-pitch-portability-heading = Portability
35+
embedded-pitch-portability-description =
36+
Write a library or driver once, and use it with a variety of systems, ranging from very small microcontrollers to powerful SBCs.
37+
38+
embedded-pitch-community-alt = Shield Logo
39+
embedded-pitch-community-heading = Community driven
40+
embedded-pitch-community-description =
41+
As part of the Rust open source project, support for embedded systems is driven by a best-in-class open source community, with support from commercial partners.
42+
43+
embedded-learn-more-link = Learn more
44+
45+
46+
## Showcase (templates/components/what/showcase.hbs)
47+
48+
embedded-showcase-heading = Showcase
49+
50+
embedded-showcase-quote =
51+
“I was so excited when I came across Rust, from Mozilla. Rust is a new programming language, with the tag line ‘safe, fast, concurrent – pick three.’ It also has an assured future, with a powerful, committed user community.”
52+
embedded-showcase-quote-attribution =
53+
– Jonathan Pallant, Senior Consultant, Cambridge Consultants
54+
embedded-showcase-see-more-link = See More
55+
56+
embedded-showcase-video-description =
57+
<a href="https://vimeo.com/224912526">Securing the future, with Rust</a> from <a href="https://vimeo.com/cambridgeconsultants">Cambridge Consultants</a> on <a href="https://vimeo.com">Vimeo</a>.
58+
59+
60+
## Get started! (templates/components/what/embedded/get-started.hbs)
61+
62+
embedded-get-started-heading = Get started!
63+
64+
embedded-get-started-discovery-book-alt = DIP-6 package
65+
embedded-get-started-discovery-book-heading = The Discovery book
66+
embedded-get-started-discovery-book-description =
67+
Learn embedded development from the ground up&mdash;using Rust!
68+
69+
embedded-get-started-embedded-rust-book-alt = TFQP-16 package
70+
embedded-get-started-embedded-rust-book-heading = The Embedded Rust book
71+
embedded-get-started-embedded-rust-book-description =
72+
Already familiar with Embedded development? Jump in with Rust and start reaping the benefits.
73+
74+
embedded-get-started-embedonomicon-alt = BGA package
75+
embedded-get-started-embedonomicon-heading = The Embedonomicon
76+
embedded-get-started-embedonomicon-description =
77+
Look under the hood of foundational embedded libraries.
78+
79+
embedded-get-started-read-link = Read
80+
embedded-get-started-more-documentation-link = More Documentation
81+
82+
83+
## Production use (templates/components/what/embedded/testimonials.hbs)
84+
85+
embedded-testimonials-heading = Production use
86+
87+
embedded-testimonials-sensirion-alt = Sensirion logo
88+
embedded-testimonials-sensirion-quote =
89+
At Sensirion we recently used Rust to create an embedded demonstrator for Sensirion’s <a href="https://sensirion-automotive.com/products#PM2_5">Particulate Matter Sensor</a>. Due to the easy cross-compilation and the availability of many high quality crates on crates.io <b>we quickly ended up with a fast and robust demonstrator.</b>
90+
embedded-testimonials-sensirion-attribution =
91+
&ndash; Raphael Nestler, Software Engineer, Sensirion
92+
93+
embedded-testimonials-airborne-alt = Airborne Engineering Ltd logo
94+
embedded-testimonials-airborne-quote =
95+
At Airborne Engineering Ltd. we recently used Rust to write an Ethernet bootloader, <a href="https://github.com/airborneengineering/blethrs">blethrs</a>, for our in-house data acquisition system. <b>Rust is a promising language and we’re excited to use it for our future projects, embedded and otherwise.</b>
96+
embedded-testimonials-airborne-attribution =
97+
&ndash; Dr. Adam Greig, Instrumentation Engineer, Airborne Engineering Ltd.
98+
99+
embedded-testimonials-49nord-alt = 49nord logo
100+
# "Fluent" requires a square bracket which is the first character of a line to be escaped like this: {"["} See https://projectfluent.org/fluent/guide/special.html
101+
embedded-testimonials-49nord-quote =
102+
{"["}Rust] enables us to ship software faster and more correct than we thought possible. Thanks to Rust, we can take memory safety for granted, while other benefits of a zero-overhead language with a sophisticated type system help us develop maintainable software. <b>Rust makes our customers happy, as well as our engineers.</b>
103+
embedded-testimonials-49nord-attribution =
104+
&ndash; Marc Brinkmann, CEO, 49nord
105+
106+
embedded-testimonials-terminal-tech-alt = Terminal Technologies logo
107+
embedded-testimonials-terminal-tech-quote =
108+
<b>We think it’s really cool that we can use a modern nice language in the embedded space</b> where usually there’s no alternative to C/C++
109+
embedded-testimonials-terminal-tech-attribution =
110+
&ndash; Aleksei Arbuzov, Senior Software Engineer, Terminal Technologies

templates/components/what/embedded/get-started.hbs

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,56 +1,55 @@
11
<section id="embedded-get-started" class="red">
22
<div class="w-100 mw-none ph3 mw8-m mw9-l center f3">
33
<header>
4-
<h2>Get started!</h2>
4+
<h2>{{text embedded-get-started-heading}}</h2>
55
<div class="highlight"></div>
66
</header>
77
<div class="flex flex-column flex-row-l">
88
<div class="flex flex-row flex-column-l justify-between-l mw8 measure-wide-l w-100 mt5 mt2-l pl4-l" id="discovery-book">
99
<div class="v-top tc-l">
10-
<img src="/static/images/chip1.svg" alt="DIP-6 package"
10+
<img src="/static/images/chip1.svg" alt="{{text embedded-get-started-discovery-book-alt}}"
1111
class="mw3 mw4-ns"/>
1212
</div>
1313
<div class="v-top pl4 pl0-l pt0 pt3-l measure-wide-l flex-l flex-column-l flex-auto-l justify-between-l">
14-
<h3 class="tc-l">The Discovery book</h3>
14+
<h3 class="tc-l">{{text embedded-get-started-discovery-book-heading}}</h3>
1515
<p class="flex-grow-1">
16-
Learn embedded development from the ground up&mdash;using Rust!
16+
{{text embedded-get-started-discovery-book-description}}
1717
</p>
18-
<a href="https://docs.rust-embedded.org/discovery/" class="button button-secondary">Read</a>
18+
<a href="https://docs.rust-embedded.org/discovery/" class="button button-secondary">{{text embedded-get-started-read-link}}</a>
1919
</div>
2020
</div>
2121
<div class="flex flex-row flex-column-l justify-between-l mw8 measure-wide-l w-100 mt5 mt2-l pl4-l" id="discovery-book">
2222
<div class="v-top tc-l">
23-
<img src="/static/images/chip2.svg" alt="TFQP-16 package"
23+
<img src="/static/images/chip2.svg" alt="{{text embedded-get-started-embedded-rust-book-alt}}"
2424
class="mw3 mw4-ns"/>
2525
</div>
2626
<div class="v-top pl4 pl0-l pt0 pt3-l measure-wide-l flex-l flex-column-l flex-auto-l justify-between-l">
27-
<h3 class="tc-l">The Embedded Rust book</h3>
27+
<h3 class="tc-l">{{text embedded-get-started-embedded-rust-book-heading}}</h3>
2828
<p class="flex-grow-1">
29-
Already familiar with Embedded development?
30-
Jump in with Rust and start reaping the benefits.
29+
{{text embedded-get-started-embedded-rust-book-description}}
3130
</p>
32-
<a href="https://docs.rust-embedded.org/book/" class="button button-secondary">Read</a>
31+
<a href="https://docs.rust-embedded.org/book/" class="button button-secondary">{{text embedded-get-started-read-link}}</a>
3332
</div>
3433
</div>
3534
<div class="flex flex-row flex-column-l justify-between-l mw8 measure-wide-l w-100 mt5 mt2-l pl4-l" id="embedonomicon">
3635
<div class="v-top tc-l">
37-
<img src="/static/images/chip3.svg" alt="BGA package"
36+
<img src="/static/images/chip3.svg" alt="{{text embedded-get-started-embedonomicon-alt}}"
3837
class="mw3 mw4-ns"/>
3938
</div>
4039
<div class="v-top pl4 pl0-l pt0 pt3-l measure-wide-l flex-l flex-column-l flex-auto-l justify-between-l">
41-
<h3 class="tc-l">The Embedonomicon</h3>
40+
<h3 class="tc-l">{{text embedded-get-started-embedonomicon-heading}}</h3>
4241
<p class="flex-grow-1">
43-
Look under the hood of foundational embedded libraries.
42+
{{text embedded-get-started-embedonomicon-description}}
4443
</p>
45-
<a href="https://docs.rust-embedded.org/embedonomicon/" class="button button-secondary">Read</a>
44+
<a href="https://docs.rust-embedded.org/embedonomicon/" class="button button-secondary">{{text embedded-get-started-read-link}}</a>
4645
</div>
4746
</div>
4847
</div>
4948
<hr>
5049
<div class="tc pl4-l">
5150
<p>
5251
<a href="https://docs.rust-embedded.org/" class="button button-secondary">
53-
More Documentation
52+
{{text embedded-get-started-more-documentation-link}}
5453
</a>
5554
</div>
5655
</div>

templates/components/what/embedded/pitch.hbs

Lines changed: 25 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -2,108 +2,104 @@
22
<div class="w-100 mw-none ph3 mw8-m mw9-l center f3">
33
<header>
44
<h2>
5-
Why Rust?
5+
{{text embedded-pitch-heading}}
66
</h2>
77
<div class="highlight"></div>
88
</header>
99

1010
<div class="flex-none flex-l flex-row">
1111
<div class="flex flex-row flex-column-l justify-between-l mw8 measure-wide-l w-100 mt5 mt2-l pl4-l" id="powerful-static-analysis">
1212
<div class="v-top tc-l">
13-
<img src="/static/images/microscope.svg" alt="A microscope"
13+
<img src="/static/images/microscope.svg" alt="{{text embedded-pitch-analysis-alt}}"
1414
class="mw3 mw4-ns"/>
1515
</div>
1616
<div class="v-top pl4 pl0-l pt0 pt3-l measure-wide-l flex-l flex-column-l flex-auto-l justify-between-l">
1717
<h3 class="tc-l">
18-
Powerful static analysis
18+
{{text embedded-pitch-analysis-heading}}
1919
</h3>
2020
<p class="flex-grow-1">
21-
Enforce pin and peripheral configuration at compile time. Guarantee that resources won’t be used by unintended parts of your application.
21+
{{text embedded-pitch-analysis-description}}
2222
</p>
23-
<a href="https://docs.rust-embedded.org/book/static-guarantees/" class="button button-secondary">Learn more</a>
23+
<a href="https://docs.rust-embedded.org/book/static-guarantees/" class="button button-secondary">{{text embedded-learn-more-link}}</a>
2424
</div>
2525
</div>
2626

2727
<div class="flex flex-row flex-column-l justify-between-l mw8 measure-wide-l w-100 mt5 mt2-l pl4-l" id="flexible-memory-management">
2828
<div class="v-top tc-l">
29-
<img src="/static/images/ram-memory.svg" alt="A RAM stick"
29+
<img src="/static/images/ram-memory.svg" alt="{{text embedded-pitch-memory-alt}}"
3030
class="mw3 mw4-ns"/>
3131
</div>
3232
<div class="v-top pl4 pl0-l pt0 pt3-l measure-wide-l flex-l flex-column-l flex-auto-l justify-between-l">
3333
<h3 class="tc-l">
34-
Flexible memory
34+
{{text embedded-pitch-memory-heading}}
3535
</h3>
3636
<p class="flex-grow-1">
37-
Dynamic memory allocation is optional. Use a global allocator and dynamic data structures.
38-
Or leave out the heap altogether and statically allocate everything.
37+
{{text embedded-pitch-memory-description}}
3938
</p>
40-
<a href="https://docs.rust-embedded.org/book/collections/" class="button button-secondary">Learn more</a>
39+
<a href="https://docs.rust-embedded.org/book/collections/" class="button button-secondary">{{text embedded-learn-more-link}}</a>
4140
</div>
4241
</div>
4342

4443

4544
<div class="flex flex-row flex-column-l justify-between-l mw8 measure-wide-l w-100 mt5 mt2-l pl4-l" id="flexible-memory-management">
4645
<div class="v-top tc-l">
47-
<img src="/static/images/gears.svg" alt="Gears"
46+
<img src="/static/images/gears.svg" alt="{{text embedded-pitch-concurrency-alt}}"
4847
class="mw3 mw4-ns"/>
4948
</div>
5049
<div class="v-top pl4 pl0-l pt0 pt3-l measure-wide-l flex-l flex-column-l flex-auto-l justify-between-l">
5150
<h3 class="v-top tc-l">
52-
Fearless concurrency
51+
{{text embedded-pitch-concurrency-heading}}
5352
</h3>
5453

5554
<p class="flex-grow-1">
56-
Rust makes it impossible to accidentally share state between threads.
57-
Use any concurrency approach you like, and you’ll still get Rust’s strong guarantees.
55+
{{text embedded-pitch-concurrency-description}}
5856
</p>
59-
<a href="https://docs.rust-embedded.org/book/concurrency/" class="button button-secondary">Learn more</a>
57+
<a href="https://docs.rust-embedded.org/book/concurrency/" class="button button-secondary">{{text embedded-learn-more-link}}</a>
6058
</div>
6159
</div>
6260
</div>
6361

6462
<div class="flex-none flex-l flex-row mt5-l">
6563
<div class="flex flex-row flex-column-l justify-between-l mw8 measure-wide-l w-100 mt5 mt2-l pl4-l" id="interoperability">
6664
<div class="v-top tc-l">
67-
<img src="/static/images/handshake.svg" alt="Handshake"
65+
<img src="/static/images/handshake.svg" alt="{{text embedded-pitch-interop-alt}}"
6866
class="mw3 mw4-ns"/>
6967
</div>
7068
<div class="v-top pl4 pl0-l pt0 pt3-l measure-wide-l flex-l flex-column-l flex-auto-l justify-between-l">
7169
<h3 class="tc-l">
72-
Interoperability
70+
{{text embedded-pitch-interop-heading}}
7371
</h3>
7472
<p class="flex-grow-1">
75-
Integrate Rust into your existing C codebase or leverage an existing SDK to write a Rust
76-
application.
73+
{{text embedded-pitch-interop-description}}
7774
</p>
78-
<a href="https://docs.rust-embedded.org/book/interoperability/" class="button button-secondary">Learn more</a>
75+
<a href="https://docs.rust-embedded.org/book/interoperability/" class="button button-secondary">{{text embedded-learn-more-link}}</a>
7976
</div>
8077
</div>
8178
<div class="flex flex-row flex-column-l justify-between-l mw8 measure-wide-l w-100 mt5 mt2-l pl4-l" id="portability">
8279
<div class="v-top tc-l">
83-
<img src="/static/images/luggage.svg" alt="Luggage trolley"
80+
<img src="/static/images/luggage.svg" alt="{{text embedded-pitch-portability-alt}}"
8481
class="mw3 mw4-ns"/>
8582
</div>
8683
<div class="v-top pl4 pl0-l pt0 pt3-l measure-wide-l flex-l flex-column-l flex-auto-l justify-between-l">
87-
<h3 class="tc-l">Portability</h3>
84+
<h3 class="tc-l">{{text embedded-pitch-portability-heading}}</h3>
8885

8986
<p class="flex-grow-1">
90-
Write a library or driver once, and use it with a variety of systems, ranging
91-
from very small microcontrollers to powerful SBCs.
87+
{{text embedded-pitch-portability-description}}
9288
</p>
93-
<a href="https://docs.rust-embedded.org/book/portability/" class="button button-secondary">Learn more</a>
89+
<a href="https://docs.rust-embedded.org/book/portability/" class="button button-secondary">{{text embedded-learn-more-link}}</a>
9490
</div>
9591
</div>
9692
<div class="flex flex-row flex-column-l justify-between-l mw8 measure-wide-l w-100 mt5 mt2-l pl4-l" id="community-driven">
9793
<div class="v-top tc-l">
98-
<img src="/static/images/cli-rustc-approved.svg" alt="Shield Logo" class="mw3 mw4-ns"/>
94+
<img src="/static/images/cli-rustc-approved.svg" alt="{{text embedded-pitch-community-alt}}" class="mw3 mw4-ns"/>
9995
</div>
10096
<div class="v-top pl4 pl0-l pt0 pt3-l measure-wide-l flex-l flex-column-l flex-auto-l justify-between-l">
101-
<h3 class="tc-l">Community driven</h3>
97+
<h3 class="tc-l">{{text embedded-pitch-community-heading}}</h3>
10298

10399
<p class="flex-grow-1">
104-
As part of the Rust open source project, support for embedded systems is driven by a best-in-class open source community, with support from commercial partners.
100+
{{text embedded-pitch-community-description}}
105101
</p>
106-
<a href="https://github.com/rust-embedded/wg" class="button button-secondary">Learn more</a>
102+
<a href="https://github.com/rust-embedded/wg" class="button button-secondary">{{text embedded-learn-more-link}}</a>
107103
</div>
108104
</div>
109105
</div>

templates/components/what/embedded/showcase.hbs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,23 @@
11
<section id="embedded-showcase-gallery" class="purple">
22
<div class="w-100 mw-none ph3 mw8-m mw9-l center f3">
33
<header>
4-
<h2>Showcase</h2>
4+
<h2>{{text embedded-showcase-heading}}</h2>
55
<div class="highlight"></div>
66
</header>
77
<div class="flex flex-column flex-row-l">
88
<div class="mw-50-l mh3-l">
99
<div>
10-
“I was so excited when I came across Rust, from Mozilla. Rust is a new programming language, with the tag line ‘safe, fast, concurrent &ndash; pick three.’ It also has an assured future, with a powerful, committed user community.”
10+
{{text embedded-showcase-quote}}
1111

12-
<p>&ndash; Jonathan Pallant, Senior Consultant, Cambridge Consultants
12+
<p>{{text embedded-showcase-quote-attribution}}
1313

14-
<p><a href="https://github.com/rust-embedded/awesome-embedded-rust" class="button button-secondary">See More</a>
14+
<p><a href="https://github.com/rust-embedded/awesome-embedded-rust" class="button button-secondary">{{text embedded-showcase-see-more-link}}</a>
1515
</div>
1616
</div>
1717
<div class="mw-50-l mh3-l center">
1818
<div>
1919
<iframe src="https://player.vimeo.com/video/224912526?title=0&byline=0&portrait=0" width="500" height="281" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>
20-
<p><a href="https://vimeo.com/224912526">Securing the future, with Rust</a> from <a href="https://vimeo.com/cambridgeconsultants">Cambridge Consultants</a> on <a href="https://vimeo.com">Vimeo</a>.</p>
20+
<p>{{text embedded-showcase-video-description}}</p>
2121
</div>
2222
</div>
2323
</div>

0 commit comments

Comments
 (0)