« ConfigGenerator » : différence entre les versions

De Disposition de clavier bépo
(→‎Sous Windows : comment configurer cpan)
Ligne 27 : Ligne 27 :
Plusieurs outils de développements doivent être installés avant de pouvoir utiliser ConfigGenerator. Pour utiliser le générateur de dispositions sous Windows, il faut installer [http://www.cygwin.com/ Cygwin] avec les paquets {{c|make}}, {{c|perl}}, {{c|libiconv2}}.
Plusieurs outils de développements doivent être installés avant de pouvoir utiliser ConfigGenerator. Pour utiliser le générateur de dispositions sous Windows, il faut installer [http://www.cygwin.com/ Cygwin] avec les paquets {{c|make}}, {{c|perl}}, {{c|libiconv2}}.


Il faut ensuite [configurer CPAN (''comment ? — en tapant « sudo cpan » dans la Console, puis en répondant sans réfléchir à toutes les questions en tapant « Return », pour entrer la réponse par défaut…'') et] installer les modules Perl manquant :
Il faut ensuite [configurer CPAN (''comment ? — en ouvrant une Console avec des droits administrateur, en tapant la commande « cpan » pour rentrer dans le shell, puis en répondant sans réfléchir à toutes les questions en tapant « Return », pour entrer chaque fois la réponse par défaut… on peut éventuellement poursuivre avec un « install CPAN » puis un « reload cpan » pour se mettre à jour'') et] installer les modules Perl manquant :
<source lang="bash">
<source lang="bash">
$ perl -MCPAN -e 'install [http://search.cpan.org/~jenda/Config-IniHash/IniHash.pm Config::IniHash]'
$ perl -MCPAN -e 'install [http://search.cpan.org/~jenda/Config-IniHash/IniHash.pm Config::IniHash]'

Version du 12 août 2010 à 23:07

configGenerator est un ensemble de scripts, écrits en python et perl, qui permet de générer les pilotes de la disposition bépo pour les systèmes d'exploitation Microsoft Windows (versions fixe et portable), Mac OS X, GNU/Linux, Solaris, FreeBSD et OpenBSD.

Il génère aussi les fichiers de configuration pour les logiciels d’apprentissage Ktouch, Klavaro et TypeFaster, ainsi que les cartes des caractères au format texte et SVG.

Les fichiers sont disponibles sur le dépôt subversion à l'adresse suivante.

Créer une disposition

Pour générer une disposition dont le nom est, par exemple, « BÉPO », il faut au préalable écrire trois fichiers de configuration :

  • layout-BÉPO.conf : définition de la disposition en elle-même[1] ;
  • deads-BÉPO.conf : définition des touches mortes ;
  • virtualKeys-BÉPO.conf : définition des « touches virtuelles » (pour les raccourcis sous Windows).

Enfin, dans genAll.sh, il faut indiquer à la deuxième ligne le nom de la disposition : VERSION=BÉPO

  1. Le premier chiffre avant le ! définit le comportement des touches lorsque caps-lock est activé. 0: pas d’effet. 1: actif. 2: actif aussi avec altGr.

Générer les fichiers de configuration

Sous Unix

Le script genAll.sh génère tous les fichiers de configuration et les place dans le répertoire ./results/.

  • Pour effacer le contenu du répertoire ./results/ : ./clean.sh
  • Pour générer tous les fichiers : ./genAll.sh

Sous Windows

Plusieurs outils de développements doivent être installés avant de pouvoir utiliser ConfigGenerator. Pour utiliser le générateur de dispositions sous Windows, il faut installer Cygwin avec les paquets make, perl, libiconv2.

Il faut ensuite [configurer CPAN (comment ? — en ouvrant une Console avec des droits administrateur, en tapant la commande « cpan » pour rentrer dans le shell, puis en répondant sans réfléchir à toutes les questions en tapant « Return », pour entrer chaque fois la réponse par défaut… on peut éventuellement poursuivre avec un « install CPAN » puis un « reload cpan » pour se mettre à jour) et] installer les modules Perl manquant :

$ perl -MCPAN -e 'install [http://search.cpan.org/~jenda/Config-IniHash/IniHash.pm Config::IniHash]'
$ perl -MCPAN -e 'install [http://search.cpan.org/~markov/Hash-Case-1.006/lib/Hash/Case/Lower.pod Hash::Case::Lower]'

(Si ça ne fonctionne pas, compilez-les.)

Quand CPAN demande un répertoire pour déposer ses fichiers, bien faire attention de lui en spécifier un sans espaces !

Pour générer les images de Portable Keyboard Layout, il faut avoir le navigateur Firefox installé ainsi que le module Pearl Crescent Page Saver, ou éventuellement Screengrab!, qui permettent de faire une image depuis une page web. Utilisez ./genpklwin.sh une fois ce module installé. Ajoutez le répertoire d'installation en variable d'environnement « path è » de manière à avoir l’executable firefox en ligne de commande (par exemple set path=%path%;C:/Program Files/Mozilla Firefox si votre navigateur est installé à cet endroit). Il faut également convert en ligne de commande, disponible avec ImageMagick.

Les fichiers *.klc créés par le script genAll.sh dans ./results sont tagés en fonctions des racccourcis claviers A azerty, B bépo, C qwertz.

Pour plus de détails : Comment créer ses pilotes sous Windows.

Sous Mac OS X

Sous Mac OS X, ça se passe comme sur n’importe quel autre Unix… Pour mémoire cependant, petit tutoriel (réalisé le 12 août 2010 sur OS X 10.6 Snow Leopard) :

  • installations préalables :
    • d’abord il vous faut un Perl qui marche, et ce qui tombe bien c’est que vous en avez déjà un pré-installé avec votre OS ! Idem pour Python : tout est est déjà là. (Ceci depuis au moins OS X 10.4 Tiger, avant : à vérifier.)
    • installer les modules Perl nécessaires (et leur dépendances) : Config::IniHash et Hash::Case::Lower. Pour faire ça, comme vous n’avez pas tellement envie de taper vingt-cing fois la commande « make » (en effet, le K du bépo n’est pas le mieux placé…), vous allez utiliser cpan ou cpanm, selon que vous voulez vous simplifier la vie un peu ou beaucoup :
      • la méthode tradi, avec cpan : euh… ben non en fait, là en le faisant ça devrait mais ça marche pas trop, on passe à l’autre méthode, de toute façon elle est beaucoup mieux…
      • la méthode ultra-tendance, avec cpanm : cpanminus (ou cpanm) est l’installeur dernier-cri de modules Perl, fait pour simplifier la vie aux grands et aux petits. Vous devez d’abord installer cpanm, ce qu’il est capable de faire lui-même, vous avez juste à taper dans une fenêtre de Terminal :
        curl -L http://cpanmin.us | perl - --sudo App::cpanminus
        
        Il mouline, vous dit « OK » à chaque ligne (mais il y a dix fois moins de lignes qu’avec un cpan classique), et puis enfin « Successfully installed App-cpanminus-1.0010 ». Vous installez ensuite le module Config::IniHash en tapant la commande :
        sudo cpanm http://search.cpan.org/CPAN/authors/id/J/JE/JENDA/Config-IniHash-3.01.01.tar.gz
        
        (Note : au moment où j’ai essayé, la commande toute bête « cpanm Config::IniHash » ne marchait pas — et pas non plus avec un « cpan -i Config::IniHash » classique — mais ça vaut le coup d’essayer à l’avenir, des fois que le module soit de nouveau trouvable sans problème dans la base de données CPAN…) Vous pouvez ensuite taper :
        sudo cpanm Hash::Case::Lower
        
        pour vérifier qu’il vous répond comme à moi : « Hash::Case::Lower is up to date. (1.01) » (et sinon il vous l’installera !).
  • fin de l’installation = récupération du ConfigGenerator lui-même : vous cliquez sur le lien là-haut (ou bien le même ici) pour récupérer le paquet compressé .tar.gz, que vous n’avez plus qu’à double-cliquer pour le décompresser. Vous avez maintenant un dossier nommé configGenerator.rXXX (XXX est le numéro de révision), que vous pouvez mettre à l’endroit que vous voulez, mettons par exemple dans votre dossier Documents (le chemin vers ce répertoire serait donc ~/Documents/configGenerator.rXXX/ (ou encore /Users/votre_nom/Documents/configGenerator.rXXX/), mais plus généralement il sera noté /*chemin-vers*/configGenerator.rXXX/, où vous remplacerez *chemin-vers* par ce qu’il faut…). Tout est maintenant prêt pour que le générateur fonctionne !

[Après avoir passé du temps à vous écrire ce tutoriel, j’ai encore pris celui de le tester (en réinstallant tout sur une nouvelle partition), avec une connexion internet moyenne et un Mac plus tout jeune (ça peut donc aller plus vite, à vos chronos) — résultat : 4′53″ exactement pour l’ensemble du processus décrit ci-dessus ;-)… Vive cpanm !]