Skip to content

Commit a99ba25

Browse files
committed
Replace the Tutorial with the Guide.
The Guide isn't 100% perfect, but it's basically complete. It's certainly better than the tutorial is. Time to start pointing more people its way. I also just made it consistent to call all things 'guides' rather than tutorials. Fixes rust-lang#9874. This is the big one. And two bugs that just go away. Fixes rust-lang#14503. Fixes rust-lang#15009.
1 parent 1dc3195 commit a99ba25

File tree

7 files changed

+20
-31
lines changed

7 files changed

+20
-31
lines changed

README.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,14 @@ documentation.
66
## Quick Start
77

88
1. Download a [binary installer][installer] for your platform.
9-
2. Read the [tutorial].
9+
2. Read the [guide].
1010
3. Enjoy!
1111

1212
> ***Note:*** Windows users can read the detailed
1313
> [getting started][wiki-start] notes on the wiki.
1414
1515
[installer]: http://www.rust-lang.org/install.html
16-
[tutorial]: http://doc.rust-lang.org/tutorial.html
16+
[guide]: http://doc.rust-lang.org/guide.html
1717
[wiki-start]: https://github.com/rust-lang/rust/wiki/Note-getting-started-developing-Rust
1818
[win-wiki]: https://github.com/rust-lang/rust/wiki/Using-Rust-on-Windows
1919

@@ -54,7 +54,7 @@ documentation.
5454
When complete, `make install` will place several programs into
5555
`/usr/local/bin`: `rustc`, the Rust compiler, and `rustdoc`, the
5656
API-documentation tool.
57-
3. Read the [tutorial].
57+
3. Read the [guide].
5858
4. Enjoy!
5959

