IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Voir le flux RSS

Au Pied Levé - À Main Levée

I-2.3.1. Environnement de Développement Intégré (EDI)

Noter ce billet
par , 01/04/2020 à 10h45 (265 Affichages)
APL-AML est une monographie fragmentée en plusieurs billets pour des raisons de volume.
Un billet SYNOPSIS et un billet SOMMAIRE agrègent tous les billets du blog via des liens hypertextes.

■ ■ ■ SOMMAIRE DU BILLET ■ ■ ■

  1. Les éditeurs de texte
    • L’éditeur de texte vi (unix)
    • L’éditeur de texte vim et emacs (unix, linux)
    • L’éditeur batch sed (unix)
    • Le traitement de texte Sprint (ms/dos)

  2. L’EDI du SGBD Informix
    • Les outils permettant d’intervenir sur la BDD
    • L’accès à la BDD via un système de menus (ISQL)
    • Le langage SQL
    • Le compilateur d’états (saceprep)
    • Le compilateur d’écrans (sformbld)
    • Le système de menus

  3. Les Autres outils
    • pcl2pdf
    • Mailer Bull mutt (AIX)
    • Shell utilisant pcl2pdf et mutt
Un environnement de développement intégré est un ensemble d'outils destinés à programmer dans un langage donné. Il permet de manipuler les outils de programmation depuis une interface graphique simplifiée. Il existe au moins autant d'environnements de développement intégré qu'il existe de langages de programmation et les IDE sont souvent dédiés à un langage donné.

Un IDE comporte typiquement une interface graphique pour lancer les différents outils, un éditeur pour le code source, un compilateur, un débogueur, ainsi que, souvent, un outil permettant de construire les interfaces graphiques des logiciels. L'éditeur offre les fonctionnalités ordinaires d'un éditeur de texte, le compilateur permet au programmeur de vérifier les erreurs de syntaxe du code source, et le débogueur permet de vérifier les erreurs de code.


1. Les éditeurs de texte

L’éditeur de texte vi (unix)

