diff --git a/doc/favicon.inc b/doc/favicon.inc
new file mode 100644
index 00000000000..8dd05620e48
--- /dev/null
+++ b/doc/favicon.inc
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/doc/manual.inc b/doc/manual.inc
index 783679d0ea5..a60ef803b5f 100644
--- a/doc/manual.inc
+++ b/doc/manual.inc
@@ -4,4 +4,9 @@
display: block;
padding-left: 2em;
}
-
\ No newline at end of file
+ #influences blockquote p:last-child {
+ display: block;
+ line-height: 1.428571429;
+ color: #999999;
+ }
+
diff --git a/doc/rust.css b/doc/rust.css
index 26135edd8be..8b95a586030 100644
--- a/doc/rust.css
+++ b/doc/rust.css
@@ -2,7 +2,7 @@
* Copyright 2013 The Rust Project Developers. See the COPYRIGHT
* file at the top-level directory of this distribution and at
* http://rust-lang.org/COPYRIGHT.
- * With elements taken from Bootstrap v3.0.0 (Apache v2.0 licensed).
+ * With elements taken from Bootstrap v3.0.2 (MIT licensed).
*
* Licensed under the Apache License, Version 2.0 or the MIT license
@@ -93,6 +93,7 @@ p {
a {
text-decoration: none;
color: #428BCA;
+ background: transparent;
}
a:hover, a:focus {
color: #2A6496;
@@ -114,7 +115,7 @@ h5 a:link, h5 a:visited {color: black;}
/* Code
========================================================================== */
pre, code {
- font-family: Monaco, Menlo, Consolas, "Courier New", monospace;
+ font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
border-radius: 4px;
}
pre {
@@ -141,7 +142,7 @@ pre code {
color: inherit;
white-space: pre-wrap;
background-color: transparent;
- border: 0;
+ border-radius: 0;
}
/* Code highlighting */
@@ -158,7 +159,7 @@ pre code {
.cm-s-default span.cm-string {color: #a11;}
.cm-s-default span.cm-string-2 {color: #f50;}
.cm-s-default span.cm-meta {color: #555;}
-.cm-s-default span.cm-error {color: #f00;}
+/*.cm-s-default span.cm-error {color: #f00;}*/
.cm-s-default span.cm-qualifier {color: #555;}
.cm-s-default span.cm-builtin {color: #30a;}
.cm-s-default span.cm-bracket {color: #cc7;}
@@ -187,7 +188,7 @@ pre code {
}
#versioninfo a.hash {
color: gray;
- font-size: 60%;
+ font-size: 70%;
}
blockquote {
@@ -303,4 +304,4 @@ hr {
table td, table th {
background-color: #fff !important;
}
-}
\ No newline at end of file
+}
diff --git a/doc/tutorial-macros.md b/doc/tutorial-macros.md
index f1f4ade0542..4117faa1a6b 100644
--- a/doc/tutorial-macros.md
+++ b/doc/tutorial-macros.md
@@ -210,10 +210,10 @@ solves the problem.
# Macro argument pattern matching
-Now consider code like the following:
-
## Motivation
+Now consider code like the following:
+
~~~~
# enum t1 { good_1(t2, uint), bad_1 };
# pub struct t2 { body: t3 }
diff --git a/doc/tutorial-rustpkg.md b/doc/tutorial-rustpkg.md
index fb15e0c0cf2..daacd4ab76b 100644
--- a/doc/tutorial-rustpkg.md
+++ b/doc/tutorial-rustpkg.md
@@ -27,7 +27,6 @@ $ rustc main.rs
main.rs:1:0: 1:17 error: can't find crate for `hello`
main.rs:1 extern mod hello;
^~~~~~~~~~~~~~~~~
-
~~~~
This makes sense, as we haven't gotten it from anywhere yet! Luckily for us,
@@ -216,7 +215,7 @@ a function that can be sensibly tested:
#[license = "MIT"];
pub fn is_even(i: uint) -> bool {
- i % 2 == 0
+ i % 2 == 0
}
~~~
@@ -230,9 +229,9 @@ use hello::is_even;
#[test]
fn test_is_even() {
- assert!(is_even(0));
- assert!(!is_even(1));
- assert!(is_even(2));
+ assert!(is_even(0));
+ assert!(!is_even(1));
+ assert!(is_even(2));
}
~~~
diff --git a/doc/tutorial-tasks.md b/doc/tutorial-tasks.md
index 4983a5af3e5..93c2b124fa5 100644
--- a/doc/tutorial-tasks.md
+++ b/doc/tutorial-tasks.md
@@ -104,8 +104,8 @@ an environment that it carries across tasks.
let child_task_number = generate_task_number();
do spawn {
- // Capture it in the remote task
- println!("I am child number {}", child_task_number);
+ // Capture it in the remote task
+ println!("I am child number {}", child_task_number);
}
~~~
diff --git a/doc/tutorial.md b/doc/tutorial.md
index 5f805b39f23..5e238c5911d 100644
--- a/doc/tutorial.md
+++ b/doc/tutorial.md
@@ -804,7 +804,7 @@ confusing numbers that correspond to different units.
We've already seen several function definitions. Like all other static
declarations, such as `type`, functions can be declared both at the
top level and inside other functions (or in modules, which we'll come
-back to [later](#modules-and-crates)). The `fn` keyword introduces a
+back to [later](#crates-and-the-module-system)). The `fn` keyword introduces a
function. A function has an argument list, which is a parenthesized
list of `expr: type` pairs separated by commas. An arrow `->`
separates the argument list and the function's return type.
@@ -2711,10 +2711,10 @@ extend with the `-L` switch).
However, Rust also ships with rustpkg, a package manager that is able to automatically download and build
libraries if you use it for building your crate. How it works is explained [here][rustpkg],
but for this tutorial it's only important to know that you can optionally annotate an
-`extern mod` statement with an package id that rustpkg can use to identify it:
+`extern mod` statement with a package id that rustpkg can use to identify it:
~~~ {.ignore}
-extern mod rust = "github.com/mozilla/rust"; // pretend Rust is an simple library
+extern mod rust = "github.com/mozilla/rust"; // pretend Rust is a simple library
~~~
[rustpkg]: rustpkg.html
@@ -2730,7 +2730,7 @@ the link name and the version. It also hashes the filename and the symbols in a
based on the link metadata, allowing you to use two different versions of the same library in a crate
without conflict.
-Therefor, if you plan to compile your crate as a library, you should annotate it with that information:
+Therefore, if you plan to compile your crate as a library, you should annotate it with that information:
~~~~
// lib.rs
@@ -2746,8 +2746,8 @@ Therefor, if you plan to compile your crate as a library, you should annotate it
You can also in turn require in a `extern mod` statement that certain link metadata items match some criteria.
For that, Rust currently parses a comma-separated list of name/value pairs that appear after
it, and ensures that they match the attributes provided in the `link` attribute of a crate file.
-This enables you to, eg, pick a a crate based on it's version number, or to link an library under an
-different name. For example, this two mod statements would both accept and select the crate define above:
+This enables you to, e.g., pick a crate based on its version number, or link a library under a
+different name. For example, these two `mod` statements would both accept and select the crate define above:
~~~~ {.xfail-test}
extern mod farm(vers = "2.5");
@@ -2836,14 +2836,14 @@ This allows you to use common types and functions like `Option` or `println`
without needing to import them. And if you need something from `std` that's not in the prelude,
you just have to import it with an `use` statement.
-For example, it re-exports `println` which is defined in `std::io::println`:
+For example, it re-exports `println` which is defined in `std::io::stdio::println`:
~~~
use puts = std::io::stdio::println;
fn main() {
println("println is imported per default.");
- puts("Doesn't hinder you from importing it under an different name yourself.");
+ puts("Doesn't hinder you from importing it under a different name yourself.");
::std::io::stdio::println("Or from not using the automatic import.");
}
~~~
diff --git a/mk/docs.mk b/mk/docs.mk
index 621d283ee5d..a7ffe928940 100644
--- a/mk/docs.mk
+++ b/mk/docs.mk
@@ -15,6 +15,10 @@
DOCS :=
DOCS_L10N :=
+BASE_DOC_OPTS := --from=markdown --standalone --toc --number-sections --include-before-body=doc/version_info.html
+HTML_OPTS = $(BASE_DOC_OPTS) --to=html5 --section-divs --css=rust.css --include-in-header=doc/favicon.inc
+TEX_OPTS = $(BASE_DOC_OPTS) --to=latex
+EPUB_OPTS = $(BASE_DOC_OPTS) --to=epub
######################################################################
# Docs, from pandoc, rustdoc (which runs pandoc), and node
@@ -28,6 +32,10 @@ doc/manual.inc: manual.inc
@$(call E, cp: $@)
$(Q)cp -a $< $@ 2> /dev/null
+doc/favicon.inc: favicon.inc
+ @$(call E, cp: $@)
+ $(Q)cp -a $< $@ 2> /dev/null
+
ifeq ($(CFG_PANDOC),)
$(info cfg: no pandoc found, omitting docs)
NO_DOCS = 1
@@ -41,86 +49,49 @@ endif
ifneq ($(NO_DOCS),1)
DOCS += doc/rust.html
-doc/rust.html: rust.md doc/version_info.html doc/rust.css doc/manual.inc
+doc/rust.html: rust.md doc/version_info.html doc/rust.css doc/manual.inc \
+ doc/favicon.inc
@$(call E, pandoc: $@)
$(Q)$(CFG_NODE) $(S)doc/prep.js --highlight $< | \
- "$(CFG_PANDOC)" \
- --standalone --toc \
- --section-divs \
- --number-sections \
- --from=markdown --to=html5 \
- --css=rust.css --include-in-header=doc/manual.inc \
- --include-before-body=doc/version_info.html \
- --output=$@
+ $(CFG_PANDOC) $(HTML_OPTS) --include-in-header=doc/manual.inc --output=$@
DOCS += doc/rust.tex
doc/rust.tex: rust.md doc/version.md
@$(call E, pandoc: $@)
$(Q)$(CFG_NODE) $(S)doc/prep.js $< | \
- "$(CFG_PANDOC)" \
- --standalone --toc \
- --number-sections \
- --include-before-body=doc/version.md \
- --from=markdown --to=latex \
- --output=$@
+ $(CFG_PANDOC) $(TEX_OPTS) --output=$@
DOCS += doc/rust.epub
-doc/rust.epub: rust.md doc/version_info.html doc/rust.css doc/manual.inc
+doc/rust.epub: rust.md doc/version_info.html doc/rust.css
@$(call E, pandoc: $@)
$(Q)$(CFG_NODE) $(S)doc/prep.js --highlight $< | \
- "$(CFG_PANDOC)" \
- --standalone --toc \
- --section-divs \
- --number-sections \
- --from=markdown --to=epub \
- --css=rust.css --include-in-header=doc/manual.inc \
- --include-before-body=doc/version_info.html \
- --output=$@
+ $(CFG_PANDOC) $(EPUB_OPTS) --output=$@
+DOCS += doc/rustpkg.html
+doc/rustpkg.html: rustpkg.md doc/version_info.html doc/rust.css \
+ doc/favicon.inc
+ @$(call E, pandoc: $@)
+ $(Q)$(CFG_NODE) $(S)doc/prep.js --highlight $< | \
+ $(CFG_PANDOC) $(HTML_OPTS) --output=$@
+
+DOCS += doc/tutorial.html
+doc/tutorial.html: tutorial.md doc/version_info.html doc/rust.css \
+ doc/favicon.inc
+ @$(call E, pandoc: $@)
+ $(Q)$(CFG_NODE) $(S)doc/prep.js --highlight $< | \
+ $(CFG_PANDOC) $(HTML_OPTS) --output=$@
DOCS += doc/tutorial.tex
doc/tutorial.tex: tutorial.md doc/version.md
@$(call E, pandoc: $@)
$(Q)$(CFG_NODE) $(S)doc/prep.js $< | \
- "$(CFG_PANDOC)" \
- --standalone --toc \
- --number-sections \
- --include-before-body=doc/version.md \
- --from=markdown --to=latex \
- --output=$@
-
-DOCS += doc/rustpkg.html
-doc/rustpkg.html: rustpkg.md doc/version_info.html doc/rust.css doc/manual.inc
- @$(call E, pandoc: $@)
- $(Q)$(CFG_NODE) $(S)doc/prep.js --highlight $< | \
- "$(CFG_PANDOC)" \
- --standalone --toc \
- --section-divs \
- --number-sections \
- --from=markdown --to=html5 \
- --css=rust.css --include-in-header=doc/manual.inc \
- --include-before-body=doc/version_info.html \
- --output=$@
-
-DOCS += doc/tutorial.html
-doc/tutorial.html: tutorial.md doc/version_info.html doc/rust.css
- @$(call E, pandoc: $@)
- $(Q)$(CFG_NODE) $(S)doc/prep.js --highlight $< | \
- $(CFG_PANDOC) --standalone --toc \
- --section-divs --number-sections \
- --from=markdown --to=html5 --css=rust.css \
- --include-before-body=doc/version_info.html \
- --output=$@
+ $(CFG_PANDOC) $(TEX_OPTS) --output=$@
DOCS += doc/tutorial.epub
doc/tutorial.epub: tutorial.md doc/version_info.html doc/rust.css
@$(call E, pandoc: $@)
$(Q)$(CFG_NODE) $(S)doc/prep.js --highlight $< | \
- $(CFG_PANDOC) --standalone --toc \
- --section-divs --number-sections \
- --from=markdown --to=epub --css=rust.css \
- --include-before-body=doc/version_info.html \
- --output=$@
+ $(CFG_PANDOC) $(EPUB_OPTS) --output=$@
DOCS_L10N += doc/l10n/ja/tutorial.html
@@ -134,75 +105,53 @@ doc/l10n/ja/tutorial.html: doc/l10n/ja/tutorial.md doc/version_info.html doc/rus
--output=$@
DOCS += doc/tutorial-macros.html
-doc/tutorial-macros.html: tutorial-macros.md doc/version_info.html \
- doc/rust.css
+doc/tutorial-macros.html: tutorial-macros.md doc/version_info.html doc/rust.css \
+ doc/favicon.inc
@$(call E, pandoc: $@)
$(Q)$(CFG_NODE) $(S)doc/prep.js --highlight $< | \
- $(CFG_PANDOC) --standalone --toc \
- --section-divs --number-sections \
- --from=markdown --to=html5 --css=rust.css \
- --include-before-body=doc/version_info.html \
- --output=$@
+ $(CFG_PANDOC) $(HTML_OPTS) --output=$@
DOCS += doc/tutorial-container.html
-doc/tutorial-container.html: tutorial-container.md doc/version_info.html doc/rust.css
+doc/tutorial-container.html: tutorial-container.md doc/version_info.html doc/rust.css \
+ doc/favicon.inc
@$(call E, pandoc: $@)
$(Q)$(CFG_NODE) $(S)doc/prep.js --highlight $< | \
- $(CFG_PANDOC) --standalone --toc \
- --section-divs --number-sections \
- --from=markdown --to=html5 --css=rust.css \
- --include-before-body=doc/version_info.html \
- --output=$@
+ $(CFG_PANDOC) $(HTML_OPTS) --output=$@
DOCS += doc/tutorial-ffi.html
-doc/tutorial-ffi.html: tutorial-ffi.md doc/version_info.html doc/rust.css
+doc/tutorial-ffi.html: tutorial-ffi.md doc/version_info.html doc/rust.css \
+ doc/favicon.inc
@$(call E, pandoc: $@)
$(Q)$(CFG_NODE) $(S)doc/prep.js --highlight $< | \
- $(CFG_PANDOC) --standalone --toc \
- --section-divs --number-sections \
- --from=markdown --to=html5 --css=rust.css \
- --include-before-body=doc/version_info.html \
- --output=$@
+ $(CFG_PANDOC) $(HTML_OPTS) --output=$@
DOCS += doc/tutorial-borrowed-ptr.html
-doc/tutorial-borrowed-ptr.html: tutorial-borrowed-ptr.md doc/version_info.html doc/rust.css
+doc/tutorial-borrowed-ptr.html: tutorial-borrowed-ptr.md doc/version_info.html doc/rust.css \
+ doc/favicon.inc
@$(call E, pandoc: $@)
$(Q)$(CFG_NODE) $(S)doc/prep.js --highlight $< | \
- $(CFG_PANDOC) --standalone --toc \
- --section-divs --number-sections \
- --from=markdown --to=html5 --css=rust.css \
- --include-before-body=doc/version_info.html \
- --output=$@
+ $(CFG_PANDOC) $(HTML_OPTS) --output=$@
DOCS += doc/tutorial-tasks.html
-doc/tutorial-tasks.html: tutorial-tasks.md doc/version_info.html doc/rust.css
+doc/tutorial-tasks.html: tutorial-tasks.md doc/version_info.html doc/rust.css \
+ doc/favicon.inc
@$(call E, pandoc: $@)
$(Q)$(CFG_NODE) $(S)doc/prep.js --highlight $< | \
- $(CFG_PANDOC) --standalone --toc \
- --section-divs --number-sections \
- --from=markdown --to=html5 --css=rust.css \
- --include-before-body=doc/version_info.html \
- --output=$@
+ $(CFG_PANDOC) $(HTML_OPTS) --output=$@
DOCS += doc/tutorial-conditions.html
-doc/tutorial-conditions.html: tutorial-conditions.md doc/version_info.html doc/rust.css
+doc/tutorial-conditions.html: tutorial-conditions.md doc/version_info.html doc/rust.css \
+ doc/favicon.inc
@$(call E, pandoc: $@)
$(Q)$(CFG_NODE) $(S)doc/prep.js --highlight $< | \
- $(CFG_PANDOC) --standalone --toc \
- --section-divs --number-sections \
- --from=markdown --to=html5 --css=rust.css \
- --include-before-body=doc/version_info.html \
- --output=$@
+ $(CFG_PANDOC) $(HTML_OPTS) --output=$@
DOCS += doc/tutorial-rustpkg.html
-doc/tutorial-rustpkg.html: tutorial-rustpkg.md doc/version_info.html doc/rust.css
+doc/tutorial-rustpkg.html: tutorial-rustpkg.md doc/version_info.html doc/rust.css \
+ doc/favicon.inc
@$(call E, pandoc: $@)
$(Q)$(CFG_NODE) $(S)doc/prep.js --highlight $< | \
- $(CFG_PANDOC) --standalone --toc \
- --section-divs --number-sections \
- --from=markdown --to=html5 --css=rust.css \
- --include-before-body=doc/version_info.html \
- --output=$@
+ $(CFG_PANDOC) $(HTML_OPTS) --output=$@
ifeq ($(CFG_PDFLATEX),)
$(info cfg: no pdflatex found, omitting doc/rust.pdf)
diff --git a/src/librustdoc/html/static/main.css b/src/librustdoc/html/static/main.css
index b1ef4dc829a..80bdb0a9e4f 100644
--- a/src/librustdoc/html/static/main.css
+++ b/src/librustdoc/html/static/main.css
@@ -43,7 +43,13 @@ h2 code, h3 code, h4 code {
}
code, pre, h1.fqn {
- font: 15px Monaco, Menlo, "Inconsolata", Consolas, "Courier New", monospace;
+ font-family: Menlo, Monaco, Consolas, "Inconsolata", "Courier New", monospace;
+}
+code, pre {
+ color: #333;
+}
+pre {
+ font-size: 15px;
}
h1.fqn {
font-size: 26px;
@@ -215,6 +221,7 @@ nav, .content {
a {
text-decoration: none;
color: #000;
+ background: transparent;
}
.content a, .block a.current { font-weight: bold; }