Documentation pour ParM ParM signifie Parametrable Menu. ParM vous permet de construire vos propres menus de manière à pouvoir lancer tous les programmes de votre choix. ParM est particulièrement utile si vous possédez un disque dur avec des programmes situés dans les profondeurs des répertoires. Vous pourrez alors les lancer par une simple sélection de menu et donc sans avoir besoin d'ouvrir tous les répertoires succéssifs aussi bien sous CLI que sous WorkBench. Avec ParM, vous pouvez lancer vos programmes aussi bien en mode WorkBench qu'en mode CLI. L'avantage du mode WorkBench est que le répertoire par défaut de votre programme sera celui dans lequel le programme se situe. Mais tous les programmes ne peuvent être exécutés dans ce mode. Création: ParM a été programmé en C avec l'AztecC 5.0a, CygnusEd 2 et ARexx 1.10. Les en-têtes de fichiers sont faits de telle manière que la compilation puisse être lancée depuis Ced. J'utilise pour cela mon propre DevKit, complètement réécrit car la version 1.2 originale ne fonctionnait pas du tout. ParM a besoin de la librairie arp.library version 39.1 et de la req.library version 1. J'ai écrit mes propres librairies pour l'éditeur de lien Manx. Celles utilisées ici se nomment arps.lib et req.lib. La arps.lib fourni un petit code de startup et les glues pour les fonctions arp qui ne peuvent être prototypées, et la req.lib est le fichier objet reqglue.o fourni avec Ced réécrit sous forme de librairie. A partir de la version 2.6, il faut aussi mettre le fichier parm.library dans votre répertoire LIBS:. Installation: Installez ParM avec son icone là où vous le désirez, et mettez le fichier de configuration ParM.cfg dans le répertoire S: si vous l'utilisez. Sinon, vous devrez systématiquement spécifier le nom du fichier config sur la ligne de commande ou dans les TOOLTYPES de l'icone de ParM. Dans le cas contraire, vous devrez répondre l'alerte signifiant l'absence de fichier config et vous n'aurez pas de menus. Assurez vous bien d'avoir placé les librairies arp.library 39.1 ou superieure et req.library dans LIBS:. Exécution: Il est recommandé de lancer ParM depuis un CLI si vous voulez que vos programmes aient un Path autre que le répertoire courant et C: ce qui est le cas si vous le lancez depuis workbench. ParM peut fonctionner de trois manières différentes: 1) Vous pouvez attacher ParM à la fenêtre du CLI que vous utilisez. Dans ce cas, si vous ne spécifiez aucune des options concernant la fenêtre, les menus seront attachés au CLI depuis lequel vous l'avez lancé. Il est préférable alors de lancer avec la commande Run et non RunBack pour vous empêcher de fermer le CLI par inadvertance. 2) ParM peut avoir sa propre fenêtre. C'est toujours le cas quand ParM est exécuté depuis WorkBench, mais vous pouvez aussi lui demander d'ouvrir sa fenêtre quand vous le lancez depuis un CLI. Pour cela, il suffit de spécifier l'option "-w" ou toute autre option ayant rapport avec les caractéristiques de la fenêtre. Dans ce cas, vous devriez le lancer avec la commande RunBack de manière à pouvoir fermer le CLI par la suite. N'utilisez pas la commande arp ARun avec l'option NOIO car certains programmes ne l'aiment pas et ne fonctionneront pas depuis ParM. 3) ParM peut être rattaché aux menus du Workbench, comme MyMenu. Attention: Ne lancez pas ParM avec la commande "Run >NIL: ParM" car il serait détaché du CLI mais conserverais la fenêtre pour ces fichiers standards d'entrée et de sortie et certaines commandes en mode RUN peuvent planter si vous avez fermé le CLI. Notez que RunBack utilise la commande C:Run et vous devriez mettre dans C: la version arp de Run à la place de celle de Commodore si vous désirez utiliser ParM en résident. ParM a des options accessibles aussi bien sous WorkBench que sous CLI. Seules deux d'entre elles ne sont accessibles que sous CLI. '-w' pour Window puisque ParM ouvre toujours sa fenêtre dans ce cas, et '-o' car c'est par défaut sous WorkBench vu l'absence de fenêtre. Liste des options: CLI WB -m MYMENU Rattache ParM au Workbench. (Comme MyMenu !) -w Ouvre sa propre fenêtre -x LEFTEDGE Position horizontale de la fenêtre (défaut 0) -y TOPEDGE Position verticale de la fenêtre (défaut 0) -d DETAILPEN Couleur "d'avant-plan" de la fenêtre (défaut 3) -b BLOCKPEN Couleur de fond de la fenêtre (défaut 2) -c MENUCOLOR Couleur du menu principal (défaut: Detail Pen) -r NODRAGBAR Rend la fenêtre non déplaçable (=1 pour activer) -g DEPTHGADGETS Gadgets de profondeur (=1 pour activer) -s STACKSIZE Taille de la pile par défaut pour les commandes. (Ce n'est pas la pile de ParM) -f CONFIGFILE Fichier de configuration. -o Redirige les entrées/sorties des commandes à NULL: -h ou n'importe quoi d'autre pour avoir de l'aide. Pour utiliser les TOOLTYPES de l'icône de ParM, il suffit d'entrer le mot clé suivit d'un "=" et de la valeur nécessaire. Par exemple: DETAILPEN=1 C'est équivalent à RunBack >NIL: ParM -d1 sous CLI. Si vous spécifiez une des options -x,-y,-d,-b,-g,-r, une fenêtre sera ouverte et "-w" est inutile. Fichier de configuration: Vous comprendrez mieux ce qui va suivre avec le fichier de configuration fourni sous les yeux. Un fichier de configuration ressemble à un programme structuré. Il est recommandé d'indenter les lignes pour rendre ce fichier aussi lisible que possible. Le fichier de configuration par défaut doit se trouver dans le répertoire S: et nommé ParM.cfg. Ce fichier définit les menus que vous désirez et les commandes correspondantes. Les commentaires commencent avec un '#' et continuent jusqu'à la fin de la ligne. Les majuscules/minuscules ne sont pas distinguées. Mots clés: CMDWIN console Cette commande redéfinira la console par défaut utilisée par ParM ("CON:0/11/640/100/Command Window") pour la fonction Command. Peut être placé n'importe où dans le fichier mais il vaut mieux le mettre au début. SHELLWIN console Cette commande redéfinira la console par défaut utilisée par ParM ("CON:0/11/640/100/ParM Shell") pour les commandes en mode SHELL sans spécification de fenêtre. Peut être placé n'importe où dans le fichier mais il vaut mieux le mettre au début. SHELLCMD commande Cette commande redéfinira la commande utilisée par ParM pour la création d'un shell interactif qui est par défaut 'AShell'. Par exemple, si vous possédez WShell, vous pouvez utiliser NewWSH ici. Peut être placé n'importe où dans le fichier mais il vaut mieux le mettre au début. WAITCMD commande Cette commande redéfinira la commande utilisée par ParM pour attendre une réponse de l'utilisateur avant de fermer un shell (défaut: WaitReturn). Peut être placé n'importe où dans le fichier mais il vaut mieux le mettre au début. TMPDIR path Cette commande redéfinira le répertoire par défaut (T:) utilisé pour la création des fichiers scripts temporaires en mode SHELL. Si votre répertoire n'est pas la racine d'un device (exemple T:), vous devez ajouter un slash '/' après le nom du répertoire (exemple RAM:T/). Peut être placé n'importe où dans le fichier mais il vaut mieux le mettre au début. SHORTCUTQUAL qual Ceci permet d'ajouter une ou plusieurs touche d'acces aux raccourci-clavier pour les menus. Par exemple Amiga-gauche, ALT, ou encore SHIFT ou Control. Si vous desirez plusieurs possibilités vous pouvez ajouter les codes si dessous. Liste des codes: SHIFT gauche 1 SHIFT droit 2 CONTROL 8 ALT gauche 16 ALT droit 32 Amiga gauche 64 Si par exemple vous desirez que les deux touches ALT puissent vous servir de touche raccourci, faites: ( 16 + 32 = 48 ! ) SHORTCUTQUAL 48 Si vous desirez des raccourcis sans qualifier, (lettre seule), vous pouvez utiliser 32768 (IEQUALIFIER_RELATIVEMOUSE), qui est toujours present dans les évennements de type RAWKEY. (Attention, a utiliser avec précaution). Ceci ne marche que si ParM a sa propre fenêtre ou est rattaché au Workbench, mais ne marche pas dans un CLI. ACTIVATEKEY [SCREENTOFRONT] [PASSTHROUGH] [NOCHECK] qualifier rawkey Ceci permet de définir un "Hot-Key" pour ParM ou plus généralement pour tout programme qui utilise les menus de la parm.library, et donc "The great BrowserII" ! Attention, rawkey est le code de touche du clavier, et non pas le code ascii du caractère généré par la touche. Comme son nom l'indique, ceci une séquence de touches qui va activer la fenêtre de ParM, et ceci avec trois options. Pour expérimenter les codes qui passent dans le handler, installez la version 'debug' de la librairie dans LIBS:. Méthode: Assurez vous que parm.library ne soit pas en mémoire (Rebooter si nécessaire). Copy parm.library.debug libs:parm.library Run ParM -w Une fenêtre affiche alors dans l'ordre: Class SubClass Code Qualifier. Ces codes sont en hexadécimal et seuls Code et Qualifier vous sont utiles. Vous devez les transformer en décimal pour ParM. Une fois les infos recueillies, réinstallez la version normale de la parm.library. Options: 1. SCREENTOFRONT L'écran qui contient la fenêtre de ParM passera en avant plan. 2. PASSTHROUGH Ceci risque d'être un peu délicat à comprendre pour les non-programmeurs. Disons que si vous ne spécifiez pas cette option, la séquence n'aura pour action que d'activer la fenêtre. Si vous la mettez, la fenêtre que vous venez d'activer recevra la séquence de touche, et si cette séquence correspond à un raccourci clavier d'un menu, l'option de menu sera exécutée. Ceci est donc très puissant puisque bien paramétré, cela vous permet de lancer un programme grace a ParM sans toucher la souris, même si la fenêtre de ParM n'est pas active. Exemple: SHORTCUTQUAL 64 (Amiga gauche) ACTIVATEKEY PASSTHROUGH 64 50 (Amiga gauche - X) Menu System Item {X} Xoper RUN Xoper Ceci permet de lancer Xoper à tout moment sans toucher ni la souris, ni ParM. Autre exemple: # Left ALT - Right Mouse Button ACTIVATEKEY PASSTHROUGH SCREENTOFRONT 8208 105 Ceci active la fenêtre ParM, et les Menus. Essayez. Plus besoin d'aller cliquer dans la petite fenêtre. 3. NOCHECK La librarie maintient une liste des "Hot-Keys". Quand vous ajoutez un Hot-Key, ParM controle qu'il n'est pas déjà utilisé. Si c'est le cas, vous en serez averti et il ne sera pas pris en compte. Si vous spécifez NOCHECK, il sera systématiquement installé en tête de liste, sans contrôle, et sera prioritaire sur l'ancien. Ceci me permet la chose suivante: Un Hot-Key de ParM me charge BrowserII. Le même Hot-Key est déclaré en NOCHECK dans BrowserII.menu. Ceci a l'effet suivant: Si BrowserII est chargé, il est activé et son écran passe en avant plan. sinon, ParM le charge. ParM.cfg : SHORTCUTQUAL 64 # Left Amiga - Z (Load BrowserII) ACTIVATEKEY PASSTHROUGH 64 49 menu Tools item {Z} BrowserII RUN HD:Tools/BrowserII BrowserII.menu : SHORTCUTQUAL 64 # Left Amiga - Z ACTIVATEKEY SCREENTOFRONT NOCHECK 64 49 COLOR n Après cette instruction, les menus seront de la couleur n. Cette couleur est par défaut la couleur d'avant plan de la fenêtre (detail pen). Si vous demandez la couleur de fond, alors ParM la remplacera par la couleur du detail pen. MENU nom_du_menu Créé un nouveau menu. Chaque menu doit contenir au moins un item ou un sousmenu. SUBMENU nom_du_sousmenu Créé un nouveau sousmenu. Chaque sousmenu doit contenir au moins un item et ne peut avoir de sousmenu. Chaque SUBMENU doit se terminer par un ENDSUBMENU ENDSUBMENU voir SUBMENU. ITEM [{raccourci-clavier}] nom_de_l_item definition_de_la_commande Definit une nouvelle entrée de menu. Chaque definition 'item' doit avoir un nom d'item et une commande associée. L'item est ajouté au menu ou sousmenu courant. Un ENDSUBMENU indique à ParM la fin du sousmenu courant et d'ajouter le prochain item au menu courant plutôt qu'au sousmenu. Un raccourci-clavier optionnel peut être indiqué entre {}. La syntaxe d'une commande est definie dessous. definition_de_la_commande Les programmes peuvent être lancés de 4 façons différentes: ARUN, RUN, SHELL, et WB. Pour tous les modes, STACK (pile) et PRI sont optionnels. Si la pile est < 4000 octets, la taille sera celle de la pile de ParM, c'est à dire, la pile par défaut du cli au moment où ParM a été lancé. Il y a une exception: si ParM est résident, la pile de ParM sera toujours de 4000 octets. 1) syntaxe de ARUN ARUN [WIN console] [STACK n] [PRI n] commande [args] Ce mode devrait remplir la plupart de vos besoins. La console est maintenant optionnelle. C'est un mode de style CreateProc(). Certains programmes ne l'aiment pas, mais il y en a peu. Par exemple, les scripts ne peuvent être exécutés. D'une manière générale, les commandes du répertoire C: fonctionnent mieux en mode RUN. Ce mode a les mêmes limitations que la commande arp ARUN. Actuellement, la console est immédiatement fermée à la fin du programme. Nous espérons régler ce problème dans une version future. Les commandes ne peuvent pas être redirigées dans ce mode. Note: Le mode ARUN avec une console (ARUN WIN console...) est le même que l'ancien mode CLI. Si vous utilisez un ParM de version antérieure à la 2.2 vous pouvez effectuer un search/replace sur votre ancien fichier de configuration pour changer 'CLI' en 'ARUN WIN'. 2) syntaxe RUN RUN [STACK n] [PRI n] commande [args] Ce mode lance la commande en background shell. Ce mode doit être utilisé pour les scripts. Si le bit s de votre fichier script est mis, il sera exécuté automatiquement (Pas besoin de la commande Execute). Dans ce mode, les commandes ne seront pas détachées si ParM est attaché à un CLI, c'est pourquoi vous devriez plutôt utiliser ARUN aussi souvent que possible. Vos commandes peuvent être redirigées dans ce mode. 3) syntaxe SHELL SHELL [WIN console] [STACK n] [PRI n] commande [args][;commande [args]]... Ce mode crée un shell interactif. Ce mode doit être utilisé pour les scripts demandant des entrées de l'utilisateur. Si le bit s de votre fichier script est mis, il sera exécuté automatiquement (Pas besoin de la commande Execute). Un avantage supplémentaire de ce mode est que vous pouvez mettre plusieurs commandes séparées par des point-virgules ';'. Par exemple: CD SYS:Utilities;Dir. En fait, ParM crée un fichier script temporaire dans un répertoire de votre choix qui est par défaut T:. Donc, vous pouvez réaliser un véritable fichier script en remplaçant les retours chariot de fin de ligne par des point-virgules. Pour réaliser ceci, prennez votre éditeur de texte préféré, tappez votre script normalement, puis à chaque fin de ligne, ajoutez un ';' et faites un 'Del' pour enlever le retour chariot (ou faites un 'join line'). De cette manière, votre script tiendra sur une seule ligne, et pourra être intégré tel quel dans le fichier de configuration de ParM. Si vous avez besoin d'un ';' dans une commande, ce qui ne devrait pas se produire car c'est normalement le délimiteur de commentaires d'un shell, vous pouvez utiliser le caractère spécial '\'. Exemple: ';' -> '\;' et '\' -> '\\'. Si vous ne spécifiez pas de console (WIN console), la console shell par défaut sera utilisée. WB [STACK n] [PRI n] commande Lance la commande en mode WorkBench, comme si vous aviez cliqué sur son icône. Attention, si vous spécifiez une pile (STACK) ici, elle prendra le pas sur la pile indiquée dans l'icône. Votre commande risque donc de planter si vous utilisez une pile trop petite. Sachez ce que vous faîtes. 5) option CFG CFG Fichier_de_Configuration ParM charge le fichier de configuration comme si vous aviez fait Open dans le menu ParM et sélectionné ce même fichier. Très utile pour utiliser des fichiers config sur des disques différents pour choisir les programmes de ces disques. Dans tous les modes à l'exception de WB, la commande est cherchée dans la liste des programmes résident arp (commande arp ARes), puis dans le Path actif au moment ou ParM a été lancé. Pour connaître ce Path, il suffit d'entrer la commande Path dans le requester de la fonction Command du menu ParM, ou d'ouvrir un shell depuis ParM, et de tapper la commande Path. Un fichier de configuration est donné en exemple. Commandes du menu ParM. Open: Ouvre le sélecteur de fichier pour selectionner le fichier à charger. Update: Met à jour les menus en rechargeant le fichier de configuration courant. Utile si vous avez mofifié votre fichier config pendant que ParM tourne. Std Cfg: Charge le fichier config par défaut S:ParM.cfg. Pratique après exécution d'une commande CFG. Cmd Mode: Deux modes sont disponibles. Simple et Shell. Le mode courant est indiqué par une marque. Ces modes concernent la fonction Command ci-dessous. En mode 'Simple', ParM restera figé (Busy) tant que votre command ne sera pas exécutée, alors qu'en mode Shell, Command est asynchrone. Pour cela, un shell est créé et votre (vos) commande(s) sont mises dans un fichier script temporaire. Les règles régissant ce mode sont identiques au mode SHELL du fichier de configuration. Si vous possédez WShell et que vous utilisez PatchDOS, vous aurez accès aux ressources de WShell, c'est à dire alias, resident... Command: Permet d'exécuter une commande CLI. voir ci-dessus. ChangeDir: Change le répertoire courant de ParM. Toutes les commandes héritent du répertoire courant de ParM sauf celles lancées en mode WB. Quit: Pourquoi? ParM n'est il pas mignon! Commandes séparées: End: La commande End permet de fermer un shell dans lequel un ParM est attaché. End a besoin de EndCLI pour fonctionner. S'il n'y a pas de ParM attaché au shell, End fera seulement un EndCLI. End et EndCLI peuvent être mis résident pour une rapidité maximale. Grace à cette commande, vous pouvez mettre ParM dans votre CLI-Startup ou Shell-Startup pour avoir des menus dans chaque CLI/Shell, et vous pourrez les fermer à l'aide de End à la place de EndCLI sans vous soucier de ParM. Attention: N'utilisez pas cette commande avec WShell car il n'accepte que sa version 'Built-in' de EndCLI et End charge le EndCLI du répertoire C:. ParMCD: ParMCD change le répertoire courant du ParM attaché au CLI courant. Sans argument, ParM prendra le répertoire courant du CLI. Vous pouver spécifier le répertoire en argument à ParMCD. Cette commande est pure, vous pouvez la mettre en résident. WaitReturn: La commande WaitReturn est utilisée par défaut par la fonction Command en mode Shell. Vous pouvez l'utiliser dans vos scripts. Elle attend que l'utilisateur appuie sur la touche return. Cette commande est pure, vous pouvez la mettre en résident. Limitations: Les scripts ne fonctionnent pas en mode ARUN. Utilisez RUN ou SHELL la place. Si une commande en mode RUN échoue, vous ne le saurez pas, si ce n'est que vous ne la verrez pas fonctionner. C'est un peu ennuyeux pour les utilitaires qui ne se manifestent pas de manière visible à l'oeil. Quand ParM est attaché à un CLI, les commandes exécutées en mode RUN ne seront pas détachées, c'est à dire que vous ne pourrez pas fermer le CLI avant que ces commandes ne soient terminées. C'est le même problème que si vous aviez lancé votre commande avec la commande Run: 1> Run ma_commande D'un autre coté, ces commandes conservent la console comme fichiers standards d'entrée/sortie, et vous pouvez en tirer avantage. Si vous ne voulez pas que votre CLI soit perturbé par l'affichage intempestif de ces commandes, vous pouvez les rediriger à NIL: ou utiliser l'option '-o'. Dans ce cas seulement, les commandes seront détachée de votre CLI. ParM ne peut être mis résident qu'en arp, c'est à dire avec la commande arp ARes. Ceci parce que ParM n'est pas pure. L'avantage des résidents arp et que l'on peut savoir si le programme est résident ou pas. S'il est résident, les variables globales sont dupliquées pour chaque processus ParM, ce qui n'est pas le cas s'il ne l'est pas ou s'il est en résident Commodore ou WShell. Même si vous avez WShell, placez ParM en arp résident avec ARes et lancez le avez la version arp de la commande Run. En mode MyMenu, si vous utilisez Command en mode Simple, le workbench sera inactif tant que vous n'aurez pas terminé. Bugs connues: (ou devrais-je dire boggues!) En mode SHELL, PRI n'est pas pris en compte. La priorité est toujours 0 Projets d'amélioration: - Faire descendre la taille de l'exécutable en dessous de 2 K !!! - Faire un seul mode Command asynchrone n'utilisant aucune commande sur disque. Historique: 1.0: Interne. Refonte de MyMenu. 1.1: Première version officielle. (Envoyée à Fred Fish) Ancien mode CLI changé en RB (RunBack) Nouveau mode CLI ajouté. Syntaxe du fichier de configuration changée. 1.4: Interne. Options -l, -d, et WBRun améliorées. Vous pouvez maintenant lancer des projets en mode WB constitués d'une icône seulement. Ex: Serial, Pointer et Printer de répertoire Prefs. 1.6: Seconde version officielle. 29/09/90. Code réarrangé. Nouvelle option CFG ajoutée. Nouvelle fonction 'Std cfg' ajoutée. 1.7: Interne. N'utilise plus la c16.lib, mais les miennes à la place. Taille du code diminuée de 1.5 K. 2.0: Troisième version officielle. 13/10/90. ParM peut maintenant être mis résident. Commande End crée. Le path est indiqué dans Change Dir. 2.1: Commande ParMCD crée. 2.1r: Cette version utilise la librairie req.library (r pour req!). 2.2r: Disparition des modes RB et CLI. les nouveaux modes sont ARUN, RUN et SHELL. STACK et PRI sont optionnels pour tous les modes sauf WB. Plus besoin de la commande Run du répertoire C:. Les erreurs de syntaxe du fichier de configuration sont maintenant reportées sous forme de ligne, colonne. 2.3r: Disparition du message 'Workbench processes still active'. ParM crée maintenant un MsgPort public pour les messages workbench commun à tous les ParM, et le laisse si des messages sont encore en attente quand vous quittez ParM. Maintenant, si votre console possède un gadget de fermeture, vous pourrez quitter ParM en le cliquant. Particulièrement utile pour les heureux possesseurs de WShell. Les caractères de valeur ascii > 127 sont supportés (accents). WAITCMD ajouté. 2.4r: Mode WB réécrit. STACK et PRI optionnels dans tous le modes. Le mode WB ne plante plus si la commande n'est pas trouvée. Vous pouvez maintenant lancer des programmes qui n'ont pas d'icône. La mémoire pour les menus est allouée par blocks de 1 K pour diminuer la fragmentation de la mémoire. 2.5r: Options -s et -o ajoutées. -s est utile si ParM est résident car dans ce cas, la pile de ParM est toujours de 4000 octets, alors qu'il prend la taille de pile du CLI normalement. Comme les commandes lancées par ParM prennent par défaut la taille de pile de ParM, -s vous permet d'avoir une pile par défaut autre que 4000 octet quand ParM est résident. 2.51r: Mise à jour mineure. Correction de quelques bugs. ParM ne plante plus quand lancé depuis le workbench en l'absence de l'arp.library. 2.6r: ParM est maintenant implementé en librairie. Cela permet a BrowserII de profiter de la creation de menus paramétrables de ParM. Installez "parm.library" dans LIBS:. La fenêtre de ParM passe maintenant à l'avant plan si elle est complètement recouverte par une autre fenêtre. (Option ajoutée a la demande d'utilisateurs). 2.7: L' option -o utilise maintenant le gestionnaire NULL: à la place de NIL: si possible. Cela permet d'éviter que des programmes ouvrant le fichier "*" plantent si le CLI depuis lequel ParM a été lancé a été fermé. Avec NULL:, le mode RUN est maintenant sûr et devrait fonctionner dans tous les cas. Si NULL: n'existe pas, NIL: sera utilisé. 'r' enlevé de la version. Une version n'utilisant pas la req.library n'est plus planifiée. 2.8: Correction de quelques bugs. Le qualifier pour les raccourcis-clavier rendu parametrable. 2.9: Implementation d'un input handler dans parm.library. Cela rend possible le lancement d'une commande sans toucher la souris, ou d'activer les menus sans prealablement activer la fenêtre de ParM. 3.0: Suite à la demande d'utilisateurs, ParM peut maintenant être rattaché au Workbench, comme MyMenu. (Code pris a MyMenu une fois de plus). Desolé et Merci, Darin et John. ParM est maintenant compatible avec Console-Buffer. Il y a néanmoins une limitation. Vous devez installer ParM APRES CB, et vous ne devez pas quitter CB avant ParM. Possibilité de mettre plusieurs commandes séparées par un ; en mode RUN et dans Command comme en mode SHELL. Remerciements: La première version de ParM (interne) était une refonte complète de MyMenu de Darin Johnson. Le problème était qu'il n'était pas possible d'avoir MyMenu sans le workbench, et que les programmes lancés depuis MyMenu n'avaient pas de Path. Un grand merci donc à Darin Johnson pour les allocations de menu et le workbench run. L'idée d'attacher des menus au CLI m'est venue d'un ami qui avait fait un programme similaire mais peu pratique à configurer. Un autre grand merci à Olaf 'Olsen' Barthel pour ses mises à jour des startup arp pour l'aztec 5.0, code qui m'a servi à créer mes propres libs. Merci aussi à Colin Fox et Bruce Dawson pour leur fantastique req.library. Nous encourageons tous les programmeurs et en particulier professionnels à utiliser cette librairie qui possède le plus beau requester de fichier du monde, et une tonne de facilités pour la gestion des petits requesters et des gadgets. Merci à Darin Johnson pour MyMenu. Merci à William S. Hawes pour ARexx et WShell. Merci à Pierre 'Zorglub' Ardichvili pour son aide. Merci à CygnusSoft et ASDG pour leur fabuleux, génial, démoniac, démentiel, extraordinaire, divin,... éditeur de texte CygnusEd 2. Signature: S.R. & P.C. Ce n'est pas Status Register et Program Counter mais Sylvain Rougier & Pierre Carrette. Donnations: Ce programme n'est pas domaine public. Ce programme est 'ShearWare'. Si vous l'utilisez, veuillez envoyer une donnation et/ou constatation de bugs à: Sylvain Rougier Coiffure W 39 rue Carnot 86000 Poitiers France.