Editeur de scripts

Siril contient un éditeur de scripts, accessible via le menu Scripts. Celui-ci fournit un éditeur de code riche en fonctionnalités adapté à l'écriture de fichiers de script Siril comme de scripts Python. Le thème (clair / sombre) de l'éditeur de script suit celui défini dans la boîte de dialogue principale Préférences. La fenêtre principale de l'éditeur est présentée ci-dessous :

éditeur de script

Pour la plupart des fonctionnalités, des raccourcis existent, aussi standardisés que possible.

Menu Fichier

Le menu Fichier offre les fonctionnalités habituelles :

  • Nouveau : commence un nouveau fichier. S'il y a du texte non enregistré dans le tampon, une boîte de dialogue de confirmation sera présentée pour donner à l'utilisateur la possibilité d'enregistrer son travail précédent.

  • Ouvrir : ouvre un fichier depuis le disque. S'il y a du texte non enregistré dans le tampon, une boîte de dialogue de confirmation sera présentée pour donner à l'utilisateur la possibilité d'enregistrer son travail précédent.

  • Fichiers récents : fournit un accès rapide pour ouvrir les fichiers récents.

  • Enregistrer : enregistre le fichier actuel sous son nom de fichier existant. Si le fichier n'est pas encore enregistré, cela se comporte de la même manière qu'Enregistrer sous, en demandant un nom de fichier.

  • Enregistrer sous : enregistre le fichier actuel, en demandant le nom de fichier avec lequel l'enregistrer.

  • Fermer : ferme le fichier et la fenêtre de l'éditeur de script. S'il y a du texte non enregistré dans le tampon, une boîte de dialogue sera présentée pour donner à l'utilisateur la possibilité d'enregistrer son travail.

Les fichiers non enregistrés sont indiqués par un astérisque (*) à côté du nom de fichier dans la barre de titre. Lorsque les modifications sont enregistrées, l'astérisque disparaît.

Menu édition

Le menu Édition propose les fonctionnalités suivantes :

  • Annuler : annule la modification la plus récente du script. L'éditeur de script dispose d'un tampon d'annulation/rétablissement illimité.

  • Rétablir : rétabli l'opération la plus récemment annulée.

  • Couper : coupe la sélection actuelle vers le presse-papiers. Si aucune sélection n'est faite, la ligne actuelle entière est coupée.

  • Copier : copie la sélection actuelle vers le presse-papiers.

  • Coller : colle le contenu actuel du presse-papiers à la position du curseur.

  • Rechercher : présente la superposition de recherche qui fournit une capacité de recherche active. L'éditeur défilera jusqu'à la première occurrence du terme recherché au fur et à mesure de la saisie. Toutes les occurrences sont surlignées dans la vue de l'éditeur et dans la mini-carte, si elle est activée.

Menu Script

Le menu du script offre les fonctionnalités suivantes :

  • Exécuter : exécute le script actuel. Notez que ceci respecte la sélection actuelle du type de script (Fichier de script Siril / Script Python), et celle-ci doit être correcte pour le script que vous modifiez. Le type de script est automatiquement défini en fonction de l'extension du fichier lors du chargement d'un fichier, mais vous devez le définir ici si vous n'avez pas encore enregistré votre script. Au démarrage, il est par défaut réglé sur Script Python. Notez qu'en raison d'un conflit de raccourci dans certains environnements de bureau, en plus du raccourci indiqué F5, Ctrl-R fonctionne également pour exécuter le script actuel.

  • Scripts Python : définit le mode de script actuel sur Scripts Python. Cela affecte la coloration syntaxique ainsi que la manière dont le script est exécuté.

  • Fichiers de script Siril : définit le mode de script actuel sur Fichiers de script Siril. Cela affecte la coloration syntaxique ainsi que la manière dont le script est exécuté.

  • Activer les arguments de test : affiche un champ sous la vue principale du script. Celui-ci peut être utilisé pour saisir des arguments qui seront passés au script lors de son exécution depuis l'éditeur. Les scripts Python peuvent accepter des arguments pour définir des paramètres : cela fournit une alternative à l'utilisation d'une interface graphique pour définir des paramètres. Même si une interface graphique est fournie dans un script, la possibilité de passer des arguments signifie qu'il peut être utilisé comme une commande Siril via la commande pyscript, et peut donc lui-même être utilisé depuis d'autres scripts.

  • Activer le mode de débogage Python : ce bouton bascule modifie le comportement du module sirilpy pour prendre en charge le débogage. Lorsque le SirilInterface est créé au début du script, une boîte d'information modale apparaîtra montrant l'ID de processus de l'interpréteur python, qui peut être utilisé pour connecter un débogueur. De plus, tous les délais d'attente de l'interface seront réglés sur None, pour permettre une inspection prolongée de l'état d'un script en cours d'exécution.

    Notez que les arguments de test n'ont aucun effet sur les scripts de type Fichier de script Siril, car ceux-ci ne sont pas capables de gérer des arguments.

