-//@ For sure, we are not the first to equip a Rust program with support for command-line arguments. Someone must have written a library
-//@ for the job, right? Indeed, someone has. Rust has a central repository of published libraries, called [crates.io](https://crates.io/).
-//@ It's a bit like [PyPI](https://pypi.python.org/pypi) or the [Ruby Gems](https://rubygems.org/): Everybody can upload their code,
-//@ and there's tooling for importing that code into your project. This tooling is provided by `cargo`, the tool we are already using to
-//@ build this tutorial. (`cargo` also has support for *publishing* your crate on crates.io, I refer you to [the documentation](http://doc.crates.io/crates-io.html) for more details.)
-//@ In this case, we are going to use the [`docopt` crate](https://crates.io/crates/docopt), which creates a parser for command-line
-//@ arguments based on the usage string. External dependencies are declared in the `Cargo.toml` file.
-
-//@ I already prepared that file, but the declaration of the dependency is still commented out. So please open `Cargo.toml` of your workspace
-//@ now, and enable the two commented-out lines. Then do `cargo build`. Cargo will now download the crate from crates.io, compile it,
-//@ and link it to your program. In the future, you can do `cargo update` to make it download new versions of crates you depend on.
-//@ Note that crates.io is only the default location for dependencies, you can also give it the URL of a git repository or some local
-//@ path. All of this is explained in the [Cargo Guide](http://doc.crates.io/guide.html).
-
-// I disabled the following module (using a rather bad hack), because it only compiles if `docopt` is linked.
-// Remove the attribute of the `rgrep` module to enable compilation.
+//@ For sure, we are not the first to equip a Rust program with support for command-line arguments.
+//@ Someone must have written a library for the job, right? Indeed, someone has. Rust has a central
+//@ repository of published libraries, called [crates.io](https://crates.io/).
+//@ It's a bit like [PyPI](https://pypi.python.org/pypi) or the [Ruby Gems](https://rubygems.org/):
+//@ Everybody can upload their code, and there's tooling for importing that code into your project.
+//@ This tooling is provided by `cargo`, the tool we are already using to build this tutorial.
+//@ (`cargo` also has support for *publishing* your crate on crates.io, I refer you to [the
+//@ documentation](http://doc.crates.io/crates-io.html) for more details.)
+//@ In this case, we are going to use the [`docopt` crate](https://crates.io/crates/docopt), which
+//@ creates a parser for command-line arguments based on the usage string. External dependencies
+//@ are declared in the `Cargo.toml` file.
+
+//@ I already prepared that file, but the declaration of the dependency is still commented out. So
+//@ please open `Cargo.toml` of your workspace now, and enable the two commented-out lines. Then do
+//@ `cargo build`. Cargo will now download the crate from crates.io, compile it, and link it to
+//@ your program. In the future, you can do `cargo update` to make it download new versions of
+//@ crates you depend on.
+//@ Note that crates.io is only the default location for dependencies, you can also give it the URL
+//@ of a git repository or some local path. All of this is explained in the
+//@ [Cargo Guide](http://doc.crates.io/guide.html).
+
+// I disabled the following module (using a rather bad hack), because it only compiles if `docopt`
+// is linked. Remove the attribute of the `rgrep` module to enable compilation.