BERKIOSDocs
Référence

Leçon 8 — Les commandes étendues (catalogue complet)

Ces commandes complètent celles de la leçon 4 pour écrire des applications généralistes (formulaires, calculs, listes, dates, exports) sans JavaScript. Elles fonctionnent dans le code des composants (aperçu du Studio et mode Application), en français comme en anglais.

Ce fichier est généré par node scripts/generate-commands-doc.mjs à partir du catalogue réel : il ne peut pas diverger du code. Un test vérifie que toutes les commandes y figurent.

Conventions

  • Cible : un composant (id, nom ou libellé), une variable $nom ou une position brique.x. Les commandes « en place » (majuscules, arrondir…) modifient la cible ; les autres écrivent dans la cible Résultat donnée en dernier argument (ou en premier pour somme, minimum, concatener…).
  • Valeur : un composant, une variable ou un texte. Dans un texte, {Composant} et {$variable} sont remplacés par leur valeur. Un nombre écrit sans guillemets (2, -1, 2,5) est toujours un nombre.
  • Booléens : true / false, comme une case à cocher. Exemple : est-email "Courriel" "$ok" puis verifier "$ok" = "true" "Courriel invalide".
  • Listes : éléments séparés par des virgules (pomme, poire, kiwi). Les décimaux d'une liste s'écrivent avec un point : liste-ajouter convertit 49,5 en 49.5 et remplace toute autre virgule par une espace.
  • Dates : AAAA-MM-JJ (champ date) ; JJ/MM/AAAA est aussi lu. Nombres : la virgule et le point décimaux sont acceptés ; les résultats utilisent le point (sauf formater-nombre, monnaie).
  • Expressions régulières (correspond) : dans un texte entre guillemets, écrivez \\d pour obtenir \d, ou préférez [0-9].
  • Erreurs : une commande invalide s'arrête avec un message Script : ligne N — … ; quitter arrête sans erreur. repeter et sauf-si n'acceptent pas une autre commande de contrôle (si, sauf-si, repeter) à l'intérieur.
  • Sécurité : aucun eval, aucun JavaScript libre. Les commandes d'interface et de système passent par l'hôte du Studio ; ailleurs elles échouent avec « non pris en charge ici ».
  • Application Flutter : depuis la v0.7.77, ces commandes s'exécutent aussi dans l'application générée (voir la leçon 7 pour les différences : imprimer et audio non pris en charge, telecharger écrit dans Téléchargements).

Texte (39)

