Come modificare un layout di tastiera in Dvorak che presuppone che il layout di tastiera sia QWERTY?


12

Uso Dvorak come layout di tastiera principale. Per scrivere nella mia lingua madre (bengalese), mi piacerebbe usare il layout Probhat . Ma Probhat presume che tu stia utilizzando un layout QWERTY. Come faccio a capire che sto usando Dvorak in modo che corrisponda ai corrispondenti tasti Dvorak?

Chiarimento: ad esempio, quando premo 'E' ('D' in QWERTY), il layout Probhat lo capisce come 'D' (ড). Voglio che lo capisca come 'E' (ী).


Seguendo la risposta fornita in un'altra domanda , ho dato un'occhiata al layout Probhat ( /usr/share/X11/xkb/symbols/bd) e sembra che i caratteri siano codificati nelle posizioni chiave di una tastiera. La tastiera stessa assume che sia una tastiera QWERTY (macbook pro). Quindi immagino che uno dei modi potrebbe essere quello di cambiare i singoli keymappings da QWERTY a dvorak.
Sayem,

Risposte:


5

Il file in posizione / usr / share / X11 / xkb / simboli / bd contiene quanto segue come ultime righe:

//
// XKB symbol :: Probhat Bangla/Bengali Keyboard Layout
// Ref: www.ankurbangla.org/images/probhat_layout.png
//

xkb_symbols "probhat" {
include "in(ben_probhat)"
name[Group1]= "Bangla (Probhat)";
};

Nel tuo caso, se ho capito bene, non dovresti modificare questo file ma invece il layout del file in posizione / usr / share / X11 / xkb / simboli / in

Individua le linee:

