Un Script MedinTux est un bloc de texte qui comporte des instructions situées entre deux doubles crochets, exemple :
{{::Intitule ( Importation Texte OCR ) }}
qui seront exécutées ou résolues et remplacées par le texte résultant de leur exécution. Si le texte résultant est vide alors l'instruction sera effacée ne modifiant pas alors le texte où elle est insérée. Ces scripts servent à effectuer toutes sortes d'opérations, comme produire des documents automatisés ou des menus intelligents.
Les scripts de MedinTux sont un vrai langage de Macros, et permettent à l'utilisateur d'inventer les fonctions dont il a besoin et qui ne sont pas présentes dans le programme. Nous appellerons et désignerons ces blocs de texte par les termes suivants (équivalents) :
Les Script MedinTux sont récursifs, ce qui signifie qu'il est possible d'imbriquer plusieurs champs de fusion, les instructions les plus imbriquées seront résolues avant les autres. Dans l'exemple suivant :
$start_titleModifier l'image avec The Gimp$end_title\ {{SAVE LAST IMAGE NAME=../../tmp/}}\ {{:: exe_process (WaitEnd , /usr/bin/gimp ,$ToAbsPath ../../tmp/{{GET LAST IMAGE NAME}})}}\ {{:: replace_image ({{GET LAST IMAGE NAME}}, ../../tmp/{{GET LAST IMAGE NAME}},-1,-1,keep_src_file_Name remove_src ) }}
Le champ de fusion {{GET LAST IMAGE NAME}} sera résolu avant les autres, et remplacé par le nom de la dernière image enregistrée.
Les Script MedinTux sont orientés texte tout le texte situé en dehors des doubles crochets {{ }} ou situé en dehors des deux balises $start_title et $end_title est conservé et sera ajouté au résultat final y compris les retours à la ligne (la partie située entre $start_title et $end_title sera affichée comme infobulle).
Exemple :
Nom : {{NOM PRENOM PATIENT}} Sexe: {{SEXE PATIENT}} Né(e) : {{DATE NAISSANCE PATIENT}} Age : {{AGE PATIENT ABREGE}} ans
pourra ressembler à cela après résolution ou exécution des macros.
Nom : TARTEMPION MARCEL Sexe: Masculin Né(e) : 01-01-2001 Age : 7 ans
Invalidation des fins de lignes Si le caractère \ est placé en fin de ligne, le retour chariot suivant cette ligne sera ignoré. Cela permet d'écrire sur plusieurs lignes un script long pour lequel l'on ne veut pas insérer de retours à la ligne.
Caractère d'échappement Si le caractère \ est placé avant un caractère, exemple \(, le caractère le suivant sera interprété comme un caractère de texte et non comme un caractère de structure d'instruction. Dans notre exemple, la parenthèse ouvrante ne sera pas interprétée comme un début de liste de paramètres de fonction.
Les en-têtes et de pieds de pages d'impression accessibles par le gestionnaire d'utilisateurs gest_user,
les instructions contenues dans ces documents sont résolues lors de l'incorporation des en-têtes et de pieds de pages au cours d'une impression.
Lors de la résolution et exécution d'un script la variable $SCRIPT_STATUS accessible dans un script avec {{VAR=$SCRIPT_STATUS}} peut prendre les valeurs suivantes :
Le nom de la rubrique peut prendre les valeurs suivantes selon la rubrique dans laquelle st exécutée la macro : Observation, Prescription, Documents, Identification.
les instructions contenues dans ces documents sont résolues lors de l'incorporation du document dans une rubrique de MedinTux.
accessible par le bouton dans le gestionnaire de dossier médical drtux.
Les instructions contenues dans ces documents sont résolues lors de l'incorporation dans un document après exécution de l'option de menu correspondant au script.
Ces instructions seront exécutées et résolues lors du clic sur une des options. Les fichiers de configuration se trouvent dans drtux/bin/Ressources/Menus
Aactionné lors du démarrage du programme après le chargement des documents, c'est un script, programmable comme les autres. Cela permet d'ajouter de nombreuses fonctions intelligentes à effectuer lors du démarrage du programme, comme :
Il se situe dans drtux/bin/Ressources/Macro de debut. Si ce répertoire n'existe pas, il n'y aura pas de menu d'entrée.
Le menu de sortie (actionné par toute action de sortie du programme, comme Alt+F4, Fichier→ Quitter, etc.) est un script, programmable comme les autres. Cela permet d'ajouter de nombreuses fonctions intelligentes à la sortie du programme, comme :
Il se situe dans drtux/bin/Ressources/Macro de sortie. Si ce répertoire n'existe pas, il n'y aura pas de menu de sortie.
Inventaire des instructions de scripts (remettre en page l'inventaire. Trouver un solution pour une présentation claire pour le lecteur.)