SyntaxeAliasRôle
majuscules "Cible"uppercaseMet le texte en majuscules.
minuscules "Cible"lowercaseMet le texte en minuscules.
capitaliser "Cible"capitalizePremière lettre de chaque mot en majuscule.
nettoyer "Cible"trimSupprime les espaces inutiles (début, fin, doublons).
longueur "Source" "Résultat"lengthNombre de caractères du texte.
remplacer "Cible" "ancien" "nouveau"replaceRemplace toutes les occurrences d'un texte.
concatener "Résultat" "A" "B" …concaténer, concatAssemble plusieurs valeurs dans le résultat.
sous-texte "Source" début [longueur] "Résultat"substringExtrait une partie du texte (début à partir de 1).
tronquer "Cible" nombre ["…"]truncateRaccourcit le texte et ajoute une marque.
remplir-gauche "Cible" largeur ["0"]padstartComplète à gauche jusqu'à la largeur voulue (ex. 7 → 007).
inverser "Cible"reverseInverse l'ordre des caractères.
contient "Source" "texte" "Résultat"containstrue si le texte contient la recherche (sans tenir compte de la casse).
commence-par "Source" "texte" "Résultat"startswithtrue si le texte commence par la recherche.
finit-par "Source" "texte" "Résultat"endswithtrue si le texte finit par la recherche.
position-de "Source" "texte" "Résultat"indexofPosition (à partir de 1) de la première occurrence ; 0 si absent.
partie "Source" "séparateur" n "Résultat"partNième morceau d'un texte découpé par un séparateur (n à partir de 1).
compter-texte "Source" "texte" "Résultat"countofNombre d'occurrences d'un texte.
remplir-droite "Cible" largeur ["0"]padendComplète à droite jusqu'à la largeur voulue (ex. 7 → 700).
centrer-texte "Cible" largeur [" "]centerCentre le texte dans la largeur voulue.
repeter-texte "Cible" nrepeat-textRépète le texte n fois (0 à 1000).
phrase "Cible"sentence-caseMinuscules, sauf la première lettre en majuscule.
inverser-casse "Cible"swap-caseÉchange majuscules et minuscules.
nettoyer-debut "Cible"trim-startSupprime les espaces au début du texte.
nettoyer-fin "Cible"trim-endSupprime les espaces à la fin du texte.
retirer-espaces "Cible"remove-spacesSupprime toutes les espaces du texte.
sans-accents "Cible"remove-accentsRemplace les lettres accentuées par leur forme simple (é → e).
slug "Cible"slugifyTransforme le texte en identifiant d'adresse (Café de Paris → cafe-de-paris).
compter-mots "Source" "Résultat"wordcountNombre de mots du texte.
compter-lignes "Source" "Résultat"linecountNombre de lignes du texte (0 si vide).
derniere-position "Source" "texte" "Résultat"last-indexofPosition (à partir de 1) de la dernière occurrence ; 0 si absent.
avant-texte "Source" "séparateur" "Résultat"text-beforeTexte situé avant la première occurrence du séparateur (vide si absent).
apres-texte "Source" "séparateur" "Résultat"text-afterTexte situé après la première occurrence du séparateur (vide si absent).
entre-textes "Source" "début" "fin" "Résultat"text-betweenTexte compris entre deux repères (vide si l'un manque).
supprimer-texte "Cible" "motif"remove-textSupprime toutes les occurrences d'un texte.
inserer-texte "Cible" position "texte"insert-textInsère un texte à une position (à partir de 1).
caractere-de "Source" n "Résultat"char-atNième caractère du texte (à partir de 1 ; vide si hors texte).
code-caractere "Source" "Résultat"char-codeCode Unicode du premier caractère.
caractere-code "Résultat" codefrom-char-codeCaractère correspondant à un code Unicode.
initiales "Source" "Résultat"initialsInitiales des mots (Jean-Pierre Dupont → JPD).

Nombres et calculs (96)

SyntaxeAliasRôle
arrondir "Cible" [décimales]roundArrondit à N décimales (0 par défaut).
plancher "Cible"floorArrondit à l'entier inférieur.
plafond "Cible"ceilArrondit à l'entier supérieur.
absolu "Cible"absValeur absolue.
racine "Cible"sqrtRacine carrée.
puissance "Cible" exposantpowerÉlève la valeur à une puissance.
modulo "Cible" diviseurmodReste de la division.
minimum "Résultat" "A" "B" …minPlus petite des valeurs.
maximum "Résultat" "A" "B" …maxPlus grande des valeurs.
somme "Résultat" "A" "B" …sumAdditionne les valeurs.
moyenne "Résultat" "A" "B" …average, avgMoyenne des valeurs.
produit "Résultat" "A" "B" …productMultiplie les valeurs.
pourcentage "Résultat" "Partie" "Total" [décimales]percentPartie / Total × 100.
pourcent-de "Résultat" "Valeur" tauxpercentofCalcule taux % d'une valeur (ex. TVA, remise).
borner "Cible" minimum maximumclampForce la valeur à rester entre deux bornes.
aleatoire "Résultat" [minimum maximum]aléatoire, randomNombre entier au hasard (1 à 100 par défaut).
separer-milliers "Cible" [" "]séparer-milliers, thousandsGroupe les chiffres par milliers (1234567 → 1 234 567).
monnaie "Cible" "EUR" ["fr-FR"]currencyMet en forme un montant (devise ISO : EUR, USD, CDF…).
entier "Cible"integerSupprime la partie décimale.
pgcd-multiple "Résultat" "A" "B"gcd-multiplePlus grand commun diviseur.
factorielle "Cible"factorialFactorielle d'un entier de 0 à 170.
formater-nombre "Cible" décimalesformatnumberAffiche toujours N décimales (2 → 12,50).
signe-nombre "Cible"signSigne du nombre : −1, 0 ou 1.
racine-cubique "Cible"cube-rootRacine cubique (négatifs acceptés).
exponentielle "Cible"expe puissance la valeur.
logarithme-neperien "Cible"lnLogarithme népérien (valeur strictement positive).
logarithme "Cible"log10Logarithme décimal (valeur strictement positive).
sinus "Cible"sinSinus d'un angle en degrés.
cosinus "Cible"cosCosinus d'un angle en degrés.
tangente "Cible"tanTangente d'un angle en degrés.
hypotenuse "Résultat" "A" "B"hypotLongueur de l'hypoténuse : √(A² + B²).
ppcm "Résultat" "A" "B" …lcmPlus petit commun multiple d'entiers non nuls.
fibonacci "Résultat" nfiboNième terme de la suite de Fibonacci (n de 0 à 78).
mediane "Résultat" "A" "B" …medianMédiane des valeurs.
ecart-type "Résultat" "A" "B" …stddevÉcart type (population) des valeurs.
variance "Résultat" "A" "B" …variance-valuesVariance (population) des valeurs.
arrondir-a "Cible" pasround-toArrondit au multiple le plus proche (ex. pas 0,05).
interpoler "Résultat" "A" "B" tlerpValeur entre A et B : A + (B − A) × t (t de 0 à 1).
variation "Résultat" "Ancien" "Nouveau" [décimales]percent-changeVariation en % entre deux valeurs.
remise "Résultat" "Prix" pourcentagediscountPrix après une remise en % (2 décimales).
ajouter-taxe "Résultat" "HT" tauxadd-taxPrix toutes taxes comprises à partir du prix hors taxe (2 décimales).
retirer-taxe "Résultat" "TTC" tauxremove-taxPrix hors taxe à partir du prix TTC (2 décimales).
interets-composes "Résultat" "Capital" taux annees [periodes]compound-interestCapital final avec intérêts composés (taux annuel en %, 2 décimales).
mensualite "Résultat" "Capital" taux_annuel moisloan-paymentMensualité d'un prêt à taux fixe (2 décimales).
changer-base "Résultat" "Valeur" base_source base_ciblechange-baseConvertit un entier d'une base (2 à 36) à une autre.
en-romain "Résultat" nto-romanÉcrit un entier de 1 à 3999 en chiffres romains.
tronquer-nombre "Cible" [décimales]truncSupprime les décimales sans arrondir.
arrondir-superieur "Cible" [décimales]round-upArrondit en s'éloignant de zéro.
arrondir-inferieur "Cible" [décimales]round-downArrondit vers zéro.
entier-valide "Résultat" "Valeur"is-integer-valueRetourne vrai si la valeur est un entier.
est-pair-nombre "Résultat" "Valeur"is-even-numberTeste si un entier est pair.
est-impair-nombre "Résultat" "Valeur"is-odd-numberTeste si un entier est impair.
est-premier-nombre "Résultat" "Valeur"is-prime-numberTeste si un entier est premier.
pgcd "Résultat" "A" "B" …gcdPlus grand commun diviseur des entiers.
factorielle-avancee "Résultat" nfactorial-extraCalcule n! pour 0 ≤ n ≤ 170.
combinaison "Résultat" n kn-choose-kCalcule le nombre de combinaisons C(n,k).
arrangements "Résultat" n kn-permute-kCalcule le nombre d'arrangements P(n,k).
aleatoire-intervalle "Résultat" minimum maximumrandom-int-extraEntier aléatoire inclusif entre minimum et maximum.
aleatoire-reel "Résultat" minimum maximumrandom-real-extraNombre réel aléatoire dans [minimum, maximum).
minimum-borne "Cible" minimumclamp-minImpose une valeur minimale.
maximum-borne "Cible" maximumclamp-maxImpose une valeur maximale.
changer-echelle "Résultat" valeur min1 max1 min2 max2map-rangeTranspose linéairement une valeur d'un intervalle vers un autre.
degres-en-radians-nombre "Cible"degrees-to-radians-numberConvertit les degrés en radians.
radians-en-degres-nombre "Cible"radians-to-degrees-numberConvertit les radians en degrés.
arcsinus "Cible"asinArcsinus en degrés.
arccosinus "Cible"acosArccosinus en degrés.
arctangente "Cible"atanArctangente en degrés.
sinus-hyperbolique "Cible"sinhSinus hyperbolique.
cosinus-hyperbolique "Cible"coshCosinus hyperbolique.
tangente-hyperbolique "Cible"tanhTangente hyperbolique.
logarithme-binaire "Cible"log2Logarithme en base 2.
logarithme-base "Résultat" valeur baselog-baseLogarithme dans une base quelconque.
exponentielle-moins-un "Cible"expm1Calcule e^x − 1 avec précision près de zéro.
logarithme-plus-un "Cible"log1pCalcule ln(1+x) avec précision près de zéro.
distance-3d "Résultat" x y zhypot3Norme euclidienne en trois dimensions.
distance-nombres "Résultat" A Bnumeric-distanceDistance absolue entre deux nombres.
moyenne-ponderee "Résultat" valeur poids valeur poids …weighted-meanMoyenne pondérée à partir de paires valeur/poids.
percentile "Résultat" taux "A" "B" …percentile-valuePercentile par interpolation linéaire (taux 0 à 100).
quartile "Résultat" rang "A" "B" …quartile-valueQuartile 0, 1, 2 ou 3.
etendue "Résultat" "A" "B" …rangeÉcart entre la plus grande et la plus petite valeur.
compter-nombres "Résultat" "A" "B" …count-numbersCompte les arguments numériques valides.
somme-si "Résultat" seuil "A" "B" …sum-ifAdditionne les valeurs supérieures ou égales au seuil.
compter-si "Résultat" seuil "A" "B" …count-ifCompte les valeurs supérieures ou égales au seuil.
produit-si "Résultat" seuil "A" "B" …product-ifMultiplie les valeurs supérieures ou égales au seuil.
somme-carres "Résultat" "A" "B" …sum-squaresSomme les carrés des valeurs.
somme-carres-ecarts "Résultat" "A" "B" …sum-squared-diffsSomme les carrés des écarts à la moyenne.
moyenne-geometrique "Résultat" "A" "B" …geometric-meanMoyenne géométrique des valeurs positives.
moyenne-harmonique "Résultat" "A" "B" …harmonic-meanMoyenne harmonique des valeurs positives.
variance-echantillon "Résultat" "A" "B" …sample-varianceVariance d'échantillon (division par n−1).
ecart-type-echantillon "Résultat" "A" "B" …sample-stddevÉcart type d'échantillon.
covariance "Résultat" "A1" "A2" … "B1" "B2" …covariance-valueCovariance population de deux séries de même taille.
correlation "Résultat" "A1" "A2" … "B1" "B2" …correlation-valueCoefficient de corrélation de Pearson.
loi-normale-densite "Résultat" x moyenne ecart-typenormal-pdfDensité de probabilité normale.
loi-normale-cdf "Résultat" x moyenne ecart-typenormal-cdfFonction de répartition normale (approximation).
partie-entiere "Cible"integer-partExtrait la partie entière vers zéro.
partie-decimale "Cible"fractional-partExtrait la partie décimale signée.

Logique, variables et contrôle (18)

SyntaxeAliasRôle
copier "Source" "Cible"copyCopie une valeur vers une cible.
echanger "A" "B"échanger, swapÉchange les valeurs de deux cibles.
par-defaut "Cible" "valeur"par-défaut, defaultDonne une valeur si la cible est vide.
est-vide "Source" "Résultat"isemptytrue si la valeur est vide.
est-nombre "Source" "Résultat"isnumbertrue si la valeur est un nombre.
choisir "Résultat" "Gauche" > "Droite" "si vrai" "si faux"choosePlace l'une de deux valeurs selon une condition.
sauf-si "Cible" = "x" alors commande …unlessExécute la commande seulement si la condition est fausse.
repeter 3 [fois] commande …répéter, repeatRépète une commande N fois (1000 maximum).
pendant-que "Cible" < "Valeur" alors commande …tant-que, whileRépète une commande tant que la condition reste vraie (1000 itérations maximum).
pour-chaque "$element" dans "pomme,poire" alors commande …foreachExécute une commande pour chaque élément d’une liste séparée par des virgules.
verifier "Cible" >= 0 ["message d'erreur"]vérifier, assertArrête le script avec un message si la condition est fausse.
attendre 500 [ms|s]wait, pauseAttend avant la commande suivante (60 s maximum).
journal "texte"logÉcrit un message dans la console de développement.
inverser-booleen "Cible"negateInverse true / false (accepte aussi vrai, faux, oui, non, 1, 0).
premier-non-vide "Résultat" "A" "B" …coalescePremière valeur non vide parmi celles indiquées.
comparer "A" "B" "Résultat"compare−1, 0 ou 1 selon que A est inférieur, égal ou supérieur à B (nombres ou texte).
chercher-cle "Résultat" "Source" "a=1, b=2" ["défaut"]lookupCherche la valeur associée à une clé dans une table « clé=valeur ».
incrementer-modulo "Cible" pas moduloincrement-modAjoute un pas puis revient à 0 au bout du modulo (compteur circulaire).

Dates et heure (22)

SyntaxeAliasRôle
maintenant "Résultat" ["JJ/MM/AAAA HH:mm"]nowDate et heure actuelles (AAAA-MM-JJ HH:mm:ss par défaut).
aujourdhui "Résultat"aujourd'hui, todayDate du jour (AAAA-MM-JJ).
heure "Résultat"timeHeure actuelle (HH:mm:ss).
ajouter-jours "Date" nadddaysAjoute (ou retire, si négatif) des jours à une date.
ajouter-mois "Date" naddmonthsAjoute des mois à une date (jour ramené à la fin du mois si besoin).
ecart-jours "Début" "Fin" "Résultat"écart-jours, diffdaysNombre de jours entre deux dates (négatif si la fin précède le début).
jour-semaine "Date" "Résultat" [en]weekdayNom du jour de la semaine (français, ou anglais avec « en »).
formater-date "Cible" "JJ/MM/AAAA"formatdateChange le format d'une date (AAAA, MM, JJ, HH, mm, ss).
age "Naissance" "Résultat"âgeÂge en années complètes à partir d'une date de naissance.
horodatage "Résultat"timestampSecondes écoulées depuis 1970 (identifiant temporel).
ajouter-annees "Date" nadd-yearsAjoute (ou retire) des années à une date ; le 29 février devient le 28 si besoin.
debut-mois "Date"start-of-monthPremier jour du mois de la date.
fin-mois "Date"end-of-monthDernier jour du mois de la date.
debut-semaine "Date"start-of-weekLundi de la semaine de la date.
jours-dans-mois "Date" "Résultat"days-in-monthNombre de jours du mois de la date.
numero-semaine "Date" "Résultat"week-numberNuméro de semaine ISO (1 à 53).
jour-annee "Date" "Résultat"day-of-yearRang du jour dans l'année (1 à 366).
trimestre "Date" "Résultat"quarterTrimestre de la date (1 à 4).
nom-mois "Date" "Résultat" [en]month-nameNom du mois (français, ou anglais avec « en »).
ecart-mois "Début" "Fin" "Résultat"diff-monthsNombre de mois entiers entre deux dates (négatif si la fin précède le début).
ajouter-jours-ouvres "Date" nadd-business-daysAjoute (ou retire) des jours ouvrés, week-ends exclus.
prochain-jour "Date" "lundi"next-weekdayDate du prochain jour de la semaine demandé (strictement après la date).

Listes (29)

SyntaxeAliasRôle
liste-ajouter "Liste" "élément"listaddAjoute un élément à la fin de la liste.
liste-retirer "Liste" "élément"listremoveRetire la première occurrence d'un élément.
liste-taille "Liste" "Résultat"listcountNombre d'éléments de la liste.
liste-element "Liste" n "Résultat"liste-élément, listgetLit le Nième élément (à partir de 1 ; −1 = dernier).
liste-trier "Liste" [decroissant]listsortTrie la liste (nombres ou texte).
liste-unique "Liste"listuniqueSupprime les doublons.
liste-inverser "Liste"listreverseInverse l'ordre des éléments.
liste-joindre "Liste" "séparateur" "Résultat"listjoinAssemble les éléments avec un séparateur (ex. " - ").
liste-contient "Liste" "élément" "Résultat"listcontainstrue si l'élément est dans la liste.
liste-somme "Liste" "Résultat"listsumSomme des nombres de la liste.
liste-max "Liste" "Résultat"listmaxPlus grand nombre de la liste.
liste-min "Liste" "Résultat"listminPlus petit nombre de la liste.
liste-melanger "Liste"liste-mélanger, listshuffleMélange les éléments au hasard.
liste-position "Liste" "élément" "Résultat"list-indexofPosition (à partir de 1) d'un élément ; 0 si absent.
liste-inserer "Liste" n "élément"list-insertInsère un élément à la position n (à partir de 1).
liste-modifier "Liste" n "élément"list-setRemplace le Nième élément de la liste.
liste-retirer-position "Liste" nlist-removeatRetire le Nième élément de la liste.
liste-premier "Liste" "Résultat"list-firstPremier élément de la liste (vide si elle est vide).
liste-dernier "Liste" "Résultat"list-lastDernier élément de la liste (vide si elle est vide).
liste-extraire "Liste" début nombrelist-sliceNe garde que « nombre » éléments à partir de la position « début ».
liste-prendre "Liste" nlist-takeGarde les n premiers éléments.
liste-sauter "Liste" nlist-skipRetire les n premiers éléments.
liste-moyenne "Liste" "Résultat"list-averageMoyenne des nombres de la liste.
liste-garder "Liste" "texte"list-keepNe garde que les éléments contenant le texte.
liste-ecarter "Liste" "texte"list-dropRetire les éléments contenant le texte.
liste-fusionner "Liste" "Autre"list-mergeAjoute à la liste les éléments d'une autre liste.
liste-commun "Liste" "Autre"list-commonNe garde que les éléments présents aussi dans l'autre liste.
liste-difference "Liste" "Autre"list-diffRetire les éléments présents dans l'autre liste.
liste-compter "Liste" "élément" "Résultat"list-countofNombre d'occurrences d'un élément.

Validation de saisie (16)

SyntaxeAliasRôle
est-email "Source" "Résultat"isemailtrue si la valeur ressemble à une adresse e-mail.
est-url "Source" "Résultat"isurltrue si la valeur est une adresse http(s) valide.
est-date "Source" "Résultat"isdatetrue si la valeur est une date réelle (29/02/2023 → false).
correspond "Source" "motif" "Résultat"matchestrue si le texte correspond à une expression régulière (motif de 200 caractères max).
est-entre "Source" minimum maximum "Résultat"isbetweentrue si le nombre est compris entre deux bornes (incluses).
obligatoire "Champ1" "Champ2" …requiredArrête le script si un champ est vide.
est-entier "Source" "Résultat"is-integertrue si la valeur est un nombre entier.
est-pair "Source" "Résultat"is-eventrue si la valeur est un entier pair.
est-impair "Source" "Résultat"is-oddtrue si la valeur est un entier impair.
est-premier "Source" "Résultat"is-primetrue si la valeur est un nombre premier (jusqu'à 10¹²).
est-alphabetique "Source" "Résultat"is-alphatrue si la valeur ne contient que des lettres.
est-telephone "Source" "Résultat"is-phonetrue si la valeur ressemble à un numéro de téléphone (8 à 15 chiffres, + facultatif).
est-ip "Source" "Résultat"is-iptrue si la valeur est une adresse IPv4.
est-couleur-hexa "Source" "Résultat"is-hex-colortrue si la valeur est une couleur #RGB ou #RRGGBB.
est-bissextile "Source" "Résultat"is-leap-yeartrue si l'année (ou la date) est bissextile.
est-week-end "Date" "Résultat"is-weekendtrue si la date tombe un samedi ou un dimanche.

Encodage et identifiants (11)

SyntaxeAliasRôle
encoder-base64 "Cible"base64encodeEncode le texte en Base64.
decoder-base64 "Cible"décoder-base64, base64decodeDécode un texte Base64.
encoder-url "Cible"urlencodeEncode le texte pour une adresse web.
decoder-url "Cible"décoder-url, urldecodeDécode un texte d'adresse web.
identifiant "Résultat"uuidIdentifiant unique universel (UUID v4).
empreinte "Source" "Résultat"hashEmpreinte SHA-256 d'un texte (64 caractères hexadécimaux).
encoder-html "Cible"html-encodeRemplace & < > " ' par leurs entités HTML.
decoder-html "Cible"html-decodeTransforme les entités HTML courantes en caractères.
rot13 "Cible"rot-13Chiffrement ROT13 des lettres A–Z (appliquer deux fois redonne le texte).
somme-controle "Source" "Résultat"crc-32Somme de contrôle CRC-32 du texte (8 chiffres hexadécimaux).
cesar "Cible" decalagecaesarChiffrement de César : décale les lettres A–Z de n rangs (négatif accepté).

Conversion d'unités (1)

SyntaxeAliasRôle
convertir "Valeur" "km" "mi" "Résultat"convertConvertit des unités (longueur, masse, volume, durée, surface, vitesse, données, température).

Interface (8)

SyntaxeAliasRôle
basculer-barre-lateralebasculer-barre-latérale, toggle-sidebar, toggle-sidebar-navigationAffiche ou masque la barre latérale du shell et agrandit automatiquement la zone de contenu.
activer "Cible"enableRend un composant utilisable.
desactiver "Cible"désactiver, disableRend un composant inutilisable (grisé).
focaliser "Cible"focusPlace le curseur dans un champ.
cocher "Case"checkCoche une case.
decocher "Case"décocher, uncheckDécoche une case.
couleur "Cible" "#ff0000" [fond]colorChange la couleur du texte (ou du fond avec « fond »).
animer "Cible" secousse|secousse-verticale|pulsation|fondu|fondu-entree|rebond|rotation|zoom|glisser-gauche|glisser-droite|glisser-haut|glisser-basanimateAnime un composant ciblé par son identifiant, son nom ou son libellé.

Système et fichiers (7)

SyntaxeAliasRôle
copier-presse-papiers "Source"clipboardCopie une valeur dans le presse-papiers.
telecharger "nom.txt" "Source"télécharger, downloadEnregistre une valeur dans un fichier texte (.txt, .csv, .json…).
dossier-supprimer-virtuel "Dossier"delete-virtual-folderSupprime récursivement un dossier et son contenu dans l'espace virtuel de l'application. Ne touche jamais au disque.
imprimerprintOuvre la boîte d'impression.
confirmer "Question ?" "Résultat"confirmPose une question Oui/Non ; le résultat vaut true ou false.
demander "Question" "Résultat" ["valeur par défaut"]askDemande une saisie à l'utilisateur (vide si annulé).
oublier "clé"forgetSupprime une valeur mémorisée avec « stocker ».

Fichiers sur disque (7)

SyntaxeAliasRôle
ouvrir-dossier-autorise "$chemin"authorize-external-folder-nativeOuvre un sélecteur natif pour autoriser un dossier externe. Les chemins absolus situés dans ce dossier seront accessibles jusqu'à la fermeture de l'application.
lire-url-texte "https://exemple.org/rapport.txt" "$contenu"read-url-nativeLit le contenu texte d'une URL HTTP/HTTPS publique (limite de 10 Mio, délai de 15 secondes, dépend des règles CORS du serveur).
disque-lire "chemin/relatif.txt" "$resultat"workspace-readLit un fichier texte existant dans le répertoire de travail autorisé de BERKIOS. Le chemin est relatif au répertoire de travail.
disque-ecrire "chemin/relatif.txt" "contenu"workspace-writeÉcrit un fichier UTF-8 dans le répertoire de travail autorisé. Crée les dossiers parents si nécessaire.
disque-lister "dossier" "$resultat"workspace-listListe les fichiers et sous-dossiers du répertoire de travail, un élément par ligne.
disque-dossier-creer "dossier/sous-dossier"workspace-mkdirCrée un dossier dans le répertoire de travail autorisé.
disque-dossier-supprimer "dossier/sous-dossier"workspace-rmdirSupprime récursivement un dossier du répertoire de travail. Le répertoire de travail lui-même ne peut jamais être supprimé.

Appareil natif (2)

SyntaxeAliasRôle
niveau-batterie "$niveau"batterie-niveau, battery-levelLit le niveau de batterie (0–100 %) dans une application Flutter générée ; non disponible dans l’aperçu Web du Studio.
etat-batterie "$etat"état-batterie, batterie-etat, battery-stateLit l’état de batterie (charge, décharge, pleine ou branchée) dans une application Flutter générée.

Canevas de jeu (jeux 2D, bibliothèque MyGame) (13)

SyntaxeAliasRôle
canevas-effacer "Canevas" ["#ffffff"]canvas-clearCommence une nouvelle image : vide le tampon de dessin et le remplit avec la couleur de fond (transparent par défaut).
canevas-rect "Canevas" x y largeur hauteur "#535353" [contour [épaisseur]]canevas-rectangle, canvas-rectDessine un rectangle plein (ou son contour avec « contour »).
canevas-ligne "Canevas" x1 y1 x2 y2 "#535353" [épaisseur]canvas-lineTrace une ligne.
canevas-cercle "Canevas" x y rayon "#535353" [contour [épaisseur]]canvas-circleDessine un disque (ou un cercle avec « contour »).
canevas-texte "Canevas" x y "Texte" [taille] ["#535353"] [gauche|centre|droite]canvas-textÉcrit un texte à chasse fixe ({Composant} et {$variable} sont remplacés).
canevas-sprite "Canevas" x y "..##/.####/..##." [échelle] ["#535353"]canvas-spriteDessine une image en pixels : lignes séparées par « / », « . » ou espace = transparent, tout autre caractère = pixel plein.
canevas-afficher "Canevas"canvas-presentAffiche l'image dessinée depuis le dernier « canevas-effacer » (double tampon : pas de scintillement).
solitaire-new "Canevas" [1|3]solitaire-newInitialise et dessine une partie Klondike.
solitaire-draw "Canevas"solitaire-drawPioche ou recycle la défausse.
solitaire-move "Canevas" source index offset destination indexsolitaire-moveUtilisez les interactions par coordonnées pour déplacer les cartes.
solitaire-undo "Canevas"solitaire-undoAnnule le dernier coup.
solitaire-render "Canevas"solitaire-renderRedessine le plateau Klondike.
solitaire-tap "Canevas" x ysolitaire-tapTraite les clics sur la pioche, les cartes et les fondations.

Couleurs (6)

SyntaxeAliasRôle
rgb-en-hexa "Résultat" rouge vert bleurgb-to-hexCouleur #rrggbb à partir de trois composantes de 0 à 255.
hexa-en-rgb "Source" "Résultat"hex-to-rgbComposantes « r, g, b » d'une couleur #RGB ou #RRGGBB.
eclaircir-couleur "Cible" pourcentlightenÉclaircit une couleur en la mélangeant avec du blanc.
assombrir-couleur "Cible" pourcentdarkenAssombrit une couleur en la mélangeant avec du noir.
melanger-couleurs "Résultat" "Couleur1" "Couleur2" [pourcent]mix-colorsMélange deux couleurs (pourcent = part de la seconde, 50 par défaut).
couleur-lisible "Source" "Résultat"readable-text-colorNoir ou blanc, selon ce qui se lit le mieux sur la couleur de fond.

Interface avancée (29)

SyntaxeAliasRôle
naviguer-vers "Route" [parametres]navigate-toNavigue vers une route.
fermer ["Interface"]closeFerme l'interface nommée (ex. fermer "interface_1") ; sans argument, ferme l'interface courante.
redimensionner ["Interface"] largeur hauteurresizeChange la largeur et la hauteur de l'interface (en pixels).
geometrie ["Interface"] largeur hauteur [x y]géométrie, geometryDéfinit par le code la taille (largeur × hauteur) et, en option, la position (x y) de l'interface.
plein-ecran ["Interface"] [vrai|faux|basculer]plein-écran, fullscreenActive, désactive ou bascule le plein écran de l'interface (sans option : active).
naviguer-retournavigate-backRevient à la route précédente.
parametre-route "Nom" "Résultat"route-paramLit un paramètre de route.
dialogue-ouvrir "Titre" "Contenu"dialog-openOuvre une modale.
dialogue-fermerdialog-closeFerme la modale active.
menu-contextuel "Cible" "Options"context-menuAffiche un menu contextuel.
onglet-activer "Onglet"tab-activateActive un onglet.
tableau-ligne-selectionner "Tableau" "Index"table-row-selectSélectionne une ligne.
tableau-colonne-trier "Tableau" "Colonne"table-sortTrie par colonne.
tableau-filtrer "Tableau" "Colonne" "Valeur"table-filterFiltre un tableau.
grille-donnees "Cible" "JSON"data-gridConfigure une grille de données JSON.
graphique-afficher "Cible" barres|courbes "JSON"chart-showAffiche un graphique à barres ou courbes.
carte-afficher "Cible" "JSON"map-showAffiche une carte.
kanban "Cible" "JSON"kanban-boardConfigure un tableau Kanban.
calendrier-afficher "Cible" "JSON"calendar-showAffiche un calendrier.
drag-drop "Source" "Destination"drag-and-dropDéplace un élément par glisser-déposer.
tooltip "Cible" "Texte"tooltip-showDéfinit une infobulle.
toast "Message" [type]toast-notificationAffiche une notification temporaire.
etat-chargement "Cible" vrai|fauxloading-stateActive ou désactive l’état de chargement.
skeleton "Cible" vrai|fauxskeleton-toggleActive ou désactive un squelette de chargement.
pagination "Cible" "Page" "Taille"pagination-configureConfigure la pagination.
accessibilite-verifier "Cible"accessibility-checkVérifie l’accessibilité.
contraste-verifier "Cible"contrast-checkVérifie le contraste.
theme-changer clair|sombre|systemetheme-changeChange le thème.
responsive-verifier "Cible"responsive-checkVérifie le comportement responsive.

Classeur Excel (34)

SyntaxeAliasRôle
feuille-activer "Feuille"sheet-activateAffiche la feuille (son interface) et en fait la feuille active pour les références sans nom de feuille (VBA : Sheets("X").Activate).
feuille-visibilite "Feuille" visible|masquee|tres-masqueefeuille-visibilité, sheet-visibilityAffiche ou masque une feuille (VBA : Sheets("X").Visible = …) ; « tres-masquee » = xlSheetVeryHidden.
feuille-imprimersheet-printImprime la feuille active (sa zone d'impression seulement, sans l'interface du Studio ni le bouton Berkios AI) (VBA : ActiveSheet.PrintOut).
feuille-exporter-pdf "Fichier.pdf"sheet-export-pdfExporte la feuille active en PDF — uniquement sa zone d'impression, sous le nom du fichier indiqué (VBA : ExportAsFixedFormat xlTypePDF).
cellule-ecrire "Réf" valeurcellule-écrire, cell-writeÉcrit une valeur dans une cellule : « G7 » (feuille active) ou « FACTURE!G7 » (VBA : Range("G7") = …).
cellule-lire "Réf" "Résultat"cell-readLit la valeur d'une cellule dans la cible (VBA : x = Range("G7").Value).
cellule-vider "Plage"cell-clearVide le contenu d'une cellule ou d'une plage « G7:G10 » (VBA : ClearContents).
cellule-selectionner "Réf"cellule-sélectionner, cell-selectPlace la sélection sur une cellule (VBA : Range("G9").Select).
cellule-decaler "Réf" lignes colonnes "Résultat"cellule-décaler, cell-offsetAdresse de la cellule décalée de N lignes / M colonnes (VBA : cellule.Offset(0, 1)).
table-compter "Table" "Colonne" "Résultat"table-countNombre de valeurs numériques d'une colonne de tableau (VBA : WorksheetFunction.Count).
table-maximum "Table" "Colonne" "Résultat"table-maxPlus grande valeur d'une colonne de tableau (VBA : WorksheetFunction.Max).
table-minimum "Table" "Colonne" "Résultat"table-minPlus petite valeur d'une colonne de tableau (VBA : WorksheetFunction.Min).
table-somme "Table" "Colonne" "Résultat"table-sumSomme d'une colonne de tableau (VBA : WorksheetFunction.Sum).
table-moyenne "Table" "Colonne" "Résultat"table-averageMoyenne d'une colonne de tableau (VBA : WorksheetFunction.Average).
table-ligne-ajouter "Table" "Résultat"table-row-addAjoute une ligne vide à la fin du tableau ; le résultat identifie la ligne (VBA : ListRows.Add).
table-cellule-ecrire "Table" "Ligne" colonne valeurtable-cellule-écrire, table-cell-writeÉcrit dans une colonne (numéro à partir de 1, ou nom) de la ligne identifiée par table-ligne-ajouter (VBA : ligne.Range(1, 2) = …).
table-chercher "Table" "Colonne" valeur "Résultat"table-findAdresse de la première cellule de la colonne égale à la valeur (sans tenir compte de la casse), vide si absente (VBA : Range.Find(…, Lookat:=xlWhole) puis Is Nothing).
ligne-supprimer "Réf"row-deleteSupprime la ligne entière de la cellule indiquée (VBA : cellule.EntireRow.Delete).
enregistrement-prochaine-ligne "Feuille" "Résultat"record-nextNuméro de la prochaine ligne libre de la feuille, sous le dernier enregistrement (VBA : Cells(Rows.Count, 1).End(xlUp).Row + 1).
enregistrement-compter "Feuille" "Résultat"record-countNombre d'enregistrements (lignes de données sous la ligne d'en-têtes) de la feuille.
enregistrement-chercher "Feuille" "Résultat" "Colonne" valeur ["Colonne2" valeur2 …]record-findNuméro de la première ligne dont les colonnes valent les valeurs données (casse, accents et espaces ignorés), vide si aucune : sert à détecter un doublon (VBA : CountIf / Range.Find).
enregistrement-ajouter "Feuille" "Résultat" "Colonne" valeur ["Colonne2" valeur2 …]record-addÉcrit une nouvelle ligne sous le dernier enregistrement (formules des colonnes non données recopiées, totaux étendus) ; le résultat est son numéro de ligne.
enregistrement-ajouter-unique "Feuille" "Résultat" "ColonneUnique" valeur ["Colonne2" valeur2 …]record-add-uniqueComme enregistrement-ajouter, mais refuse (erreur « Doublon ») si la première colonne donnée contient déjà cette valeur.
enregistrement-modifier "Feuille" ligne "Colonne" valeur ["Colonne2" valeur2 …]record-updateModifie les colonnes données de la ligne indiquée (numéro obtenu par enregistrement-chercher) ; les autres cellules sont conservées.
enregistrement-supprimer "Feuille" lignerecord-deleteSupprime la ligne indiquée : les lignes du dessous remontent et les formules sont ajustées (VBA : Rows(n).Delete).
table-trier "Table" "Colonne" croissant|decroissantxl-table-sortTrie le tableau sur une colonne (nom, numéro ou cellule d'en-tête « B9 ») (VBA : Range.Sort).
table-filtrer "Table" colonne valeurxl-table-filterFiltre le tableau : ne garde que les lignes dont la colonne (numéro ou nom) égale la valeur (VBA : AutoFilter champ, critère).
table-filtre-effacer "Table"table-filter-clearRetire le filtre du tableau et réaffiche toutes les lignes (VBA : AutoFilter.ShowAllData).
classeur-enregistrerworkbook-saveEnregistre le classeur (VBA : ThisWorkbook.Save).
classeur-chemin "Résultat"workbook-pathDossier du classeur (VBA : ThisWorkbook.Path).
application-quitterapplication-quitFerme l'application (VBA : Application.Quit).
application-visible vrai|fauxapp-visibleAffiche ou cache la fenêtre de l'application (VBA : Application.Visible = …).
application-option "barre-formule|barre-etat|ruban|onglets" vrai|fauxapp-optionAffiche ou masque un élément de l'environnement (VBA : DisplayFormulaBar, DisplayStatusBar, ExecuteExcel4Macro "SHOW.TOOLBAR…").
interface-fermerinterface-closeFerme l'interface courante (VBA : Unload Me) ; l'événement « quand fermeture » reçoit $modefermeture = 1.

Sécurité & identité (10)

SyntaxeAliasRôle
masquer-identifiant "Source" "Résultat"mask-identifierMasque une partie d’un identifiant.
valider-email-strict "Source" "Résultat"validate-email-strictVérifie la structure d’une adresse e-mail.
normaliser-telephone "Source" "Résultat"normalize-phoneConserve les chiffres et un éventuel + initial.
force-mot-de-passe "Source" "Résultat"password-strengthÉvalue la robustesse indicative d’un mot de passe.
generer-code "Résultat" [longueur]generate-codeGénère un code alphanumérique aléatoire.
anonymiser-texte "Source" "Résultat"redact-textRemplace les séquences numériques longues par des astérisques.
valider-url "Source" "Résultat"validate-urlVérifie une URL HTTP ou HTTPS.
extraire-domaine "Source" "Résultat"extract-domainExtrait le domaine d’une adresse URL ou e-mail.
generer-identifiant "Résultat"generate-uuidGénère un identifiant UUID v4.
egalite-securisee "A" "B" "Résultat"secure-equalCompare deux chaînes sans arrêt au premier caractère différent.

Géographie & cartographie (10)

SyntaxeAliasRôle
valider-latitude "Source" "Résultat"validate-latitudeVérifie une latitude entre -90 et 90.
valider-longitude "Source" "Résultat"validate-longitudeVérifie une longitude entre -180 et 180.
distance-haversine "Lat1" "Lon1" "Lat2" "Lon2" "Résultat"haversine-distanceCalcule une distance approximative en kilomètres.
degres-en-radians "Source" "Résultat"degrees-to-radiansConvertit les degrés en radians.
radians-en-degres "Source" "Résultat"radians-to-degreesConvertit les radians en degrés.
direction-cardinale "Azimut" "Résultat"cardinal-directionConvertit un azimut en direction cardinale.
formater-coordonnees "Latitude" "Longitude" "Résultat"format-coordinatesFormate une paire de coordonnées.
quadrant-coordonnees "Latitude" "Longitude" "Résultat"coordinate-quadrantIndique les hémisphères Nord/Sud et Est/Ouest.
aire-rectangle "Largeur" "Hauteur" "Résultat"rectangle-areaCalcule l’aire d’un rectangle.
perimetre-rectangle "Largeur" "Hauteur" "Résultat"rectangle-perimeterCalcule le périmètre d’un rectangle.

Santé & laboratoire (10)

SyntaxeAliasRôle
indice-masse-corporelle "PoidsKg" "TailleM" "Résultat"body-mass-indexCalcule l’IMC sans produire de diagnostic.
surface-corporelle "PoidsKg" "TailleCm" "Résultat"body-surface-areaEstime la surface corporelle avec Mosteller.
temperature-fahrenheit "Celsius" "Résultat"convert-celsius-fahrenheitConvertit Celsius en Fahrenheit.
temperature-celsius "Fahrenheit" "Résultat"convert-fahrenheit-celsiusConvertit Fahrenheit en Celsius.
calculer-debit "VolumeMl" "DureeHeures" "Résultat"calculate-flow-rateCalcule un débit ml/h ; vérifier par un professionnel.
convertir-mg-g "SourceMg" "Résultat"mg-to-gConvertit les milligrammes en grammes.
convertir-g-mg "SourceG" "Résultat"g-to-mgConvertit les grammes en milligrammes.
dans-intervalle "Valeur" "Min" "Max" "Résultat"in-reference-rangeTeste l’appartenance à un intervalle fourni.
age-en-annees "DateNaissance" "Résultat"age-in-yearsCalcule l’âge révolu depuis AAAA-MM-JJ.
pression-format "Systolique" "Diastolique" "Résultat"format-blood-pressureFormate une valeur systolique/diastolique sans interprétation clinique.

Finance & comptabilité (10)

SyntaxeAliasRôle
calculer-tva "Base" "Taux" "Résultat"calculate-vatCalcule le montant de TVA.
prix-hors-taxe "TTC" "Taux" "Résultat"price-before-taxRetrouve le montant HT depuis TTC et un taux.
prix-ttc "HT" "Taux" "Résultat"price-with-taxCalcule un prix toutes taxes comprises.
appliquer-remise "Prix" "Taux" "Résultat"apply-discountApplique une remise en pourcentage.
taux-marge "Cout" "Vente" "Résultat"margin-rateCalcule le taux de marge sur coût.
coefficient-multiplicateur "Cout" "Vente" "Résultat"markup-factorCalcule le coefficient de vente.
interet-simple "Capital" "Taux" "Annees" "Résultat"simple-interestCalcule un intérêt simple.
capitalise "Capital" "Taux" "Periodes" "Résultat"annual-compoundCalcule un capital avec intérêts composés annuels.
mensualite-simple "Capital" "Mois" "Résultat"monthly-installmentEstime une mensualité sans intérêts.
solde-debit-credit "Debit" "Credit" "Résultat"debit-credit-balanceCalcule débit moins crédit.

Sciences & statistiques (10)

SyntaxeAliasRôle
stat-mediane "Résultat" valeur1 valeur2 …stat-medianCalcule la médiane des valeurs.
variance-population "Résultat" valeur1 valeur2 …population-varianceCalcule la variance de population.
ecart-type-population "Résultat" valeur1 valeur2 …population-standard-deviationCalcule l’écart-type de population.
etendue-statistique "Résultat" valeur1 valeur2 …statistical-rangeCalcule max moins min.
score-z "Valeur" "Moyenne" "EcartType" "Résultat"z-scoreCalcule un score z.
interpolation-lineaire "X" "X1" "Y1" "X2" "Y2" "Résultat"linear-interpolationInterpole linéairement entre deux points.
sinus-degres "Angle" "Résultat"sine-degreesSinus d’un angle exprimé en degrés.
cosinus-degres "Angle" "Résultat"cosine-degreesCosinus d’un angle exprimé en degrés.
logarithme-naturel "Source" "Résultat"natural-logCalcule le logarithme naturel.
exponentielle-naturelle "Source" "Résultat"natural-exponentialCalcule l’exponentielle.

Réseau & API (10)

SyntaxeAliasRôle
encoder-parametre-url "Source" "Résultat"url-encodeEncode une valeur pour un paramètre URL.
decoder-parametre-url "Source" "Résultat"url-decodeDécode une valeur URL.
encoder-base64-texte "Cible"base64-text-encodeEncode du texte en Base64 UTF-8.
decoder-base64-texte "Cible"base64-text-decodeDécode du Base64 UTF-8.
extraire-parametre-url "URL" "Nom" "Résultat"url-query-paramLit un paramètre de query string.
extraire-hote-url "URL" "Résultat"url-hostExtrait l’hôte d’une URL.
extraire-chemin-url "URL" "Résultat"url-pathExtrait le chemin d’une URL.
joindre-url "Base" "Chemin" "Résultat"join-urlAssemble une URL sans double slash intermédiaire.
valider-json "Source" "Résultat"validate-jsonVérifie qu’un texte est un JSON valide.
formater-json "Source" "Résultat"pretty-jsonFormate un JSON avec indentation.

Documents & publication (10)

SyntaxeAliasRôle
document-compter-mots "Source" "Résultat"document-word-countCompte les mots d’un texte.
document-compter-lignes "Source" "Résultat"document-line-countCompte les lignes d’un texte.
compter-phrases "Source" "Résultat"sentence-countCompte les phrases selon la ponctuation usuelle.
creer-slug "Source" "Résultat"create-slugTransforme un titre en slug URL.
echapper-csv "Source" "Résultat"escape-csvÉchappe un champ CSV entre guillemets.
echapper-markdown "Source" "Résultat"escape-markdownÉchappe les caractères Markdown principaux.
retirer-html "Source" "Résultat"strip-htmlRetire les balises HTML et décode les espaces usuels.
normaliser-paragraphes "Source" "Résultat"normalize-paragraphsUniformise les retours à la ligne et espaces.
document-initiales "Source" "Résultat"document-initialsExtrait les initiales des mots.
temps-lecture "Source" "Résultat"reading-timeEstime le temps de lecture à 200 mots/minute.

Commerce & logistique (10)

SyntaxeAliasRôle
generer-reference-produit "Nom" "Résultat"generate-skuConstruit une référence produit courte à partir du nom.
valider-ean13 "Source" "Résultat"validate-ean13Vérifie la clé de contrôle EAN-13.
valider-quantite "Source" "Résultat"validate-quantityVérifie une quantité non négative.
stock-apres-mouvement "Stock" "Entree" "Sortie" "Résultat"stock-after-movementCalcule le stock après entrées et sorties.
total-commande "Resultat" prix1 quantite1 prix2 quantite2 …order-totalCalcule le total de paires prix/quantité.
nombre-colis "Quantite" "ParColis" "Résultat"package-countCalcule le nombre de colis nécessaires.
poids-total "PoidsUnitaire" "Quantite" "Résultat"total-weightCalcule le poids total.
volume-colis "Longueur" "Largeur" "Hauteur" "Résultat"package-volumeCalcule le volume cubique.
seuil-reapprovisionnement "VenteJour" "DelaiJours" "StockSecurite" "Résultat"reorder-thresholdCalcule un seuil de réapprovisionnement.
benefice-brut "Ventes" "Cout" "Résultat"gross-profitCalcule le bénéfice brut.

Éducation & pédagogie (10)

SyntaxeAliasRôle
convertir-note "Note" "Sur" "Bareme" "Résultat"convert-gradeConvertit une note vers un autre barème.
moyenne-notes "Résultat" note1 note2 …grade-averageCalcule une moyenne de notes.
mention-note "NoteSur20" "Résultat"grade-mentionAttribue une mention indicative sur 20.
admis-ou-echec "Note" "Seuil" "Résultat"pass-or-failTeste si une note atteint le seuil.
rang-simple "Note" "ListeNotes" "Résultat"simple-rankCalcule le rang d’une note dans une liste séparée par virgules.
progression-pedagogique "Faits" "Total" "Résultat"learning-progressCalcule un taux de progression.
trimestre-date "Date" "Résultat"date-trimesterDétermine le trimestre civil d’une date.
semaine-annee "Date" "Résultat"week-of-yearRetourne le numéro ISO de semaine.
jours-entre-dates "Date1" "Date2" "Résultat"days-between-datesNombre de jours entre deux dates ISO.
note-lettre "NoteSur100" "Résultat"letter-gradeConvertit une note sur 100 en lettre A-F.

Agriculture & environnement (10)

SyntaxeAliasRôle
rendement-hectare "RecolteKg" "SurfaceHa" "Résultat"yield-per-hectareCalcule le rendement en kg/ha.
densite-semis "Graines" "SurfaceM2" "Résultat"seeding-densityCalcule le nombre de graines par m².
taux-humidite "MasseHumide" "MasseSeche" "Résultat"moisture-rateCalcule l’humidité sur base humide en pourcentage.
pluie-millimetres "SurfaceM2" "HauteurMm" "Résultat"rainfall-volumeEstime le volume de pluie en litres.
dose-engrais "DoseKgHa" "SurfaceHa" "Résultat"fertilizer-doseCalcule la masse totale d’engrais.
plants-par-rang "LongueurM" "EspacementCm" "Résultat"plants-per-rowEstime le nombre de plants par rang.
classer-ph "ValeurPH" "Résultat"classify-phClasse un pH en acide, neutre ou basique.
co2-facteur-emission "MasseKg" "Facteur" "Résultat"co2-emission-factorMultiplie une masse par un facteur d’émission fourni.
besoin-eau-plante "LitresParM2" "SurfaceM2" "Résultat"plant-water-needCalcule un besoin d’eau total.
taux-perte-recolte "RecolteInitiale" "RecoltePerdue" "Résultat"harvest-loss-rateCalcule le taux de perte en pourcentage.

Génération aléatoire (Randomy) (50)

SyntaxeAliasRôle
graine-aleatoire ["valeur"]random-seedFixe la graine du générateur (entier ou texte, comme random.seed) : la suite de tirages devient reproductible. Sans valeur, graine du système.
etat-aleatoire "Résultat"random-getstateÉcrit l'état complet du générateur (équivalent de random.getstate) pour le restaurer plus tard.
restaurer-etat-aleatoire "Etat"random-setstateRestaure un état produit par etat-aleatoire (random.setstate) : les tirages suivants sont rejoués à l'identique.
flottant-aleatoire "Résultat"random-floatNombre décimal dans [0, 1[ sur 53 bits (random.random).
bits-aleatoires "Résultat" nombre-de-bitsrandom-bitsEntier de k bits aléatoires, de 1 à 8192 bits (random.getrandbits).
octets-aleatoires "Résultat" nombre-d-octetsrandom-bytesOctets aléatoires écrits en hexadécimal, de 0 à 4096 octets (random.randbytes).
pile-ou-face "Résultat"coin-flipÉcrit « pile » ou « face ».
entier-aleatoire "Résultat" minimum maximumrandom-intEntier de minimum à maximum, bornes incluses (random.randint) ; erreur si l'intervalle est vide.
intervalle-aleatoire "Résultat" fin | "Résultat" début fin [pas]random-rangeEntier pris dans range(début, fin, pas), fin exclue (random.randrange).
entier-sous "Résultat" bornerandom-belowEntier de 0 à borne − 1 (borne ≥ 1).
binomiale-aleatoire "Résultat" [n] [p]random-binomialNombre de succès sur n essais de probabilité p (random.binomialvariate ; n = 1 et p = 0,5 par défaut).
booleen-aleatoire "Résultat" [probabilité]random-booltrue avec la probabilité donnée (0 à 1, 0,5 par défaut), sinon false.
reel-aleatoire "Résultat" a brandom-uniformNombre décimal uniforme entre a et b (random.uniform).
triangulaire-aleatoire "Résultat" [minimum] [maximum] [mode]random-triangularLoi triangulaire (random.triangular ; 0, 1 et milieu par défaut).
gauss-aleatoire "Résultat" [mu] [sigma]random-gaussLoi normale, méthode de Box-Muller (random.gauss ; mu = 0, sigma = 1 par défaut).
normale-aleatoire "Résultat" [mu] [sigma]random-normalvariateLoi normale, méthode de Kinderman-Monahan (random.normalvariate).
lognormale-aleatoire "Résultat" mu sigmarandom-lognormvariateLoi log-normale (random.lognormvariate).
exponentielle-aleatoire "Résultat" [lambda]random-expovariateLoi exponentielle de taux lambda, non nul (random.expovariate ; 1 par défaut).
gamma-aleatoire "Résultat" alpha betarandom-gammavariateLoi gamma, alpha et beta > 0 (random.gammavariate).
beta-aleatoire "Résultat" alpha betarandom-betavariateLoi bêta sur [0, 1], alpha et beta > 0 (random.betavariate).
pareto-aleatoire "Résultat" alpharandom-paretovariateLoi de Pareto (random.paretovariate).
weibull-aleatoire "Résultat" alpha betarandom-weibullvariateLoi de Weibull : échelle alpha, forme beta (random.weibullvariate).
vonmises-aleatoire "Résultat" mu kapparandom-vonmisesvariateLoi de von Mises, angle en radians entre 0 et 2π (random.vonmisesvariate).
choix-aleatoire "Résultat" "a, b, c"random-choiceUn élément pris au hasard dans la liste (random.choice).
choix-multiples-aleatoires "Résultat" "a, b, c" k ["poids"]random-choicesk éléments tirés avec remise, poids facultatifs séparés par des virgules (random.choices).
echantillon-aleatoire "Résultat" "a, b, c" krandom-samplek éléments distincts tirés sans remise (random.sample).
melanger-aleatoire "Liste"random-shuffleMélange la liste en place avec la graine courante (random.shuffle) ; contrairement à liste-melanger, le résultat est reproductible.
echantillon-intervalle "Résultat" début fin krandom-sample-rangek entiers distincts de début à fin (bornes incluses), dans l'ordre du tirage.
permutation-aleatoire "Résultat" nrandom-permutationLes entiers de 1 à n dans un ordre aléatoire (n ≤ 10 000).
tirer-element "Liste" "Résultat"draw-itemRetire un élément au hasard de la liste et l'écrit dans le résultat (tirage sans remise, ex. tombola).
melanger-texte "Cible"shuffle-textMélange les caractères du texte.
liste-entiers-aleatoires "Résultat" n minimum maximumrandom-int-listListe de n entiers tirés avec remise entre minimum et maximum.
lancer-de "Résultat" [faces]roll-dieLance un dé (6 faces par défaut).
lancer-des "Résultat" "2d6+3"roll-diceLance des dés en notation NdF±M et écrit le total (1 à 100 dés).
tirer-carte "Résultat"draw-cardTire une carte d'un jeu de 52 cartes (ex. « Dame de cœur »).
tirage-loto "Résultat" k maximumlottery-drawk numéros distincts de 1 à maximum, triés (ex. 6 parmi 49).
choix-pondere "Résultat" "a, b, c" "1, 2, 7"weighted-choiceUn élément choisi selon des poids (un poids par élément).
lettres-aleatoires "Résultat" n [minuscules|majuscules|mixtes]random-lettersSuite de n lettres sans accent.
chiffres-aleatoires "Résultat" nrandom-digitsSuite de n chiffres, zéros initiaux conservés.
chaine-aleatoire "Résultat" n ["alphabet"]random-stringTexte de n caractères tirés dans l'alphabet donné (lettres et chiffres par défaut).
hexa-aleatoire "Résultat" nrandom-hexSuite de n chiffres hexadécimaux.
nom-aleatoire "Résultat"random-namePrénom et nom fictifs, pour des données de démonstration.
uuid-reproductible "Résultat"seeded-uuidUUID v4 tiré avec la graine courante (reproductible ; pour un identifiant imprévisible, utiliser generer-identifiant).
couleur-aleatoire "Résultat"random-colorCouleur hexadécimale #rrggbb.
ip-aleatoire "Résultat"random-ipv4Adresse IPv4 d'allure publique (réseaux privés, loopback et multicast exclus), pour des données de test.
date-aleatoire "Résultat" "début" "fin"random-dateDate entre deux dates incluses (AAAA-MM-JJ).
heure-aleatoire "Résultat" ["HH:mm" "HH:mm"]random-timeHeure HH:mm, éventuellement entre deux heures données (toute la journée par défaut).
entier-securise "Résultat" minimum maximumsecure-intEntier tiré avec le générateur cryptographique du système : non reproductible, insensible à la graine.
jeton-aleatoire "Résultat" [octets]secure-tokenJeton hexadécimal cryptographique (16 octets par défaut), non reproductible.
mot-de-passe-aleatoire "Résultat" [longueur]random-passwordMot de passe cryptographique de 8 à 128 caractères (16 par défaut) avec minuscule, majuscule, chiffre et symbole.

Entrées / Sorties (input / output) (12)

SyntaxeAliasRôle
entree "Question" "Résultat" [texte|entier|nombre|date] ["défaut"]entrée, inputDemande une saisie typée (redemandée tant qu'elle est invalide) ; vide si annulé.
entree-entier "Question" "Résultat" ["défaut"]entrée-entier, input-intDemande un nombre entier.
entree-nombre "Question" "Résultat" ["défaut"]entrée-nombre, input-numberDemande un nombre (virgule ou point décimal).
entree-date "Question" "Résultat" ["défaut"]entrée-date, input-dateDemande une date et la renvoie au format AAAA-MM-JJ.
entree-oui-non "Question" "Résultat"entrée-oui-non, input-yesnoPose une question oui/non ; le résultat vaut true ou false.
entree-choix "Question" "Résultat" "a|b|c"entrée-choix, input-choiceDemande une valeur parmi une liste de choix séparés par \| (redemandée si absente de la liste).
sortie "Texte"outputAffiche un message de sortie.
sortie-erreur "Texte"output-errorAffiche un message d'erreur.
sortie-succes "Texte"sortie-succès, output-successAffiche un message de réussite.
sortie-ajouter "Cible" "Texte"output-appendAjoute une ligne à la fin du texte d'un composant (journal, console).
sortie-effacer "Cible"output-clearVide le texte d'un composant de sortie.
sortie-formater "Modèle %1 %2" "Résultat" valeur1 valeur2…output-formatCompose un texte : %1, %2… sont remplacés par les valeurs ; %% donne un %.

API REST (moteur EasyAPI) (19)

SyntaxeAliasRôle
api-creer "Nom" ["/prefixe"] ["1.0.0"]api-createCommence la définition d'une API REST (efface la précédente et ses données d'essai) ; préfixe /api et version 1.0.0 par défaut.
api-ressource "produits" "nom:texte*, prix:nombre, sku:texte*!"api-resourceDéclare une ressource et ses 6 routes (liste, lecture, création, remplacement, modification, suppression) avec validation. Types : texte, nombre, entier, booleen, date, email ; * = obligatoire, ! = unique.
api-route "GET" "/salut/:nom" "Bonjour {nom}" [statut] [public]api-add-routeAjoute une route personnalisée. La réponse est du JSON si elle commence par { ou [, sinon du texte ; {param}, {query.x}, {body.x}, {method}, {path} et {date} sont remplacés à chaque requête.
api-serveur ["https://api.monsite.com"]api-baseDésigne un serveur d'API distant : api-appeler envoie alors ses requêtes (HTTP) à ce serveur au lieu d'appeler l'API d'essai du Studio. Sans argument : retour à l'API locale. Le même script sert ainsi à l'essai et à la production.
api-donnees "produits" '[{"nom":"Stylo","sku":"A1"}]'api-seedInsère des enregistrements de démonstration (tableau JSON) dans une ressource, validés comme par POST ; tout ou rien.
api-securiser [oui|non]api-secureExige une clé d'API (en-tête X-API-Key ou Authorization: Bearer) pour toute requête, sauf /health, /openapi.json et les routes « public ».
api-cle "nom" "lecture|ecriture|admin" "Résultat"api-keyCrée une clé d'API et écrit son secret (affiché une seule fois ; jamais exporté). lecture = GET, ecriture = + POST/PUT/PATCH/DELETE.
api-cors "https://monsite.com, https://app.monsite.com"api-set-corsAutorise des origines navigateur précises (jamais de joker implicite ; « * » doit être écrit). Sans argument : aucune origine.
api-limite 120api-rate-limitLimite le nombre de requêtes par minute et par client (0 = aucune) ; au-delà : 429 avec Retry-After.
api-appeler "Résultat" "GET" "/api/produits" ["corps JSON"] ["cle"]api-callAppelle l'API et écrit le corps de la réponse : sans réseau (même routeur que le serveur exporté) ou, après api-serveur, par HTTP vers ce serveur. Lisez le code HTTP avec api-statut.
api-statut "Résultat"api-statusÉcrit le code HTTP de la dernière réponse d'api-appeler (200, 201, 404, 422…).
api-entete "Résultat" "Location"api-headerÉcrit un en-tête de la dernière réponse d'api-appeler (texte vide s'il est absent).
api-routes "Résultat"api-list-routesListe toutes les routes de l'API (« METHODE /chemin »), séparées par des virgules.
api-openapi "Résultat"api-export-openapiÉcrit la description OpenAPI 3.1 de l'API (JSON), prête pour Swagger UI, Postman ou la génération de clients.
api-exporter-serveur "Résultat"api-export-serverÉcrit le code d'un serveur Node.js autonome (un fichier, aucune dépendance, données en JSON sur disque, clés lues dans EASYAPI_KEYS). Enregistrez-le avec telecharger.
api-exporter-spec "Résultat"api-export-specÉcrit la définition de l'API en JSON (sans données ni secrets), pour la sauvegarder ou la partager.
api-importer-spec "Source"api-import-specRecharge une définition produite par api-exporter-spec (les données d'essai repartent à zéro ; les clés sont à recréer).
api-compter "Résultat" "produits"api-countNombre d'enregistrements d'une ressource dans les données d'essai.
api-vider ["produits"]api-clearVide les données d'essai d'une ressource (ou de toutes), sans toucher à la définition de l'API.

Chemins (golib : pathlib et os.path de Python) (37)

SyntaxeAliasRôle
chemin-element "Résultat" "Chemin"pathlib-nameDernier élément du chemin (Path.name) : « c.txt » pour a/b/c.txt ; vide pour « / » ou « C:\ ».
chemin-radical "Résultat" "Chemin"pathlib-stemNom sans son dernier suffixe (Path.stem) : « archive.tar » pour archive.tar.gz.
chemin-suffixe "Résultat" "Chemin"pathlib-suffixDernier suffixe avec son point (Path.suffix) : « .gz » pour archive.tar.gz ; vide pour .bashrc ou « a. ».
chemin-suffixes "Résultat" "Chemin"pathlib-suffixesTous les suffixes, séparés par des virgules (Path.suffixes) : « .tar, .gz ».
chemin-parent "Résultat" "Chemin"pathlib-parentChemin du dossier parent (Path.parent) : a/b pour a/b/c ; « . » pour un nom seul ; la racine reste la racine.
chemin-parents "Résultat" "Chemin"pathlib-parentsTous les ancêtres, du plus proche au plus lointain, séparés par des virgules (Path.parents).
chemin-parties "Résultat" "Chemin"pathlib-partsParties du chemin séparées par des virgules (Path.parts) ; l'ancre (« / » ou « C:\ ») vient en premier.
chemin-lecteur "Résultat" "Chemin"pathlib-driveLecteur Windows (« C: » ou \\serveur\partage) ; vide pour un chemin POSIX.
chemin-racine "Résultat" "Chemin"pathlib-rootRacine du chemin (« / » ou \) ; vide pour un chemin relatif.
chemin-ancre "Résultat" "Chemin"pathlib-anchorLecteur et racine ensemble (Path.anchor) : « C:\ », « / ».
chemin-est-absolu "Résultat" "Chemin"pathlib-is-absolutetrue si le chemin est absolu (Path.is_absolute) ; sous Windows, le lecteur ET la racine sont requis.
chemin-est-reserve "Résultat" "Chemin"pathlib-is-reservedtrue si le dernier élément est un nom réservé de Windows (NUL, CON, COM1, LPT1…) ; toujours false en POSIX.
chemin-en-posix "Résultat" "Chemin"pathlib-as-posixChemin avec des / (Path.as_posix) : C:\a\b devient C:/a/b.
chemin-en-windows "Résultat" "Chemin"pathlib-as-windowsChemin au format Windows (str(PureWindowsPath(p))) : a/b devient a\b.
chemin-uri "Résultat" "Chemin"pathlib-as-uriAdresse file:// d'un chemin absolu, caractères spéciaux encodés en UTF-8 (Path.as_uri).
chemin-profondeur "Résultat" "Chemin"pathlib-depthNombre d'éléments du chemin sans l'ancre (a/b/c donne 3).
chemin-partie "Résultat" "Chemin" positionpathlib-partUne partie du chemin : 1 = la première (l'ancre s'il y en a une), -1 = la dernière (Path.parts[i]).
chemin-assembler "Résultat" "a" "b" ["c" …]pathlib-joinpathAssemble des morceaux (Path.joinpath, opérateur /) : un morceau absolu remplace ce qui précède ; séparateurs réduits.
chemin-avec-nom "Résultat" "Chemin" "nouveau.ext"pathlib-with-nameRemplace le dernier élément (Path.with_name) ; erreur si le chemin n'a pas de nom ou si le nom contient un séparateur.
chemin-avec-radical "Résultat" "Chemin" "radical"pathlib-with-stemRemplace le nom sans suffixe et garde l'extension (Path.with_stem).
chemin-avec-suffixe "Résultat" "Chemin" ".ext"pathlib-with-suffixRemplace (ou ajoute) le suffixe (Path.with_suffix) ; un texte vide le retire ; il doit commencer par un point.
chemin-relatif-a "Résultat" "Chemin" "Base" [remonter]pathlib-relative-toChemin relatif à Base (Path.relative_to) ; erreur s'il n'est pas dessous, sauf avec « remonter » (walk_up) qui produit des « .. ».
chemin-est-sous "Résultat" "Chemin" "Base"pathlib-is-relative-totrue si le chemin est Base ou se trouve dessous (Path.is_relative_to) ; comparaison lexicale.
chemin-correspond "Résultat" "Chemin" "*.txt"pathlib-matchMotif comparé depuis la droite (Path.match) : * ? [abc] [!abc] ; un motif absolu doit couvrir tout le chemin. Insensible à la casse sous Windows.
chemin-correspond-tout "Résultat" "Chemin" "**/*.py"pathlib-full-matchMotif sur le chemin entier (Path.full_match de Python 3.13) ; ** remplace zéro, un ou plusieurs éléments.
chemin-egaux "Résultat" "A" "B"pathlib-equalstrue si les deux chemins sont identiques une fois lus comme chemins (séparateurs répétés et « ./ » ignorés ; sans casse sous Windows).
chemin-normaliser "Résultat" "Chemin"pathlib-normpathRéduit « . », « .. » et les séparateurs répétés (os.path.normpath) : a/b/../c devient a/c. Sans toucher au disque.
chemin-absolu "Résultat" "Chemin" ["Base"]pathlib-absoluteChemin absolu normalisé (os.path.abspath) ; Base vaut le répertoire courant réglé par chemin-aller (« / » au départ).
chemin-relatif-de "Résultat" "Chemin" ["Début"]pathlib-relpathChemin relatif depuis Début, avec des « .. » si besoin (os.path.relpath) ; Début vaut le répertoire courant.
chemin-commun "Résultat" "a" "b" ["c" …]pathlib-commonpathPlus long dossier commun (os.path.commonpath) ; erreur si l'on mélange absolus et relatifs, ou des lecteurs différents.
chemin-scinder-ext "$racine" "$extension" "Chemin"pathlib-splitextSépare l'extension (os.path.splitext) : a/b.tar.gz donne a/b.tar et .gz ; .bashrc n'a pas d'extension.
chemin-scinder "$tete" "$queue" "Chemin"pathlib-splitSépare en dossier et dernier élément (os.path.split) ; la queue est vide si le chemin finit par un séparateur.
chemin-queue "Résultat" "Chemin"pathlib-basenameDernier élément (os.path.basename) ; vide si le chemin finit par un séparateur (contrairement à chemin-element).
chemin-tete "Résultat" "Chemin"pathlib-dirnameTout sauf le dernier élément (os.path.dirname) ; contrairement à chemin-parent, ne produit jamais « . ».
chemin-style auto/posix/windowspathlib-styleChoisit la lecture des chemins : auto (par défaut) reconnaît Windows à un lecteur, un chemin UNC ou des \ sans /, sinon POSIX.
chemin-courant "Résultat"pathlib-cwdRépertoire courant virtuel utilisé par chemin-absolu et chemin-relatif-de (« / » au départ ; Path.cwd).
chemin-aller "Chemin"pathlib-chdirChange le répertoire courant virtuel (os.chdir sans disque) : un chemin relatif s'ajoute à l'ancien ; le résultat est normalisé.

Matrices & vecteurs (calcul matriciel et vectoriel) (31)

SyntaxeAliasRôle
matrice-identite "Résultat" nmatrix-identityMatrice identité n × n (1 sur la diagonale, 0 ailleurs). Une matrice s'écrit « 1, 2; 3, 4 » : valeurs séparées par des virgules, lignes par des points-virgules.
matrice-nulle "Résultat" lignes colonnes [valeur]matrix-zerosMatrice de lignes × colonnes remplie de zéros (ou de la valeur donnée), au plus 200 × 200.
matrice-diagonale "Résultat" "1, 2, 3"matrix-diagonalMatrice carrée dont la diagonale est le vecteur donné.
matrice-dimensions "Résultat" "Matrice"matrix-sizeDimensions au format « lignesxcolonnes » (ex. 2x3).
matrice-transposee "Résultat" "Matrice"matrix-transposeTransposée : les lignes deviennent des colonnes.
matrice-somme "Résultat" "A" "B"matrix-addSomme de deux matrices de mêmes dimensions.
matrice-difference "Résultat" "A" "B"matrix-subtractDifférence A − B de deux matrices de mêmes dimensions.
matrice-produit "Résultat" "A" "B"matrix-multiplyProduit matriciel A × B (colonnes de A = lignes de B). Un vecteur colonne « 1; 2 » s'utilise comme une matrice.
matrice-echelle "Résultat" "Matrice" facteurmatrix-scaleMultiplie chaque valeur de la matrice par le facteur.
matrice-puissance "Résultat" "Matrice" nmatrix-powerPuissance entière d'une matrice carrée (de −1024 à 1024 ; négatif = puissance de l'inverse ; 0 = identité).
matrice-determinant "Résultat" "Matrice"matrix-determinantDéterminant d'une matrice carrée (élimination de Gauss à pivot partiel).
matrice-inverse "Résultat" "Matrice"matrix-inverseInverse d'une matrice carrée ; erreur si elle n'est pas inversible.
matrice-trace "Résultat" "Matrice"matrix-traceTrace : somme de la diagonale d'une matrice carrée.
matrice-rang "Résultat" "Matrice"matrix-rankRang : nombre de lignes linéairement indépendantes.
matrice-echelonnee "Résultat" "Matrice"matrix-rrefForme échelonnée réduite (Gauss-Jordan) : pivots égaux à 1, zéros au-dessus et en dessous.
matrice-resoudre "Résultat" "A" "B"matrix-solveRésout le système A·x = B (A carrée, B un vecteur) et écrit x ; erreur si la solution n'est pas unique.
matrice-ligne "Résultat" "Matrice" numéromatrix-rowUne ligne de la matrice (la première porte le numéro 1).
matrice-colonne "Résultat" "Matrice" numéromatrix-columnUne colonne de la matrice, écrite comme un vecteur (la première porte le numéro 1).
matrice-element "Résultat" "Matrice" ligne colonnematrix-getValeur située à la ligne et à la colonne indiquées (numérotées à partir de 1).
matrice-definir-element "Matrice" ligne colonne valeurmatrix-setRemplace une valeur de la matrice contenue dans la cible (composant ou variable), en place.
matrice-est "Résultat" "Matrice" carree|symetrique|diagonale|identite|orthogonale|inversible|nullematrix-isÉcrit true ou false selon que la matrice possède la propriété demandée (tolérance 1e-9).
vecteur-somme "Résultat" "u" "v"vector-addSomme de deux vecteurs de même taille. Un vecteur s'écrit « 1, 2, 3 ».
vecteur-difference "Résultat" "u" "v"vector-subtractDifférence u − v de deux vecteurs de même taille.
vecteur-echelle "Résultat" "u" facteurvector-scaleMultiplie chaque composante du vecteur par le facteur.
vecteur-produit-scalaire "Résultat" "u" "v"vector-dotProduit scalaire u · v (vecteurs de même taille).
vecteur-produit-vectoriel "Résultat" "u" "v"vector-crossProduit vectoriel u × v de deux vecteurs à 3 composantes.
vecteur-norme "Résultat" "u" [p|inf]vector-normNorme du vecteur : euclidienne par défaut (p = 2), p = 1 pour la somme des valeurs absolues, « inf » pour la plus grande.
vecteur-normaliser "Résultat" "u"vector-normalizeVecteur de même direction et de norme 1 ; erreur pour le vecteur nul.
vecteur-angle "Résultat" "u" "v" [degres|radians]vector-angleAngle entre deux vecteurs non nuls, de 0 à 180° (degrés par défaut).
vecteur-projection "Résultat" "u" "v"vector-projectProjection orthogonale de u sur v ; erreur si v est nul.
vecteur-distance "Résultat" "u" "v"vector-distanceDistance euclidienne entre deux points donnés par leurs coordonnées.

Audio (parole, notes, mélodies, sons) (20)

SyntaxeAliasRôle
bip [fréquence] [durée_ms]beepÉmet un court signal sonore.
dire "Texte" ["fr-FR"] [vitesse]speakLit le texte à voix haute (synthèse vocale), dans la langue et à la vitesse indiquées (0,25 à 4 ; 1 par défaut). Sans son de l'hôte, agit sur le classeur Excel importé (VBA : Application.Speech.Speak).
dire-arreterspeak-stopInterrompt la lecture vocale en cours et vide la file d'attente.
dire-en-cours "Résultat"speakingtrue si une lecture vocale est en cours, sinon false.
voix-liste "Résultat"voice-listListe les voix de synthèse disponibles, séparées par des virgules.
voix-choisir "nom"voice-setChoisit la voix de dire : un nom (ou un morceau de nom) de voix-liste. Texte vide : voix par défaut.
volume-son 0 à 100audio-volumeRègle le volume général : bip, notes, mélodies, voix et lecteur de sons (comme audio volume).
note-jouer "La4" [durée_ms] [sinus|carre|triangle|dent-de-scie]note-playJoue une note (La4, do#3, Sib5, C, ou une fréquence en Hz) pendant 10 à 10 000 ms (250 par défaut).
melodie-jouer "do4:200, re4:200, silence:100, mi4:400" [forme]melody-playJoue une suite de notes note:durée (silence:durée pour une pause) : 256 notes et 60 secondes au plus.
note-frequence "Résultat" "La4"note-frequencyÉcrit la fréquence en hertz d'une note : La4 = 440, do4 = 261.6256 (do central, La4 = 440 Hz).
sons-arreteraudio-stop-allCoupe tout : parole, notes, mélodies et sons en lecture.
son-jouer "adresse ou data:" [boucle]sound-playJoue un fichier son (mp3, wav, ogg…) : adresse web, data:, ou composant sélecteur de fichier. Remplace le son en cours ; « boucle » vrai le répète. Partage le lecteur de la commande audio (audio.temps, audio.etat…).
son-pausesound-pauseMet le son en cours en pause (reprise avec son-reprendre).
son-reprendresound-resumeReprend le son mis en pause là où il s'était arrêté.
son-arretersound-stopArrête le son et revient au début.
son-aller-a secondessound-seekPlace la lecture à la position indiquée, en secondes.
son-position "Résultat"sound-positionPosition de lecture en secondes, nombre exploitable dans un calcul (audio.temps donne mm:ss).
son-duree "Résultat"sound-durationDurée du son en secondes, nombre exploitable dans un calcul (audio.duree donne mm:ss ; 0 si inconnue).
son-boucle vrai|fauxsound-loopActive ou coupe la répétition du son en cours.
son-etat "Résultat"sound-stateÉtat de la lecture, comme audio.etat : « En lecture », « En pause », « Arrêté » ou « Aucun fichier ».

Exemples

Formulaire d'inscription validé

quand clic
  obligatoire "Nom" "Courriel"
  est-email "Courriel" "$ok"
  verifier "$ok" = "true" "Adresse e-mail invalide."
  capitaliser "Nom"
  identifiant "$numero"
  message "Bienvenue {Nom} — dossier {$numero}"

Facture avec TVA et mise en forme

quand clic
  calculate "Total HT" "Prix" * "Quantité"
  pourcent-de "$tva" "Total HT" 16
  somme "Total TTC" "Total HT" "$tva"
  monnaie "Total TTC" "USD" "en-US"

Échéance à 30 jours et statut coloré

quand clic
  aujourdhui "$today"
  copier "$today" "Échéance"
  ajouter-jours "Échéance" 30
  ecart-jours "$today" "Échéance" "$reste"
  si "$reste" < 7 alors couleur "Statut" "#d32f2f"
  sauf-si "$reste" < 7 alors couleur "Statut" "#2e7d32"

Confirmation avant suppression

quand clic
  confirmer "Supprimer ce client ?" "$ok"
  si "$ok" = "true" alors clear "Nom"
  si "$ok" = "true" alors message "Client supprimé."

Répéter et attendre

quand clic
  repeter 3 fois bip 880 80
  attendre 1 s
  message "Terminé"

Application complète : examples/code-composants/11-carnet-depenses-100-commandes.berkios.json.