From a025ce0538da5db4b92393a17de0dd94c58e704c Mon Sep 17 00:00:00 2001 From: Eric Eastwood Date: Mon, 14 Oct 2024 14:11:09 -0500 Subject: [PATCH] Add warning about `rust-analyzer` not working if you clone and use the repo directly > Yes, you are right, if you just clone the repository and try to edit the exercises, the language server will not work. This is one downside of the current approach. But this only affects developing exercises. > > The new method of doing Rustlings is to install Rustlings using `cargo install rustlings` (not published yet), then running `rustlings init`. No repo cloning happens. Instead, the directory `rustlings/` will be created where you find the exercises. The language server works there out of the box :) > > I need to add a warning when people try to work on the exercises from the repository. Thanks pointing this out. > > -- @mo8it, https://github.com/rust-lang/rustlings/issues/1935#issuecomment-2067664066 Other references: - Previous `rustlings lsp` command: https://github.com/rust-lang/rustlings/pull/1026 - The changelog says "LSP support out of the box", https://github.com/rust-lang/rustlings/blob/main/CHANGELOG.md#lsp-support-out-of-the-box --- README.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/README.md b/README.md index b65920f2..8a23edeb 100644 --- a/README.md +++ b/README.md @@ -82,6 +82,15 @@ rustlings Our general recommendation is [VS Code](https://code.visualstudio.com/) with the [rust-analyzer plugin](https://marketplace.visualstudio.com/items?itemName=rust-lang.rust-analyzer). But any editor that supports [rust-analyzer](https://rust-analyzer.github.io/) should be enough for working on the exercises. +
+If you cloned the repository and rust-analyzer isn't working… (click to expand) + +The intended way to run Rustlings is to install the binary and run `rustlings init` as described above. This generates a `Cargo.toml` (different than what you see in the repository) that includes the each excersise as a separate binary target which is enough for `rust-analyzer` to work. + +If you just clone the repository and try to run and edit the exercises directly, the language server will not work. This is one downside of the current approach. But this only affects developing exercises. + +
+ ### Terminal While working with Rustlings, please use a modern terminal for the best user experience.