ConfigGenerator

De Disposition de clavier bépo

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

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 ?) 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  :

  • 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 ! Je ne sais plus s’il vous faut pour cela installer les « outils développeurs Apple », c’est même pas sûr, mais je ne peux pas vérifier vu que chez moi c’est déjà tout installé. Donc : vous ouvrez une fenêtre de Terminal, vous taper la commande « perl --version », s’il vous répond « This is Perl, blabla blabla… », c’est que c’est bon ; sinon, vous installer les « outils développeurs » qui sont sur votre DVD d’installation d’OS X, dans les « installations optionnelles » ou quelque chose comme ça ; et si vous ne savez plus où vous avez mis votre DVD d’install, vous pouvez télécharger la version d’« XCode » correspondant à votre OS sur le site developer.apple.com, qui vous demandera de vous enregistrer — gratuitement bien sûr (attention ! ne pas installer la version pour Snow Leopard si vous êtes toujours sous Leopard… faut parfois chercher un peu pour trouver les versions pour les anciens OS, mais on finit par trouver.)
    • installer les modules Perl nécessaires : Config::IniHash et Hash::Case::Lower — à suivre, là je vais manger… ;-)
  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.