Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>SiraNew to Visual Studio Code? Get it now.
Sira

Sira

issadicko78

| (0) | Free
Language support for Sira mini-backends
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Sira — support VSCode

Coloration, complétion, diagnostics et formatage pour les mini-backends Sira.

Principe

L'extension possède la surface éditeur, et rien d'autre. Le parsing, le formatage et le catalogue des builtins viennent du binaire sira — il y a donc une seule implémentation de chacun, et elle ne peut pas diverger du langage.

La version précédente embarquait son propre parseur et sa propre liste de builtins en TypeScript. Les deux avaient dérivé : quatorze fonctions date.* existaient sans jamais être proposées.

Fonction Source
Diagnostics sira check -json
Formatage sira fmt -stdin
Complétion, survol, signatures sira builtins -json + une table de documentation
Coloration sira builtins -json, via npm run grammar
Complétion du contrat input() le littéral lui-même, lu dans le tampon
Plan du document lecture directe du tampon
Aller à la définition lecture directe du tampon

La grammaire portait la dernière liste écrite à la main. Elle avait dérivé de la même façon : problem n'était jamais coloré, et event l'était bien qu'aucun espace de noms de ce nom n'existe. npm run grammar la réécrit depuis le catalogue, et npm test échoue si elle s'en écarte.

Le contrat d'entrée

Un input() est un schéma écrit trois lignes plus haut, et c'est le seul que l'éditeur puisse connaître sans rien exécuter. Il sert dans les deux sens.

En l'écrivant. Les sections à la racine, puis les contraintes de chaque règle — mais seulement celles que le type déclaré admet :

let entree = input({
    query: { page: { type: "int", ▮ } }   // min, max, values — jamais minLen ni pattern
})

minLen sur un int est une erreur de build ; la proposer serait y avoir poussé. Le spec entier est lu, pas seulement ce qui précède le curseur : un type écrit après décide quand même.

En le lisant. Ce que le contrat produit se complète, typé :

Frappe Proposé
entree. params query headers body, avec le nombre de champs de chacune
entree.body. les champs déclarés, leur type et leur caractère facultatif
entree.body.adresse. les fields de l'objet
entree.headers[" les en-têtes déclarés, seule forme qui atteint un nom à trait d'union

Les champs non déclarés du corps passent aussi — un proxy relaie plus qu'il ne connaît — et ne sont donc pas proposés.

Aller à la définition

Cmd/Ctrl + clic résout quatre choses :

Sous le curseur Destination
Le chemin d'un import le fichier importé
L'alias d'un import le fichier importé
alias.membre le export let membre dans ce fichier
Un nom local son let, ou le paramètre de fn qui le lie

Un builtin ne résout vers rien : sa définition est en Go. La résolution des chemins reproduit module.resolveImport du langage — un saut qui atterrirait où le build ne regarde pas serait pire que pas de saut.

sira.json

Le manifeste est complété et vérifié dans l'éditeur : chaque clé porte sa description, residency propose ses deux valeurs, et une durée ou une taille mal écrite est soulignée.

Le schéma ne signale que ce que la plateforme ne peut pas honorer. Un limits.time illisible, un egress sans hôte ou une clé de trigger sans son kind: sont soulignés bien que le build les accepte : chacun est un réglage dont l'auteur n'apprendra jamais qu'il a été ignoré. À l'inverse, un prefix sans barre oblique de tête ne l'est pas — le moteur le monte au même endroit.

Prérequis

Le binaire sira doit être dans le PATH, ou son chemin indiqué dans le réglage sira.path.

sira -h

Réglages

Clé Défaut Effet
sira.path sira Chemin de l'exécutable.
sira.checkOnSave true Lance sira check à l'enregistrement.
sira.devAddress 127.0.0.1:8080 Adresse d'écoute de sira dev.

Le formatage à l'enregistrement est actif par défaut pour les fichiers .sira, sans modifier vos réglages globaux.

Formatage

sira fmt normalise l'indentation, les espaces et les guillemets. Il conserve vos retours à la ligne : il ne décide jamais où une instruction doit se couper.

Il refuse d'écrire ce qu'il ne peut pas prouver identique : littéral non terminé, délimiteur non fermé, ou flux de tokens modifié par la réécriture. À l'enregistrement, un fichier en cours de frappe est laissé intact.

Commandes

Sira: Construire le bundle, Vérifier le projet, Serveur de développement, Pousser vers le manager, Nouveau handler, Recharger le catalogue de builtins.

Développement

npm install
npm run compile
npm test

npm test compile, exerce les fournisseurs hors éditeur (test/harness.js bouchonne vscode), valide le schéma de sira.json, et vérifie que la grammaire n'a pas dérivé du catalogue. Sans le binaire sira, cette dernière étape se contente de le dire.

L'icône est un SVG : images/icon.svg est l'original, npm run icon en tire le PNG que la marketplace exige.

F5 ouvre une fenêtre d'extension. npm run package produit le .vsix.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft