---
title: "MolScript : un langage texte pour les schémas réactionnels et les mécanismes en flèches courbes | Blog MolDraw"
url: https://www.moldraw.com/fr/blog/molscript-reaction-mechanism-language.html
description: "MolScript est un court langage texte pour les schémas réactionnels et les mécanismes par déplacement d'électrons : espèces en SMILES, numéros de mappage pour les extrémités des flèches, lignes move pour les flèches courbes et les demi-flèches. Référence complète, placement et vérification des flèches, exemples commentés, comparaison avec chemfig et feuille de route vers un framework ouvert."
lang: fr
publisher: Scidart Academy
generated: 2026-10-26
---
# MolScript : un langage texte pour les schémas réactionnels et les mécanismes en flèches courbes

Publié le 17 oct. 2026 · Auteur : Scidart Academy · Temps de lecture : ~16 min

![Six lignes de MolScript dans un panneau de code sombre à côté de l'étape SN2 qu'elles dessinent : l'hydroxyde attaque le bromométhane avec deux flèches courbes](https://www.moldraw.com/blog/thumbs/molscript-reaction-mechanism-language.webp)

Six lignes de MolScript dessinent une étape SN2 complète : structures, charges, conditions et les deux flèches courbes.

**Réponse courte :** MolScript est un petit langage texte pour les schémas réactionnels et les mécanismes par déplacement d'électrons. Vous écrivez chaque espèce en **SMILES**, reliez les espèces avec `+`, `->`, `<->` ou `<=>`, marquez les atomes touchés par une flèche avec des **numéros de mappage**, et écrivez une ligne `move` par flèche courbe. MolDraw dessine les structures, les conditions, les doublets non liants, les charges et chaque flèche, et **vérifie chaque flèche** au regard des règles de dessin avant que vous ne la voyiez. Le résultat est un contenu de canevas ordinaire et modifiable, que vous pouvez télécharger en image ou en code chemfig pour LaTeX.

## MolScript en un coup d'œil

| Ce que vous écrivez | Les espèces en SMILES, des opérateurs entre elles, des conditions entre crochets après une flèche, et des lignes `move` pour les électrons. |
| --- | --- |
| Ce que vous obtenez | Un schéma mis en page : structures, signes plus, flèches de réaction, d'équilibre ou de mésomérie, conditions, légendes, doublets non liants, charges, points radicalaires et flèches courbes. |
| Types de flèches | Flèches courbes à deux électrons (`->`) et demi-flèches à un électron (`~>`), depuis des doublets non liants, charges, radicaux, atomes ou liaisons, vers des atomes, des liaisons ou des liaisons en formation. |
| Vérification | Chaque numéro de mappage doit exister et être unique ; chaque flèche doit partir d'un endroit où se trouvent des électrons ; chaque flèche dessinée est évaluée pour les espacements, la visée, la courbure et le dégagement. Les problèmes sont renvoyés avec des numéros de ligne. |
| Sortie | Des objets de canevas MolDraw modifiables ; tous les exports MolDraw, y compris chemfig (.tex) pour les documents LaTeX. |
| Où il est utilisé aujourd'hui | Le chat IA de MolDraw dessine les mécanismes en écrivant du MolScript, et les figures de mécanismes du panneau Templates sont construites avec. |
| La suite | Un framework ouvert pour les applications de canevas et une compétence IA que n'importe quel assistant peut charger. Voir la feuille de route. |

## Votre premier script : SN2

L'hydroxyde attaque le bromométhane par l'arrière et le bromure part dans la même étape. En MolScript, cela tient en quatre lignes :

```
title: SN2 of bromomethane
[OH-:1] "hydroxide" + [CH3:2][Br:3] "bromomethane" ->[SN2][acetone] CO "methanol" + [Br-]
move :1 -> 1..2
move 2-3 -> 3
```

![SN2 du bromométhane dessinée à partir de MolScript : une flèche courbe de la charge de l'hydroxyde vers le carbone et une seconde de la liaison C–Br vers le brome, avec SN2 au-dessus et acétone sous la flèche de réaction](https://www.moldraw.com/blog/images/molscript/sn2.webp)

Dessiné par MolDraw à partir exactement des quatre lignes ci-dessus.

Ligne par ligne :

1. `title:` place un titre au-dessus du schéma.
2. La ligne de schéma liste les espèces. `[OH-:1]` est l'hydroxyde dont l'oxygène porte le numéro de mappage 1 ; `[CH3:2][Br:3]` est le bromométhane avec le carbone en 2 et le brome en 3. `"hydroxide"` est une légende dessinée sous la structure. `->[SN2][acetone]` est une flèche de réaction avec du texte au-dessus et en dessous.
3. `move :1 -> 1..2` : le doublet non liant (ici la charge négative) de l'atome 1 va vers la liaison en formation entre 1 et 2.
4. `move 2-3 -> 3` : les électrons de la liaison C–Br existante vont vers le brome.

Les numéros de mappage sont des repères pour vous et pour les flèches. Ils ne sont jamais dessinés et ne modifient pas la molécule.

## Le langage

### Espèces et opérateurs

Tout SMILES est une espèce. Les opérateurs s'écrivent avec une espace de chaque côté :

| `+` | Plus entre coréactifs ou coproduits. Les espèces reliées par `+` restent toujours sur une même ligne. |
| --- | --- |
| `->` | Flèche de réaction. |
| `<=>` | Flèche d'équilibre (deux demi-pointes). |
| `<->` | Flèche de mésomérie (à double pointe). Utilisez-la entre les formes mésomères d'une même espèce. |
| `=>` | Flèche de rétrosynthèse. |

Le texte au-dessus et au-dessous d'une flèche se met entre crochets accolés à celle-ci : `->[NaBH4][MeOH, 0 °C]`. Laissez la première paire vide pour n'avoir du texte qu'en dessous : `->[][reflux]`. Une légende entre guillemets doubles après une espèce est dessinée sous cette espèce : `CC(=O)O "acetic acid"`.

### Plusieurs étapes

Une ligne qui commence par un opérateur poursuit le schéma à partir de la dernière espèce : un mécanisme se lit donc une étape par ligne, avec les flèches de cette étape juste en dessous :

```
title: SN1 of tert-butyl bromide
C[C:1](C)(C)[Br:2] ->[slow] C[C+:3](C)C + [Br-]
move 1-2 -> 2
-> C[C+:4](C)C + [OH2:5]
move :5 -> 5..4
->[fast] CC(C)(C)[OH2+]
```

![Mécanisme SN1 en deux étapes dessiné à partir de MolScript : ionisation en cation tert-butyle avec rupture de la liaison C–Br vers le brome, puis attaque de l'eau sur le carbocation](https://www.moldraw.com/blog/images/molscript/sn1.webp)

Les retours à la ligne ne se font qu'aux flèches de réaction. La flèche qui fait passer le schéma à la ligne suivante fait partie des points que la feuille de route améliore.

### Flèches courbes : les lignes `move`

Chaque atome touché par une flèche reçoit un numéro de mappage dans le SMILES : `[OH-:1]`, `[CH3:2][Br:3]`, `[O:4]` pour un simple oxygène. Les numéros doivent être uniques dans tout le script. Ensuite :

```
move <from> -> <to>     two-electron curly arrow
move <from> ~> <to>     one-electron fish-hook
```

Les deux extrémités s'écrivent de la même façon :

| `:n` | Le doublet non liant de l'atome n. Sur un anion, la flèche part de son signe moins, comme le dessinent les chimistes. |
| --- | --- |
| `n` | L'atome n. La flèche d'un radical part de son point. |
| `n-m` | La liaison existante entre les atomes n et m. Comme départ, ses électrons quittent la liaison ; comme arrivée, ils en font une liaison double. |
| `n..m` | Une liaison en formation entre n et m (arrivée uniquement). La pointe s'arrête à côté de l'atome m, du côté tourné vers n. |

Plusieurs flèches peuvent partager une ligne, séparées par des points-virgules : `move :1 -> 1..4; 4-2 -> 2-3; 3-5 -> 5`. Écrivez explicitement un hydrogène transféré, `[H:5][O:6]CC`, pour qu'une flèche puisse partir de sa liaison. Écrivez un centre radicalaire mappé avec son nombre d'hydrogènes pour qu'il garde son point : `CC(C)(C)[OH0:1]` est le radical tert-butoxyle.

Les flèches sont placées automatiquement. Si vous voulez une courbure particulière, ajoutez une surcharge entre accolades : `move 2-3 -> 3 {bow=0.3 side=left}`.

### Directives et commentaires

| `title: …` | Titre au-dessus du schéma. |
| --- | --- |
| `per-row: 2` à `8` | Nombre de structures par ligne avant que le schéma passe à la ligne (4 par défaut). |
| `layout: row`, `cycle`, `branch` | Forme du schéma : de gauche à droite, un cycle catalytique, ou un réactif vers plusieurs produits. |
| `# …` | Commentaire jusqu'à la fin de la ligne. Un `#` dans un SMILES (triple liaison) n'est pas un commentaire. |

### Erreurs

Les problèmes sont renvoyés avec leur ligne, en termes simples, pour qu'une personne ou un assistant IA puisse corriger la ligne et redessiner :

```
line 1: put +, -> or <-> between "[O:1]C" and "[O:1]C"
line 3: no atom is tagged :9 in the SMILES (write it as [X:9])
line 4: n..m (a bond being formed) can only be the destination
line 5: a move needs -> (curly arrow) or ~> (fish-hook) between its ends
C (map 2) has no lone pair
```

## Moins de saisie, plus de dessin : noms, surlignages et numéros

Les numéros de mappage ne sont nécessaires que lorsqu'un atome est ambigu. Un élément présent une seule fois dans les réactifs d'une étape se désigne par son symbole, et dans une extrémité de liaison, seuls comptent les atomes liés à l'autre extrémité. Voici tout le mécanisme SN1 sans numéros de mappage, avec composés et étapes numérotés et des lignes qui serpentent dans un sens puis dans l'autre :

```
title: SN1 with element ends, numbered, snake rows
number: both
wrap: snake
per-row: 3
CC(C)(C)Br ->[slow] C[C+](C)C + [Br-]
move C-Br -> Br
-> C[C+](C)C + O
move :O -> O..C+
->[fast] CC(C)(C)[OH2+]
```

`C-Br` est le seul carbone lié au brome, `C+` désigne le cation par sa charge et `:O` est le doublet non liant du seul oxygène de cette étape. Si un élément apparaît deux fois, MolScript le signale et demande un numéro de mappage.

| `h2` | Un hydrogène de l'atome 2, rendu explicite pour vous : `move :1 -> 1..h2; h2-2 -> 2-3`. |
| --- | --- |
| `let base = [OH-:1] "hydroxide"` | Définissez une espèce une fois, puis écrivez `$base`. |
| `[OH]~C([H])([H])([H])~[Br] {ts}` | Un état de transition : `~` est une liaison partielle (en pointillés), `{ts}` dessine les crochets avec ‡ et redresse les liaisons qui se forment et se rompent. |
| `{δ+=2 δ-=3}` | Charges partielles à côté des atomes. |
| `{highlight=2/3-4:blue}` | Surlignage de l'atome 2 et de la liaison 3–4. |
| `{ox=1:II}`, `{dative=1-2}` | Degrés d'oxydation et liaisons métal–ligand pour les étapes organométalliques. |
| `[Ph] [R1] [Nu-:1]` | Abréviations et groupes R dessinés comme étiquettes. |
| `->[{CC(=O)Cl}][AlCl3]` | Un réactif dessiné sous forme de structure au-dessus de la flèche. |
| `layout: cycle` | Un cycle catalytique ; terminer sur la première espèce ferme la boucle, et il s'exporte vers chemfig avec de vrais arcs. |

## Comment un script devient un dessin

Un script passe chaque fois par les mêmes étapes, donc le même script donne toujours le même dessin :

1. **Lecture.** Le script est découpé en lignes de schéma, lignes move et directives. Chaque espèce, opérateur, légende et ensemble de conditions est enregistré avec son numéro de ligne.
2. **Vérification des repères.** Chaque numéro de mappage utilisé dans un move doit se trouver sur exactement un atome, chaque `n-m` doit être une vraie liaison, et chaque départ doit avoir des électrons à donner : un doublet non liant, une charge, un radical ou une liaison.
3. **Dessin des espèces.** Chaque SMILES devient une structure 2D avec des angles de liaison propres. Les hydrogènes explicites dont une flèche a besoin sont dessinés comme des atomes ; charges, doublets non liants et points radicalaires sont ajoutés là où le SMILES l'indique.
4. **Mise en page du schéma.** Structures, signes plus et flèches sont disposés selon leur largeur réelle, les lignes passent à la suivante aux flèches de réaction, et conditions et légendes sont espacées pour qu'aucun texte ne se chevauche.
5. **Placement des flèches courbes.** Chaque flèche quitte sa source là où un chimiste la dessinerait et s'écarte des liaisons, étiquettes et autres flèches (détails ci-dessous).
6. **Vérification de la chimie.** Chaque étape avec flèches courbes est rejouée sur les électrons : chaque flèche prend deux électrons (un pour une demi-flèche) à un doublet, un radical ou une liaison et les place sur un atome ou dans une liaison. Les structures obtenues doivent correspondre à celles écrites après la flèche. Un produit erroné (avec la différence d'atomes et de charge), un carbone à dix électrons, une flèche partant d'un atome qui n'en a plus, une demi-flèche non appariée ou une flèche de mésomérie qui rompt une liaison σ sont signalés avec leur numéro de ligne.
7. **Évaluation de chaque flèche.** Chaque flèche placée est mesurée au regard des règles. Une flèche qui n'a pas pu les respecter dans une zone encombrée est tout de même dessinée et signalée par un avertissement.
8. **Remise d'objets modifiables.** Le résultat est un contenu de canevas ordinaire : faites glisser une structure et ses flèches suivent, changez le style de n'importe quel élément, et exportez.

Les règles de flèches appliquées par MolScript :

| Queue | Sur le doublet non liant ou le signe moins, le point radicalaire ou le milieu de la liaison qui donne les électrons, jamais par-dessus le symbole d'un atome. |
| --- | --- |
| Pointe | Juste avant l'atome qui reçoit les électrons, ou dans l'espace d'une liaison en formation, du côté tourné vers l'atome attaquant. |
| Courbure | Arquée vers l'extérieur de la structure, avec un angle de pointe constant ; les demi-flèches gardent leur unique barbe à l'extérieur de la courbe. |
| Dégagement | À distance des liaisons, étiquettes, charges, points et autres flèches ; les flèches qui partagent une cible se déploient en éventail au lieu de s'empiler. |
| Longueur | Une flèche trop courte pour être lue ou trop longue pour être suivie est signalée. |

Chaque mécanisme de référence du jeu de tests de MolScript est dessiné et évalué au regard de ces règles à chaque modification de MolDraw. Aujourd'hui, cela représente 41 mécanismes et 81 flèches courbes, qui passent tous les règles de dessin et le bilan électronique, plus les figures des Templates. Vous pouvez tous les voir dans la [galerie MolScript](https://www.moldraw.com/fr/blog/molscript-gallery.html).

## Exemples résolus

### Élimination E2 : trois flèches en une étape

```
title: E2 elimination
[OH-:1] + [H:4][CH2:2][CH:3](C)[Br:5] ->[E2] C=CC + O + [Br-]
move :1 -> 1..4; 4-2 -> 2-3; 3-5 -> 5
```

![Élimination E2 dessinée à partir de MolScript : l'hydroxyde arrache l'hydrogène, la liaison C–H devient la liaison π C=C et la liaison C–Br se rompt vers le brome](https://www.moldraw.com/blog/images/molscript/e2.webp)

La base arrache l'hydrogène, les électrons C–H deviennent la nouvelle liaison π, et le bromure part.

### Addition de Michael : une chaîne de flèches à travers un système conjugué

```
title: Michael addition
[CH2-:1]C(C)=O + [CH2:2]=[CH:3][C:4](C)=[O:5] ->[1,4-addition] CC(=O)CCC=C(C)[O-]
move :1 -> 1..2; 2-3 -> 3-4; 4-5 -> 5
```

![Addition de Michael dessinée à partir de MolScript : un carbone d'énolate attaque le carbone β et les électrons se déplacent à travers les liaisons C=C et C=O jusqu'à l'oxygène](https://www.moldraw.com/blog/images/molscript/michael-addition.webp)

`2-3 -> 3-4` déplace les électrons π C=C dans la liaison C–C, qui devient double.

### Diels–Alder : des flèches en cycle

```
title: Diels–Alder
[CH2:1]=[CH:2][CH:3]=[CH2:4] + [CH2:5]=[CH2:6] ->[Δ] C1CC=CCC1
move 1-2 -> 2-3; 3-4 -> 4..5; 5-6 -> 6..1
```

![Réaction de Diels–Alder dessinée à partir de MolScript : trois flèches courbes autour de l'état de transition cyclique du butadiène et de l'éthène donnant le cyclohexène](https://www.moldraw.com/blog/images/molscript/diels-alder.webp)

Deux des trois flèches aboutissent à des liaisons en formation entre les deux molécules.

### Addition radicalaire : demi-flèches

```
title: Radical addition of Br• to propene
[Br:1] + [CH2:2]=[CH:3]C -> BrC[CH]C
move 1 ~> 1..2
move 2-3 ~> 1..2
move 2-3 ~> 3
```

![Addition radicalaire d'un atome de brome sur le propène dessinée à partir de MolScript avec trois demi-flèches : deux se rejoignent dans la nouvelle liaison C–Br et une va vers le carbone qui devient le radical](https://www.moldraw.com/blog/images/molscript/radical-addition.webp)

`~>` dessine une demi-flèche. Les deux qui aboutissent sur `1..2` se rejoignent au milieu de la nouvelle liaison.

### Mésomérie : un énolate

```
[CH2-:1][C:2](C)=[O:3] <-> C=C(C)[O-]
move :1 -> 1-2
move 2-3 -> 3
```

![Les deux formes mésomères d'un énolate dessinées à partir de MolScript avec une flèche de mésomérie à double pointe et deux flèches courbes](https://www.moldraw.com/blog/images/molscript/enolate-resonance.webp)

`<->` est la flèche de mésomérie ; les flèches courbes montrent comment une forme devient l'autre.

## Construit sur MolScript : des figures entières

Les figures de mécanismes du panneau **Templates** de MolDraw (le bouton en bas de la barre d'outils de gauche) sont écrites en MolScript. Chaque étape de l'estérification de Fischer, de l'addition aldolique et de l'addition de Grignard est un court script ; un modèle ajoute autour les panneaux, les étiquettes d'étapes, les cercles de surlignage et les notes. Comme les étapes sont du texte, chaque flèche de chaque figure est vérifiée de la même façon que dans les exemples ci-dessus.

![Modèle d'estérification de Fischer : réaction globale avec oxygènes suivis, mécanisme en flèches courbes en cinq étapes, points clés et appareil de Dean–Stark](https://www.moldraw.com/templates/fischer-esterification.webp)

Le modèle d'estérification de Fischer : cinq étapes MolScript dans une figure à quatre panneaux.

## MolScript et chemfig

[chemfig](https://www.moldraw.com/fr/blog/chemfig-latex-moldraw-guide.html) est le package LaTeX que la plupart des chimistes utilisent pour composer structures et mécanismes. Il excelle dans ce pour quoi il est conçu, et MolScript n'a pas vocation à le remplacer dans LaTeX. Les deux décrivent des choses différentes :

|  | **chemfig** | **MolScript** |
| --- | --- | --- |
| Vous décrivez | Le dessin : l'angle et la longueur de chaque liaison, puis l'ancrage, le décalage et la courbure de chaque flèche. | La chimie : les espèces en SMILES et quels électrons vont où. |
| Mise en page | À la main, par structure et par schéma. | Automatique : structures, lignes, conditions et légendes. |
| Flèches courbes | Chemins TikZ entre des points nommés ; les positions sont fixées lors d'une seconde compilation LaTeX. | Une ligne `move` entre numéros de mappage ; placée et évaluée au regard des règles de dessin. |
| Erreurs | Se voient sous la forme d'un PDF qui a l'air faux. | Signalées avec des numéros de ligne : un numéro de mappage manquant, un départ sans électrons, une liaison qui n'existe pas. |
| Résultat | Sortie composée dans un document. | Objets de canevas modifiables, plus exports image, vectoriel et chemfig. |
| Idéal pour | Contrôle typographique fin dans un document LaTeX. | Obtenir rapidement un mécanisme correct et propre, à la main ou à partir d'un assistant IA. |

Ils fonctionnent ensemble : dessinez avec MolScript, puis choisissez **Download → chemfig (.tex)** pour obtenir le code chemfig de votre document. Les [exemples de mécanismes chemfig](https://www.moldraw.com/fr/blog/chemfig-mechanism-samples.html) montrent à quoi ressemble ce code.

## Pourquoi du texte : MolScript et les assistants IA

MolScript a été conçu pour qu'un modèle de langage puisse dessiner un mécanisme sans jamais manipuler de coordonnées :

- **Les modèles écrivent déjà bien le SMILES**, donc chaque espèce est dans une notation qu'ils connaissent.
- **Les numéros de mappage rendent les flèches non ambiguës.** « Du doublet de l'atome 1 vers la liaison qui se forme entre 1 et 2 » ne peut pas être mal placé comme « une flèche de l'oxygène vers le carbone ».
- **Les erreurs sont exploitables.** Un modèle qui reçoit `line 3: no atom is tagged :9` peut corriger la ligne 3 et réessayer.
- **La géométrie n'est pas le travail du modèle.** Courbures, espacements et dégagements sont décidés et vérifiés par le moteur, là où les modèles sont les plus faibles.

Le chat IA de MolDraw fonctionne déjà ainsi : demandez-lui « le mécanisme de l'addition aldolique » et il écrit du MolScript en coulisses. MolScript est aussi empaqueté sous forme de **compétence IA** : un dossier avec la référence du langage, les règles qui détectent la plupart des erreurs, 41 exemples vérifiés et un petit vérificateur autonome. La méthode qu'il enseigne à un assistant consiste à planifier les intermédiaires, écrire le script, lancer le vérificateur, corriger chaque problème signalé et seulement ensuite répondre, de sorte que le mécanisme est vérifié électron par électron avant que vous ne le voyiez.

Pour mesurer l'efficacité de cette approche, il existe un **jeu d'évaluation** de 41 demandes de mécanismes (« montre la déprotonation E1 du cation tert-butyle », « dessine un cycle de couplage croisé au Pd avec les degrés d'oxydation »), chacune avec un script de référence. Une réponse obtient quatre points : elle compile, ses électrons sont équilibrés, elle aboutit aux bons produits et chaque flèche courbe respecte les règles de dessin. Les scripts de référence obtiennent 100 %.

## Feuille de route : de la fonctionnalité MolDraw au framework ouvert

L'objectif est de publier MolScript, son compilateur et le moteur de schémas et de flèches sous forme de **framework open source** que toute application de canevas pourra utiliser pour dessiner réactions et mécanismes, avec la fiabilité d'un langage de programmation : une spécification écrite, une sortie stable et des erreurs exploitables. Voici ce qui sépare aujourd'hui de cette publication.

### Le langage

| Espèces, opérateurs, conditions, légendes, lignes de continuation | Terminé |
| --- | --- |
| Flèches à deux électrons et demi-flèches depuis des doublets non liants, charges, radicaux et liaisons | Terminé |
| Une spécification versionnée (MolScript 1, `molscript: 1`) avec une grammaire formelle et un jeu de tests de conformité | Terminé |
| Espèces nommées réutilisables : `let A = …`, puis `$A` dans les étapes suivantes | Terminé |
| Indications d'orientation : `{rotate=90}`, `{flip}`, `{align=3}` | Terminé |
| États de transition (`{ts}`, liaisons partielles avec `~`), δ+ / δ−, crochets | Terminé |
| Surlignages (`{highlight=2/3-4:blue}`), numéros de composés et d'étapes (`number: both`) | Terminé |
| Réactifs dessinés sous forme de structures au-dessus d'une flèche ; abréviations (Ph, Ts, Boc) et groupes R | Terminé |
| Cycles catalytiques qui se referment sur eux-mêmes, avec des étiquettes lisibles sur chaque arc | Terminé |
| Flèches courbes à l'intérieur des cycles, liaisons métal–ligand (`{dative=1-2}`) et degrés d'oxydation (`{ox=1:II}`) | Terminé |

### Exactitude

| Les repères existent, les départs ont des électrons, chaque flèche dessinée respecte les règles de géométrie | Terminé |
| --- | --- |
| Bilan électronique : déduire le produit impliqué par les flèches et le comparer au produit écrit | Terminé |
| Bilan de charge et d'atomes pour chaque étape ; vérifications de l'octet, des demi-flèches non appariées et de la mésomérie (liaison σ) | Terminé |
| Moins de formalités pour les hydrogènes : `h2` désigne un hydrogène de l'atome 2 | Terminé |
| Moins de numéros de mappage : un élément unique dans l'étape suffit (`move C-Br -> Br`) | Terminé |

### Mise en page

| Lignes disposées selon les largeurs réelles ; conditions et légendes ne se chevauchent jamais | Terminé |
| --- | --- |
| Retours à la ligne équilibrés (3 + 2, pas 4 + 1) et retour à la ligne selon la largeur (`width:`) | Terminé |
| Connecteurs plus courts entre les lignes : `wrap: snake` fait repartir la ligne suivante en sens inverse avec une courte flèche vers le bas | Terminé |
| Placement en grille (`layout: grid`), colonnes alignées d'une ligne à l'autre | Terminé |

### Le framework

| Compilateur et vérificateur en package autonome, indépendant de l'application MolDraw | Terminé |
| --- | --- |
| Un format de schéma stable et documenté entre le compilateur et n'importe quel moteur de rendu | Terminé |
| Sortie pour canevas, SVG et PNG ; exporteurs pour chemfig et JSON | Terminé |
| Export chemfig des cycles catalytiques avec de vrais arcs (et réimport) | Terminé |
| Un outil en ligne de commande : un script en entrée, un rapport de vérification, une image ou un fichier chemfig en sortie | Terminé |
| Mise en page versionnée, pour qu'un script se dessine de la même façon après une mise à jour | Terminé |
| Prise en charge dans l'éditeur : coloration et problèmes affichés pendant la saisie (l'onglet MolScript des Templates) | Terminé |
| Complétion des numéros de mappage, options et mots-clés dans l'éditeur (Tab prend la première proposition) | Terminé |
| Une [galerie publique de mécanismes de référence](https://www.moldraw.com/fr/blog/molscript-gallery.html), chacun vérifié automatiquement | Terminé |
| Galerie à 41 mécanismes vérifiés ; l'étendre à des centaines | Prochainement |
| Publier le package, la compétence et la spécification en open source | Prochainement |

### La compétence IA

| Utilisée par le chat IA de MolDraw, avec des erreurs numérotées par ligne renvoyées au modèle | Terminé |
| --- | --- |
| Une compétence empaquetée : référence, règles, exemples commentés et une étape de vérification qu'un assistant peut lancer avant de répondre | Terminé |
| Un jeu d'évaluation de 41 demandes de mécanismes, noté sur la justesse chimique et la propreté des flèches | Terminé |
| Publier les scores des principaux modèles d'IA sur le jeu d'évaluation | Prochainement |

Si vous enseignez, rédigez des articles ou développez des logiciels de chimie et souhaitez contribuer à ce projet, dites-le-nous via **Request feature** dans MolDraw.

## Essayez-le

1. Ouvrez [MolDraw](https://www.moldraw.com/fr/) et le chat IA, et demandez un mécanisme, par exemple « dessine le mécanisme E2 du 2-bromopropane avec l'hydroxyde ». Le chat écrit le MolScript et le dessine.
2. Ou ouvrez **Templates** en bas de la barre d'outils de gauche et ajoutez la figure de l'estérification de Fischer, de l'aldol ou de Grignard, ou écrivez votre propre script dans l'onglet **MolScript** : il colore le script, affiche les problèmes pendant la saisie et le dessine sur le canevas.
3. Faites glisser, restylez ou complétez le résultat comme n'importe quel dessin, puis téléchargez-le en image ou en chemfig.

## Questions et réponses

### Qu'est-ce que MolScript ?

MolScript est un court langage texte pour les schémas réactionnels et les mécanismes en flèches courbes. Les espèces s'écrivent en SMILES, reliées par `+`, `->`, `<->` ou `<=>`, et chaque flèche courbe est une ligne `move` entre des numéros de mappage d'atomes. MolDraw dessine les structures, les conditions, les doublets non liants, les charges et les flèches, et le résultat reste modifiable sur le canevas.

### Comment dessiner une flèche courbe en MolScript ?

Marquez les atomes touchés par la flèche avec des numéros de mappage dans le SMILES, par exemple `[OH-:1]` et `[CH3:2][Br:3]`, puis écrivez `move :1 -> 1..2` pour le doublet de l'atome 1 qui forme une liaison avec l'atome 2, et `move 2-3 -> 3` pour la liaison C–Br qui se rompt vers le brome.

### Comment dessiner une demi-flèche (à un électron) ?

Utilisez `~>` au lieu de `->` : `move 1-2 ~> 1` envoie un électron de la liaison entre les atomes 1 et 2 vers l'atome 1. Deux demi-flèches qui aboutissent à la même liaison en formation (`n..m`) se rejoignent en son milieu.

### MolScript est-il meilleur que chemfig ?

Ils résolvent des problèmes différents et fonctionnent ensemble. chemfig est un package LaTeX dans lequel vous placez vous-même chaque liaison et chaque flèche dans un document. MolScript décrit la chimie et laisse la mise en page et la géométrie des flèches à MolDraw, qui vérifie chaque flèche. Tout dessin MolScript peut être téléchargé sous forme de code chemfig pour un document LaTeX.

### Les assistants IA peuvent-ils écrire du MolScript ?

Oui. Le chat IA de MolDraw dessine les mécanismes en écrivant du MolScript, car les modèles de langage écrivent bien le SMILES et les numéros de mappage rendent chaque extrémité de flèche non ambiguë. Les erreurs sont renvoyées avec des numéros de ligne pour que le modèle puisse les corriger. Une compétence IA empaquetée est prévue pour que d'autres assistants puissent aussi l'utiliser.

### MolScript sera-t-il open source ?

C'est le projet : le langage, le compilateur et le moteur de schémas et de flèches doivent être publiés sous forme de framework ouvert que d'autres applications de canevas pourront utiliser pour dessiner réactions et mécanismes. La feuille de route liste ce qu'il reste à faire d'abord.

## Guides associés

[Galerie MolScript : 41 mécanismes vérifiés](https://www.moldraw.com/fr/blog/molscript-gallery.html) [Exemples de mécanismes chemfig](https://www.moldraw.com/fr/blog/chemfig-mechanism-samples.html) [chemfig et MolDraw : coller, modifier, exporter](https://www.moldraw.com/fr/blog/chemfig-latex-moldraw-guide.html) [Dessin de réactions chimiques](https://www.moldraw.com/fr/tools/free-chem-tools/chemical-reaction-drawer.html) [Ajouter des doublets non liants](https://www.moldraw.com/fr/blog/how-to-add-lone-pair-in-moldraw.html) [Tous les articles](https://www.moldraw.com/fr/blog/)

Dernière mise à jour : 17 octobre 2026