Préférences

Le menu des préférences propose les options suivantes :

  • Mise en évidence de la syntaxe : lorsque cette option est activée, Siril utilisera une coloration syntaxique adaptée au langage pour mettre en évidence des aspects de votre script.

  • Activer l'indicateur de marge droite : lorsque cette option est activée, Siril affichera un indicateur de marge droite à un numéro de colonne défini. Ceci est utile pour aider à éviter des lignes de code excessivement longues et maintenir la lisibilité.

  • Position de la marge droite : ceci présentera une petite boîte de dialogue permettant à l'utilisateur de définir le numéro de colonne de l'indicateur de marge droite évoqué ci-dessus. La valeur par défaut est 80.

  • Activer la correspondance des parenthèses : lorsque cette option est activée, si le curseur se trouve sur une parenthèse, l'éditeur mettra en évidence la parenthèse correspondante. Cela peut être utile pour éviter les erreurs de correspondance de parenthèses.

  • Afficher les numéros de ligne : lorsque cette option est activée, les numéros de ligne sont affichés à gauche de la vue de l'éditeur. Cela peut aider au débogage et à la navigation dans le code.

  • Afficher les marqueurs de ligne : lorsque cette option est activée, des marqueurs de ligne sont affichés à gauche de la vue de l'éditeur. Aucune fonctionnalité n'utilise actuellement les marqueurs de ligne, mais la possibilité de les afficher est fournie pour prendre en charge de futurs développements.

  • Surligner la ligne en cours : lorsque cette option est activée, la ligne actuelle est surlignée dans la vue de l'éditeur.

  • Activer l'indentation automatique : lorsque cette option est activée, en appuyant sur Entrée, la nouvelle ligne commencera au même niveau d'indentation que la ligne précédente.

  • Indentation sur la tabulation : lorsque cette option est activée, appuyer sur tabulation avec une sélection couvrant plusieurs lignes indentera toutes les lignes sélectionnées d'un niveau, et appuyer sur maj-tabulation les désindentera d'un niveau.

  • Activer le retour arrière intelligent : lorsque cette option est activée, appuyer sur retour arrière avec des espaces à gauche du curseur supprimera les espaces jusqu'au niveau d'indentation précédent.

  • Début / Fin intelligents : lorsque cette option est activée, Début et Fin déplaceront le curseur respectivement vers le premier ou le dernier caractère non-espace de la ligne, plutôt que vers le tout premier ou tout dernier caractère de la ligne.

  • Afficher les espaces et les tabulations : lorsque cette option est sélectionnée, les espaces et les tabulations seront affichés avec des caractères visibles (points centrés pour les espaces, flèches orientées vers la droite pour les tabulations).

  • Afficher les nouvelles lignes : lorsque cette option est sélectionnée, les retours à la ligne seront affichés avec des caractères visibles (flèches courbées vers le bas et la gauche).

  • Afficher la mini-carte : lorsque cette option est sélectionnée, une mini-carte sera affichée sur le côté de la vue de l'éditeur, facilitant la navigation et la localisation des occurrences de Rechercher.

Aide

Le menu d'aide fournit une aide sur l'API pour les fichiers de script Siril comme pour les scripts Python.

  • Référence de l'API Python : ceci ouvre la page de l'API Python du manuel en ligne dans le navigateur par défaut.

  • Référence des commandes : ceci ouvre la page de référence des commandes du manuel en ligne dans le navigateur par défaut, qui constitue essentiellement l'API des fichiers de script Siril.