xkb_symbols "ben_probhat" {
name[Group1]= "Bangla (India, Probhat)";

Quindi, iniziando il nuovo rimappatura del layout.

Nota che non è necessario rimappare nuovamente ogni tasto 1 per 1 perché gli unicode per la tua lingua sono già impostati per questo layout! Hai solo bisogno di riordinare i tasti e questo funziona per qualsiasi lingua e / o layout la cui fonetica si basa su qwerty e l'utente preferisce mapparlo su dvorak standard.

Nel tuo caso il file / usr / share / X11 / xkb / simboli / in è simile al seguente:

xkb_symbols "ben_probhat" {
name[Group1]= "Bangla (India, Probhat)";
key <ESC>  { [ Escape ] };

// numbers
key <TLDE> { [ U200D, asciitilde   ] };
key <AE01> { [ U09E7, exclam       ] };
key <AE02> { [ U09E8, at           ] };
key <AE03> { [ U09E9, numbersign   ] };
key <AE04> { [ U09EA, U09F3    ] };
key <AE05> { [ U09EB, percent      ] };
key <AE06> { [ U09EC, asciicircum  ] };
key <AE07> { [ U09ED, U099E    ] };
key <AE08> { [ U09EE, U09CE    ] };
key <AE09> { [ U09EF, parenleft    ] };
key <AE10> { [ U09E6, parenright   ] };
key <AE11> { [ minus,     underscore   ] };
key <AE12> { [ equal,     plus         ] };
key <BKSP> { [ BackSpace               ] };

// tab, q to ] 
key <TAB>  { [   Tab,  ISO_Left_Tab     ] };
key <AD01> { [   U09A6,  U09A7  ] };
key <AD02> { [   U09C2,  U098A  ] };
key <AD03> { [   U09C0,  U0988  ] };
key <AD04> { [   U09B0,  U09DC  ] };
key <AD05> { [   U099F,  U09A0  ] };
key <AD06> { [   U098F,  U0990  ] };
key <AD07> { [   U09C1,  U0989  ] };
key <AD08> { [   U09BF,  U0987  ] };
key <AD09> { [   U0993,  U0994  ] };
key <AD10> { [   U09AA,  U09AB  ] };
key <AD11> { [   U09C7,  U09C8  ] };
key <AD12> { [   U09CB,  U09CC  ] };
key <RTRN> { [   Return                 ] };

// caps, a to ' 
//   key <CAPS> { [   Caps_Lock              ] };
key <AC01> { [   U09BE,  U0985  ] };
key <AC02> { [   U09B8,  U09B7  ] };
key <AC03> { [   U09A1,  U09A2  ] };
key <AC04> { [   U09A4,  U09A5  ] };
key <AC05> { [   U0997,  U0998  ] };
key <AC06> { [   U09B9,  U0983  ] };
key <AC07> { [   U099C,  U099D  ] };
key <AC08> { [   U0995,  U0996  ] };
key <AC09> { [   U09B2,  U0982  ] };
key <AC10> { [   semicolon,  colon      ] };
key <AC11> { [   apostrophe, quotedbl   ] };

// shift, z to /
//   key <LFSH> { [   Shift_L                ] };
key <AB01> { [   U09DF,  U09AF  ] };
key <AB02> { [   U09B6,  U09DD  ] };
key <AB03> { [   U099A,  U099B  ] };
key <AB04> { [   U0986,  U098B  ] };
key <AB05> { [   U09AC,  U09AD  ] };
key <AB06> { [   U09A8,  U09A3  ] };
key <AB07> { [   U09AE,  U0999  ] };
key <AB08> { [   comma,      U09C3  ] };
key <AB09> { [   U0964,  U0981  ] };
key <AB10> { [   U09CD,  question   ] };
key <BKSL> { [   U200C,  U0965  ] };

Questo dà questo layout

Ora devi solo riordinare i tasti in questo modo:

// numbers
key <TLDE> { [ grave,   asciitilde, voidsymbol, voidsymbol ] };
key <AE01> ==> key <AE01> <== NO CHANGE!
key <AE02> ==> key <AE02> <== NO CHANGE!
key <AE03> ==> key <AE03> <== NO CHANGE!
key <AE04> ==> key <AE04> <== NO CHANGE!
key <AE05> ==> key <AE05> <== NO CHANGE!
key <AE06> ==> key <AE06> <== NO CHANGE!
key <AE07> ==> key <AE07> <== NO CHANGE!
key <AE08> ==> key <AE08> <== NO CHANGE!
key <AE09> ==> key <AE09> <== NO CHANGE!
key <AE10> ==> key <AE10> <== NO CHANGE!
key <AE11> ==> key <AC11>
key <AE12> ==> key <AD12>
key <BKSP> { [ BackSpace ] };

// key <TAB>  { [ Tab,  ISO_Left_Tab ] };
key <AD01> ==> key <AB02>
key <AD02> ==> key <AB08>
key <AD03> ==> key <AC03>
key <AD04> ==> key <AD09>
key <AD05> ==> key <AC08>
key <AD06> ==> key <AD05>
key <AD07> ==> key <AC04>
key <AD08> ==> key <AC05>
key <AD09> ==> key <AC02>
key <AD10> ==> key <AD04>
key <AD11> ==> key <AE11>
key <AD12> ==> key <AE12>
key <RTRN> { [ Return ] };

// key <CAPS> { [ Caps_Lock ] };
key <AC01> ==> key <AC01> <== NO CHANGE!
key <AC02> ==> key <AC10>
key <AC03> ==> key <AC06>
key <AC04> ==> key <AD06>
key <AC05> ==> key <AD07>
key <AC06> ==> key <AC07>
key <AC07> ==> key <AB03>
key <AC08> ==> key <AB04>
key <AC09> ==> key <AD10>
key <AC10> ==> key <AB01>
key <AC11> ==> key <AD01>

// key <LFSH> { [ Shift_L ] };
key <AB01> ==> key <AB10>
key <AB02> ==> key <AB05>
key <AB03> ==> key <AD08>
key <AB04> ==> key <AB09>
key <AB05> ==> key <AB06>
key <AB06> ==> key <AC09>
key <AB07> ==> key <AB07> <== NO CHANGE!
key <AB08> ==> key <AD02>
key <AB09> ==> key <AD03>
key <AB10> ==> key <AD11>
key <BKSL> { [ backslash,   bar,        voidsymbol, voidsymbol ] };

In modo che appaia come sotto nel file / usr / share / X11 / xkb / simboli / in

xkb_symbols "ben_probhat" {
name[Group1]= "Bangla (India, Probhat)";
key <ESC>  { [ Escape ] };

// numbers
key <TLDE> { [ U200D, asciitilde   ] };
key <AE01> { [ U09E7, exclam       ] };
key <AE02> { [ U09E8, at           ] };
key <AE03> { [ U09E9, numbersign   ] };
key <AE04> { [ U09EA, U09F3    ] };
key <AE05> { [ U09EB, percent      ] };
key <AE06> { [ U09EC, asciicircum  ] };
key <AE07> { [ U09ED, U099E    ] };
key <AE08> { [ U09EE, U09CE    ] };
key <AE09> { [ U09EF, parenleft    ] };
key <AE10> { [ U09E6, parenright   ] };
key <AC11> { [ minus,     underscore   ] };
key <AD12> { [ equal,     plus         ] };
key <BKSP> { [ BackSpace               ] };

// tab, q to ] 
key <TAB>  { [   Tab,  ISO_Left_Tab     ] };
key <AB02> { [   U09A6,  U09A7  ] };
key <AB08> { [   U09C2,  U098A  ] };
key <AC03> { [   U09C0,  U0988  ] };
key <AD09> { [   U09B0,  U09DC  ] };
key <AC08> { [   U099F,  U09A0  ] };
key <AD05> { [   U098F,  U0990  ] };
key <AC04> { [   U09C1,  U0989  ] };
key <AC05> { [   U09BF,  U0987  ] };
key <AC02> { [   U0993,  U0994  ] };
key <AD04> { [   U09AA,  U09AB  ] };
key <AE11> { [   U09C7,  U09C8  ] };
key <AE12> { [   U09CB,  U09CC  ] };
key <RTRN> { [   Return                 ] };

// caps, a to ' 
//   key <CAPS> { [   Caps_Lock              ] };
key <AC01> { [   U09BE,  U0985  ] };
key <AC10> { [   U09B8,  U09B7  ] };
key <AC06> { [   U09A1,  U09A2  ] };
key <AD06> { [   U09A4,  U09A5  ] };
key <AD07> { [   U0997,  U0998  ] };
key <AC07> { [   U09B9,  U0983  ] };
key <AB03> { [   U099C,  U099D  ] };
key <AB04> { [   U0995,  U0996  ] };
key <AD10> { [   U09B2,  U0982  ] };
key <AB01> { [   semicolon,  colon      ] };
key <AD01> { [   apostrophe, quotedbl   ] };

// shift, z to /
//   key <LFSH> { [   Shift_L                ] };
key <AB10> { [   U09DF,  U09AF  ] };
key <AB05> { [   U09B6,  U09DD  ] };
key <AD08> { [   U099A,  U099B  ] };
key <AB09> { [   U0986,  U098B  ] };
key <AB06> { [   U09AC,  U09AD  ] };
key <AC09> { [   U09A8,  U09A3  ] };
key <AB07> { [   U09AE,  U0999  ] };
key <AD02> { [   comma,      U09C3  ] };
key <AD03> { [   U0964,  U0981  ] };
key <AD11> { [   U09CD,  question   ] };
key <BKSL> { [   U200C,  U0965  ] };

In definitiva dando il layout presumo che ti piacerebbe

Nota che devi fare un backup del layout del file originale prima di iniziare a modificarlo e salvarlo come root, altrimenti dovrai scaricarlo e ripristinarlo da freedesktop.org/wiki/Software/XKeyboardConfig

Anche se non capisco nulla dall'alfabeto, spero che questo possa aiutare perché sto usando anche il layout dvorak per molti anni e spero che un giorno possa sostituire il layout qwerty da essere sempre lo standard :(


1
Questo è esattamente quello che ho chiesto. Puntelli per l'aggiunta di schermate. Grazie.
Sayem,

7

Metodo 1: utilizzo di un editor di testo

  1. Apri il file /etc/default/keyboard come root. Ad esempio, puoi eseguiresudo nano /etc/default/keyboard
  2. Cambia la linea XKBMODEL="pc105" con il tuo modello di tastiera (l'elenco completo è qui , a partire dalla linea 2).
  3. Cambia la linea XKBLAYOUT="en" con il tuo layout (presumibilmente "bd". Vedi l'elenco completo sopra, a partire dalla linea 189).
  4. Cambia la linea XKBVARIANT="" con la tua variante (Vedi l'elenco completo sopra, a partire dalla linea 284).
  5. Salva il file ( Ctrl+X e premereY ).
  6. Riavvia la configurazione della tastiera con sudo service keyboard-setup restart

Metodo 2: utilizzo dello keyboard-configurationstrumento.

  1. Installa con sudo apt-get install keyboard-configuration (potresti averlo già installato)
  2. Esegui il programma di configurazione, digitando sudo dpkg-reconfigure keyboard-configuration
  3. Segui le istruzioni per selezionare il modello della tastiera, il layout , la variante , ecc.
  4. Riavvia la configurazione della tastiera con sudo service keyboard-setup restart

Fonte: adattato da qui .


L'unica buona risposta! +1
Fabby,

Grazie per la risposta dettagliata Tuttavia, non ho alcun problema con la modifica del layout.
Sayem,

Il layout Probhat colloca personaggi simili alle loro controparti inglesi in stile QWERTY. Per disegnare un'analogia, se stavo usando il layout Dvorak in inglese e poi passassi al layout francese, le lettere francesi sono posizionate in stile QWERTY.
Sayem,

1
Strano. Sicuramente una combinazione delle opzioni deve funzionare. Se il bengalese assume QWERTY, perché non selezionare qualsiasi modello QWERTY come predefinito? (anche se il tuo non lo è)

Sembra che se ci fosse un modo per impostare XKBLAYOUT=dvorak, convertirà tutti i layout che assumono il layout QWERTY in Dvorak. Sfortunatamente, questo non è un valore valido (ho provato a impostarlo comunque ma non ha funzionato). Sembra che l'unica opzione che mi rimane sia quella di cambiare la mappatura dei singoli tasti in modo che corrisponda al layout di Dvorak.
Sayem,

3

Devi prima installare il ibus-avropacchetto. Troverai una buona descrizione su come farlo qui . Devi aprire un terminale, fare cd /usr/srce seguire le istruzioni.

Successivamente, è necessario selezionare il layout della tastiera dalla GUI come descritto.


Non voglio usare Avro. Voglio usare un layout diverso (Probhat) mentre le lettere corrispondono a Dvorak anziché a QWERTY.
Sayem,

Quindi, so solo SCIMche è per le lingue asiatiche. Ma non è un layout di tastiera bengalese. C'è una segnalazione di bug in Ubuntu per Bengali (Jatiya / National) ( bugs.launchpad.net/ubuntu/+source/console-setup/+bug/1570233 ). Ma non conosco la differenza tra `Jatiya` e` Probhat`. Spero che sia d'aiuto.
musbach,

3

Il modo più semplice per te è modificare un layout dvorak esistente.

ci sono diverse versioni del layout di dvorak disponibili in X11:

  • Inglese (Dvorak)
  • Inglese (Dvorak, internazionale con chiavi morte)
  • Inglese (alternativa internazionale Dvorak senza chiavi morte) ecc.

Cercali nel file / usr / share / X11 / xkb / simboli / us o / usr / share / X11 / xkb / simboli / gb.

L'idea è quella di sceglierne uno che non stai usando - scegli quello più conveniente nella lista, il più vicino al Dvorak che stai già usando - e di sostituire i caratteri inglesi in quel file con i caratteri bengalesi che vuoi assegnare a ciascuno chiave per. (non dimenticare di salvare una copia del file che stai modificando)

Dovrebbe sembrare come questo

key <TLDE> { [dead_grave, dead_tilde,         grave,       asciitilde ] };

key <AE01> { [     1,     exclam,    exclamdown,      onesuperior ] };
key <AE02> { [     2,         at,   twosuperior, dead_doubleacute ] };
key <AE03> { [     3, numbersign, threesuperior,      dead_macron ] };
key <AE04> { [     4,     dollar,      currency,         sterling ] };
key <AE05> { [     5,    percent,      EuroSign,     dead_cedilla ] };
key <AE06> { [    6, dead_circumflex,    onequarter,      asciicircum ] };
key <AE07> { [     7,  ampersand,       onehalf,    dead_horn ] };
key <AE08> { [     8,   asterisk, threequarters,      dead_ogonek ] };
key <AE09> { [     9,  parenleft, leftsinglequotemark, dead_breve ] };
key <AE10> { [     0, parenright, rightsinglequotemark, dead_abovering ] };
key <AE11> { [ bracketleft,  braceleft,  guillemotleft, leftdoublequotemark ] };
key <AE12> { [bracketright, braceright, guillemotright, rightdoublequotemark ] };

key <AD01> { [dead_acute, dead_diaeresis, apostrophe,        quotedbl ] };
key <AD02> { [     comma,       less,      ccedilla,         Ccedilla ] };
key <AD03> { [    period,    greater, dead_abovedot,       dead_caron ] };
key <AD04> { [     p,          P,    odiaeresis,       Odiaeresis ] };
key <AD05> { [     y,          Y,    udiaeresis,       Udiaeresis ] };
// key <AD06> { [      f,   F       ]   };
// key <AD07> { [      g,   G       ]   };
key <AD08> { [     c,          C,     copyright,             cent ] };
key <AD09> { [     r,          R,    registered,       registered ] };
key <AD10> { [     l,          L,        oslash,         Ooblique ] };
key <AD11> { [     slash,   question,  questiondown,        dead_hook ] };
// key <AD12> { [     equal,       plus,      multiply,         division ] };

key <AC01> { [     a,          A,        aacute,           Aacute ] };
key <AC02> { [     o,          O,        oacute,           Oacute ] };
key <AC03> { [     e,          E,        eacute,           Eacute ] };
key <AC04> { [     u,          U,        uacute,           Uacute ] };
key <AC05> { [     i,          I,        iacute,           Iacute ] };
key <AC06> { [     d,          D,           eth,              ETH ] };
// key <AC07> { [      h,   H       ]   };
key <AC08> { [     t,          T,         thorn,            THORN ] };
key <AC09> { [     n,          N,        ntilde,           Ntilde ] };
key <AC10> { [     s,          S,        ssharp,          section ] };
// key <AC11> { [     minus, underscore,           yen,    dead_belowdot ] };

key <AB01> { [ semicolon,      colon,     paragraph,           degree ] };
key <AB02> { [     q,          Q,    adiaeresis,       Adiaeresis ] };
// key <AB03> { [      j,   J       ]   };
key <AB04> { [     k,          K,            oe,               OE ] };
// key <AB05> { [      x,   X       ]   };
// key <AB06> { [      b,   B       ]   };
key <AB07> { [     m,          M,            mu,               mu ] };
key <AB08> { [     w,          W,         aring,            Aring ] };
// key <AB09> { [      v,   V       ]   };
key <AB10> { [     z,          Z,            ae,               AE ] };

key <BKSL> { [ backslash,        bar,       notsign,        brokenbar ] };

include "level3(ralt_switch)"

Per usare l'esempio che hai fornito, sulla riga: key <AC03>sostituisci econ U2496, che è il codice UTF corrispondente . Nel file / usr / share / X11 / xkb / simboli / bd usano una codifica come "0x10009EA" ma penso che tu possa usare il codice UTF che puoi trovare in questa pagina.

una volta terminato, puoi salvare direttamente in / usr / share / X11 / xkb / simboli / us o / usr / share / X11 / xkb / simboli / gb che stavi modificando (il che funziona bene, significa solo che avere un layout bengalese all'interno di un file di layout inglese), oppure puoi semplicemente copiare il risultato nel file / usr / share / X11 / xkb / simboli / bd e sostituire il layout predefinito con quello appena creato. stai solo attento e lascia tutto questo codice così com'è:

default  partial alphanumeric_keys
xkb_symbols "basic" {
   name[Group1]= "Bangla";
   key <ESC>  { [ Escape ] };

Quindi tutto ciò che devi fare è eliminare tutti i file .xkm da "/ var / lib / xkb" e il gioco è fatto, il layout che hai appena modificato è pronto per essere utilizzato.

Quando ho creato il mio layout usando questo tutorial (usando il bépo di layout francese come base per un layout russo che corrisponde al bépo a cui sono abituato) non sono riuscito a trovare un nuovo layout, quindi è così che ho usato per farlo accadere.

Per illustrare meglio questa spiegazione, ecco come appare il mio file / usr / share / X11 / xkb / simboli / fr. prima hai il layout bépo predefinito, e poi hai il mio layout bépo / russo. Si noti che vengono modificate solo la seconda, terza e quarta riga. il codice include "fr(bepo)"si occupa di questo, in modo che la prima riga di questo layout sia la prima riga del layout bépo predefinito.

// Bépo : Improved ergonomic french keymap using Dvorak method.
// Built by community on 'Dvorak Fr / Bépo' :
// see http://www.clavier-dvorak.org/wiki/ to join and help.
// XOrg integration (1.0rc2 version) in 2008
// by Frédéric Boiteux <fboiteux at free dot fr>
//
// Bépo layout (1.0rc2 version) for a pc105 keyboard (french) :
// ┌─────┐
// │ S A │   S = Shift,  A = AltGr + Shift
// │ s a │   s = normal, a = AltGr
// └─────┘
//
// ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┲━━━━━━━━━┓
// │ # ¶ │ 1 „ │ 2 “ │ 3 ” │ 4 ≤ │ 5 ≥ │ 6   │ 7 ¬ │ 8 ¼ │ 9 ½ │ 0 ¾ │ ° ′ │ ` ″ ┃ ⌫ Retour┃
// │ $ – │ " — │ « < │ » > │ ( [ │ ) ] │ @ ^ │ + ± │ - − │ / ÷ │ * × │ = ≠ │ % ‰ ┃  arrière┃
// ┢━━━━━┷━┱───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┺━┳━━━━━━━┫
// ┃       ┃ B ¦ │ É ˝ │ P § │ O Œ │ È ` │ !   │ V   │ D Ð │ L   │ J IJ │ Z Ə │ W   ┃Entrée ┃
// ┃Tab ↹  ┃ b | │ é ˊ │ p & │ o œ │ è ` │ ˆ ¡ │ v ˇ │ d ð │ l / │ j ij │ z ə │ w ̆  ┃   ⏎   ┃
// ┣━━━━━━━┻┱────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┺┓      ┃
// ┃        ┃ A Æ │ U Ù │ I ˙ │ E ¤ │ ; ̛  │ C ſ │ T Þ │ S ẞ │ R ™ │ N   │ M º │ Ç , ┃      ┃
// ┃Maj ⇬   ┃ a æ │ u ù │ i ̈  │ e € │ , ’ │ c © │ t þ │ s ß │ r ® │ n ˜ │ m ¯ │ ç ¸ ┃      ┃
// ┣━━━━━━━┳┹────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┲┷━━━━━┻━━━━━━┫
// ┃       ┃ Ê   │ À   │ Y ‘ │ X ’ │ : · │ K   │ ? ̉  │ Q ̣  │ G   │ H ‡ │ F ª ┃             ┃
// ┃Shift ⇧┃ ê / │ à \ │ y { │ x } │ . … │ k ~ │ ' ¿ │ q ˚ │ g µ │ h † │ f ˛ ┃Shift ⇧      ┃
// ┣━━━━━━━╋━━━━━┷━┳━━━┷━━━┱─┴─────┴─────┴─────┴─────┴─────┴───┲━┷━━━━━╈━━━━━┻━┳━━━━━━━┳━━━┛
// ┃       ┃       ┃       ┃ Espace inséc.   Espace inséc. fin ┃       ┃       ┃       ┃
// ┃Ctrl   ┃Meta   ┃Alt    ┃ ␣ (Espace)      _               ␣ ┃AltGr ⇮┃Menu   ┃Ctrl   ┃
// ┗━━━━━━━┻━━━━━━━┻━━━━━━━┹───────────────────────────────────┺━━━━━━━┻━━━━━━━┻━━━━━━━┛
partial alphanumeric_keys
xkb_symbols "bepo" {

    include "level3(ralt_switch)"
    include "keypad(oss)"

    name[Group1]= "French (Bepo, ergonomic, Dvorak way)";

    // First row
    key <TLDE> { [          dollar,   numbersign,        endash,       paragraph ] }; // $ # – ¶
    key <AE01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [        quotedbl,            1,         emdash, doublelowquotemark ] }; // " 1 — „
    key <AE02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [   guillemotleft,            2,           less,  leftdoublequotemark ] }; // « 2 < “
    key <AE03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [  guillemotright,            3,        greater, rightdoublequotemark ] }; // » 3 > ”
    key <AE04> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [       parenleft,            4,    bracketleft,      lessthanequal ] }; // ( 4 [ ≤
    key <AE05> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [      parenright,            5,   bracketright,   greaterthanequal ] }; // ) 5 ] ≥
    key <AE06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [              at,            6,    asciicircum                 ] }; // @ 6 ^
    key <AE07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [            plus,            7,      plusminus,        notsign ] }; // + 7 ± ¬
    key <AE08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [           minus,            8,          U2212,     onequarter ] }; // - 8 − ¼
    key <AE09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [           slash,            9,       division,        onehalf ] }; // / 9 ÷ ½
    key <AE10> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [        asterisk,            0,       multiply,  threequarters ] }; // * 0 × ¾
    key <AE11> { [           equal,       degree,       notequal,        minutes ] }; // = ° ≠ ′
    key <AE12> { [         percent,        grave,          U2030,        seconds ] }; // % ` ‰ ″

    // Second row
    key <AD01> { [               b,            B,            bar,      brokenbar ] }; // b B | ¦
    key <AD02> { [          eacute,       Eacute,     dead_acute, dead_doubleacute ] }; // é É ˊ ˝
    key <AD03> { [               p,            P,      ampersand,        section ] }; // p P & §
    key <AD04> { [               o,            O,             oe,             OE ] }; // o O œ Œ
    key <AD05> { [          egrave,       Egrave,     dead_grave,          grave ] }; // è È ` `
    key <AD06> { [ dead_circumflex,       exclam,     exclamdown                 ] }; // ^ ! ¡
    key <AD07> { [               v,            V,     dead_caron                 ] }; // v V ˇ
    key <AD08> { [               d,            D,            eth,            ETH ] }; // d D ð Ð
    key <AD09> { [               l,            L,    dead_stroke                 ] }; // l L /
    key <AD10> { [               j,            J,          U0133,          U0132 ] }; // j J ij IJ
    key <AD11> { [               z,            Z,          schwa,          SCHWA ] }; // z Z ə Ə
    key <AD12> { [               w,            W,     dead_breve                 ] }; // w W ̆

    // Third row
    key <AC01> { [               a,            A,             ae,             AE ] }; // a A æ Æ
    key <AC02> { [               u,            U,         ugrave,         Ugrave ] }; // u U ù Ù
    key <AC03> { [               i,            I, dead_diaeresis,  dead_abovedot ] }; // i I ̈ ˙
    key <AC04> { [               e,            E,       EuroSign,  dead_currency ] }; // e E € ¤
    key <AC05> { [           comma,    semicolon, rightsinglequotemark, dead_horn ] }; // , ; ’ ̛
    key <AC06> { [               c,            C,      copyright,          U017F ] }; // c C © ſ
    key <AC07> { [               t,            T,          thorn,          THORN ] }; // t T þ Þ
    key <AC08> { [               s,            S,         ssharp,          U1E9E ] }; // s S ß ẞ
    key <AC09> { [               r,            R,     registered,      trademark ] }; // r R ® ™
    key <AC10> { [               n,            N,     dead_tilde                 ] }; // n N ~
    key <AC11> { [               m,            M,    dead_macron,      masculine ] }; // m M ̄ º
    key <BKSL> { [        ccedilla,     Ccedilla,   dead_cedilla, dead_belowcomma ] }; // ç Ç ¸ ,

    // Fourth row
    key <LSGT> { [     ecircumflex,  Ecircumflex,          slash                 ] }; // ê Ê /
    key <AB01> { [          agrave,       Agrave,      backslash                 ] }; // à À \
    key <AB02> { [               y,            Y,      braceleft, leftsinglequotemark  ] }; // y Y { ‘
    key <AB03> { [               x,            X,     braceright, rightsinglequotemark ] }; // x X } ’
    key <AB04> { [          period,        colon,       ellipsis, periodcentered ] }; // . : … ·
    key <AB05> { [               k,            K,     asciitilde                 ] }; // k K ~
    key <AB06> { [      apostrophe,     question,   questiondown,      dead_hook ] }; // ' ? ¿ ̉
    key <AB07> { [               q,            Q, dead_abovering,  dead_belowdot ] }; // q Q ˚ ̣
    key <AB08> { [               g,            G,     dead_greek                 ] }; // g G µ
    key <AB09> { [               h,            H,         dagger,   doubledagger ] }; // h H † ‡
    key <AB10> { [               f,            F,    dead_ogonek,    ordfeminine ] }; // f F ̨ ª

    key <SPCE> { [           space, nobreakspace,     underscore,          U202F ] }; // ␣ (espace insécable) _ (espace insécable fin)
};

