> For the complete documentation index, see [llms.txt](https://documentation.soulver.app/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://documentation.soulver.app/fr/experimental/x.md).

# Série Soulver X

## Qu'est-ce que la Série Soulver X ?

En 2024, nous avons entrepris un projet de R\&D pluriannuel dont la mission est de :

* Explorer de nouvelles idées intéressantes pour Soulver
* Rechercher de nouvelles formes et de nouveaux flux de travail
* Aller avec audace là où aucun calculateur de notes ne s'était aventuré auparavant 🖖

Nous avons l'intention de publier une nouvelle version majeure de la série X chaque année.

### Parrainage de la Série Soulver X

Si vous êtes un utilisateur de longue date (ou un méga-fan de Soulver) et que vous êtes enthousiaste à l'idée de ce travail, vous pourriez envisager de [parrainer notre mission sur GitHub](https://soulver.app/sponsor).

De plus, en tant que parrain, vous aurez accès au dernier prototype de la série X (X3, X4, etc) avec des fonctionnalités jamais vues auparavant dans le domaine des calculateurs de notes.

Notre équipe (très) réduite apprécierait le soutien, ce qui nous permettrait de consacrer plus de ressources à ce type de R\&D de calculatrice de notes avancée.

## Soulver X2 (2025)

### Sous-feuilles

* Une sous-feuille est une feuille séparée qui vit à l'intérieur d'un seul jeton.
  * Créez une sous-feuille à partir du bouton + dans la barre d'onglets.
  * Double-cliquez sur le jeton violet pour ouvrir l'éditeur de sous-feuille.
* Les sous-feuilles peuvent faire référence à des variables de la feuille mère (à condition que les variables soient déclarées au-dessus de la ligne de la sous-feuille).

### Jeton de curseur avec plages

* Un jeton de curseur vous permet de spécifier la plage pour un curseur déplaçable
  * Créez un curseur à partir du bouton + dans la barre d'onglets.
  * Double-cliquez sur le jeton vert pour ouvrir la fenêtre contextuelle du curseur.

### Lignes de séparation

* Tapez tiret (-) trois fois pour insérer une ligne de séparation.
* Utilisez des lignes de séparation pour créer une séparation visuelle accrue entre les différentes parties de votre feuille.

## Soulver X1 (2024)

X1 comprend les implémentations des demandes de fonctionnalités majeures de Soulver, y compris :

* [Prise en charge des fonctions personnalisées](https://soulver.app/feedback) (*y compris les fonctions en langage naturel*)
* [Partage des variables entre les feuilles](https://soulver.app/feedback) (*via la nouvelle feuille "en-tête"*)
* [Connexion aux API Web](https://soulver.app/feedback) (*avec juste un copier-coller et quelques clics*)

### Onglets

<figure><img src="/files/Mr7YusC31fvA1s9uG4D6" alt=""><figcaption><p>Onglets multiples dans Soulver X1</p></figcaption></figure>

Les documents dans Soulver X1 commencent par un seul onglet, et vous pouvez en ajouter en cliquant sur le bouton + à droite de la barre d'onglets.

**Renommer les onglets**

Double-cliquez sur le titre d'un onglet pour lui donner un nom alternatif. Alternativement, faites un clic droit sur l'onglet et choisissez "Renommer".

**Supprimer les onglets**

Lorsque vous survolez un onglet, cliquez sur le bouton x pour supprimer. Alternativement, faites un clic droit sur l'onglet et choisissez "Supprimer"

{% hint style="warning" %}
Les onglets sont une fonctionnalité en cours de développement.

Vous ne pouvez pas réorganiser les onglets (pas encore), et ajouter trop d'onglets dans un seul document ne fonctionne pas correctement.
{% endhint %}

### La feuille d'en-tête

L'en-tête est une feuille dédiée à la définition des variables, des unités, des fonctions et des valeurs web qui peuvent être utilisées dans tous les onglets de votre document.

<figure><img src="/files/vLBswqNq8g7gjmBXcFLt" alt="" width="375"><figcaption></figcaption></figure>

### **Variables inter-onglets**

Déclarez les variables de votre document dans l'en-tête de la même manière que vous déclareriez des variables locales.

Par exemple :

```
ma variable = 123
```

`ma variable` sera disponible dans toutes vos feuilles

{% hint style="info" %}
Vos onglets ne peuvent faire référence qu'à des variables, mais ne peuvent pas modifier leur définition de manière à ce que cela s'applique à d'autres feuilles du document.
{% endhint %}

### **Unités équivalentes**

Une unité équivalente est définie en termes d'une unité existante.

Définissez une nouvelle unité équivalente dans l'en-tête en utilisant (par exemple) :

```
1 pastèque = 10 lb
```

<figure><img src="/files/sZl9rQ1EqabT30rJpoDk" alt=""><figcaption><p>Déclarer une nouvelle unité de masse dans Soulver X1</p></figcaption></figure>

Le `pastèque` peut maintenant être utilisé comme unité de masse dans tous vos onglets.

<figure><img src="/files/WcpNTbctalOXpWVioU5e" alt=""><figcaption><p>Utiliser une unité équivalente personnalisée dans Soulver X1</p></figcaption></figure>

{% hint style="info" %}
Soulver X1 pluralise automatiquement votre nouvelle unité pour vous (en anglais).

Ainsi, dans cet exemple, "watermelons" sera reconnu comme un nom d'unité valide, même si la définition était "watermelon".
{% endhint %}

### **Unités génériques**

Une unité équivalente est un type d'unité entièrement nouveau, non défini en termes d'une unité existante.

Définissez une nouvelle unité générique dans l'en-tête en utilisant (par exemple) :

```
opération = nouvelle unité
```

<figure><img src="/files/ByDeUDAKmhi4XjkkH0bt" alt=""><figcaption><p>Déclarer un type d'unité générique dans Soulver X1</p></figcaption></figure>

L'unité `opération` peut maintenant être utilisée dans tous vos onglets (y compris dans les taux) :

<figure><img src="/files/KrHN1jJyyhX59s9Fc5yX" alt=""><figcaption><p>Utiliser une unité générique dans Soulver X1</p></figcaption></figure>

### **Fonctions personnalisées**

**Introduction**

Une fonction est une expression pratique qui prend une entrée et renvoie une sortie. Dans Soulver X1, vous pouvez utiliser (presque) n'importe quelle syntaxe pour une fonction, y compris :

Style C : `doSomething(123)`

Style Swift : `doSomething(with: 123)`

Langage naturel : `faire quelque chose avec 123`

**Pour créer une nouvelle fonction personnalisée (dans l'en-tête)**

* Cliquez sur `Définir Nouveau` > `Fonction`

**Choisir un nom de fonction :**

<figure><img src="/files/DDqOk4jhsuDVLcKbuhMJ" alt=""><figcaption><p>Déclarer une nouvelle fonction dans Soulver X1</p></figcaption></figure>

* Définissez votre fonction en utilisant un exemple de la manière dont vous pourriez utiliser la fonction en pratique.
* Choisissez tous les paramètres (tant qu'ils correspondent au "type" de paramètre que vous attendez pour votre implémentation, comme l'argent, le temps, les nombres décimaux simples, etc).

**Implémenter votre fonction :**

<figure><img src="/files/JcMBhy44bIFNSSbaAkRj" alt=""><figcaption><p>Écrire une fonction pour calculer le montant de la taxe de vente dans un certain montant</p></figcaption></figure>

* Implémentez la fonction dans une feuille Soulver dédiée. Tous les paramètres seront injectés comme jetons jaunes.
* Survolez un jeton de paramètre pour voir à quel paramètre il fait référence dans la déclaration.
* La dernière ligne de la feuille d'implémentation sera retournée comme valeur finale de la fonction.

**Utiliser votre fonction**

<figure><img src="/files/eCsgPmnGgh9P54S0OCIh" alt=""><figcaption></figcaption></figure>

Utilisez votre fonction avec d'autres valeurs d'entrée dans toutes vos feuilles

### **Valeurs web (connexion aux API JSON)**

#### **Pour créer une nouvelle valeur web (dans l'en-tête)**

* Cliquez sur `Définir Nouveau` > `Valeur Web`

#### **Pour se connecter à un point de données particulier dans un flux de données JSON**

<figure><img src="/files/OADrXa3sscnrlpw5NUq1" alt=""><figcaption><p>Se connecter à un flux de données distant dans Soulver X1</p></figcaption></figure>

* Collez une URL vers un flux de données JSON, puis cliquez simplement sur le point de données auquel vous souhaitez vous connecter

#### **Utiliser une valeur web**

* Votre valeur web se verra attribuer un nom de variable (par défaut, correspondant à sa description dans le flux JSON)
* Vous êtes libre de changer le nom de la variable pour autre chose

#### **Mettre à jour une valeur web**

* Votre valeur web sera automatiquement mise à jour en arrière-plan avec la fréquence que vous avez spécifiée lors de la configuration

#### **Modifier une valeur web**

* Double-cliquez sur le jeton de valeur web jaune dans l'en-tête pour spécifier un point de données différent, ou changer la fréquence de mise à jour

## Type de fichier Série Soulver X

{% hint style="warning" %}
Les applications de la série Soulver X utilisent un type de document différent (.slvrx) de Soulver.

Ceci est fait pour prendre en charge les nouvelles fonctionnalités que nous construisons et expérimentons.

Les fichiers Soulver X (.slvrx) ne peuvent pas être modifiés par Soulver 3 pour Mac, iOS et iPad.
{% endhint %}
