Comment installer un clavier BÉPO sur un appareil SailfishOS

Création: 2019.02.06 • présentation du bépo • claviers: minimal · optimal · maximal

Aperçu de la disposition. Les chiffres et symboles, accessibles par la touche ?123, sont à droite.

B É P O È V D L J Z     € £ $ ¥ ? % < > [ ]
A U I E C T S R N M     ` ^ | _ § { } ° ¡ ¿
Sf Y X K Q G H F <x     2) « » ÷ “ ” „ · <x
?123 . , [    ] '      ABC . , [     ] ' 

b é p o è v d l j z     1 2 3 4 5 6 7 8 9 0
a u i e c t s r n m     * # + - = ( ) ~ ! ?
Sf y x k q g h f <x     1) @ & / \ " ; : <x
?123 . , [    ] ’      ABC . , [     ] ' 

Il s'agit d'une adaptation à un clavier de quatre rangées avec deux touches de moins par rangée. Le W est associé au V, le Ç au C, le À au A, le Ê au E... Il n'y a pas de touches mortes, les lettres accentuées se saisissent en maintenant le doigt sur la lettre non accentuée: a fait apparaître aàâæáãäåǎā

Seules les lettres correspondent à la disposition BÉPO, les chiffres et symboles ne diffèrent pas beaucoup des dispositions de claviers pour les autres langues sur Jolla / SailFishOS, mais l'élision typographique a été priviliégiée à l'élision dactylographique '

Fichiers à éditer

Un premier fichier est nécessaire, du nom de layout_bepo.conf. Le [nom entre crochet] doit correspondre au nom du second fichier.

[bepo.qml]
name=Bépo
languageCode=FR
handler=Xt9InputHandler.qml

Le second est le fichier de description de la disposition de clavier bepo.qml. Attention! le système est susceptible: une répétition de deux items pour la même touche, un point-virgule ou deux points qui manquent, des accolades ou des guillemets non fermés... empêchent la disposition de fonctionner. Le guillemet se code "\"", la barre inverse "\\"

/*
No copyright (C)... Enjoy! Done by RbN (Jan 2014)
Fixed for SailfishOS 3.0 by jchrbe (2019.02.05 rev. 2019.02.17)
*/

import QtQuick 2.0
import com.jolla.keyboard 1.0
import ".."

KeyboardLayout
  {
  splitSupported: true

  KeyboardRow
    {
    CharacterKey { caption: "b"; captionShifted: "B"; symView: "1"; symView2: "€" }
    CharacterKey { caption: "é"; captionShifted: "É"; symView: "2"; symView2: "£"; accents: "é"; accentsShifted: "É" }
    CharacterKey { caption: "p"; captionShifted: "P"; symView: "3"; symView2: "$" }
    CharacterKey { caption: "o"; captionShifted: "O"; symView: "4"; symView2: "¥"; accents: "oôœóòöøǒō"; accentsShifted: "OÔŒÓÒÖØǑŌ" }
    CharacterKey { caption: "è"; captionShifted: "È"; symView: "5"; symView2: "?"; accents: "è"; accentsShifted: "È" }
    CharacterKey { caption: "v"; captionShifted: "V"; symView: "6"; symView2: "%"; accents: "vw"; accentsShifted:"VW" }
    CharacterKey { caption: "d"; captionShifted: "D"; symView: "7"; symView2: "<"; accents: "dð"; accentsShifted: "DÐ" }
    CharacterKey { caption: "l"; captionShifted: "L"; symView: "8"; symView2: ">" }
    CharacterKey { caption: "j"; captionShifted: "J"; symView: "9"; symView2: "["; accents: "jĵ"; accentsShifted: "JĴ" }
    CharacterKey { caption: "z"; captionShifted: "Z"; symView: "0"; symView2: "]" }
    }

  KeyboardRow
    {
    CharacterKey { caption: "a"; captionShifted: "A"; symView: "*"; symView2: "`"; accents: "aàâæáãäåǎā"; accentsShifted: "AÀÂÆÁÃÄÅǍĀ" }
     CharacterKey { caption: "u"; captionShifted: "U"; symView: "#"; symView2: "^"; accents: "uûùúüǔū"; accentsShifted: "UÛÙÚÜǓŪ" }
   CharacterKey { caption: "i"; captionShifted: "I"; symView: "+"; symView2: "|"; accents: "iîïíìǐī"; accentsShifted: "IÎÏÍÌĎǏĪ" }
    CharacterKey { caption: "e"; captionShifted: "E"; symView: "-"; symView2: "_"; accents: "eêëěē€"; accentsShifted: "EÊËĚĒ€" }
    CharacterKey { caption: "c"; captionShifted: "C"; symView: "="; symView2: "§"; accents: "cç"; accentsShifted: "CÇ" }
    CharacterKey { caption: "t"; captionShifted: "T"; symView: "("; symView2: "{"; accents: "tþ"; accentsShifted: "TÞ" }
    CharacterKey { caption: "s"; captionShifted: "S"; symView: ")"; symView2: "}"; accents: "sŝ"; accentsShifted: "SŜ" }
    CharacterKey { caption: "r"; captionShifted: "R"; symView: "~"; symView2: "°" }
    CharacterKey { caption: "n"; captionShifted: "N"; symView: "!"; symView2: "¡";  accents: "nñ"; accentsShifted: "NÑ" }
    CharacterKey { caption: "m"; captionShifted: "M"; symView: "?"; symView2: "¿" }
    }

  KeyboardRow
    {
    ShiftKey {}
    CharacterKey { caption: "y"; captionShifted: "Y"; symView: "@"; symView2: "«"; accents: "ÿý"; accentsShifted: "ŸÝ" }
    CharacterKey { caption: "x"; captionShifted: "X"; symView: "&"; symView2: "»" }
    CharacterKey { caption: "k"; captionShifted: "K"; symView: "/"; symView2: "÷" }
    CharacterKey { caption: "q"; captionShifted: "Q"; symView: "\\"; symView2: "“" }
    CharacterKey { caption: "g"; captionShifted: "G"; symView: "\""; symView2: "”"; accents: "gĝ"; accentsShifted: "GĜ" }
    CharacterKey { caption: "h"; captionShifted: "H"; symView: ";"; symView2: "„"; accents: "hĥ"; accentsShifted: "HĤ" }
    CharacterKey { caption: "f"; captionShifted: "F"; symView: ":"; symView2: "·" }
    BackspaceKey {}
    }

  KeyboardRow
    {
    splitIndex: 4
    SymbolKey { implicitWidth: symbolKeyWidthNarrow }
    CharacterKey { caption: "."; captionShifted: "…"; implicitWidth: punctuationKeyWidthNarrow; fixedWidth: !splitActive; separator: SeparatorState.HiddenSeparator }
    ContextAwareCommaKey { implicitWidth: punctuationKeyWidthNarrow }
    SpacebarKey {}
    SpacebarKey { active: splitActive; languageLabel: "bépo" }
    CharacterKey { caption: "’"; captionShifted: "'"; implicitWidth: punctuationKeyWidthNarrow; fixedWidth: !splitActive }
    EnterKey {}
    }
  }

Installation

Avant toute chose, il faudra pouvoir administrer le système avec les droits du super-utilisateur, voir cette page.

1. Éditer et sauvegarder les deux fichiers avec leurs noms.

2. Sous connexion MTP (transfert de fichiers), les placer à la racine du répertoire utilisateur (/home/nemo)

3. Dans Règlages → Système → Outil du développeur, activer le Mode développeur).

4. Ouvrir le Terminal, qui vient de s'afficher au bas de l'écran des applications.

5. Saisir su et entrer le mot de passe super-utilisateur.

6. Saisir cp /home/nemo/bepo.qml /usr/share/maliit/plugins/com/jolla/layouts/

7. Saisir cp /home/nemo/layout_bepo.conf /usr/share/maliit/plugins/com/jolla/layouts/

8. Relancer le serveur des claviers: killall maliit-server

9. Dans Règlages → Système → Entrée de texte → bouton clavier, sélectionner Bépo.

10. Lorsque le clavier virtuel apparaît, maintenir le doigt sur la barre espace pemet de choisir sa disposition de clavier parmi celles sélectionnées en 9.