// ┌───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┲━━━━━━━━━━━━━━━┓
// │ #   ¶ │ 1   „ │ 2   “ │ 3   ” │ 4   ≤ │ 5   ≥ │ 6     │ 7   ¬ │ 8   ¼ │ 9   ½ │ 0   ¾ │ °   ′ │ `   ″ ┃               ┃
// │ $   – │ "   — │ «   < │ »   > │ (   [ │ )   ] │ @   ^ │ +   ± │ -   − │ /   ÷ │ *   × │ =   ≠ │ %   ‰ ┃      <--      ┃
// ┢━━━━━━━┷━━━┱───┴───┬───┴───┬───┴───┬───┴───┬───┴───┬───┴───┬───┴───┬───┴───┬───┴───┬───┴───┬───┴───┬───┺━━━┳━━━━━━━━━━━┫
// ┃    |<-    ┃ Б   ¦ │ Ы   Ѝ │ П   § │ О   І │ Ь   Ї │ !     │ В     │ Д   Ђ │ Л   Љ │ Ж   Ј │ З   Ѕ │ Ш     ┃      |    ┃
// ┃    ->|    ┃ б   | │ ы   ѝ │ п   & │ о   і │ ь   ї │ №   ¡ │ в   ˇ │ д   ђ │ л   љ │ ж   ј │ з   ѕ │ ш   ˘ ┃    <-'    ┃b é p o è ^ v d l j z w
// ┣━━━━━━━━━━━┻━┱─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┺━┓         ┃
// ┃             ┃ А   Ѣ │ У   Ў │ И   Й │ Е   Ё │ ;    ̛ │ Ц   ſ │ Т   Ћ │ С   ẞ │ Р   ™ │ Н   Њ │ М   º │ Щ   Џ ┃         ┃
// ┃    CAPS     ┃ а   ѣ │ у   ў │ и   й │ е   ё │ ,   ’ │ ц   © │ т   ћ │ с   ß │ р   ® │ н   њ │ м   ¯ │ щ   џ ┃         ┃a u i e , c t s r n m ç
// ┣━━━━━━━┳━━━━━┹─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┬─────┴─┲━━━━━┷━━━━━━━┻━━━━━━━━━┫
// ┃   ^   ┃ Э   Є │ Я     │ Ю   ‘ │ Х   ’ │ :   · │ К   Ќ │ ?    ̉ │ Ъ    ̣ │ Г   Ѓ │ Ч   Ґ │ Ф   ª ┃           ^           ┃
// ┃   |   ┃ э   є │ я   \ │ ю   { │ х   } │ .   … │ к   ќ │ '   ¿ │ ъ   ° │ г   ѓ │ ч   ґ │ ф   ˛ ┃           |           ┃ê à y x . k ' q g h f
// ┣━━━━━━━┻━━━┳━━━┷━━━━━┳━┷━━━━━━━╈━━━━━━━┷━━━━━━━┷━━━━━━━┷━━━━━━━┷━━━━━━━┷━━━━━┳━┷━━━━━━━╈━━━━━━━┻━┳━━━━━━━━━┳━━━━━━━━━━━┫
// ┃           ┃         ┃         ┃           ␣                   NNBSP         ┃         ┃         ┃         ┃           ┃
// ┃   Ctrl    ┃  WinG   ┃   Alt   ┃           ⍽                     _           ┃  AltGr  ┃  WinD   ┃  WinM   ┃   Ctrl    ┃
// ┗━━━━━━━━━━━┻━━━━━━━━━┻━━━━━━━━━┻━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┻━━━━━━━━━┻━━━━━━━━━┻━━━━━━━━━┻━━━━━━━━━━━┛