6060
### Building on Windows
@@ -76,7 +76,7 @@ To easily build on windows we can use [MSYS2](http://sourceforge.net/projects/ms
7676

7777
[repo]: https://github.com/rust-lang/rust
7878
[tarball]: https://static.rust-lang.org/dist/rust-nightly.tar.gz
79-
[tutorial]: http://doc.rust-lang.org/tutorial.html
79+
[guide]: http://doc.rust-lang.org/guide.html
8080

8181
## Notes
8282

configure

-1
Original file line numberDiff line numberDiff line change
@@ -898,7 +898,6 @@ do
898898
make_dir $h/test/debuginfo-gdb
899899
make_dir $h/test/debuginfo-lldb
900900
make_dir $h/test/codegen
901-
make_dir $h/test/doc-tutorial
902901
make_dir $h/test/doc-guide
903902
make_dir $h/test/doc-guide-ffi
904903
make_dir $h/test/doc-guide-runtime

mk/docs.mk

+5-6
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,7 @@
99
# except according to those terms.
1010

1111
######################################################################
12-
# The various pieces of standalone documentation: guides, tutorial,
13-
# manual etc.
12+
# The various pieces of standalone documentation: guides, manual, etc
1413
#
1514
# The DOCS variable is their names (with no file extension).
1615
#
@@ -26,13 +25,13 @@
2625
# L10N_LANGS are the languages for which the docs have been
2726
# translated.
2827
######################################################################
29-
DOCS := index intro tutorial guide guide-ffi guide-macros guide-lifetimes \
28+
DOCS := index intro guide guide-ffi guide-macros guide-lifetimes \
3029
guide-tasks guide-container guide-pointers guide-testing \
3130
guide-runtime complement-bugreport \
3231
complement-lang-faq complement-design-faq complement-project-faq rust \
3332
rustdoc guide-unsafe guide-strings
3433

35-
PDF_DOCS := tutorial rust
34+
PDF_DOCS := guide rust
3635

3736
RUSTDOC_DEPS_rust := doc/full-toc.inc
3837
RUSTDOC_FLAGS_rust := --html-in-header=doc/full-toc.inc
@@ -226,7 +225,7 @@ $(foreach docname,$(DOCS),$(eval $(call DEF_DOC,$(docname))))
226225
#
227226
# As such, I've attempted to get it working as much as possible (and
228227
# switching from pandoc to rustdoc), but preserving the old behaviour
229-
# (e.g. only running on the tutorial)
228+
# (e.g. only running on the guide)
230229
.PHONY: l10n-mds
231230
l10n-mds: $(D)/po4a.conf \
232231
$(foreach lang,$(L10N_LANG),$(D)/po/$(lang)/*.md.po)
@@ -244,7 +243,7 @@ doc/l10n/$(1)/$(2).html: l10n-mds $$(HTML_DEPS) $$(RUSTDOC_DEPS_$(2))
244243
$$(RUSTDOC) $$(RUSTDOC_HTML_OPTS) $$(RUSTDOC_FLAGS_$(1)) doc/l10n/$(1)/$(2).md
245244
endef
246245

247-
$(foreach lang,$(L10N_LANGS),$(eval $(call DEF_L10N_DOC,$(lang),tutorial)))
246+
$(foreach lang,$(L10N_LANGS),$(eval $(call DEF_L10N_DOC,$(lang),guide)))
248247

249248

250249
######################################################################

src/doc/guide.md

+3-12
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,5 @@
11
% The Rust Guide
22

3-
<div style="border: 2px solid red; padding:5px;">
4-
This guide is a work in progress. Until it is ready, we highly recommend that
5-
you read the <a href="tutorial.html">Tutorial</a> instead. This work-in-progress Guide is being
6-
displayed here in line with Rust's open development policy. Please open any
7-
issues you find as usual.
8-
</div>
9-
10-
# Welcome!
11-
123
Hey there! Welcome to the Rust guide. This is the place to be if you'd like to
134
learn how to program in Rust. Rust is a systems programming language with a
145
focus on "high-level, bare-metal programming": the lowest level control a
@@ -119,7 +110,7 @@ The first thing that we need to do is make a file to put our code in. I like
119110
to make a `projects` directory in my home directory, and keep all my projects
120111
there. Rust does not care where your code lives.
121112

122-
This actually leads to one other concern we should address: this tutorial will
113+
This actually leads to one other concern we should address: this guide will
123114
assume that you have basic familiarity with the command line. Rust does not
124115
require that you know a whole ton about the command line, but until the
125116
language is in a more finished state, IDE support is spotty. Rust makes no
@@ -215,7 +206,7 @@ Finally, the line ends with a semicolon (`;`). Rust is an **expression
215206
oriented** language, which means that most things are expressions. The `;` is
216207
used to indicate that this expression is over, and the next one is ready to
217208
begin. Most lines of Rust code end with a `;`. We will cover this in-depth
218-
later in the tutorial.
209+
later in the guide.
219210

220211
Finally, actually **compiling** and **running** our program. We can compile
221212
with our compiler, `rustc`, by passing it the name of our source file:
@@ -2017,7 +2008,7 @@ Great! Next up: let's compare our guess to the secret guess.
20172008

20182009
## Comparing guesses
20192010

2020-
If you remember, earlier in the tutorial, we made a `cmp` function that compared
2011+
If you remember, earlier in the guide, we made a `cmp` function that compared
20212012
two numbers. Let's add that in, along with a `match` statement to compare the
20222013
guess to the secret guess:
20232014

src/doc/intro.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,12 @@ Rust is a systems programming language that combines strong compile-time correct
44
It improves upon the ideas of other systems languages like C++
55
by providing guaranteed memory safety (no crashes, no data races) and complete control over the lifecycle of memory.
66
Strong memory guarantees make writing correct concurrent Rust code easier than in other languages.
7-
This tutorial will give you an idea of what Rust is like in about thirty minutes.
7+
This introduction will give you an idea of what Rust is like in about thirty minutes.
88
It expects that you're at least vaguely familiar with a previous 'curly brace' language,
99
but does not require prior experience with systems programming.
1010
The concepts are more important than the syntax,
1111
so don't worry if you don't get every last detail:
12-
the [tutorial](tutorial.html) can help you out with that later.
12+
the [guide](guide.html) can help you out with that later.
1313

1414
Let's talk about the most important concept in Rust, "ownership,"
1515
and its implications on a task that programmers usually find very difficult: concurrency.
@@ -433,5 +433,5 @@ yet get the efficiency of languages such as C++.
433433

434434
I hope that this taste of Rust has given you an idea if Rust is the right language for you.
435435
If that's true,
436-
I encourage you to check out [the tutorial](tutorial.html) for a full,
436+
I encourage you to check out [the guide](guide.html) for a full,
437437
in-depth exploration of Rust's syntax and concepts.

src/doc/po4a.conf

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,4 +24,4 @@
2424
[type: text] src/doc/intro.md $lang:doc/l10n/$lang/intro.md
2525
[type: text] src/doc/rust.md $lang:doc/l10n/$lang/rust.md
2626
[type: text] src/doc/rustdoc.md $lang:doc/l10n/$lang/rustdoc.md
27-
[type: text] src/doc/tutorial.md $lang:doc/l10n/$lang/tutorial.md
27+
[type: text] src/doc/guide.md $lang:doc/l10n/$lang/guide.md

src/doc/rust.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -13,16 +13,16 @@ provides three kinds of material:
1313
- Appendix chapters providing rationale and references to languages that
1414
influenced the design.
1515

16-
This document does not serve as a tutorial introduction to the
16+
This document does not serve as an introduction to the
1717
language. Background familiarity with the language is assumed. A separate
18-
[tutorial] document is available to help acquire such background familiarity.
18+
[guide] is available to help acquire such background familiarity.
1919

2020
This document also does not serve as a reference to the [standard]
2121
library included in the language distribution. Those libraries are
2222
documented separately by extracting documentation attributes from their
2323
source code.
2424

25-
[tutorial]: tutorial.html
25+
[guide]: guide.html
2626
[standard]: std/index.html
2727

2828
## Disclaimer
@@ -4174,7 +4174,7 @@ communication facilities.
41744174
The Rust compiler supports various methods to link crates together both
41754175
statically and dynamically. This section will explore the various methods to
41764176
link Rust crates together, and more information about native libraries can be
4177-
found in the [ffi tutorial][ffi].
4177+
found in the [ffi guide][ffi].
41784178

41794179
In one session of compilation, the compiler can generate multiple artifacts
41804180
through the usage of either command line flags or the `crate_type` attribute.

0 commit comments

Comments
 (0)