vi (prononcer les lettres en anglais « vi aille », abréviation d'éditeur pleine page) est un éditeur de texte en mode texte plein écran écrit par Bill Joy en 1976 sur une des premières versions de la distribution Unix BSD. Il est présent d'office sur la majorité des systèmes Unix actuels, souvent sous la forme d'un clone du logiciel vi originel. Entièrement en mode texte, chacune des actions se fait à l’aide de commandes texte.

Comme vi ne fonctionne pas en multi-fenêtrage, il peut être utilisé sur un terminal quelconque pour l'édition d'un grand nombre de formats de fichiers.

Sans être un traitement de texte à proprement parler car il n'est pas conçu pour traiter des textes formatés, cet éditeur permet de saisir et d'éditer un texte. C’est l’outil de travail du développeur.

Il existe une version de vi en lecture seule, appelée view. Lorsque l’on ouvre un fichier sous view, on peut utiliser les commandes vi, mais on ne peut pas écrire (ou sauvegarder). Cette version permet de consulter un fichier vi sans risquer de le modifier par erreur.

Utilisation de l’éditeur vi : ICI

Principales commandes de vi : ICI

vim et Emacs (unix, linux)

Deux autres puissants éditeurs de texte en console sont à connaître :

  • vim : (VI iMproved, version améliorée de vi) est largement répandu et généralement disponible par défaut sur la plupart des OS basés sur Unix, comme Linux. Il s'agit d'une version améliorée de l'un des plus anciens éditeurs en console : vi.

  • Emacs : (Editing MACroS) développé en 1976 par Richard Stallman, le fondateur du projet GNU. Cet éditeur concurrent a lui aussi bien des atouts. On le retrouve plus spécifiquement sous Linux mais il est rarement installé par défaut (un petit apt-get suffit, toutefois). Il peut être complété par toute une série de plugins qui lui permettent de faire navigateur web, lecteur audio… Bref, c'est un peu un outil à tout faire.

sed (unix)

sed "Stream EDitor" autrement dit "éditeur de flux", est un éditeur non interactif, cette commande permet d'appliquer un certain nombre de commandes sur un fichier puis d'en afficher le résultat (sans modification du fichier de départ) sur la sortie standard.

Syntaxe :

sed [-n] [-e commande] [-f fichier de commandes] [fichier]
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
-n  Écrit seulement les lignes spécifiées (par l'option /p) sur la sortie standard

-e  Permet de spécifier les commandes à appliquer sur le fichier. 
    Cette option est utile lorsqu'on applique plusieurs commandes. 
    Afin d'éviter que le shell interprète certains caractères, il faut mieux encadrer la commande avec des ' ou des ".

-f  Les commandes sont lues à partir d'un fichier.
Sprint (ms/dos)

Sprint n’est pas un éditeur de texte mais le traitement de texte mode caractère commercialisé par Borland dans les années 80.

Son intérêt dans le développement est double :

  • Il permet de créer facilement des formulaires de qualité bureautique, notamment des formulaires comprenant des tableaux, ce qui évite d’avoir à programmer l’impression des données fixes.

  • Il permet d’éditer du texte de façon verticale, ce que ne fait pas vi.

L’utilisation de Sprint nécessite évidemment de transférer les fichiers utilisés du monde unix au monde ms/dos et inversement.

Création de formulaires

Certains programmes d’édition peuvent être très complexes en termes de traitement d’informations fixes (tableaux, texte aligné/justifié, par exemple) et d’informations variables. L’instruction « PRINT FILE chemin_du_formulaire » du compilateur d’état « ace » simplifie la programmation en traitant l’ensemble des informations fixes d’un état sous forme d’un fichier-formulaire imprimable.

Un simple traitement de texte mode caractère des années 80 permet de créer sous MS/DOS un tel formulaire de qualité bureautique très convenable qui peut d’ailleurs éviter dans certains cas l’utilisation de pré-imprimés. Imprimer avec Informix des tableaux complexes, du texte aligné/justifié en différentes polices de tailles différentes, en variant l’interligne… devient facile.

En sauvegardant le formulaire en tant que fichier « .prn » contenant les séquences d’Escape du langage PCL 5, il suffit ensuite d’y apporter avec Sprint lui-même quelques modifications rudimentaires en début et en fin de fichier :

  1. Sous MS/DOS :

    Tout d’abord, il faut ajouter un Carriage-return à la fin de chaque ligne du fichier « .prn » car sinon le fichier transféré sous Unix ne fera qu’un seul item. Il peut alors dépasser la taille maxi et surtout il devient ingérable sous l’éditeur « Vi ». L’opération peut se faire de différentes façons, soit avec le traitement de texte lui-même qui joue alors le rôle d’un excellent éditeur de texte, soit en convertissant le fichier MS/DOS en fichier Unix (en deux clics avec Notepad++).

  2. Sous MS/DOS ou Unix :

    Il convient d’intervenir en début de fichier pour dire à l’imprimante de mémoriser la position du curseur « [Esc]&f0S » et lui signifier un interligne nul « [Esc]&l0C » de façon à annihiler les Carriage-return ajoutés qui se traduiraient par des sauts de ligne. Les sauts de ligne sont déjà assurés par des commandes PCL de mouvement de l’index vertical « [Esc]&a+nnV ».

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    [Esc]&l8c0e69F[Esc]&aR9[Esc]&l0O[Esc]&l0C
    
    [Esc]&f0S(10U(s0p12h10v0s0b3T[Esc]&a+190V(10U(s0p12h10v0s0b3T[Esc]&a2820H╔(10U(s0p12h10v0s3b3TFournisseur[Esc] (10U(s0p12h10v0s0b3T══════════════════════════════════╗
    [Esc]&a+20V(10U(s0p12h10v0s0b3T [Esc]&a266H(10U(s1p14v0s0b4148TXXXXXXXXXXXXXXXXXXX
    [Esc]&a+80V(10U(s1p14v0s0b4148T[Esc]&a2820H(10U(s0p12h10v0s0b3T║[Esc]&a5580H║
    [Esc]&a+60V(10U(s0p12h10v0s0b3T 
    …/…
  3. Toujours sous MS/DOS ou Unix :

    Il reste en fin de fichier à remplacer les commandes PCL de saut de page et réinitialisation de l’imprimante (générées par le traitement de texte) par la commande « Rappel de la position du curseur ([Esc]&f1S) ».

    …/…

    [Esc]&f1S

    Après l’instruction « PRINT FILE chemin_du_formulaire », le formulaire est donc imprimé et le curseur de l’imprimante repositionné au point d’origine du formulaire. Il ne reste plus au programme qu’à imprimer les variables éventuellement mises en forme par quelques commandes PCL de base (gras, italique, souligné, etc.) et pourquoi pas, à apporter quelques raffinements esthétiques simples grâce au langage GPL/2, comme griser ou encadrer une zone de texte.

    Le principe peut bien sûr se sophistiquer pour imprimer en recto-verso sur format A4 ou A3.

  4. Langage HP GL-2 :

    Avec un minimum de HP GL-2, on peut facilement ajouter un peu de fantaisie à la qualité bureautique que permet déjà le langage HP PCL 5/6 avec ses commandes usuelles.

    La séquence ci-dessous :

    • génère un rectangle,
    • grise l'intérieur de ce rectangle,
    • imprime en défonce un texte en police Univers,
    • remet le type de remplissage en noir pour mettre fin au remplissage "fantaisie" précédent,
    • réinitialise la police principale.

    Défonce : remplissage des caractères du texte en blanc uni.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    PRINT COLUMN  20, ESC, "%0B", "IN", "SP1",
                      "PU2200,6600", "EA5680,6860", ESC, "%0A",
                      ESC, "*c1030a80b45g2P", ESC, "*v0n1O", ESC, "*v1T",
                      ESC, "(s1p14v3b4101T",
                      ESC, "*p+60y+60X", "ORDRE DE MISSION ",
                      ESC, "(s1p12v3b4101T",
                      " (modification)", ESC, "*v0T"
    PRINT             ESC, "(s0p10v0b3T"
    PCL2PDF : Si l'on est amené à utiliser ce logiciel pour générer un fichier PDF, il faut savoir qu'il gère mal cette séquence. Le rectangle apparaît dissocié de l'espace grisé. Par contre, le rendu du grisé est d'une bien meilleure qualité.

  5. À propos des séquences d'échappement HP PCL 5/6

    Par souci de lisibilité de ses développements, on peut être tenté d'enrichir une variable de séquences d'échappement (voir le code ci-après) puis d'imprimer cette variable. Il suffit de prévoir une longueur de variable incluant le nombre de caractères que représentent ces séquences d'échappement.

    Ainsi, on peut prévoir d'imprimer un nom en caractères gras suivi du prénom en police maigre. Jusqu'à la version V7.23 d'Informix, cela ne posait pas de problème. La version suivante V7.24 s'est mise à réagir bizarrement, l'impression d'une variable contenant un caractère Escape a pour conséquence d'imprimer la variable en doublant sa longueur + 1 caractère. Il convient donc de se méfier et d'imprimer les séquences d'échappement directement, si le cas se présente.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    {================================}  DEFINE  {==================================}
    {}                                                                            {}
    {}    VARIABLE v_nom_naiss   CHAR(48)                                         {}
    {}    VARIABLE v_nom_usage   CHAR(48)                                         {}
    {}                                                                            {}
    {}    VARIABLE ESC           CHAR(1)                                          {}
    {}    VARIABLE NEED_LINES    INTEGER                                          {}
    {}    VARIABLE NOPAGE        INTEGER                                          {}
    {}    VARIABLE TOP_OF_PAGE   SMALLINT                                         {}
    {}                                                                            {}
    {==================================}  END  {===================================}
     
    {================================}  OUTPUT  {==================================}
    {}                                                                            {}
    {     REPORT TO PRINTER                                                        }
    {}    REPORT TO PIPE "cat > ${LOGNAME}.prt"                                   {}
    {}    TOP    MARGIN 0                                                         {}
    {}    BOTTOM MARGIN 0                                                         {}
    {}    LEFT   MARGIN 0                                                         {}
    {}    PAGE   LENGTH 90                                                        {}
    {}    TOP OF PAGE "^L"                                                        {}
    {}                                                                            {}
    {==================================}  END  {===================================}
     
    .../...
     
    {------------------------------}  ON EVERY ROW  {------------------------------}
     
    {--------------------------  TRAITEMENT FIN DE PAGE  --------------------------}
     
    {------------------------  TRAITEMENT EN-TETE DE PAGE  ------------------------}
     
    {------------------------  TRAITEMENT  LIGNE COURANTE  ------------------------}
     
    LET v_nom_naiss = ESC, "(s3B", pec_nom_naiss CLIPPED,
                      ESC, "(s0B", 1 SPACE, pec_prenom CLIPPED
     
    IF  pec_civilite   = "MME"
    AND pec_nom_naiss IS NOT NULL
    AND pec_nom_naiss <> pec_nom_usage
    THEN LET v_nom_usage = "épouse ",
                           ESC, "(s3B", pec_nom_usage CLIPPED, ESC, "(s0B"
    ELSE LET v_nom_usage = ESC, "(s3B", ESC, "(s0B"
     
    .../...
     
    PRINT v_nom_naiss
    PRINT v_nom_usage
     
    {-------------------------------  ON LAST ROW  --------------------------------}
     
    {===================================}  END  {==================================}
    Dans l'exemple proposé ci-dessus, l'impression de v_nom_naiss et v_nom_usage prévue sur 38 caractères n'imprime bien que 38 caractères en V7.23 mais ajoute 39 espaces avec Informix V7.24 sur AIX.

  6. Les bords supérieur et inférieur de la page

    Il semble que lorsque l'on renseigne un nombre de lignes supérieur à zéro pour la Marge supérieure, cela impose une marge de bas de page du même nombre de lignes. L'INDISPENSABLE POUR LASERJET dit à ce sujet que le Bord inférieur est automatiquement défini d'après le nombre de lignes, le Bord supérieur étant défini.

    Afin de pouvoir imprimer sur toute la page, il convient d’imposer une Marge supérieure valorisée à zéro et de programmer un Saut vertical ou un SKIP n LINES avant d'imprimer la première ligne sinon, la première ligne risque d'être "écrêtée".

    Séquence d'échappement correspondant à la Marge supérieure :

    « ESC, "&l#E" » où (# = nombre de lignes de la marge supérieure).

    Sources d'information :

    • "Manuel Langage PCL" de HP,
    • "L'INDISPENSABLE POUR LASERJET" de la collection MARABOUT,
    • "Manuel d'utilisation Imprimante HP LaserJet IIISi",
    • "SPRINT"

    NB : Pour certaines séquences d'échappement, l'ordre d'apparition de ces séquences peut avoir de l'importance.


2. L’EDI du SGBD Informix

Les outils permettant d’intervenir sur la BDD

PERFORM : l’outil permet de créer instantanément un écran de saisie simple des données d’une table. L’esthétique sommaire de l’écran, bien que modifiable, n’est pas la priorité. L’écran suffit dans un premier temps au développeur pour saisir dans l’urgence les données d’une table de référence. Plus disponible, le développeur pourra revisiter cet écran destiné à lui-même ou aux gestionnaires afin de les rendre autonomes.

L’écran généré propose un menu (en anglais ou en français) permettant d’intervenir sur la BDD :

Query :
Affiche l’item suivant.
Next :
Affiche l’item suivant.
Previous :
Affiche l’item précédant.
Add :
Crée un item prêt à la saisie.
Update :
Modifie l’item affiché.
Remove :
Supprime l’item affiché.
Table :
Change de table active.
Screen :
Affiche l’écran suivant.
Current :
Affiche le nom de la table courante.
Master :
Change de table active en rendant accessible les données de la table « Maître ».
Detail :
Change de table active en rendant accessible les données de la table « Détail ».
Output :
Permet de sauvegarder dans un fichier ou à l’imprimante le contenu de l’écran.
Exit :
Quitte l’utilisation de l’écran.
Le système de menus (ISQL)

Modèle Organisationnel des Traitements (MOT)

Pour l’utilisateur et ses gestionnaires, le menu, c’est leur application, une simple icône sur le bureau de leur micro-ordinateur. Pour le développeur, ce sont deux tables du SGBD dont l’initialisation constitue le premier investissement offrant l’accès à la BDD.

Le système de menus structure, organise l'activité de l’entité métier et peut s’apparenter en cela au Modèle Organisationnel des Traitements d’un développement top-down.

Il transcrit la réalité de l’entité métier en intégrant progressivement les fonctionnalités nouvellement développées. Il ne fait que traduire en sous-menus l’organisation administrative de l’entité et en items les tâches des différentes procédures.

Système de menus Informix-SQL

Le système de menus Informix-SQL utilise 2 tables : sysmenus et sysmenuitems. La table sysmenus ne gère que les titres des menus. La table sysmenuitems gère les items des menus, lesquels activent, un écran, un shell, une requête SQL ou un autre menu.

La gestion des menus ne se réalise pas uniquement via l’interface écran d’ISQL. Un système de menus peut être composé de plusieurs sous-ensembles de menus identiques à une variable près (ou plusieurs).

C’est le cas de l’application Examens-Concours (Ex&co) pour laquelle il a été créé autant de sous-ensembles de menus qu’il y a d’examens-concours. Chaque sous-ensemble de menus se crée facilement en éditant les fichiers unload des tables sysmenus et sysmenuitems qu’il suffit ensuite de réinitialiser par une simple requête SQL.

C’est également le cas de l’application Formation Continue (OSMOSE) qui gère l’année scolaire en cours mais également l’année n+1 et un historique de quatre années n-1 à n-4. Chaque année de gestion utilise un sous-ensemble de menus agissant sur ses propres tables, ses propres écrans, ses propres requêtes SQL et ses propres shells.

Le langage SQL

Outre les requêtes classiques SQL suffixées « .sql », le langage SQL est à la base des compilateurs d’états et d’écrans.

Le compilateur d’états (saceprep)

Les fichiers sources sont suffixés « .ace » et les fichiers exécutables sont suffixés « .arc ».

Le compilateur d’écrans (sformbld)

Les fichiers sources sont suffixés « .per » et les fichiers exécutables sont suffixés « .frm ».

3. Les autres outils

pcl2pdf

Comme son nom l'indique, le logiciel "pcl2pdf" de Visual Software est un outil de conversion de fichiers PCL 5/6 en fichiers PDF.

Coordonnées :

Neil Geddes
Director
G-Futures Limited t/as Visual Software
E-mail: geddes@visual.co.uk
Internet: http://www.visual.co.uk
Pcl2pdf: http://www.visual.co.uk/pcl2pdf.asp

À savoir :

  • Il est possible que pcl2pdf ne sache toujours pas convertir certains caractères semi-graphiques, notamment les angles à remplacer par exemple par des points et les caractères semi-graphiques "complexes" à remplacer par des caractères semi-graphiques simples. Mais ce n'est peut-être pas le plus important. Le look des tableaux est un peu particulier, c'est tout.

  • À noter également une faiblesse mineure dans sa conversion de certaines séquences GPL/2. On s'adapte en étant moins exigeant. Il ne faut peut-être pas pousser trop loin l'utilisation du PCL 5/6, du GPL/2 et des caractères semi-graphiques. Neil avait promis de résoudre ces problèmes de caractères semi-graphiques mais le problème reste en suspens.

  • Bien sûr, avant d'exécuter pcl2pdf, il y a donc lieu d'exécuter une conversion de caractères du fichier d'impression pour résoudre ces petits problèmes de caractères semi-graphiques.

    Donc, conversion des fichiers sur AIX et transfert par FTP (en binaire) des PDF sur PC. Il est également possible de transférer sur PC des fichiers PCL et d'utiliser la version PC de pcl2pdf.

Mailer Bull mutt (AIX)

Introduction

Mutt est un petit mais très puissant mailer client basé sur du texte MIME. Mutt est hautement configurable et est bien adapté à l’utilisateur de messagerie puissante avec des fonctionnalités avancées comme les combinaisons de touches, les macros de clavier, courrier à filtrer, recherche d’expression régulière et un puissant moteur correspondant à la langue pour sélectionner les groupes de messages.

Mutt est Copyright (C) 1996-2000 Michael R. Elkins <me@cs.hmc.edu>et autres.

Ce programme est un logiciel libre, vous pouvez le redistribuer et/ou le modifier sous les termes de la GNU General Public License telle que publiée par la Free Software Foundation ; soit la version 2 de la licence, ou (à votre choix) toute version ultérieure.

Ce programme est distribué dans l’espoir qu’il sera utile, mais sans aucune garantie ; sans même la garantie implicite de qualité marchande ou d’adéquation à un usage particulier.

Voir la GNU General Public License pour plus de détails.

Vous devriez avoir reçu une copie de la licence publique générale GNU avec ce programme ;

Si non, ... </me@cs.hmc.edu>

Installation

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
  ┌────┐
 ┌┤mutt├──────────────────────────────────────────────────────────────────────┐
 │└────┘                                                                      │
 │Installation du logiciel MUTT version 1.2.5.1                               │
 │(la dernière version 1.4 ne passe pas sur les AIX en dessous de AIX 5).     │
 ├────────────────────────────────────────────────────────────────────────────┤
 │La syntaxe d'utilisation de la commande est :                               │
 │                                                                            │
 │mutt [-a fichier.joint] destinataire [destinataire_2 ...] \                 │
 │     < fichier_corps_du_msg                                                 │
 │                                                                            │
 │ou                                                                          │
 │                                                                            │
 │mutt -help ---> syntaxe complÞte (voir aussi /usr/local/doc/mutt/manual.txt)│
 │                                                                            │
 │On peut mettre autant de fichiers joints qu'on veut                         │
 │à concurrence de 1 Mo pour le total du message.                             │
 │                                                                            │
 │mutt [-a fichier_joint_1] [-a fichier_joint_2] \                            │
 │     destinataire [destinataire_2 ...] < fichier_corps_du_msg               │
 │                                                                            │
 │L'adresse de l'émetteur du message est masquée par la valeur indiquée dans  │
 │le fichier ~/.muttrc de l'utilisateur qui va soumettre la commande.         │
 │Dans notre cas, l'adresse indiquée est "dafor-stage@ac-creteil.fr".         │
 │                                                                            │
 │Par sécurité, ce fichier doit appartenir à root et avoir les droits 644.    │
 │                                                                            │
 │Voir l'exemple /concours/concours/isql/.muttrc).                            │
 │                                                                            │
 │Ce texte d'information est envoyé par la commande :                         │
 │                                                                            │
 │mutt -a LISEZMOI.PDF                     \                                  │
 │     -s"Essai 5 de difca"                \                                  │
 │     -c Francis.Monferran@ac-creteil.fr  \                                  │
 │        Gerard.Delalandre@ac-creteil.fr  < mutt_install.txt                 │
 └────────────────────────────────────────────────────────────────────────────┘ 

Syntaxe Mutt 1.2.5.1i (2000-07-28)

mutt [ -nRzZ ] [ -e <cmd> ] [ -F <fich> ] [ -m <type> ] [ -f <fich> ]

mutt [ -nx ] [ -e <cmd> ] [ -a <fich> ] [ -F <fich> ] [ -H <fich> ] [ -i <fich> ] [ -s <obj> ] [ -b <adr> ] [ -c <adr> ] <adr> [ ... ]

mutt [ -n ] [ -e <cmd> ] [ -F <fich> ] -p

mutt -v[v]

Options

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
  -a <fich>      attache un fichier … ce message
  -b <adresse>   spécifie une adresse … mettre en copie aveugle (BCC)
  -c <adresse>   spécifie une adresse … mettre en copie (CC)
  -e <commande>  spécifie une commande … ex‚cuter après l'initialisation
  -f <fich>      spécifie quelle boîte aux lettres lire
  -F <fich>      spécifie un fichier muttrc alternatif
  -H <fich>      spécifie un fichier de brouillon d'où lire les en-têtes
  -i <fich>      spécifie un fichier que Mutt doit inclure dans la réponse
  -m <type>      spécifie un type de boîte aux lettres par défaut
  -n             fait que Mutt ne lit pas le fichier Muttrc système
  -p             rappelle un message ajourné
  -R             ouvre la boîte aux lettres en mode lecture seule
  -s <obj>       spécifie un objet (entre guillemets s'il contient des espaces)
  -v             affiche la version et les d‚finitions de compilation
  -x             simule le mode d'envoi mailx
  -y             sélectionne une boîte aux lettres spécifiée dans votre liste ‘mailboxes'
  -z             quitte immédiatement s'il n'y a aucun nouveau message dans la boîe aux lettres
  -Z             ouvre le premier dossier contenant un nouveau message, quitte immédiatement s'il n'y en a pas
  -h             ce message d'aide

.muttrc

# Fichier /etc/muttrc ou ~/.muttrc
#
# Re-écriture du champ "From:" des messages émis :

my_hdr From: DAFOR-Stage <dafor-stage@ac-creteil.fr>

Shell utilisant pcl2pdf et mutt

Ce shell est un exemple réel d’utilisation des deux logiciels pcl2pdf et mutt dans une fonction récursive. Il est proposé dans les Annexes comme exemple pour sa fonction récursive dans le Billet : OSMOSE Shells

Son objectif est de convoquer des stagiaires. Leurs convocations sont envoyées par courriel au secrétariat de l’établissement dont ils dépendent. À charge au secrétariat d’imprimer ces convocations et au chef d’établissement de les signer puis de les transmettre aux intéressés.

La fonction s’exécute autant de fois qu’il y a de stagiaires inscrits au stage.

Deux autres shells quasi identiques permettent, l’un de missionner les formateurs et l’autre de convoquer les membres du jury à leurs travaux : Commission de sujet, Surveillance d’examen, Correction d’épreuves, Jury d’oral, Jury d’admission, etc.

I-2.3. Documentation et outils développeur

▲ I-2.2.4. La programmation mentale
► I-2.3.1. Environnement de Développement Intégré (EDI)
▼ I-2.3.2. AGL minimaliste

Envoyer le billet « I-2.3.1. Environnement de Développement Intégré (EDI) » dans le blog Viadeo Envoyer le billet « I-2.3.1. Environnement de Développement Intégré (EDI) » dans le blog Twitter Envoyer le billet « I-2.3.1. Environnement de Développement Intégré (EDI) » dans le blog Google Envoyer le billet « I-2.3.1. Environnement de Développement Intégré (EDI) » dans le blog Facebook Envoyer le billet « I-2.3.1. Environnement de Développement Intégré (EDI) » dans le blog Digg Envoyer le billet « I-2.3.1. Environnement de Développement Intégré (EDI) » dans le blog Delicious Envoyer le billet « I-2.3.1. Environnement de Développement Intégré (EDI) » dans le blog MySpace Envoyer le billet « I-2.3.1. Environnement de Développement Intégré (EDI) » dans le blog Yahoo

Mis à jour 24/02/2024 à 04h47 par APL-AML

Catégories
■ APL-AML , I- L’ART , I-2. Règles de réalisation