Installation dans la console de GNU/Linux
Debian, Ubuntu et dérivées
Le logiciel console-setup permet d’utiliser les fichiers de xkb pour la console. Le fichier de configuration reprend les noms du fichier de configuration de Xorg et les seules variables qui nous intéressent sont :
XKBMODEL="pc105"
XKBLAYOUT="fr"
XKBVARIANT="bepo"
XKBOPTIONS="lv3:ralt_switch"
(Les fichiers de configuration sont /etc/default/console-setup
et /etc/default/keyboard
pour le système et ~/.console-setup
pour un utilisateur seul).
Pour activer le clavier temporairement :
setupcon -k
Pour un usage permanent, voyez la documentation pour votre distribution. Par exemple, /usr/share/doc/console-setup/README.Debian
indique, pour modifier la configuration facilement et durablement, d’utiliser :
dpkg-reconfigure console-setup
mais la liste des dispositions proposées n’est pas dynamique : elle est codée dans /var/lib/dpkg/info/console-setup.config
. Le plus simple est donc de s’en servir pour les autres fonctionnalités de console-setup et d’éditer soi-même /etc/default/keyboard
pour renseigner les quatre variables citées plus haut.
Méthode standard
La disposition est nommée « fr-bepo » sauf si installée « à la main » ou via l’overlay Gentoo auquel cas elle est nommée « fr-dvorak-bepo-utf8 » (il faudra alors adapter les commandes à taper).
De plus, le comportement des touches mortes étant défini en dehors des pilotes, leur comportement peut-être incomplet ou partiellement différent des spécifications officielles de la disposition
Les dispositions « fr-bepo-latin9 » et « fr-dvorak-bepo » ne possèdent que les caractères iso-8859-15 de la disposition sont disponibles. Seules certaines touches mortes (accent grave, aigu, circonflex, tilde, tréma, cédille, ogonek, caron, brève et double accent aigu sont disponibles — ce qui exclu notamment la touche morte grecque, monétaire et la barre inscrite).
Installation
Via le système de paquet
- Sur Arch Linux, bépo est installé par défaut. Vous pouvez passer à la section « Utilisation ».
- Sur Gentoo :
- vous pouvez passer par l’overlay
laurentb
:layman -a laurentb
et faire unemerge -a sys-apps/fr-bepo-keymap
. Vous pouvez passer à la section « Utilisation », - ou installer kbd 2.0.1 ou supérieur en rajoutant dans le fichier
>=sys-apps/kbd-2.0.1
/etc/portage/package.accept_keywords
, puis en lançantemerge kbd
.
- vous pouvez passer par l’overlay
- Pour les autres distributions, il va falloir installer le paquet à la main.
À la main
La configuration de clavier est disponible dans cette archive (infos).
Pour que la disposition soit accessible de n’importe quel répertoire et pour n'importe quel utilisateur, vous pouvez copier le fichier fr-dvorak-bepo-utf8.map
dans l'un des répertoires suivants :
/usr/lib/kbd/keymaps/i386/dvorak/
/lib/kbd/keymaps/i386/dvorak/
sur Fedora/usr/share/keymaps
sur Debian/usr/share/kbd/keymaps/i386/dvorak
sur Arch Linux et openSUSE/usr/share/keymaps/i386/dvorak/
sous Gentoo (Extraire les fichiers de l'archive et recompresser fr-dvorak-bepo.map avec gzip avant de le placer dans ce répertoire)
Utilisation
Tout utilisateur pourra alors basculer en BÉPO avec la commande (lancée avec les droits superutilisateur)
loadkeys fr-bepo
et revenir à un clavier AZERTY avec la commande
loadkeys fr
Note : pour Debian, Ubuntu et dérivées, le paquet console-data contient déjà la disposition bépo. Il suffit donc de faire :
sudo aptitude install console-data
(s’il vous est demandé si vous souhaitez changer votre « codage clavier », choisir « Ne pas changer de codage clavier »)
sudo loadkeys dvorak-fr-bepo
Le fichier associé se situe dans /usr/share/keymaps/i386/dvorak/dvorak-fr-bepo.kmap.gz
Bépo au démarrage
Pour avoir la disposition Bépo dès le démarrage :
- Pour les distributions utilisant systemd (à peu près toutes, sauf Debian, Ubuntu, Gentoo et Slackware), modifier ou déclarer
KEYMAP=
dans/etc/vconsole.conf
:
KEYMAP=fr-bepo
Pour plus d'informations consulter le wiki Archlinux
- Même procédure pour Gentoo, sauf que c’est le fichier
/etc/conf.d/keymaps
qu’il faut modifier. - Pour la majorité des autres distributions GNU/Linux, modifier la ligne contenant
KEYTABLE=
dans/etc/sysconfig/keyboard
:
KEYTABLE=fr-bepo
- pour les anciennes versions d’OpenSUSE, vous devez également rajouter la ligne suivante dans
/etc/X11/xdm/Keyboard.map
:
fr-dvorak-bepo : microsoftpro : fr : bepo : xfree86 : x : x : x : x : caps:capslock
Ensuite, supprimez le fichier /var/cache/xdm/keyboard.last
pour que les changements prennent effet.
Il se peut également que vous deviez modifier rajouter la ligne suivante dans /usr/share/systemd/kbd-model-map
:
fr-dvorak-bepo fr pc105 bepo terminate:ctrl_alt_bksp
Grub 2
À partir de la version 1.99 Grub est capable de gérer des dispositions. Tout d’abord il faut générer le fichier disposition :
ckbcomp fr bepo |grub-mklayout -v -o /boot/grub/bepo.gkb
Puis il faut l’activer dans le fichier /boot/grub/grub.cfg
terminal_input at_keyboard
insmod keylayouts
keymap /boot/grub/bepo.gkb
Étant donné que ce fichier est généré dans plusieurs distributions il vaut mieux intégrer ces modifications dans le système de génération du fichier (et non pas modifier directement le fichier généré qui serait écrasé plus tard).
Sous Debian, Ubuntu et dérivées, ceci peut être fait dans plusieurs fichiers :
Dans /etc/default/grub
GRUB_TERMINAL_INPUT=at_keyboard
Puis dans le fichier /etc/grub.d/40_custom
insérer ce qui suit :
insmod keylayouts
keymap /boot/grub/bepo.gkb
Vous pouvez désormais régénérer le fichier /boot/grub/grub.cfg
:
update-grub
Partition de boot séparée
En cas de partition séparée, la méthode précédente ne marche pas, sous Debian en tout cas. En effet, le générateur de configuration pour Grub2 définit la racine (set root=[…]) avec celle de votre partition racine /. Grub2 ne peut donc pas trouver le fichier de disposition généré. La solution consiste à créer un autre fichier dans /etc/grub.d/, par exemple /etc/grub.d/50_keymap avec le code suivant :
#!/bin/sh
set -e
# Include the GRUB helper library for grub-mkconfig.
. /usr/share/grub/grub-mkconfig_lib
KEYMAP_FILE=/boot/grub/bepo.gkb
if ! prepare_grub_to_access_device "`${grub_probe} --target=device "${KEYMAP_FILE}"`"; then
return 6
fi
KEYMAP_FILE=$(make_system_path_relative_to_its_root "${KEYMAP_FILE}")
cat <<EOF
insmod keylayouts
keymap "${KEYMAP_FILE}"
EOF
Ce fichier utilise les fonctions fournies par Grub pour identifier et positionner correctement la partition correspondante à l'emplacement de votre fichier de disposition de clavier. Il marche bien évidemment si votre partition /boot n'est pas séparée.