// based on a keyboard map from http://forum.bepo.fr/viewtopic.php?id=695

partial alphanumeric_keys
xkb_symbols "bepo_latin9" {

    // Restricts the fr(bepo) layout to latin9 symbols

    include "fr(bepo)"

    name[Group1]="French (Bepo, ergonomic, Dvorak way, Latin-9 only)";

    // Second row
    key <AD01> { [       Cyrillic_be,       Cyrillic_BE,                       bar,                   brokenbar ] }; // б Б | ¦
    key <AD02> { [       Cyrillic_yeru,     Cyrillic_YERU,                   U045D,                       U040D ] }; // ы Ы ѝ Ѝ
    key <AD03> { [       Cyrillic_pe,       Cyrillic_PE,                 ampersand,                     section ] }; // п П & §
    key <AD04> { [        Cyrillic_o,        Cyrillic_O,               Ukrainian_i,                  Ukrainian_I] }; // о О і І 
    key <AD05> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN,              Ukrainian_yi,                Ukrainian_YI ] }; // ь Ь ї Ї
    key <AD06> { [        numerosign,            exclam,                exclamdown                              ] }; // № ! ¡
    key <AD07> { [       Cyrillic_ve,       Cyrillic_VE,                dead_caron                              ] }; // в В ˇ
    key <AD08> { [       Cyrillic_de,       Cyrillic_DE,               Serbian_dje,                 Serbian_DJE ] }; // д Д ђ Ђ
    key <AD09> { [       Cyrillic_el,       Cyrillic_EL,              Cyrillic_lje,                Cyrillic_LJE ] }; // л Л љ Љ
    key <AD10> { [      Cyrillic_zhe,      Cyrillic_ZHE,                Cyrillic_je,                 Cyrillic_JE] }; // ж Ж ј Ј
    key <AD11> { [       Cyrillic_ze,       Cyrillic_ZE,             Macedonia_dse,               Macedonia_DSE ] }; // з З ѕ Ѕ
    key <AD12> { [      Cyrillic_sha,      Cyrillic_SHA,                dead_breve                              ] }; // ш Ш ˘

    // Third row
    key <AC01> { [        Cyrillic_a,        Cyrillic_A,                     U0463,                        U0462] }; // а А ѣ Ѣ
    key <AC02> { [        Cyrillic_u,        Cyrillic_U,       Byelorussian_shortu,          Byelorussian_SHORTU] }; // у У ў Ў
    key <AC03> { [        Cyrillic_i,        Cyrillic_I,           Cyrillic_shorti,              Cyrillic_SHORTI] }; // и И й Й
    key <AC04> { [       Cyrillic_ie,       Cyrillic_IE,               Cyrillic_io,                  Cyrillic_IO] }; // е Е ё Ё
    key <AC06> { [      Cyrillic_tse,      Cyrillic_TSE,                 copyright,                       U017F ] }; // ц Ц © ſ
    key <AC07> { [       Cyrillic_te,       Cyrillic_TE,              Serbian_tshe,                 Serbian_TSHE] }; // т Т ћ Ћ
    key <AC08> { [       Cyrillic_es,       Cyrillic_ES,                    ssharp,                        U1E9E] }; // с С ß ẞ
    key <AC09> { [       Cyrillic_er,       Cyrillic_ER,                registered,                   trademark ] }; // р Р ® ™
    key <AC10> { [       Cyrillic_en,       Cyrillic_EN,              Cyrillic_nje,                 Cyrillic_NJE] }; // н Н њ Њ
    key <AC11> { [       Cyrillic_em,       Cyrillic_EM,               dead_macron,                   masculine ] }; // м М ¯ º
    key <BKSL> { [    Cyrillic_shcha,    Cyrillic_SHCHA,             Cyrillic_dzhe,                Cyrillic_DZHE] }; // щ Щ џ Џ

    // Fourth row
    key <LSGT> { [        Cyrillic_e,        Cyrillic_E,              Ukrainian_ie,                Ukrainian_IE ] }; // э Э є Є
    key <AB01> { [       Cyrillic_ya,       Cyrillic_YA,                 backslash                              ] }; // я Я \
    key <AB02> { [       Cyrillic_yu,       Cyrillic_YU,                 braceleft,         leftsinglequotemark ] }; // ю Ю { ‘
    key <AB03> { [       Cyrillic_ha,       Cyrillic_HA,                braceright,        rightsinglequotemark ] }; // х Х } ’
    key <AB05> { [       Cyrillic_ka,       Cyrillic_KA,             Macedonia_kje,               Macedonia_KJE ] }; // к К ќ Ќ
    key <AB07> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN,            dead_abovering,               dead_belowdot ] }; // ъ Ъ °  ̣
    key <AB08> { [      Cyrillic_ghe,      Cyrillic_GHE,             Macedonia_gje,               Macedonia_GJE ] }; // г Г ѓ Ѓ
    key <AB09> { [      Cyrillic_che,      Cyrillic_CHE, Ukrainian_ghe_with_upturn,   Ukrainian_GHE_WITH_UPTURN ] }; // ч Ч ґ Ґ
    key <AB10> { [       Cyrillic_ef,       Cyrillic_EF,               dead_ogonek,                 ordfeminine ] }; // ф Ф ˛ ª

1

Sooo Non ho mai usato questa lingua ma nelle tue impostazioni puoi andare sulla tastiera fare clic sulle impostazioni del layout, sul piccolo +, quindi cercare bengalese e posso vedere diversi tipi di probhat, puoi cercare Dvorak all'interno, ma dopo qualche test dovresti trovare quello che vuoi.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.