turbo-editors/turbo-rustpublic Fork 0
main
Commits
Clone
git clone https://git.rickub.com/turbo-editors/turbo-rust.git
git clone ssh://git@rickub.com/turbo-editors/turbo-rust.git

Host key fingerprint (ed25519): SHA256:iycHnxEyq0Q7uyVpB7JlznP0G7JrTPXLYRcAU5CSLhc — verify it before your first connect.

📦 Turbo Rust 713ea5c · on main · k33g · 11h ago
ask-about-code.md · 69 lines · 3.4 KBmarkdown
Blame HistoryOpen raw

Comment interroger le code

Ce guide montre comment suivre un nom dans un projet : où il est déclaré, ce qui l'implémente, partout où il est utilisé, et ce qui ne va pas avec lui. Il suppose Turbo Rust installé et un serveur de langage en marche — la barre d'état affiche LSP: ready quand c'est le cas.

Pour se déplacer dans un fichier — chercher, aller à une ligne, changer de fenêtre — voir plutôt Comment se déplacer dans un fichier.

Placez le curseur sur un nom

N'importe lequel de ses caractères suffit. Chaque question ci-dessous porte sur la position du curseur, pas sur une sélection : il n'y a rien à surligner d'abord.

Demandez

Pour trouver Faites Raccourci
Ce que c'est Code ▸ Describe symbol F1
Où c'est déclaré Code ▸ Go to definition F12
Où son type est déclaré Code ▸ Go to type definition
Ce qui l'implémente Code ▸ Find implementations…
Partout où c'est utilisé Code ▸ Find references… Shift-F12

Une seule réponse vous y emmène directement. Plusieurs ouvrent une liste montrant le fichier, sa ligne, et le texte de cette ligne :

Implementations (2)
  french.rs:4   impl Greeter for French {
  english.rs:4  impl Greeter for English {

Déplacez-vous aux flèches, Entrée pour y aller, Échap pour rester.

Quand rien ne revient

Trois choses se ressemblent, et la barre d'état les distingue :

Elle affiche Signification
No references found Le serveur a répondu, et il n'y en a pas
Autre chose, par exemple Loading… Le serveur n'a pas fini d'indexer. Attendez un instant et redemandez.
LSP: off dans la barre d'état Aucun serveur ne tourne. Voir Comment activer la complétion.

La deuxième mérite d'être connue : un serveur encore en train d'indexer répond rien à toutes les questions, et c'est indiscernable d'une vraie réponse si l'éditeur ne le dit pas.

Chercher par le nom

  • Code ▸ Symbol in file… liste ce que déclare le fichier devant vous, indenté, avec la sorte de chaque symbole — un plan que l'on parcourt.
  • Code ▸ Symbol in project… (Ctrl-T) demande un nom et cherche partout. Ce qui compte comme correspondance appartient au serveur ; rust-analyzer est tolérant, quelques lettres suffisent en général.

Voir ce qui ne va pas

Code ▸ Problems… liste tous les problèmes signalés par le serveur, pour tous les fichiers qu'il a chargés — le plus souvent davantage que celui que vous éditez. En choisir un vous mène à la ligne.

Les lignes à problème portent une marque dans la gouttière, à côté du numéro de ligne :

Marque Signification
× Une erreur
! Un avertissement
i Une information
· Une suggestion

Une ligne qui a plusieurs problèmes montre le pire d'entre eux.

Les marques ont besoin des numéros de ligne. Elles occupent la colonne qui sépare les numéros du texte : masquer la gouttière avec Options ▸ Line numbers les masque aussi.

Voir aussi

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
# Comment interroger le code

Ce guide montre comment suivre un nom dans un projet : où il est déclaré, ce qui l'implémente, partout où il est utilisé, et ce qui ne va pas avec lui. Il suppose Turbo Rust installé et un serveur de langage en marche — la barre d'état affiche `LSP: ready` quand c'est le cas.

Pour se déplacer dans un fichier — chercher, aller à une ligne, changer de fenêtre — voir plutôt [Comment se déplacer dans un fichier](navigate-code.md).

## Placez le curseur sur un nom

N'importe lequel de ses caractères suffit. Chaque question ci-dessous porte sur la **position du curseur**, pas sur une sélection : il n'y a rien à surligner d'abord.

## Demandez

| Pour trouver | Faites | Raccourci |
| --- | --- | --- |
| Ce que c'est | **Code ▸ Describe symbol** | `F1` |
| Où c'est déclaré | **Code ▸ Go to definition** | `F12` |
| Où son *type* est déclaré | **Code ▸ Go to type definition** | |
| Ce qui l'implémente | **Code ▸ Find implementations…** | |
| Partout où c'est utilisé | **Code ▸ Find references…** | `Shift-F12` |

Une seule réponse vous y emmène directement. Plusieurs ouvrent une liste montrant le fichier, sa ligne, et le texte de cette ligne :

```
Implementations (2)
  french.rs:4   impl Greeter for French {
  english.rs:4  impl Greeter for English {
```

Déplacez-vous aux flèches, `Entrée` pour y aller, `Échap` pour rester.

## Quand rien ne revient

Trois choses se ressemblent, et la barre d'état les distingue :

| Elle affiche | Signification |
| --- | --- |
| `No references found` | Le serveur a répondu, et il n'y en a pas |
| Autre chose, par exemple `Loading…` | Le serveur n'a pas fini d'indexer. Attendez un instant et redemandez. |
| `LSP: off` dans la barre d'état | Aucun serveur ne tourne. Voir [Comment activer la complétion](enable-completion.md). |

La deuxième mérite d'être connue : un serveur encore en train d'indexer répond rien à toutes les questions, et c'est indiscernable d'une vraie réponse si l'éditeur ne le dit pas.

## Chercher par le nom

- **Code ▸ Symbol in file…** liste ce que déclare le fichier devant vous, indenté, avec la sorte de chaque symbole — un plan que l'on parcourt.
- **Code ▸ Symbol in project…** (`Ctrl-T`) demande un nom et cherche partout. Ce qui compte comme correspondance appartient au serveur ; rust-analyzer est tolérant, quelques lettres suffisent en général.

## Voir ce qui ne va pas

**Code ▸ Problems…** liste tous les problèmes signalés par le serveur, pour **tous les fichiers qu'il a chargés** — le plus souvent davantage que celui que vous éditez. En choisir un vous mène à la ligne.

Les lignes à problème portent une marque dans la gouttière, à côté du numéro de ligne :

| Marque | Signification |
| --- | --- |
| `×` | Une erreur |
| `!` | Un avertissement |
| `i` | Une information |
| `·` | Une suggestion |

Une ligne qui a plusieurs problèmes montre le pire d'entre eux.

**Les marques ont besoin des numéros de ligne.** Elles occupent la colonne qui sépare les numéros du texte : masquer la gouttière avec **Options ▸ Line numbers** les masque aussi.

## Voir aussi

- Chaque entrée et sa touche : [Menus](../reference/menus.md)
- Faire tourner un serveur : [Comment activer la complétion](enable-completion.md)
- Ce que l'éditeur demande, et pourquoi : [Coloration et complétion](../explanation/colouring-and-completion.md)