<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
	<id>https://bepo.fr/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Legrostdg</id>
	<title>Disposition de clavier bépo - Contributions [fr]</title>
	<link rel="self" type="application/atom+xml" href="https://bepo.fr/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Legrostdg"/>
	<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/Sp%C3%A9cial:Contributions/Legrostdg"/>
	<updated>2026-05-05T07:08:48Z</updated>
	<subtitle>Contributions</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Mutt&amp;diff=15828</id>
		<title>Mutt</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Mutt&amp;diff=15828"/>
		<updated>2009-10-09T17:50:56Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;[http://fr.wikipedia.org/wiki/Mutt Mutt]&#039;&#039;&#039; est un client mail écrit en [http://fr.wikipedia.org/wiki/Ncurses Ncurses]. Pour avoir des raccourcis de déplacement « à la vim », vous pouvez ajouter dans votre {{c|~/.muttrc}} (et éventuellement adapter) les lignes suivantes : &lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
###################&lt;br /&gt;
## bépo&lt;br /&gt;
bind browser,attach t next-entry&lt;br /&gt;
bind browser,attach s previous-entry&lt;br /&gt;
bind index t next-undeleted&lt;br /&gt;
bind index s previous-undeleted&lt;br /&gt;
bind generic,index,browser T next-entry&lt;br /&gt;
bind generic,index,browser S previous-entry&lt;br /&gt;
bind pager t next-line&lt;br /&gt;
bind pager s previous-line&lt;br /&gt;
bind index,attach j tag-entry&lt;br /&gt;
bind index J tag-pattern&lt;br /&gt;
bind index ^J untag-pattern&lt;br /&gt;
bind index &amp;lt;Esc&amp;gt;j tag-thread&lt;br /&gt;
bind pager,index k save-message&lt;br /&gt;
bind attach,pager c exit&lt;br /&gt;
bind browser c previous-page&lt;br /&gt;
macro index c &amp;quot;y&amp;quot;&lt;br /&gt;
bind browser r select-entry&lt;br /&gt;
bind index r display-message&lt;br /&gt;
bind pager r view-attachments&lt;br /&gt;
bind attach r view-attach&lt;br /&gt;
bind attach k save-entry&lt;br /&gt;
bind index,pager,attach , reply&lt;br /&gt;
####################&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Mutt&amp;diff=13779</id>
		<title>Mutt</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Mutt&amp;diff=13779"/>
		<updated>2009-05-25T13:33:43Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : Page créée avec « Mutt est un client mail en Ncurses. Pour avoir des raccourcis de déplacement alla vim, vous pouvez ajouter dans votre .muttrc (et éventuellement adapter) les lignes suivant... »&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Mutt est un client mail en Ncurses. Pour avoir des raccourcis de déplacement alla vim, vous pouvez ajouter dans votre .muttrc (et éventuellement adapter) les lignes suivantes: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
###################                                                                                &lt;br /&gt;
## bépo                                                                                            &lt;br /&gt;
bind generic,index,browser t next-entry&lt;br /&gt;
bind generic,index,browser s previous-entry&lt;br /&gt;
bind pager t next-line&lt;br /&gt;
bind pager s previous-line&lt;br /&gt;
bind index j tag-entry&lt;br /&gt;
bind index J tag-pattern&lt;br /&gt;
bind pager,index k save-message&lt;br /&gt;
bind attach,pager c exit&lt;br /&gt;
bind browser c previous-page&lt;br /&gt;
macro index c &amp;quot;y&amp;quot;&lt;br /&gt;
bind browser r select-entry&lt;br /&gt;
bind index r display-message&lt;br /&gt;
bind pager r view-attachments&lt;br /&gt;
bind attach r view-attach&lt;br /&gt;
bind index,pager,attach , reply&lt;br /&gt;
####################&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisation&amp;diff=13778</id>
		<title>Utilisation</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisation&amp;diff=13778"/>
		<updated>2009-05-25T13:30:56Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : /* Mieux utiliser vos logiciels */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{sommaire à droite}}&lt;br /&gt;
Cette page recense les conseils pour une utilisation optimale du bépo. En cours de route, vous pouvez consulter le [[glossaire]] pour vous familiariser avec le vocabulaire du projet.&lt;br /&gt;
&lt;br /&gt;
=== Ergonomie ===&lt;br /&gt;
&lt;br /&gt;
Avant de commencer à taper en bépo, intéressez-vous à votre confort. Êtes-vous bien assis ? Votre clavier est-il bien positionné ? Améliorez l’&#039;&#039;&#039;[[Ergonomie|ergonomie de votre poste de travail]]&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== Apprentissage ===&lt;br /&gt;
&lt;br /&gt;
Découvrez les &#039;&#039;&#039;[[Apprentissage|conseils pour mieux utiliser votre clavier]]&#039;&#039;&#039; : comment positionner ses doigts, où faut-il regarder…&lt;br /&gt;
&lt;br /&gt;
N&#039;hésitez pas à télécharger, imprimer (et même distribuer) notre [http://download.tuxfamily.org/dvorak/documents/bepo_aide-memoire.pdf aide-mémoire]. Pliez-le en trois, et posez-le sur votre bureau, devant votre écran. Vous pourrez vous y référer pour savoir où appuyer sans déplacer vos mains.&lt;br /&gt;
&lt;br /&gt;
Nous vous proposons des [[Exercices|exercices]] d&#039;apprentissage. Comme les exercices « traditionnels » de l&#039;azerty, il faudra commencer par les  lettres de la rangée de base, mais vous verrez tout de suite les avantages du bépo : les 8 lettres placées sous les doigts au repos vous permettent déjà de taper des phrases telles que « une eau saine et sans nitrates rassure » plutôt que des groupes de lettres inutiles, du genre « dfdf jljl ».&lt;br /&gt;
&lt;br /&gt;
Certains logiciels d&#039;apprentissage pourront vous être utiles (&#039;&#039;à compléter&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
{{note|type=note|Le [[Manuel|manuel d&#039;utilisation]], sur le [[Manuel|wiki en version complète]], et [http://download.tuxfamily.org/dvorak/documents/bepo_aide-memoire.pdf en résumé dans l&#039;aide-mémoire]  passe en revue les caractères disponibles sur le clavier, et donne quelques conseils de typographie française.}}&lt;br /&gt;
&lt;br /&gt;
=== Mieux utiliser vos logiciels ===&lt;br /&gt;
&lt;br /&gt;
Certains programmes nécessitent l&#039;utilisation intensive de raccourcis claviers. Or, ces combinaisons de touches sont étroitement liés à la position des lettres sur le clavier : le bépo va chambouler vos habitudes. Pour vous aidez, la communauté est passée par là !&lt;br /&gt;
* Sous Windows, il est possible (mais pas obligatoire !) de conserver les raccourcis claviers azerty ou qwerty : cf. la page d&#039;installation.&lt;br /&gt;
* Vous pouvez adaptez votre bureau UNIX :&lt;br /&gt;
** [[Utilisation avec Gnome]] ;&lt;br /&gt;
** [[Utilisation avec KDE]] ;&lt;br /&gt;
** [[Awesome]].&lt;br /&gt;
** [[Utilisateur:Acieroid|ratpoison]]&lt;br /&gt;
&lt;br /&gt;
Pour les plus motivés, sous UNIX :&lt;br /&gt;
* Arrêtez le copier-coller à la souris (sélections et clic-droits) :&lt;br /&gt;
** Passez à la ligne de commande avec [[Xclip]]&lt;br /&gt;
** Coller des données sur [http://pastealacon.com pastealacon.com] en ligne de commande: [[Utilisateur:Legrostdg/Pastealacon|Script pastealacon.pl]].&lt;br /&gt;
* Réglez votre terminal virtuel: [[URxvt]].&lt;br /&gt;
* Personnalisez l&#039;éditeur [[Less]] (il sert entre autre à afficher les pages de manuel sous unix).&lt;br /&gt;
* Adaptez l&#039;éditeur de texte [[Vim]].&lt;br /&gt;
* Adaptez le [[Viper-mode]] (mode vim sur Emacs).&lt;br /&gt;
* Naviguez dans Firefox aussi facilement que dans Vim grâce à [[Vimperator]].&lt;br /&gt;
* Facilitez l&#039;usage de [[Usage_dans_Latex|Latex]].&lt;br /&gt;
* Utilisez au mieux le clavier dans [[Irssi]] pour vos conversations IRC.&lt;br /&gt;
* Utilisez les mêmes touches de déplacement que vim avec [[Mutt]].&lt;br /&gt;
&lt;br /&gt;
=== Un clavier qui vous ressemble encore plus ===&lt;br /&gt;
&lt;br /&gt;
Maintenant que vous avez pris goût à une disposition ergonomique, vous vous prenez à rêver d&#039;un clavier qui vous ressemble ? La page « [[Trucs et astuces]] » liste les personnalisations déjà effectuées par certains membres du projet.&lt;br /&gt;
&lt;br /&gt;
=== Rien compris ? ===&lt;br /&gt;
&lt;br /&gt;
Vous ne comprenez pas les termes employés sur le wiki ? Le [[glossaire]] est fait pour vous !&lt;br /&gt;
&lt;br /&gt;
Vous avez encore des problèmes, quelque chose vous a échappé ? Peut-être trouverez-vous votre bonheur dans la [[foire aux questions]].&lt;br /&gt;
&lt;br /&gt;
Vos problèmes restent insolubles ? Ne perdez pas espoir ! Vous pouvez contacter d&#039;autres utilisateurs sur le canal [[IRC]] ou la [[liste de diffusion]], ils se feront un plaisir de vous aider.&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Viper-mode&amp;diff=13777</id>
		<title>Viper-mode</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Viper-mode&amp;diff=13777"/>
		<updated>2009-05-25T13:27:24Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Le viper-mode permet d&#039;utiliser les raccourcis les plus importants de vim sous emacs. &lt;br /&gt;
Voici une adaptation pour échanger les ctsr/hjkl et CTSR/HJKL.&lt;br /&gt;
À placer à la fin de votre .emacs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
;;;;;;;;;;;;;;;;; bépo                                                                                                             &lt;br /&gt;
;;viper                                                                                                                            &lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;h&amp;quot; &#039;viper-replace-char)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;H&amp;quot; &#039;viper-overwrite)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;k&amp;quot; &#039;viper-substitute)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;K&amp;quot; &#039;viper-substitute-line)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;j&amp;quot; &#039;viper-join-lines)&lt;br /&gt;
&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;c&amp;quot; &#039;viper-backward-char)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;t&amp;quot; &#039;viper-next-line)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;s&amp;quot; &#039;viper-previous-line)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;r&amp;quot; &#039;viper-forward-char)&lt;br /&gt;
&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;C&amp;quot; &#039;viper-window-top)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;T&amp;quot; &#039;pager-page-down)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;S&amp;quot; &#039;pager-page-up) ; no manual :-(&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;R&amp;quot; &#039;viper-window-bottom)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(define-key viper-visual-mode-map &amp;quot;c&amp;quot; &#039;viper-backward-char)&lt;br /&gt;
(define-key viper-visual-mode-map &amp;quot;t&amp;quot; &#039;viper-next-line)&lt;br /&gt;
(define-key viper-visual-mode-map &amp;quot;s&amp;quot; &#039;viper-previous-line)&lt;br /&gt;
(define-key viper-visual-mode-map &amp;quot;r&amp;quot; &#039;viper-forward-char)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Viper-mode&amp;diff=13776</id>
		<title>Viper-mode</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Viper-mode&amp;diff=13776"/>
		<updated>2009-05-25T13:26:41Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Le viper-mode permet d&#039;utiliser les raccourcis les plus importants de vim sous emacs. &lt;br /&gt;
Voici une adaptation pour échanger les ctsr/hjkl et CTSR/HJKL.&lt;br /&gt;
À placer à la fin de votre .emacs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
;;;;;;;;;;;;;;;;; bépo                                                                                                             &lt;br /&gt;
;;viper                                                                                                                            &lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;h&amp;quot; &#039;viper-replace-char)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;H&amp;quot; &#039;viper-overwrite)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;k&amp;quot; &#039;viper-substitute)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;K&amp;quot; &#039;viper-substitute-line)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;j&amp;quot; &#039;viper-join-lines)&lt;br /&gt;
&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;c&amp;quot; &#039;viper-backward-char)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;t&amp;quot; &#039;viper-next-line)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;s&amp;quot; &#039;viper-previous-line)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;r&amp;quot; &#039;viper-forward-char)&lt;br /&gt;
&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;C&amp;quot; &#039;viper-window-top)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;T&amp;quot; &#039;pager-page-down)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;S&amp;quot; &#039;pager-page-up) ; no manual :-(&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;R&amp;quot; &#039;viper-window-bottom)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(define-key viper-visual-mode-map &amp;quot;c&amp;quot; &#039;viper-backward-char)&lt;br /&gt;
(define-key viper-visual-mode-map &amp;quot;t&amp;quot; &#039;viper-next-line)&lt;br /&gt;
(define-key viper-visual-mode-map &amp;quot;s&amp;quot; &#039;viper-previous-line)&lt;br /&gt;
(define-key viper-visual-mode-map &amp;quot;r&amp;quot; &#039;viper-forward-char)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
vimpulse permet de rajouter quelques commandes vim au viper-mode. Voici l&#039;adaptation correspondante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
;; vimpulse&lt;br /&gt;
(define-key viper-visual-mode-map &amp;quot;h&amp;quot; &#039;viper-visual-replace-region)&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Viper-mode&amp;diff=13407</id>
		<title>Viper-mode</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Viper-mode&amp;diff=13407"/>
		<updated>2009-04-17T01:50:15Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : Page créée avec « Le viper-mode permet d&amp;#039;utiliser les raccourcis les plus importants de vim sous emacs.  Voici une adaptation pour échanger les ctsr/hjkl et CTSR/HJKL. À placer dans votre .e... »&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Le viper-mode permet d&#039;utiliser les raccourcis les plus importants de vim sous emacs. &lt;br /&gt;
Voici une adaptation pour échanger les ctsr/hjkl et CTSR/HJKL.&lt;br /&gt;
À placer dans votre .emacs ou dans votre .viper:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
;;;;;;;;;;;;;;;;; bépo                                                                                                             &lt;br /&gt;
;;viper                                                                                                                            &lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;c&amp;quot; &#039;viper-backward-char)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;t&amp;quot; &#039;viper-next-line)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;s&amp;quot; &#039;viper-previous-line)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;r&amp;quot; &#039;viper-forward-char)&lt;br /&gt;
&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;C&amp;quot; &#039;viper-window-top)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;T&amp;quot; &#039;viper-join-line)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;S&amp;quot; &#039;viper-nil) ; no manual :-(                                                               &lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;R&amp;quot; &#039;viper-window-bottom)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;h&amp;quot; &#039;viper-command-argument)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;j&amp;quot; &#039;viper-goto-char-forward)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;k&amp;quot; &#039;viper-substitute)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;l&amp;quot; &#039;viper-replace-char)&lt;br /&gt;
&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;H&amp;quot; &#039;viper-change-to-eol)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;J&amp;quot; &#039;viper-goto-char-backward)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;K&amp;quot; &#039;viper-substitute-line)&lt;br /&gt;
(define-key viper-vi-global-user-map &amp;quot;L&amp;quot; &#039;viper-overwrite)&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
vimpulse permet de rajouter quelques commandes vim au viper-mode. Voici l&#039;adaptation correspondante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
;; vimpulse&lt;br /&gt;
(define-key viper-visual-mode-map &amp;quot;h&amp;quot; &#039;viper-visual-replace-region)&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisation&amp;diff=13406</id>
		<title>Utilisation</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisation&amp;diff=13406"/>
		<updated>2009-04-17T01:43:32Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{sommaire à droite}}&lt;br /&gt;
Cette page recense les conseils pour une utilisation optimale du bépo.&lt;br /&gt;
&lt;br /&gt;
===Ergonomie===&lt;br /&gt;
Avant de commencer à taper en bépo, intéressez-vous à votre confort. Êtes-vous bien assis ? Votre clavier est-il bien positionné ?&lt;br /&gt;
Améliorez l’[[Ergonomie|ergonomie de votre poste de travail]].&lt;br /&gt;
&lt;br /&gt;
===Apprentissage===&lt;br /&gt;
Découvrez les conseils pour [[Apprentissage|mieux utiliser votre clavier]] : comment positionner ses doigts, où faut-il regarder…&lt;br /&gt;
&lt;br /&gt;
N&#039;hésitez pas à télécharger, imprimer (et même distribuer) notre [http://download.tuxfamily.org/dvorak/documents/bepo_aide-memoire.pdf aide-mémoire]. Pliez-le en trois, et posez-le sur votre bureau, devant votre écran. Vous pourrez vous y référer pour savoir où appuyer sans déplacer vos mains.&lt;br /&gt;
&lt;br /&gt;
Nous vous proposons des [[Exercices|exercices]] d&#039;apprentissage. Comme les exercices « traditionnels » de l&#039;azerty, il faudra commencer par les  lettres de la rangée de base, mais vous verrez tout de suite les avantages du bépo : les 8 lettres placées sous les doigts au repos vous permettent déjà de taper des phrases telles que « une eau saine et sans nitrates rassure » plutôt que des groupes de lettres du style « dfdf jljl ».&lt;br /&gt;
&lt;br /&gt;
Certains logiciels d&#039;apprentissage pourront vous être utiles. (à compléter).&lt;br /&gt;
&lt;br /&gt;
{{note|type=note|Le [[Manuel|manuel d&#039;utilisation]], sur le [[Manuel|wiki en version complète]], et [http://download.tuxfamily.org/dvorak/documents/bepo_aide-memoire.pdf en résumé dans l&#039;aide-mémoire]  passe en revue les caractères disponibles sur le clavier, et donne quelques conseils de typographie française.}}&lt;br /&gt;
&lt;br /&gt;
=== Mieux utiliser vos logiciels ===&lt;br /&gt;
Certains programmes nécessitent l&#039;utilisation intensive de raccourcis claviers. Ils sont étroitement liés à la position des lettres sur le clavier, le bépo chamboule vos habitudes. Pour vous aidez, la communauté est passée par là !&lt;br /&gt;
* Adaptez votre bureau :&lt;br /&gt;
** [[Utilisation_avec_Gnome|Gnome]] ;&lt;br /&gt;
** [[Utilisation_avec_KDE|KDE]] ;&lt;br /&gt;
** [[Awesome]].&lt;br /&gt;
&lt;br /&gt;
* Arrêtez le copier-coller à la souris:&lt;br /&gt;
**passez à la ligne de commande avec [[Xclip]]&lt;br /&gt;
**coller des données sur [http://pastealacon.com pastealacon.com] en ligne de commande: [[Utilisateur:Legrostdg/Pastealacon|Script pastealacon.pl]].&lt;br /&gt;
* Réglez votre terminal virtuel: [[URxvt]].&lt;br /&gt;
* Personnalisez l&#039;éditeur [[Less]] (il sert entre autre à afficher les pages de manuel sous unix).&lt;br /&gt;
* Adaptez l&#039;éditeur de texte [[Vim]].&lt;br /&gt;
* Adaptez le [[Viper-mode]] (mode vim sur Emacs).&lt;br /&gt;
* Naviguez dans Firefox aussi facilement que dans Vim grâce à [[Vimperator]].&lt;br /&gt;
* Facilitez l&#039;usage de [[Usage_dans_Latex|Latex]].&lt;br /&gt;
* Utilisez au mieux le clavier dans [[Irssi]] pour vos conversations IRC.&lt;br /&gt;
&lt;br /&gt;
===Un clavier qui vous ressemble encore plus===&lt;br /&gt;
Maintenant que vous avez pris goût à une disposition ergonomique, vous vous prenez à rêver d&#039;un clavier qui vous ressemble ? La page « [[Trucs et astuces|Trucs et Astuces]] » liste les personnalisations déjà effectuées par certains membres du projet.&lt;br /&gt;
&lt;br /&gt;
===Rien compris ?===&lt;br /&gt;
Vous ne comprenez pas les termes employés sur le wiki ? Le [[glossaire]] est fait pour vous !&lt;br /&gt;
&lt;br /&gt;
Vous avez encore des problèmes, quelque chose vous a échappé ?&lt;br /&gt;
Peut-être trouverez-vous votre bonheur dans la [[foire aux questions]].&lt;br /&gt;
&lt;br /&gt;
Vos problèmes restent insolubles ? Ne perdez pas espoir ! Vous pouvez contacter d&#039;autres utilisateurs sur le canal [[IRC]] ou la [[liste de diffusion]], ils se feront un plaisir de vous aider.&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Discussion_utilisateur:Cro&amp;diff=13373</id>
		<title>Discussion utilisateur:Cro</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Discussion_utilisateur:Cro&amp;diff=13373"/>
		<updated>2009-03-31T00:00:14Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Salut, tu as vu que nous avions une page spéciale consacrée à vim ? Parce que changer de dispo uniquement pour vim… c’est dur !&lt;br /&gt;
La page est ici : http://www.clavier-dvorak.org/wiki/Vim À priori, la reconfiguration totale bépo/qwerty est ce qu’il te faut : http://www.clavier-dvorak.org/wiki/Vim#B.C3.A9po.2FQwerty &lt;br /&gt;
&lt;br /&gt;
[[Utilisateur:Nemolivier|nemolivier]] 11 décembre 2008 à 23:14 (CET)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ahah, deux écrans :)&lt;br /&gt;
tu peux aussi imprimer la carte…&lt;br /&gt;
&lt;br /&gt;
[[Utilisateur:Legrostdg|gueux]]] 30 mars 2009&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13372</id>
		<title>Utilisateur:Legrostdg</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13372"/>
		<updated>2009-03-30T23:54:09Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : /* Mon fichier .xkb */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La [[Utilisateur:Nbrodu|variante proposée par Nbrodu]] est très utile mais étant plutôt adepte de vim, je n&#039;utilisais pas beaucoup les raccourcis en Ctrl+… En revanche return, delete, backspace et escape avaient selon moi besoin d&#039;être plus accessibles. J&#039;en ai profité pour mettre les touches de direction &amp;quot;alla vim&amp;quot; et ajuster les touches début, fin, pgup et pgdn de manière plus homogène.&lt;br /&gt;
&lt;br /&gt;
J&#039;ai également rajouté des touches dead-modificateur (plus parce que j&#039;étais content d&#039;avoir trouvé comment faire qu&#039;autre chose).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Keymap « de base »===&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;w plus proche&#039;&#039;&#039; (alla bépow [[Utilisateur:Kaze/Bépo-int|Explications ici]]):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Finalement le bépow ne me plaît pas tellement:&lt;br /&gt;
&amp;quot;w&amp;quot; s&#039;enchaîne souvent avec un &amp;quot;o&amp;quot; ou un &amp;quot;e&amp;quot; en anglais… et à è trop lourds à taper. À revoir&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Haha! J&#039;ai trouvé une parade :) En échangeant &amp;quot;w&amp;quot; et &amp;quot;&#039;/?&amp;quot; ça devrait être pas mal. Une nouvelle variante: le &amp;quot;BÉPO?&amp;quot; :-)&lt;br /&gt;
&lt;br /&gt;
Les inconvénients:&lt;br /&gt;
**c&#039;est vrai que è et à ça manque un peu… Mais bon c&#039;était pareil avec le bépow :)&lt;br /&gt;
**une très bonne place &amp;quot;gâchée&amp;quot; par ce vieux w.&lt;br /&gt;
&lt;br /&gt;
Les avantages de cette variante:&lt;br /&gt;
**le w est bien accessible&lt;br /&gt;
**&amp;quot;w&amp;quot;-&amp;quot;h&amp;quot; s&#039;enchaîne bien, de même que &amp;quot;w&amp;quot;-&amp;quot;o&amp;quot;, &amp;quot;w&amp;quot;-&amp;quot;e&amp;quot;, &amp;quot;e&amp;quot;-&amp;quot;w&amp;quot; et &amp;quot;o&amp;quot;-&amp;quot;w&amp;quot;. Bonne amélioration par rapport au bépow!  &lt;br /&gt;
**toute la ponctuation dans le même coin :)&lt;br /&gt;
&lt;br /&gt;
Nouveau changement :-)&lt;br /&gt;
La place pour le w était peut-être un peu &amp;quot;trop&amp;quot; accessible (on aurait pu mettre une autre touche plus fréquente à la place).&lt;br /&gt;
&lt;br /&gt;
Par exemple le f! descendre le petit doigt est vraiment horrible :) d&#039;accord pour un z ou un w mais pas pour un f.&lt;br /&gt;
&lt;br /&gt;
Échange &amp;quot;w&amp;quot;-&amp;quot;f&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&amp;quot;[&amp;quot;-&amp;quot;]&amp;quot; dans la même rangée que &amp;quot;{&amp;quot;-&amp;quot;}&amp;quot; et &amp;quot;&amp;lt;&amp;quot;-&amp;quot;&amp;gt;&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Je trouvais ça trop pratique. Les parenthèses en altgr+&#039;é&#039; et altgr+&#039;p&#039; ce serait selon moi royal, mais c&#039;est vrai que le &#039;´&#039; est bien sur le é… Je n&#039;ai pas encore trouvé de solution idéale.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&amp;quot;(&amp;quot;-&amp;quot;)&amp;quot; en &amp;quot;a&amp;quot;-&amp;quot;e&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
( et ) sur des doigts différents, tous les {}[]()&amp;lt;&amp;gt; dans le même coin.&lt;br /&gt;
&lt;br /&gt;
*&amp;quot;æ&amp;quot; sur &amp;quot;$&amp;quot;&lt;br /&gt;
æ est peu utile, ce qui n&#039;est pas le cas de œ, (et de &amp;quot;(&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&amp;quot;&amp;lt;&amp;quot;-&amp;quot;&amp;gt;&amp;quot; en &amp;quot;é&amp;quot;-&amp;quot;p&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
tous les {}[]()&amp;lt;&amp;gt; dans le même coin.&lt;br /&gt;
&lt;br /&gt;
*les &amp;quot;«&amp;quot;-&amp;quot;»&amp;quot; sont accessibles à la place de &amp;lt;&amp;gt; avec la touche mode prog/français (maj gauche) &lt;br /&gt;
&lt;br /&gt;
*&amp;quot;/&amp;quot; sur &amp;quot;,&amp;quot; pour la prog&lt;br /&gt;
&lt;br /&gt;
*&amp;quot;&amp;amp;&amp;quot;-&amp;quot;$&amp;quot;-&amp;quot;#&amp;quot; sur &amp;quot;t&amp;quot;-&amp;quot;s&amp;quot;-&amp;quot;r&amp;quot; pour la prog&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;espace insécable en altgr+space&#039;&#039;&#039; et &#039;&#039;&#039;espace fine insécable en altgr+maj+space&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
space et maj+space donnent une espace classique, je trouvais la combinaison &amp;quot;maj+space = espace&amp;quot; trop dangereuse pour la programmation.&lt;br /&gt;
&lt;br /&gt;
Pour l&#039;instant &#039;&#039;&#039;underscore est en fn+space&#039;&#039;&#039;. Ce n&#039;est pas super logique (ce n&#039;est pas du « déplacement/édition ») mais bon… la couche « déplacement/édition » est aussi accessible que la couche altgr et la laisser quasiment vide serait un peu du gaspillage. Le mieux serait peut-être de caler le &#039;_&#039; ailleurs (mais où ? :-)). Ou alors utiliser un peu plus cette couche fn -&amp;gt; :-)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Ctrl droit et Compose inversés&#039;&#039;&#039;: les touches Ctrl sont tout à fait inaccessibles sans lever la main. Un &amp;quot;dead_Compose&amp;quot; est accessible en Fn+&#039;,&#039;.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Maj et ç inversés&#039;&#039;&#039; pour augmenter l&#039;homogénéité avec l&#039;autre maj (cela rend aussi la touche plus accessible à mon avis).&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;retour de à et è&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039; ~ &amp;quot; &#039; ! ? en 1 2 3 4 5&#039;&#039;&#039;&lt;br /&gt;
rapproche &amp;quot;&lt;br /&gt;
~ devient accessible (ce qui n&#039;est pas le cas du altgr + la touche B de l&#039;azerty)&lt;br /&gt;
! et ? plus accessibles&lt;br /&gt;
« » inutiles ou presque donc en altgr&lt;br /&gt;
&lt;br /&gt;
* thorn (le truc sur t, inutile si ce n&#039;est pour les smileys), et euro (inutile aussi) giclent en compose (donc pas visibles ici). &lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │ Æ ¶│ 1 „│ 2 “│ 3 ”│ 4  │ 5  │ 6  ║ 7 ¬│ 8 ¼│ 9 ½│ 0 ¾│ ° ′│ ℝ ″║         ║&lt;br /&gt;
 │ æ –│ ~ —│ &amp;quot; ≤│ &#039; ≥│ ! ¡│ ? ¿│ @ ^║ + ±│ - −│ / ÷│ * ×│ = ≠│ % ‰║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║ B ¦│ É ˝│ P §│ O Œ│ È  ║ ´  │ V  │ D Ð│ L  │ J Ĳ│ Z Ə│ K  ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ b |│ é &amp;lt;│ p &amp;gt;│ o œ│ è `║ ^ ´│ v ˇ│ d ð│ l /│ j ĳ│ z ə│ k ~║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║ A  │ U  │ I  │ E ¤│ ;  ║ C ſ│ T  │ S ß│ R  │ N ˜│ M º│    ║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ a (│ u [│ i ]│ e )│ , /║ c ©│ t &amp;amp;│ s $│ r #│ n ~│ m ¯│Maj.║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║ Ê  │ À  │ Y ‘│ X ’│ : ·│ ˙  ║ F ª│ Q  │ G  │ H ‡│ W  ║   Ç ,      ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║ ê /│ à \│ y {│ x }│ . …│ ¨ ˘║ f ˛│ q °│ g µ│ h †│ w ˘║   ç ¸      ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║ Espace   Fine Insécable  ║     ║       ║     ║      ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║ Espace     Insécable     ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Fn « déplacement/édition » (et underscore)===&lt;br /&gt;
&lt;br /&gt;
* ←  ↓  ↑  →  sous les doigts à droite avec les positions usuelles sur vim.&lt;br /&gt;
*&amp;quot;deb&amp;quot;, &amp;quot;pgdn&amp;quot;, &amp;quot;pgup&amp;quot; et &amp;quot;fin&amp;quot; accessibles facilement (on notera l&#039;homogégéité avec les flèches :)).&lt;br /&gt;
*&amp;quot;esc&amp;quot;, &amp;quot;del&amp;quot;, &amp;quot;bksp&amp;quot; et &amp;quot;entr&amp;quot; sous les doigts de la main gauche: trop bien. :)&lt;br /&gt;
*maj+insert (équivalent du clic scroll) en fn+p (p comme paste (en vim) ou comme prout (dans la vie de tous les jours))&lt;br /&gt;
*ctrl+p et ctrl+n (pour &amp;quot;précédent&amp;quot; et &amp;quot;suivant&amp;quot; dans plein de programmes) en haut des flèches haut et bas (peut-être pas top à cause du &amp;quot;d&amp;quot;: supprimer en vim, du coup, ils sont aussi sur les guillemets).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │    │    │ctl+│ctl+│    │    │    ║    │    │    │    │    │    ║         ║&lt;br /&gt;
 │    │    │ p  │ n  │    │    │    ║    │    │    │    │    │    ║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║dead│dead│maj+│dead│Com-║    │ctl+│ctl+│    │    │    │    ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ctrl│ maj│ ins│altg│pose║    │ p  │ n  │    │    │    │    ║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║    │    │    │    │    ║    │    │    │    │    │    │    ║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ esc│ del│bksp│entr│ins │ ←  │ ↓  │ ↑  | →  │ esc│    │Maj ║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║dead│    │    │    │    │    ║    │    │    │    │    ║            ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║ alt│    │    │    │    │    ║ deb│pgdn│pgup│ fin│    ║            ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║                          ║     ║       ║     ║      ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║            _             ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Des idées ?===&lt;br /&gt;
Si vous avez des idées pour améliorer cette super couche « déplacement/édition » rajoutez-les ici !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon projet « top secret »===&lt;br /&gt;
Mes problèmes majeurs sur les claviers traditionnels&lt;br /&gt;
*rangée des chiffres très peu accessible (voire inaccessible pour les @/6 */0 =/° %/` bépo)&lt;br /&gt;
*rangée F1, F2, … complètement inaccessible&lt;br /&gt;
*pouces inutilisés ou presque : la faute à la barre d&#039;espace immense !&lt;br /&gt;
*f/F bépo difficilement accessible&lt;br /&gt;
*k/K (caca) bépo inaccessible&lt;br /&gt;
*les touches en traviolle&lt;br /&gt;
&lt;br /&gt;
La solution miracle : tout remonter d&#039;une rangée !&lt;br /&gt;
La position de repos se retrouve sur les &amp;quot;bépo&amp;quot; et &amp;quot;vdlj&amp;quot; actuels.&lt;br /&gt;
&lt;br /&gt;
Le credo : utiliser au mieux les pouces et la rangée de repos.&lt;br /&gt;
*dans l&#039;affaire on perd le ê/Ê mais bon… la touche était inaccessible, on a un accent mort (et puis on pourra éventuellement caller un ê/Ê ailleurs)&lt;br /&gt;
*les touches sont mieux placées : f/F k/K deviennent accessibles (ils se retrouvent respectivement sur le m et le g azerty -&amp;gt; le décallage est moins important (est-ce seulement sur mon portable ?)).&lt;br /&gt;
*rangée F1, F2, … accessible&lt;br /&gt;
*plein de couches avec les pouces : on utilise un peu mieux la puissance de la rangée de repos.&lt;br /&gt;
*les chiffres dans une de ces couches&lt;br /&gt;
*déplacement/édition dans une autre&lt;br /&gt;
*une touche « changer de couche » accents ?&lt;br /&gt;
*une touche « changer de couche » ponctuation ? avec les touches « prog » ?&lt;br /&gt;
*une touche « changer la couche » de bébé ? &amp;lt;- ouhhhh!&lt;br /&gt;
*…&lt;br /&gt;
&lt;br /&gt;
Sans l&#039;éliminer tout à fait (faut pas rêver) on réduit donc le problème des touches en diagonale !&lt;br /&gt;
&lt;br /&gt;
On applique autant que possible le principe des couches.&lt;br /&gt;
&lt;br /&gt;
Il faut faire attention au fait qu&#039;on peut avoir tendance à ne pas relâcher la touche de changement de couche assez vite…&lt;br /&gt;
&lt;br /&gt;
La touche espace est un peu en plein milieu… Il faut soit lever un peu les pouces, soit, pourquoi pas ?, virer matériellement la touche espace.&lt;br /&gt;
&lt;br /&gt;
Un nom de code pour le moins trop laid pour cette variante : top-gueux-ne&lt;br /&gt;
*les mains vers le haut, c&#039;est top,&lt;br /&gt;
*addressée aux gueux, c&#039;est gueux,&lt;br /&gt;
*bim, bam, prout, les jeux de mots foireux, c&#039;est top-gueux-ne.&lt;br /&gt;
&lt;br /&gt;
À faire dès que j&#039;aurai un peu plus de temps :-)&lt;br /&gt;
&lt;br /&gt;
===Mon fichier .xkb===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
xkb_keymap        {&lt;br /&gt;
&lt;br /&gt;
xkb_keycodes      { include &amp;quot;xfree86+aliases(azerty)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
xkb_types         {&lt;br /&gt;
    include &amp;quot;complete&amp;quot;&lt;br /&gt;
    type &amp;quot;ALTGR_TWO&amp;quot; {&lt;br /&gt;
       modifiers = LevelThree;&lt;br /&gt;
       map[None] = Level1;&lt;br /&gt;
       map[LevelThree] = Level2;&lt;br /&gt;
       level_name[Level1] = &amp;quot;Base&amp;quot;;&lt;br /&gt;
       level_name[Level2] = &amp;quot;AltGr&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_compatibility { include &amp;quot;complete&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        indicator &amp;quot;Scroll Lock&amp;quot; { controls = Overlay1; allowExplicit = True; drivesKeyboard = True; };&lt;br /&gt;
        &lt;br /&gt;
        interpret F24 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Control); // ctrl-r&lt;br /&gt;
        };&lt;br /&gt;
        interpret F25 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6D&amp;gt;, modifiers=Mod1); // alt-f&lt;br /&gt;
        };&lt;br /&gt;
        interpret F26 {&lt;br /&gt;
            action = LockControls(controls=Overlay1);&lt;br /&gt;
        };&lt;br /&gt;
        interpret F27 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6E&amp;gt;, modifiers=Control); // ctrl-s&lt;br /&gt;
        };&lt;br /&gt;
        interpret F28 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Shift); // insert-shift&lt;br /&gt;
        };&lt;br /&gt;
        interpret F29 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;RGHT&amp;gt;, modifiers=Control); // ctrl-â†’&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
        interpret F30 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6F&amp;gt;, modifiers=Control); // ctrl-Tab&lt;br /&gt;
        };&lt;br /&gt;
        interpret F31 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I71&amp;gt;, modifiers=Control); // ctrl-p&lt;br /&gt;
        };&lt;br /&gt;
        interpret F32 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I72&amp;gt;, modifiers=Control); // ctrl-n&lt;br /&gt;
        };&lt;br /&gt;
        interpret F33 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;INS&amp;gt;, modifiers=Shift); // ctrl-v&lt;br /&gt;
        };&lt;br /&gt;
        interpret F34 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I74&amp;gt;, modifiers=Control); // ctrl-z&lt;br /&gt;
        };&lt;br /&gt;
        interpret F35 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I75&amp;gt;, modifiers=Mod1); // alt-y&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
partial alphanumeric_keys&lt;br /&gt;
xkb_symbols &amp;quot;dvorak&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	name[Group1]= &amp;quot;France - Bepo, ergonomic, Dvorak way (v1.0rc2)&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;pc(pc105)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;TLDE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ ae, AE, endash, paragraph ], overlay1 = &amp;lt;I70&amp;gt; }; // $ # – ¶&lt;br /&gt;
	key &amp;lt;AE01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asciitilde, 1, emdash, doublelowquotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // ~ 1 — „&lt;br /&gt;
	key &amp;lt;AE02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ quotedbl, 2, lessthanequal, leftdoublequotemark ], overlay1 = &amp;lt;I7A&amp;gt; }; // &amp;quot; 2  “&lt;br /&gt;
	key &amp;lt;AE03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, 3, greaterthanequal, rightdoublequotemark ], overlay1 = &amp;lt;I7B&amp;gt; }; // &#039; 3  ”&lt;br /&gt;
	key &amp;lt;AE04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ exclam, 4, exclamdown ], overlay1 = &amp;lt;I70&amp;gt; }; // ! ¡ 4&lt;br /&gt;
	key &amp;lt;AE05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ question, 5, questiondown ], overlay1 = &amp;lt;I70&amp;gt; }; // ? ¿ 5&lt;br /&gt;
	key &amp;lt;AE06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ at, 6, asciicircum ], overlay1 = &amp;lt;I70&amp;gt; }; // @ 6 &lt;br /&gt;
	key &amp;lt;AE07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ plus, 7, plusminus, notsign ], overlay1 = &amp;lt;I70&amp;gt; }; // + 7 ± ¬&lt;br /&gt;
	key &amp;lt;AE08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ minus, 8, U2212, onequarter ], overlay1 = &amp;lt;I70&amp;gt; }; // - 8 − ¼&lt;br /&gt;
	key &amp;lt;AE09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ slash, 9, division, onehalf ], overlay1 = &amp;lt;I70&amp;gt; }; // / 9 ÷ ½&lt;br /&gt;
	key &amp;lt;AE10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asterisk, 0, multiply, threequarters ], overlay1 = &amp;lt;I70&amp;gt; }; // * 0 × ¾&lt;br /&gt;
	key &amp;lt;AE11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ equal, degree, notequal, minutes ], overlay1 = &amp;lt;I70&amp;gt; }; // = ° ≠&lt;br /&gt;
	key &amp;lt;AE12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ percent, grave, U2030, seconds ], overlay1 = &amp;lt;I70&amp;gt; }; // % ` ‰&lt;br /&gt;
	key &amp;lt;AD01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ b, B, bar, brokenbar ], overlay1 = &amp;lt;FK13&amp;gt; }; // b B | ¦ dead_ctrl&lt;br /&gt;
	key &amp;lt;AD02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, less, dead_doubleacute ],          // é É &amp;lt; ˝ &lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, guillemotleft, dead_doubleacute ], // é É « ˝ &lt;br /&gt;
                     overlay1 = &amp;lt;FK14&amp;gt; };                                                                             // dead_shift&lt;br /&gt;
	key &amp;lt;AD03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, greater, section ],                          // p P &amp;gt; §  &lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, guillemotright, section ],                   // p P » §&lt;br /&gt;
                     overlay1 = &amp;lt;I77&amp;gt; };                                                                              // insert-shift&lt;br /&gt;
	key &amp;lt;AD04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ o, O, oe, OE ], overlay1 = &amp;lt;FK16&amp;gt; }; // o O œ Œ dead_altgr&lt;br /&gt;
	key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ egrave, Egrave, dead_grave, grave ], overlay1 = &amp;lt;FK17&amp;gt;}; // è È ` ` compose&lt;br /&gt;
        //key &amp;lt;AD05&amp;gt; {&lt;br /&gt;
        //    type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, question, questiondown, dead_hook ],           // ’ ? ¿ ̉&lt;br /&gt;
        //    type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ rightsinglequotemark, question, questiondown, dead_hook ], // &#039; ? ¿ ̉&lt;br /&gt;
        //    overlay1 = &amp;lt;FK17&amp;gt;                                                                         // compose&lt;br /&gt;
        //}; &lt;br /&gt;
	key &amp;lt;AD06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_circumflex, dead_acute, dead_acute ], overlay1 = &amp;lt;I70&amp;gt; }; // ^&lt;br /&gt;
	key &amp;lt;AD07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ v, V, dead_caron ], overlay1 = &amp;lt;I70&amp;gt; }; // v V ˇ&lt;br /&gt;
	key &amp;lt;AD08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ d, D, eth, ETH ], overlay1 = &amp;lt;I7A&amp;gt;}; // d D ð Ð&lt;br /&gt;
	key &amp;lt;AD09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ l, L, UFDD0 ], overlay1 = &amp;lt;I7B&amp;gt;}; // l L /&lt;br /&gt;
	key &amp;lt;AD10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ j, J, U0133, U0132 ], overlay1 = &amp;lt;I70&amp;gt;}; // j J ĳ Ĳ&lt;br /&gt;
	key &amp;lt;AD11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ z, Z, schwa, SCHWA ], overlay1 = &amp;lt;I70&amp;gt; }; // z Z ə Ə&lt;br /&gt;
	key &amp;lt;AD12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ k, K, asciitilde, dead_tilde ], overlay1 = &amp;lt;I70&amp;gt; }; // k K ~&lt;br /&gt;
	key &amp;lt;AC01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ a, A, parenleft ], overlay1 = &amp;lt;ESC&amp;gt; }; // a A ( escape&lt;br /&gt;
        key &amp;lt;AC02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ u, U, bracketleft ], overlay1 = &amp;lt;DELE&amp;gt; }; // u U [ delete&lt;br /&gt;
	key &amp;lt;AC03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ i, I, bracketright ], overlay1 = &amp;lt;BKSP&amp;gt; }; // i I ] backspace&lt;br /&gt;
	key &amp;lt;AC04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ e, E, parenright, UFDD1 ], overlay1 = &amp;lt;RTRN&amp;gt; }; // e E ) ¤ return&lt;br /&gt;
        key &amp;lt;AC05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, slash, dead_horn  ],  overlay1 = &amp;lt;INS&amp;gt; };     // , ; / insert&lt;br /&gt;
	key &amp;lt;AC06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ c, C, copyright, U017F ], overlay1 = &amp;lt;LEFT&amp;gt; }; // c C © ſ&lt;br /&gt;
	key &amp;lt;AC07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ t, T, ampersand ], overlay1 = &amp;lt;DOWN&amp;gt; }; // t T þ Þ&lt;br /&gt;
	key &amp;lt;AC08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ s, S, dollar, ssharp ], overlay1 = &amp;lt;UP&amp;gt; }; // s S $ ß&lt;br /&gt;
	key &amp;lt;AC09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ r, R, numbersign, trademark ], overlay1 = &amp;lt;RGHT&amp;gt; }; // r R # ™&lt;br /&gt;
	key &amp;lt;AC10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ n, N, dead_tilde ], overlay1 = &amp;lt;ESC&amp;gt; }; // n N ~ escape&lt;br /&gt;
	key &amp;lt;AC11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ m, M, dead_macron, masculine ], overlay1 = &amp;lt;I70&amp;gt; }; // m M ¯ º&lt;br /&gt;
        key &amp;lt;BKSL&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_R, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;LSGT&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ecircumflex, Ecircumflex, slash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ê Ê /&lt;br /&gt;
	key &amp;lt;AB01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ agrave, Agrave, backslash, VoidSymbol ], overlay1 = &amp;lt;FK15&amp;gt; }; // à À \&lt;br /&gt;
	key &amp;lt;AB02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ y, Y, braceleft, leftsinglequotemark ], overlay1 = &amp;lt;F35&amp;gt; }; // y Y { ‘&lt;br /&gt;
	key &amp;lt;AB03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ x, X, braceright, rightsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // x X } ’&lt;br /&gt;
	key &amp;lt;AB04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ period, colon, ellipsis, periodcentered ], overlay1 = &amp;lt;I70&amp;gt; }; // . : … ·&lt;br /&gt;
        key &amp;lt;AB05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_diaeresis, dead_abovedot, dead_breve, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ¨ ˙ ˘&lt;br /&gt;
	key &amp;lt;AB06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ f, F, dead_ogonek, ordfeminine ], overlay1 = &amp;lt;HOME&amp;gt; }; // f F ˛ ª home&lt;br /&gt;
	key &amp;lt;AB07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ q, Q, dead_abovering, dead_belowdot ], overlay1 = &amp;lt;PGDN&amp;gt; }; // q Q ˚ ̣pgdn&lt;br /&gt;
	key &amp;lt;AB08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ g, G, UFDD2 ], overlay1 = &amp;lt;PGUP&amp;gt; }; // g G µ pgup&lt;br /&gt;
	key &amp;lt;AB09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ h, H, dagger, doubledagger ], overlay1 = &amp;lt;END&amp;gt; }; // h H † ‡&lt;br /&gt;
	key &amp;lt;AB10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ w, W, dead_breve ], overlay1 = &amp;lt;I70&amp;gt; }; // w W ˘&lt;br /&gt;
	key &amp;lt;RTSH&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ], overlay1 = &amp;lt;I70&amp;gt; }; // ç Ç ¸ ,&lt;br /&gt;
        key &amp;lt;SPCE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ space, space, nobreakspace, U202F ], overlay1 = &amp;lt;I7F&amp;gt; }; // spaces underscore&lt;br /&gt;
&lt;br /&gt;
        // Unused keys mapped to ctrl+letter actions&lt;br /&gt;
        key &amp;lt;I6C&amp;gt; { [ r ] };&lt;br /&gt;
        key &amp;lt;I6D&amp;gt; { [ f ] };&lt;br /&gt;
        key &amp;lt;I6E&amp;gt; { [ s ] };&lt;br /&gt;
        key &amp;lt;I6F&amp;gt; { [ Tab ] };&lt;br /&gt;
        key &amp;lt;I70&amp;gt; { [ VoidSymbol ] };&lt;br /&gt;
        key &amp;lt;I71&amp;gt; { [ p ] };&lt;br /&gt;
        key &amp;lt;I72&amp;gt; { [ n ] };&lt;br /&gt;
        key &amp;lt;I73&amp;gt; { [ v ] };&lt;br /&gt;
        key &amp;lt;I74&amp;gt; { [ z ] };&lt;br /&gt;
        key &amp;lt;I75&amp;gt; { [ y ] };&lt;br /&gt;
        key &amp;lt;I76&amp;gt; { [ space ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // For some reason there are SOMETIMES (not always!) errors with this code:&lt;br /&gt;
        //    key &amp;lt;I7A&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;I7B&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;I7C&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;I7D&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;I7E&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // However passing the action in the Â«Â interpretÂ Â» section for an unsused symbol seems to work&lt;br /&gt;
        key &amp;lt;I60&amp;gt; { [ F24 ] };      // ctrl-R&lt;br /&gt;
        key &amp;lt;I61&amp;gt; { [ F25 ] };      // ctrl-F&lt;br /&gt;
        //key &amp;lt;I77&amp;gt; {  actions[group1] = [ Redirect(keycode=&amp;lt;I6C&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I77&amp;gt; { [ INS ],  actions[group1] = [ Redirect(keycode=&amp;lt;INS&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I78&amp;gt; { [ F29 ] };      // ctrl-right&lt;br /&gt;
        key &amp;lt;I79&amp;gt; { [ F30 ] };      // ctrl+Tab&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        //    key &amp;lt;I79&amp;gt; { [ Tab ], actions = [ setMods(modifiers=Mod1) ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;I7A&amp;gt; { [ F31 ] };      // ctrl-p&lt;br /&gt;
        key &amp;lt;I7B&amp;gt; { [ F32 ] };      // ctrl-n&lt;br /&gt;
        key &amp;lt;I7C&amp;gt; { [ F33 ] };      // ctrl-v&lt;br /&gt;
        key &amp;lt;I7D&amp;gt; { [ F34 ] };      // ctrl-z&lt;br /&gt;
        key &amp;lt;I7E&amp;gt; { [ F35 ] };      // alt-y&lt;br /&gt;
        key &amp;lt;I7F&amp;gt; { [ underscore ] };      // _&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Using &amp;lt; 127 keycodes also works&lt;br /&gt;
        key &amp;lt;FK13&amp;gt; { actions = [ LatchMods(modifiers=Control) ] };        // dead ctrl&lt;br /&gt;
        key &amp;lt;FK14&amp;gt; { actions = [ LatchMods(modifiers=Shift) ] };          // dead shift&lt;br /&gt;
        key &amp;lt;FK15&amp;gt; { actions = [ LatchMods(modifiers=Mod1) ] };           // dead alt&lt;br /&gt;
        key &amp;lt;FK16&amp;gt; { actions = [ LatchMods(modifiers=AltGr) ] };          // dead altgr&lt;br /&gt;
        key &amp;lt;FK17&amp;gt; { [ Multi_key ] };                                     // multi_key&lt;br /&gt;
        //    key &amp;lt;FK13&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;FK14&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;FK15&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;FK16&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;FK17&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
        // See also the bug thread here : https://bugs.freedesktop.org/show_bug.cgi?id=12401&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Transforme CAPS en lock de couche alternative «déplacement/édition», et garde le caps-lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour échanger Shift et Caps_Lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; {  [    Caps_Lock    ] };&lt;br /&gt;
&lt;br /&gt;
        // Combinaison des 2 : attention, requiert que les LFSH et CAPS dans les définitions de la touche &amp;lt;AC01&amp;gt; soient aussi échangées dans la partie principale&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
&lt;br /&gt;
        // shift + lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer CAPS en un AltGr gauche, en gardant le lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ ISO_Level3_Shift, Caps_Lock ], actions = [ SetMods(modifiers=LevelThree), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer LWIN en un AltGr gauche&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour mettre un Compose sur RWIN&lt;br /&gt;
        //key &amp;lt;RWIN&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        // key &amp;lt;MENU&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        //key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = [ SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;RCTL&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour que LWIN permette de changer de groupe&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
&lt;br /&gt;
        // Echange CTRL et Alt Gauches. Et puisque LWIN est réaffectée, garde un modificateur META en niveau 3 et 4 (AltGr)&lt;br /&gt;
        // Note: Activer cette option fonctionne mieux lorsque que l&#039;on échange aussi les raccourcis du style Alt+Tabâ€¦&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; {        [ Control_L ], actions = [ SetMods(modifiers=Control) ]       };&lt;br /&gt;
        //    key &amp;lt;LCTL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [       Alt_L,  Alt_L,  Meta_L, Meta_L         ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ]       };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        key &amp;lt;LALT&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; { type = &amp;quot;ONE_LEVEL&amp;quot;, [ VoidSymbol ], actions = [ LockControls(controls=Overlay1) ] };&lt;br /&gt;
            &lt;br /&gt;
            key &amp;lt;LFSH&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
            key &amp;lt;LWIN&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [ Alt_L, Alt_L, Meta_L, Meta_L ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ] };&lt;br /&gt;
&lt;br /&gt;
            // Make Alt+Tab still work in the overlay !&lt;br /&gt;
        //key  &amp;lt;TAB&amp;gt; {&lt;br /&gt;
        //    // would need an appropriate type here [ Tab,  ISO_Left_Tab    ],&lt;br /&gt;
        //    overlay1 = &amp;lt;F30&amp;gt;&lt;br /&gt;
        //};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;level3(ralt_switch)&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_geometry { include &amp;quot;pc(pc105)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13371</id>
		<title>Utilisateur:Legrostdg</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13371"/>
		<updated>2009-03-30T23:52:38Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : /* Keymap « de base » */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La [[Utilisateur:Nbrodu|variante proposée par Nbrodu]] est très utile mais étant plutôt adepte de vim, je n&#039;utilisais pas beaucoup les raccourcis en Ctrl+… En revanche return, delete, backspace et escape avaient selon moi besoin d&#039;être plus accessibles. J&#039;en ai profité pour mettre les touches de direction &amp;quot;alla vim&amp;quot; et ajuster les touches début, fin, pgup et pgdn de manière plus homogène.&lt;br /&gt;
&lt;br /&gt;
J&#039;ai également rajouté des touches dead-modificateur (plus parce que j&#039;étais content d&#039;avoir trouvé comment faire qu&#039;autre chose).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Keymap « de base »===&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;w plus proche&#039;&#039;&#039; (alla bépow [[Utilisateur:Kaze/Bépo-int|Explications ici]]):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Finalement le bépow ne me plaît pas tellement:&lt;br /&gt;
&amp;quot;w&amp;quot; s&#039;enchaîne souvent avec un &amp;quot;o&amp;quot; ou un &amp;quot;e&amp;quot; en anglais… et à è trop lourds à taper. À revoir&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Haha! J&#039;ai trouvé une parade :) En échangeant &amp;quot;w&amp;quot; et &amp;quot;&#039;/?&amp;quot; ça devrait être pas mal. Une nouvelle variante: le &amp;quot;BÉPO?&amp;quot; :-)&lt;br /&gt;
&lt;br /&gt;
Les inconvénients:&lt;br /&gt;
**c&#039;est vrai que è et à ça manque un peu… Mais bon c&#039;était pareil avec le bépow :)&lt;br /&gt;
**une très bonne place &amp;quot;gâchée&amp;quot; par ce vieux w.&lt;br /&gt;
&lt;br /&gt;
Les avantages de cette variante:&lt;br /&gt;
**le w est bien accessible&lt;br /&gt;
**&amp;quot;w&amp;quot;-&amp;quot;h&amp;quot; s&#039;enchaîne bien, de même que &amp;quot;w&amp;quot;-&amp;quot;o&amp;quot;, &amp;quot;w&amp;quot;-&amp;quot;e&amp;quot;, &amp;quot;e&amp;quot;-&amp;quot;w&amp;quot; et &amp;quot;o&amp;quot;-&amp;quot;w&amp;quot;. Bonne amélioration par rapport au bépow!  &lt;br /&gt;
**toute la ponctuation dans le même coin :)&lt;br /&gt;
&lt;br /&gt;
Nouveau changement :-)&lt;br /&gt;
La place pour le w était peut-être un peu &amp;quot;trop&amp;quot; accessible (on aurait pu mettre une autre touche plus fréquente à la place).&lt;br /&gt;
&lt;br /&gt;
Par exemple le f! descendre le petit doigt est vraiment horrible :) d&#039;accord pour un z ou un w mais pas pour un f.&lt;br /&gt;
&lt;br /&gt;
Échange &amp;quot;w&amp;quot;-&amp;quot;f&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&amp;quot;[&amp;quot;-&amp;quot;]&amp;quot; dans la même rangée que &amp;quot;{&amp;quot;-&amp;quot;}&amp;quot; et &amp;quot;&amp;lt;&amp;quot;-&amp;quot;&amp;gt;&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Je trouvais ça trop pratique. Les parenthèses en altgr+&#039;é&#039; et altgr+&#039;p&#039; ce serait selon moi royal, mais c&#039;est vrai que le &#039;´&#039; est bien sur le é… Je n&#039;ai pas encore trouvé de solution idéale.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&amp;quot;(&amp;quot;-&amp;quot;)&amp;quot; en &amp;quot;a&amp;quot;-&amp;quot;e&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
( et ) sur des doigts différents, tous les {}[]()&amp;lt;&amp;gt; dans le même coin.&lt;br /&gt;
&lt;br /&gt;
*&amp;quot;æ&amp;quot; sur &amp;quot;$&amp;quot;&lt;br /&gt;
æ est peu utile, ce qui n&#039;est pas le cas de œ, (et de &amp;quot;(&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&amp;quot;&amp;lt;&amp;quot;-&amp;quot;&amp;gt;&amp;quot; en &amp;quot;é&amp;quot;-&amp;quot;p&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
tous les {}[]()&amp;lt;&amp;gt; dans le même coin.&lt;br /&gt;
&lt;br /&gt;
*les &amp;quot;«&amp;quot;-&amp;quot;»&amp;quot; sont accessibles à la place de &amp;lt;&amp;gt; avec la touche mode prog/français (maj gauche) &lt;br /&gt;
&lt;br /&gt;
*&amp;quot;/&amp;quot; sur &amp;quot;,&amp;quot; pour la prog&lt;br /&gt;
&lt;br /&gt;
*&amp;quot;&amp;amp;&amp;quot;-&amp;quot;$&amp;quot;-&amp;quot;#&amp;quot; sur &amp;quot;t&amp;quot;-&amp;quot;s&amp;quot;-&amp;quot;r&amp;quot; pour la prog&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;espace insécable en altgr+space&#039;&#039;&#039; et &#039;&#039;&#039;espace fine insécable en altgr+maj+space&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
space et maj+space donnent une espace classique, je trouvais la combinaison &amp;quot;maj+space = espace&amp;quot; trop dangereuse pour la programmation.&lt;br /&gt;
&lt;br /&gt;
Pour l&#039;instant &#039;&#039;&#039;underscore est en fn+space&#039;&#039;&#039;. Ce n&#039;est pas super logique (ce n&#039;est pas du « déplacement/édition ») mais bon… la couche « déplacement/édition » est aussi accessible que la couche altgr et la laisser quasiment vide serait un peu du gaspillage. Le mieux serait peut-être de caler le &#039;_&#039; ailleurs (mais où ? :-)). Ou alors utiliser un peu plus cette couche fn -&amp;gt; :-)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Ctrl droit et Compose inversés&#039;&#039;&#039;: les touches Ctrl sont tout à fait inaccessibles sans lever la main. Un &amp;quot;dead_Compose&amp;quot; est accessible en Fn+&#039;,&#039;.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Maj et ç inversés&#039;&#039;&#039; pour augmenter l&#039;homogénéité avec l&#039;autre maj (cela rend aussi la touche plus accessible à mon avis).&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;retour de à et è&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039; ~ &amp;quot; &#039; ! ? en 1 2 3 4 5&#039;&#039;&#039;&lt;br /&gt;
rapproche &amp;quot;&lt;br /&gt;
~ devient accessible (ce qui n&#039;est pas le cas du altgr + la touche B de l&#039;azerty)&lt;br /&gt;
! et ? plus accessibles&lt;br /&gt;
« » inutiles ou presque donc en altgr&lt;br /&gt;
&lt;br /&gt;
* thorn (le truc sur t, inutile si ce n&#039;est pour les smileys), et euro (inutile aussi) giclent en compose (donc pas visibles ici). &lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │ Æ ¶│ 1 „│ 2 “│ 3 ”│ 4  │ 5  │ 6  ║ 7 ¬│ 8 ¼│ 9 ½│ 0 ¾│ ° ′│ ℝ ″║         ║&lt;br /&gt;
 │ æ –│ ~ —│ &amp;quot; ≤│ &#039; ≥│ ! ¡│ ? ¿│ @ ^║ + ±│ - −│ / ÷│ * ×│ = ≠│ % ‰║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║ B ¦│ É ˝│ P §│ O Œ│ È  ║ ´  │ V  │ D Ð│ L  │ J Ĳ│ Z Ə│ K  ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ b |│ é &amp;lt;│ p &amp;gt;│ o œ│ è `║ ^ ´│ v ˇ│ d ð│ l /│ j ĳ│ z ə│ k ~║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║ A  │ U  │ I  │ E ¤│ ;  ║ C ſ│ T  │ S ß│ R  │ N ˜│ M º│    ║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ a (│ u [│ i ]│ e )│ , /║ c ©│ t &amp;amp;│ s $│ r #│ n ~│ m ¯│Maj.║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║ Ê  │ À  │ Y ‘│ X ’│ : ·│ ˙  ║ F ª│ Q  │ G  │ H ‡│ W  ║   Ç ,      ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║ ê /│ à \│ y {│ x }│ . …│ ¨ ˘║ f ˛│ q °│ g µ│ h †│ w ˘║   ç ¸      ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║ Espace   Fine Insécable  ║     ║       ║     ║      ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║ Espace     Insécable     ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Fn « déplacement/édition » (et underscore)===&lt;br /&gt;
&lt;br /&gt;
* ←  ↓  ↑  →  sous les doigts à droite avec les positions usuelles sur vim.&lt;br /&gt;
*&amp;quot;deb&amp;quot;, &amp;quot;pgdn&amp;quot;, &amp;quot;pgup&amp;quot; et &amp;quot;fin&amp;quot; accessibles facilement (on notera l&#039;homogégéité avec les flèches :)).&lt;br /&gt;
*&amp;quot;esc&amp;quot;, &amp;quot;del&amp;quot;, &amp;quot;bksp&amp;quot; et &amp;quot;entr&amp;quot; sous les doigts de la main gauche: trop bien. :)&lt;br /&gt;
*maj+insert (équivalent du clic scroll) en fn+p (p comme paste (en vim) ou comme prout (dans la vie de tous les jours))&lt;br /&gt;
*ctrl+p et ctrl+n (pour &amp;quot;précédent&amp;quot; et &amp;quot;suivant&amp;quot; dans plein de programmes) en haut des flèches haut et bas (peut-être pas top à cause du &amp;quot;d&amp;quot;: supprimer en vim, du coup, ils sont aussi sur les guillemets).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │    │    │ctl+│ctl+│    │    │    ║    │    │    │    │    │    ║         ║&lt;br /&gt;
 │    │    │ p  │ n  │    │    │    ║    │    │    │    │    │    ║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║dead│dead│maj+│dead│Com-║    │ctl+│ctl+│    │    │    │    ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ctrl│ maj│ ins│altg│pose║    │ p  │ n  │    │    │    │    ║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║    │    │    │    │    ║    │    │    │    │    │    │    ║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ esc│ del│bksp│entr│ins │ ←  │ ↓  │ ↑  | →  │ esc│    │Maj ║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║dead│    │    │    │    │    ║    │    │    │    │    ║            ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║ alt│    │    │    │    │    ║ deb│pgdn│pgup│ fin│    ║            ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║                          ║     ║       ║     ║      ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║            _             ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Des idées ?===&lt;br /&gt;
Si vous avez des idées pour améliorer cette super couche « déplacement/édition » rajoutez-les ici !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon projet « top secret »===&lt;br /&gt;
Mes problèmes majeurs sur les claviers traditionnels&lt;br /&gt;
*rangée des chiffres très peu accessible (voire inaccessible pour les @/6 */0 =/° %/` bépo)&lt;br /&gt;
*rangée F1, F2, … complètement inaccessible&lt;br /&gt;
*pouces inutilisés ou presque : la faute à la barre d&#039;espace immense !&lt;br /&gt;
*f/F bépo difficilement accessible&lt;br /&gt;
*k/K (caca) bépo inaccessible&lt;br /&gt;
*les touches en traviolle&lt;br /&gt;
&lt;br /&gt;
La solution miracle : tout remonter d&#039;une rangée !&lt;br /&gt;
La position de repos se retrouve sur les &amp;quot;bépo&amp;quot; et &amp;quot;vdlj&amp;quot; actuels.&lt;br /&gt;
&lt;br /&gt;
Le credo : utiliser au mieux les pouces et la rangée de repos.&lt;br /&gt;
*dans l&#039;affaire on perd le ê/Ê mais bon… la touche était inaccessible, on a un accent mort (et puis on pourra éventuellement caller un ê/Ê ailleurs)&lt;br /&gt;
*les touches sont mieux placées : f/F k/K deviennent accessibles (ils se retrouvent respectivement sur le m et le g azerty -&amp;gt; le décallage est moins important (est-ce seulement sur mon portable ?)).&lt;br /&gt;
*rangée F1, F2, … accessible&lt;br /&gt;
*plein de couches avec les pouces : on utilise un peu mieux la puissance de la rangée de repos.&lt;br /&gt;
*les chiffres dans une de ces couches&lt;br /&gt;
*déplacement/édition dans une autre&lt;br /&gt;
*une touche « changer de couche » accents ?&lt;br /&gt;
*une touche « changer de couche » ponctuation ? avec les touches « prog » ?&lt;br /&gt;
*une touche « changer la couche » de bébé ? &amp;lt;- ouhhhh!&lt;br /&gt;
*…&lt;br /&gt;
&lt;br /&gt;
Sans l&#039;éliminer tout à fait (faut pas rêver) on réduit donc le problème des touches en diagonale !&lt;br /&gt;
&lt;br /&gt;
On applique autant que possible le principe des couches.&lt;br /&gt;
&lt;br /&gt;
Il faut faire attention au fait qu&#039;on peut avoir tendance à ne pas relâcher la touche de changement de couche assez vite…&lt;br /&gt;
&lt;br /&gt;
La touche espace est un peu en plein milieu… Il faut soit lever un peu les pouces, soit, pourquoi pas ?, virer matériellement la touche espace.&lt;br /&gt;
&lt;br /&gt;
Un nom de code pour le moins trop laid pour cette variante : top-gueux-ne&lt;br /&gt;
*les mains vers le haut, c&#039;est top,&lt;br /&gt;
*addressée aux gueux, c&#039;est gueux,&lt;br /&gt;
*bim, bam, prout, les jeux de mots foireux, c&#039;est top-gueux-ne.&lt;br /&gt;
&lt;br /&gt;
À faire dès que j&#039;aurai un peu plus de temps :-)&lt;br /&gt;
&lt;br /&gt;
===Mon fichier .xkb===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
xkb_keymap        {&lt;br /&gt;
&lt;br /&gt;
xkb_keycodes      { include &amp;quot;xfree86+aliases(azerty)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
xkb_types         {&lt;br /&gt;
    include &amp;quot;complete&amp;quot;&lt;br /&gt;
    type &amp;quot;ALTGR_TWO&amp;quot; {&lt;br /&gt;
       modifiers = LevelThree;&lt;br /&gt;
       map[None] = Level1;&lt;br /&gt;
       map[LevelThree] = Level2;&lt;br /&gt;
       level_name[Level1] = &amp;quot;Base&amp;quot;;&lt;br /&gt;
       level_name[Level2] = &amp;quot;AltGr&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_compatibility { include &amp;quot;complete&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        indicator &amp;quot;Scroll Lock&amp;quot; { controls = Overlay1; allowExplicit = True; drivesKeyboard = True; };&lt;br /&gt;
        &lt;br /&gt;
        interpret F24 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Control); // ctrl-r&lt;br /&gt;
        };&lt;br /&gt;
        interpret F25 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6D&amp;gt;, modifiers=Mod1); // alt-f&lt;br /&gt;
        };&lt;br /&gt;
        interpret F26 {&lt;br /&gt;
            action = LockControls(controls=Overlay1);&lt;br /&gt;
        };&lt;br /&gt;
        interpret F27 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6E&amp;gt;, modifiers=Control); // ctrl-s&lt;br /&gt;
        };&lt;br /&gt;
        interpret F28 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Shift); // insert-shift&lt;br /&gt;
        };&lt;br /&gt;
        interpret F29 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;RGHT&amp;gt;, modifiers=Control); // ctrl-â†’&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
        interpret F30 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6F&amp;gt;, modifiers=Control); // ctrl-Tab&lt;br /&gt;
        };&lt;br /&gt;
        interpret F31 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I71&amp;gt;, modifiers=Control); // ctrl-p&lt;br /&gt;
        };&lt;br /&gt;
        interpret F32 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I72&amp;gt;, modifiers=Control); // ctrl-n&lt;br /&gt;
        };&lt;br /&gt;
        interpret F33 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;INS&amp;gt;, modifiers=Shift); // ctrl-v&lt;br /&gt;
        };&lt;br /&gt;
        interpret F34 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I74&amp;gt;, modifiers=Control); // ctrl-z&lt;br /&gt;
        };&lt;br /&gt;
        interpret F35 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I75&amp;gt;, modifiers=Mod1); // alt-y&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
partial alphanumeric_keys&lt;br /&gt;
xkb_symbols &amp;quot;dvorak&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	name[Group1]= &amp;quot;France - Bepo, ergonomic, Dvorak way (v1.0rc2)&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;pc(pc105)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;TLDE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dollar, numbersign, endash, paragraph ], overlay1 = &amp;lt;I70&amp;gt; }; // $ # – ¶&lt;br /&gt;
	key &amp;lt;AE01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ quotedbl, 1, emdash, doublelowquotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // &amp;quot; 1 — „&lt;br /&gt;
	key &amp;lt;AE02&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotleft, 2, less, leftdoublequotemark ], // « 2 &amp;lt; “&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ less, 2, guillemotleft, leftdoublequotemark ], // &amp;lt; 2 « “&lt;br /&gt;
                     overlay1 = &amp;lt;I7A&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE03&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotright, 3, greater, rightdoublequotemark ], // » 3 &amp;gt; ”&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ greater, 3, guillemotright, rightdoublequotemark ], // &amp;gt; 3 » ”&lt;br /&gt;
                     overlay1 = &amp;lt;I7B&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenleft, 4, U2192, lessthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ( 4 → &lt;br /&gt;
	key &amp;lt;AE05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenright, 5, U21D2, greaterthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ) 5 ⇒ &lt;br /&gt;
	key &amp;lt;AE06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ at, 6, asciicircum ], overlay1 = &amp;lt;I70&amp;gt; }; // @ 6 ^&lt;br /&gt;
	key &amp;lt;AE07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ plus, 7, plusminus, notsign ], overlay1 = &amp;lt;I70&amp;gt; }; // + 7 ± ¬&lt;br /&gt;
	key &amp;lt;AE08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ minus, 8, U2212, onequarter ], overlay1 = &amp;lt;I70&amp;gt; }; // - 8 − ¼&lt;br /&gt;
	key &amp;lt;AE09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ slash, 9, division, onehalf ], overlay1 = &amp;lt;I70&amp;gt; }; // / 9 ÷ ½&lt;br /&gt;
	key &amp;lt;AE10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asterisk, 0, multiply, threequarters ], overlay1 = &amp;lt;I70&amp;gt; }; // * 0 × ¾&lt;br /&gt;
	key &amp;lt;AE11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ equal, degree, notequal, minutes ], overlay1 = &amp;lt;I70&amp;gt; }; // = ° ≠&lt;br /&gt;
	key &amp;lt;AE12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ percent, grave, U2030, seconds ], overlay1 = &amp;lt;I70&amp;gt; }; // % ` ‰&lt;br /&gt;
	key &amp;lt;AD01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ b, B, bar, brokenbar ], overlay1 = &amp;lt;FK13&amp;gt; }; // b B | ¦ dead_ctrl&lt;br /&gt;
	key &amp;lt;AD02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, dead_acute, dead_doubleacute ], overlay1 = &amp;lt;FK14&amp;gt; }; // é É ´ ˝ dead_shift&lt;br /&gt;
	key &amp;lt;AD03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, ampersand, section ], overlay1 = &amp;lt;I77&amp;gt; }; // p P &amp;amp; § insert-shift&lt;br /&gt;
	key &amp;lt;AD04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ o, O, oe, OE ], overlay1 = &amp;lt;FK16&amp;gt; }; // o O œ Œ dead_altgr&lt;br /&gt;
	//key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ egrave, Egrave, dead_grave, grave ], }; // è È ` `&lt;br /&gt;
        key &amp;lt;AD05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, question, questiondown, dead_hook ],           // ’ ? ¿ ̉&lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ rightsinglequotemark, question, questiondown, dead_hook ], // &#039; ? ¿ ̉&lt;br /&gt;
            overlay1 = &amp;lt;FK17&amp;gt;                                                                         // compose&lt;br /&gt;
        }; &lt;br /&gt;
	key &amp;lt;AD06&amp;gt; { type[group1] = &amp;quot;THREE_LEVEL&amp;quot;, [ dead_grave, exclam, exclamdown ], overlay1 = &amp;lt;I70&amp;gt; }; // ` ! ¡&lt;br /&gt;
	key &amp;lt;AD07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ v, V, dead_caron ], overlay1 = &amp;lt;I70&amp;gt; }; // v V ˇ&lt;br /&gt;
	key &amp;lt;AD08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ d, D, eth, ETH ], overlay1 = &amp;lt;I7A&amp;gt;}; // d D ð Ð&lt;br /&gt;
	key &amp;lt;AD09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ l, L, UFDD0 ], overlay1 = &amp;lt;I7B&amp;gt;}; // l L /&lt;br /&gt;
	key &amp;lt;AD10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ j, J, U0133, U0132 ], overlay1 = &amp;lt;I70&amp;gt;}; // j J ĳ Ĳ&lt;br /&gt;
        key &amp;lt;AD11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_circumflex, dead_caron, schwa, SCHWA ], overlay1 = &amp;lt;I70&amp;gt; }; // ^ ˇ ə Ə&lt;br /&gt;
        key &amp;lt;AD12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_diaeresis, dead_abovedot, dead_breve, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ¨ ˙ ˘&lt;br /&gt;
	key &amp;lt;AC01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ a, A, ae, AE ], overlay1 = &amp;lt;ESC&amp;gt; }; // a A æ Æ escape&lt;br /&gt;
        key &amp;lt;AC02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ u, U, bracketleft ], overlay1 = &amp;lt;DELE&amp;gt; }; // u U [ delete&lt;br /&gt;
	key &amp;lt;AC03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ i, I, bracketright ], overlay1 = &amp;lt;BKSP&amp;gt; }; // i I ] backspace&lt;br /&gt;
	key &amp;lt;AC04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ e, E, EuroSign, UFDD1 ], overlay1 = &amp;lt;RTRN&amp;gt; }; // e E € ¤ return&lt;br /&gt;
        key &amp;lt;AC05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, rightsinglequotemark, dead_horn  ], // , ; &#039; &lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, apostrophe, dead_horn  ],           // , ; ’&lt;br /&gt;
            overlay1 = &amp;lt;INS&amp;gt;                                                                    // insert&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AC06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ c, C, copyright, U017F ], overlay1 = &amp;lt;LEFT&amp;gt; }; // c C © ſ&lt;br /&gt;
	key &amp;lt;AC07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ t, T, thorn, THORN ], overlay1 = &amp;lt;DOWN&amp;gt; }; // t T þ Þ&lt;br /&gt;
	key &amp;lt;AC08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ s, S, ssharp, U1E9E ], overlay1 = &amp;lt;UP&amp;gt; }; // s S ß ẞ&lt;br /&gt;
	key &amp;lt;AC09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ r, R, registered, trademark ], overlay1 = &amp;lt;RGHT&amp;gt; }; // r R ® ™&lt;br /&gt;
	key &amp;lt;AC10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ n, N, dead_tilde ], overlay1 = &amp;lt;ESC&amp;gt; }; // n N ~ escape&lt;br /&gt;
	key &amp;lt;AC11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ m, M, dead_macron, masculine ], overlay1 = &amp;lt;I70&amp;gt; }; // m M ¯ º&lt;br /&gt;
        key &amp;lt;BKSL&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_R, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;LSGT&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ecircumflex, Ecircumflex, backslash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ê Ê /&lt;br /&gt;
	key &amp;lt;AB01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ z, Z, slash, VoidSymbol ], overlay1 = &amp;lt;FK15&amp;gt; }; // z Z \&lt;br /&gt;
	key &amp;lt;AB02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ y, Y, braceleft, leftsinglequotemark ], overlay1 = &amp;lt;F35&amp;gt; }; // y Y { ‘&lt;br /&gt;
	key &amp;lt;AB03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ x, X, braceright, rightsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // x X } ’&lt;br /&gt;
	key &amp;lt;AB04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ period, colon, ellipsis, periodcentered ], overlay1 = &amp;lt;I70&amp;gt; }; // . : … ·&lt;br /&gt;
	key &amp;lt;AB05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ k, K, asciitilde, dead_tilde ], overlay1 = &amp;lt;I70&amp;gt; }; // k K ~&lt;br /&gt;
	key &amp;lt;AB10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ f, F, dead_ogonek, ordfeminine ], overlay1 = &amp;lt;HOME&amp;gt; }; // f F ˛ ª home&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;AB07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ q, Q, dead_abovering, dead_belowdot ], overlay1 = &amp;lt;PGDN&amp;gt; }; // q Q ˚ ̣pgdn&lt;br /&gt;
	key &amp;lt;AB08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ g, G, UFDD2 ], overlay1 = &amp;lt;PGUP&amp;gt; }; // g G µ pgup&lt;br /&gt;
	key &amp;lt;AB09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ h, H, dagger, doubledagger ], overlay1 = &amp;lt;END&amp;gt; }; // h H † ‡&lt;br /&gt;
	key &amp;lt;AB06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ w, W, dead_breve ], overlay1 = &amp;lt;I70&amp;gt; }; // w W ˘&lt;br /&gt;
	key &amp;lt;RTSH&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ], overlay1 = &amp;lt;I70&amp;gt; }; // ç Ç ¸ ,&lt;br /&gt;
        key &amp;lt;SPCE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ space, space, nobreakspace, U202F ], overlay1 = &amp;lt;I7F&amp;gt; }; // spaces underscore&lt;br /&gt;
&lt;br /&gt;
        // Unused keys mapped to ctrl+letter actions&lt;br /&gt;
        key &amp;lt;I6C&amp;gt; { [ r ] };&lt;br /&gt;
        key &amp;lt;I6D&amp;gt; { [ f ] };&lt;br /&gt;
        key &amp;lt;I6E&amp;gt; { [ s ] };&lt;br /&gt;
        key &amp;lt;I6F&amp;gt; { [ Tab ] };&lt;br /&gt;
        key &amp;lt;I70&amp;gt; { [ VoidSymbol ] };&lt;br /&gt;
        key &amp;lt;I71&amp;gt; { [ p ] };&lt;br /&gt;
        key &amp;lt;I72&amp;gt; { [ n ] };&lt;br /&gt;
        key &amp;lt;I73&amp;gt; { [ v ] };&lt;br /&gt;
        key &amp;lt;I74&amp;gt; { [ z ] };&lt;br /&gt;
        key &amp;lt;I75&amp;gt; { [ y ] };&lt;br /&gt;
        key &amp;lt;I76&amp;gt; { [ space ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // For some reason there are SOMETIMES (not always!) errors with this code:&lt;br /&gt;
        //    key &amp;lt;I7A&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;I7B&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;I7C&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;I7D&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;I7E&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // However passing the action in the Â«Â interpretÂ Â» section for an unsused symbol seems to work&lt;br /&gt;
        key &amp;lt;I60&amp;gt; { [ F24 ] };      // ctrl-R&lt;br /&gt;
        key &amp;lt;I61&amp;gt; { [ F25 ] };      // ctrl-F&lt;br /&gt;
        //key &amp;lt;I77&amp;gt; {  actions[group1] = [ Redirect(keycode=&amp;lt;I6C&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I77&amp;gt; { [ INS ],  actions[group1] = [ Redirect(keycode=&amp;lt;INS&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I78&amp;gt; { [ F29 ] };      // ctrl-right&lt;br /&gt;
        key &amp;lt;I79&amp;gt; { [ F30 ] };      // ctrl+Tab&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        //    key &amp;lt;I79&amp;gt; { [ Tab ], actions = [ setMods(modifiers=Mod1) ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;I7A&amp;gt; { [ F31 ] };      // ctrl-p&lt;br /&gt;
        key &amp;lt;I7B&amp;gt; { [ F32 ] };      // ctrl-n&lt;br /&gt;
        key &amp;lt;I7C&amp;gt; { [ F33 ] };      // ctrl-v&lt;br /&gt;
        key &amp;lt;I7D&amp;gt; { [ F34 ] };      // ctrl-z&lt;br /&gt;
        key &amp;lt;I7E&amp;gt; { [ F35 ] };      // alt-y&lt;br /&gt;
        key &amp;lt;I7F&amp;gt; { [ underscore ] };      // _&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Using &amp;lt; 127 keycodes also works&lt;br /&gt;
        key &amp;lt;FK13&amp;gt; { actions = [ LatchMods(modifiers=Control) ] };        // dead ctrl&lt;br /&gt;
        key &amp;lt;FK14&amp;gt; { actions = [ LatchMods(modifiers=Shift) ] };          // dead shift&lt;br /&gt;
        key &amp;lt;FK15&amp;gt; { actions = [ LatchMods(modifiers=Mod1) ] };           // dead alt&lt;br /&gt;
        key &amp;lt;FK16&amp;gt; { actions = [ LatchMods(modifiers=AltGr) ] };          // dead altgr&lt;br /&gt;
        key &amp;lt;FK17&amp;gt; { [ Multi_key ] };                                     // multi_key&lt;br /&gt;
        //    key &amp;lt;FK13&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;FK14&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;FK15&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;FK16&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;FK17&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
        // See also the bug thread here : https://bugs.freedesktop.org/show_bug.cgi?id=12401&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Transforme CAPS en lock de couche alternative «déplacement/édition», et garde le caps-lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour échanger Shift et Caps_Lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; {  [    Caps_Lock    ] };&lt;br /&gt;
&lt;br /&gt;
        // Combinaison des 2 : attention, requiert que les LFSH et CAPS dans les définitions de la touche &amp;lt;AC01&amp;gt; soient aussi échangées dans la partie principale&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
&lt;br /&gt;
        // shift + lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer CAPS en un AltGr gauche, en gardant le lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ ISO_Level3_Shift, Caps_Lock ], actions = [ SetMods(modifiers=LevelThree), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer LWIN en un AltGr gauche&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour mettre un Compose sur RWIN&lt;br /&gt;
        //key &amp;lt;RWIN&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        // key &amp;lt;MENU&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        //key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = [ SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;RCTL&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour que LWIN permette de changer de groupe&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
&lt;br /&gt;
        // Echange CTRL et Alt Gauches. Et puisque LWIN est réaffectée, garde un modificateur META en niveau 3 et 4 (AltGr)&lt;br /&gt;
        // Note: Activer cette option fonctionne mieux lorsque que l&#039;on échange aussi les raccourcis du style Alt+Tabâ€¦&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; {        [ Control_L ], actions = [ SetMods(modifiers=Control) ]       };&lt;br /&gt;
        //    key &amp;lt;LCTL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [       Alt_L,  Alt_L,  Meta_L, Meta_L         ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ]       };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        key &amp;lt;LALT&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; { type = &amp;quot;ONE_LEVEL&amp;quot;, [ VoidSymbol ], actions = [ LockControls(controls=Overlay1) ] };&lt;br /&gt;
            &lt;br /&gt;
            key &amp;lt;LFSH&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
            key &amp;lt;LWIN&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [ Alt_L, Alt_L, Meta_L, Meta_L ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ] };&lt;br /&gt;
&lt;br /&gt;
            // Make Alt+Tab still work in the overlay !&lt;br /&gt;
        //key  &amp;lt;TAB&amp;gt; {&lt;br /&gt;
        //    // would need an appropriate type here [ Tab,  ISO_Left_Tab    ],&lt;br /&gt;
        //    overlay1 = &amp;lt;F30&amp;gt;&lt;br /&gt;
        //};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;level3(ralt_switch)&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_geometry { include &amp;quot;pc(pc105)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13329</id>
		<title>Utilisateur:Legrostdg</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13329"/>
		<updated>2009-03-26T18:48:46Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La [[Utilisateur:Nbrodu|variante proposée par Nbrodu]] est très utile mais étant plutôt adepte de vim, je n&#039;utilisais pas beaucoup les raccourcis en Ctrl+… En revanche return, delete, backspace et escape avaient selon moi besoin d&#039;être plus accessibles. J&#039;en ai profité pour mettre les touches de direction &amp;quot;alla vim&amp;quot; et ajuster les touches début, fin, pgup et pgdn de manière plus homogène.&lt;br /&gt;
&lt;br /&gt;
J&#039;ai également rajouté des touches dead-modificateur (plus parce que j&#039;étais content d&#039;avoir trouvé comment faire qu&#039;autre chose).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Keymap « de base »===&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;w plus proche&#039;&#039;&#039; (alla bépow [[Utilisateur:Kaze/Bépo-int|Explications ici]]):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Finalement le bépow ne me plaît pas tellement:&lt;br /&gt;
&amp;quot;w&amp;quot; s&#039;enchaîne souvent avec un &amp;quot;o&amp;quot; ou un &amp;quot;e&amp;quot; en anglais… À revoir&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Haha! J&#039;ai trouvé une parade :) En échangeant &amp;quot;w&amp;quot; et &amp;quot;&#039;/?&amp;quot; ça devrait être pas mal. Une nouvelle variante: le &amp;quot;BÉPO?&amp;quot; :-)&lt;br /&gt;
&lt;br /&gt;
Les inconvénients:&lt;br /&gt;
**c&#039;est vrai que è et à ça manque un peu… Mais bon c&#039;était pareil avec le bépow :)&lt;br /&gt;
**une très bonne place &amp;quot;gâchée&amp;quot; par ce vieux w.&lt;br /&gt;
&lt;br /&gt;
Les avantages de cette variante:&lt;br /&gt;
**le w est bien accessible&lt;br /&gt;
**&amp;quot;w&amp;quot;-&amp;quot;h&amp;quot; s&#039;enchaîne bien, de même que &amp;quot;w&amp;quot;-&amp;quot;o&amp;quot;, &amp;quot;w&amp;quot;-&amp;quot;e&amp;quot;, &amp;quot;e&amp;quot;-&amp;quot;w&amp;quot; et &amp;quot;o&amp;quot;-&amp;quot;w&amp;quot;. Bonne amélioration par rapport au bépow!  &lt;br /&gt;
**toute la ponctuation dans le même coin :)&lt;br /&gt;
&lt;br /&gt;
Nouveau changement :-)&lt;br /&gt;
La place pour le w était peut-être un peu &amp;quot;trop&amp;quot; accessible (on aurait pu mettre une autre touche plus fréquente à la place).&lt;br /&gt;
&lt;br /&gt;
Par exemple le f!! descendre le petit doigt est vraiment horrible :) d&#039;accord pour un z ou un w mais pas pour un f.&lt;br /&gt;
&lt;br /&gt;
Échange &amp;quot;w&amp;quot;-&amp;quot;f&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&amp;quot;[&amp;quot;-&amp;quot;]&amp;quot; dans la même rangée que &amp;quot;{&amp;quot;-&amp;quot;}&amp;quot; et &amp;quot;&amp;lt;&amp;quot;-&amp;quot;&amp;gt;&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Je trouvais ça trop pratique. Les parenthèses en altgr+&#039;é&#039; et altgr+&#039;p&#039; ce serait selon moi royal, mais c&#039;est vrai que le &#039;´&#039; est bien sur le é… Je n&#039;ai pas encore trouvé de solution idéale.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;espace insécable en altgr+space&#039;&#039;&#039; et &#039;&#039;&#039;espace fine insécable en altgr+maj+space&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
space et maj+space donnent une espace classique, je trouvais la combinaison &amp;quot;maj+space = espace&amp;quot; trop dangereuse pour la programmation.&lt;br /&gt;
&lt;br /&gt;
Pour l&#039;instant &#039;&#039;&#039;underscore est en fn+space&#039;&#039;&#039;. Ce n&#039;est pas super logique (ce n&#039;est pas du « déplacement/édition ») mais bon… la couche « déplacement/édition » est aussi accessible que la couche altgr et la laisser quasiment vide serait un peu du gaspillage. Le mieux serait peut-être de caler le &#039;_&#039; ailleurs (mais où ? :-)). Ou alors utiliser un peu plus cette couche fn -&amp;gt; :-)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Ctrl droit et Compose inversés&#039;&#039;&#039;: les touches Ctrl sont tout à fait inaccessibles sans lever la main. Un &amp;quot;dead_Compose&amp;quot; est accessible en Fn+&#039;,&#039;.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Maj et ç inversés&#039;&#039;&#039; pour augmenter l&#039;homogénéité avec l&#039;autre maj (cela rend aussi la touche plus accessible à mon avis).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
  ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
  │ # ¶│ 1 „│ 2 “│ 3 ”│ 4 ≤│ 5 ≥│ 6  ║ 7 ¬│ 8 ¼│ 9 ½│ 0 ¾│ ° ′│ ℝ ″║         ║&lt;br /&gt;
  │ $ –│ &amp;quot; —│ « &amp;lt;│ » &amp;gt;│ ( →│ ) ⇒│ @ ^║ + ±│ - −│ / ÷│ * ×│ = ≠│ % ‰║ &amp;lt;--     ║&lt;br /&gt;
  ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
  ║  |&amp;lt;-  ║ B ¦│ É ˝│ P §│ O Œ│ ?  ║ !  │ V  │ D Ð│ L  │ J Ĳ│ ˇ Ə│ ˙  ║   |  ║&lt;br /&gt;
  ║  -&amp;gt;|  ║ b |│ é ´│ p &amp;amp;│ o œ│ ’ ¿║ ` ¡│ v ˇ│ d ð│ l /│ j ĳ│ ^ ə│ ¨ ˘║ &amp;lt;-&#039;  ║&lt;br /&gt;
  ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
  ║        ║ A Æ│ U  │ I  │ E ¤│ ;  ║ C ſ│ T Þ│ S ß│ R  │ N  │ M º│    ║     ║&lt;br /&gt;
  ║ Maj. ⇑ ║ a æ│ u [│ i ]│ e €│ , &#039;║ c ©│ t þ│ s ß│ r ®│ n ˜│ m ¯│Maj.║     ║&lt;br /&gt;
  ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
  ║ «»’  ║ Ê  │ Z  │ Y ‘│ X ’│ : ·│ K  ║ F ª│ Q  │ G  │ H ‡│ W  ║   Ç ,      ║&lt;br /&gt;
  ║ &amp;lt;&amp;gt;&#039;  ║ ê /│ z \│ y {│ x }│ . …│ k ~║ f ˛│ q °│ g µ│ h †│ w ˘║   ç ¸      ║&lt;br /&gt;
  ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
  ║       ║      ║     ║ Espace   Fine Insécable  ║     ║       ║     ║      ║&lt;br /&gt;
  ║ Ctrl  ║ Alt  ║ Fn ⇄║ Espace     Insécable     ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
  ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Fn « déplacement/édition » (et underscore)===&lt;br /&gt;
&lt;br /&gt;
* ←  ↓  ↑  →  sous les doigts à droite avec les positions usuelles sur vim.&lt;br /&gt;
*&amp;quot;deb&amp;quot;, &amp;quot;pgdn&amp;quot;, &amp;quot;pgup&amp;quot; et &amp;quot;fin&amp;quot; accessibles facilement (on notera l&#039;homogégéité avec les flèches :)).&lt;br /&gt;
*&amp;quot;esc&amp;quot;, &amp;quot;del&amp;quot;, &amp;quot;bksp&amp;quot; et &amp;quot;entr&amp;quot; sous les doigts de la main gauche: trop bien. :)&lt;br /&gt;
*maj+insert (équivalent du clic scroll) en fn+p (p comme paste (en vim) ou comme prout (dans la vie de tous les jours))&lt;br /&gt;
*ctrl+p et ctrl+n (pour &amp;quot;précédent&amp;quot; et &amp;quot;suivant&amp;quot; dans plein de programmes) en haut des flèches haut et bas (peut-être pas top à cause du &amp;quot;d&amp;quot;: supprimer en vim, du coup, ils sont aussi sur les guillemets).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │    │    │ctl+│ctl+│    │    │    ║    │    │    │    │    │    ║         ║&lt;br /&gt;
 │    │    │ p  │ n  │    │    │    ║    │    │    │    │    │    ║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║dead│dead│maj+│dead│Com-║    │ctl+│ctl+│    │    │    │    ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ctrl│ maj│ ins│altg│pose║    │ p  │ n  │    │    │    │    ║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║    │    │    │    │    ║    │    │    │    │    │    │    ║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ esc│ del│bksp│entr│ins │ ←  │ ↓  │ ↑  | →  │ esc│    │Maj ║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║dead│    │    │    │    │    ║    │    │    │    │    ║            ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║ alt│    │    │    │    │    ║ deb│pgdn│pgup│ fin│    ║            ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║                          ║     ║       ║     ║      ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║            _             ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Des idées ?===&lt;br /&gt;
Si vous avez des idées pour améliorer cette super couche « déplacement/édition » rajoutez-les ici !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon projet « top secret »===&lt;br /&gt;
Mes problèmes majeurs sur les claviers traditionnels&lt;br /&gt;
*rangée des chiffres très peu accessible (voire inaccessible pour les @/6 */0 =/° %/` bépo)&lt;br /&gt;
*rangée F1, F2, … complètement inaccessible&lt;br /&gt;
*pouces inutilisés ou presque : la faute à la barre d&#039;espace immense !&lt;br /&gt;
*f/F bépo difficilement accessible&lt;br /&gt;
*k/K (caca) bépo inaccessible&lt;br /&gt;
*les touches en traviolle&lt;br /&gt;
&lt;br /&gt;
La solution miracle : tout remonter d&#039;une rangée !&lt;br /&gt;
La position de repos se retrouve sur les &amp;quot;bépo&amp;quot; et &amp;quot;vdlj&amp;quot; actuels.&lt;br /&gt;
&lt;br /&gt;
Le credo : utiliser au mieux les pouces et la rangée de repos.&lt;br /&gt;
*dans l&#039;affaire on perd le ê/Ê mais bon… la touche était inaccessible, on a un accent mort (et puis on pourra éventuellement caller un ê/Ê ailleurs)&lt;br /&gt;
*les touches sont mieux placées : f/F k/K deviennent accessibles (ils se retrouvent respectivement sur le m et le g azerty -&amp;gt; le décallage est moins important (est-ce seulement sur mon portable ?)).&lt;br /&gt;
*rangée F1, F2, … accessible&lt;br /&gt;
*plein de couches avec les pouces : on utilise un peu mieux la puissance de la rangée de repos.&lt;br /&gt;
*les chiffres dans une de ces couches&lt;br /&gt;
*déplacement/édition dans une autre&lt;br /&gt;
*une touche « changer de couche » accents ?&lt;br /&gt;
*une touche « changer de couche » ponctuation ? avec les touches « prog » ?&lt;br /&gt;
*une touche « changer la couche » de bébé ? &amp;lt;- ouhhhh!&lt;br /&gt;
*…&lt;br /&gt;
&lt;br /&gt;
Sans l&#039;éliminer tout à fait (faut pas rêver) on réduit donc le problème des touches en diagonale !&lt;br /&gt;
&lt;br /&gt;
On applique autant que possible le principe des couches.&lt;br /&gt;
&lt;br /&gt;
Il faut faire attention au fait qu&#039;on peut avoir tendance à ne pas relâcher la touche de changement de couche assez vite…&lt;br /&gt;
&lt;br /&gt;
La touche espace est un peu en plein milieu… Il faut soit lever un peu les pouces, soit, pourquoi pas ?, virer matériellement la touche espace.&lt;br /&gt;
&lt;br /&gt;
Un nom de code pour le moins trop laid pour cette variante : top-gueux-ne&lt;br /&gt;
*les mains vers le haut, c&#039;est top,&lt;br /&gt;
*addressée aux gueux, c&#039;est gueux,&lt;br /&gt;
*bim, bam, prout, les jeux de mots foireux, c&#039;est top-gueux-ne.&lt;br /&gt;
&lt;br /&gt;
À faire dès que j&#039;aurai un peu plus de temps :-)&lt;br /&gt;
&lt;br /&gt;
===Mon fichier .xkb===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
xkb_keymap        {&lt;br /&gt;
&lt;br /&gt;
xkb_keycodes      { include &amp;quot;xfree86+aliases(azerty)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
xkb_types         {&lt;br /&gt;
    include &amp;quot;complete&amp;quot;&lt;br /&gt;
    type &amp;quot;ALTGR_TWO&amp;quot; {&lt;br /&gt;
       modifiers = LevelThree;&lt;br /&gt;
       map[None] = Level1;&lt;br /&gt;
       map[LevelThree] = Level2;&lt;br /&gt;
       level_name[Level1] = &amp;quot;Base&amp;quot;;&lt;br /&gt;
       level_name[Level2] = &amp;quot;AltGr&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_compatibility { include &amp;quot;complete&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        indicator &amp;quot;Scroll Lock&amp;quot; { controls = Overlay1; allowExplicit = True; drivesKeyboard = True; };&lt;br /&gt;
        &lt;br /&gt;
        interpret F24 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Control); // ctrl-r&lt;br /&gt;
        };&lt;br /&gt;
        interpret F25 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6D&amp;gt;, modifiers=Mod1); // alt-f&lt;br /&gt;
        };&lt;br /&gt;
        interpret F26 {&lt;br /&gt;
            action = LockControls(controls=Overlay1);&lt;br /&gt;
        };&lt;br /&gt;
        interpret F27 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6E&amp;gt;, modifiers=Control); // ctrl-s&lt;br /&gt;
        };&lt;br /&gt;
        interpret F28 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Shift); // insert-shift&lt;br /&gt;
        };&lt;br /&gt;
        interpret F29 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;RGHT&amp;gt;, modifiers=Control); // ctrl-â†’&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
        interpret F30 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6F&amp;gt;, modifiers=Control); // ctrl-Tab&lt;br /&gt;
        };&lt;br /&gt;
        interpret F31 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I71&amp;gt;, modifiers=Control); // ctrl-p&lt;br /&gt;
        };&lt;br /&gt;
        interpret F32 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I72&amp;gt;, modifiers=Control); // ctrl-n&lt;br /&gt;
        };&lt;br /&gt;
        interpret F33 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;INS&amp;gt;, modifiers=Shift); // ctrl-v&lt;br /&gt;
        };&lt;br /&gt;
        interpret F34 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I74&amp;gt;, modifiers=Control); // ctrl-z&lt;br /&gt;
        };&lt;br /&gt;
        interpret F35 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I75&amp;gt;, modifiers=Mod1); // alt-y&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
partial alphanumeric_keys&lt;br /&gt;
xkb_symbols &amp;quot;dvorak&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	name[Group1]= &amp;quot;France - Bepo, ergonomic, Dvorak way (v1.0rc2)&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;pc(pc105)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;TLDE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dollar, numbersign, endash, paragraph ], overlay1 = &amp;lt;I70&amp;gt; }; // $ # – ¶&lt;br /&gt;
	key &amp;lt;AE01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ quotedbl, 1, emdash, doublelowquotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // &amp;quot; 1 — „&lt;br /&gt;
	key &amp;lt;AE02&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotleft, 2, less, leftdoublequotemark ], // « 2 &amp;lt; “&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ less, 2, guillemotleft, leftdoublequotemark ], // &amp;lt; 2 « “&lt;br /&gt;
                     overlay1 = &amp;lt;I7A&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE03&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotright, 3, greater, rightdoublequotemark ], // » 3 &amp;gt; ”&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ greater, 3, guillemotright, rightdoublequotemark ], // &amp;gt; 3 » ”&lt;br /&gt;
                     overlay1 = &amp;lt;I7B&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenleft, 4, U2192, lessthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ( 4 → &lt;br /&gt;
	key &amp;lt;AE05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenright, 5, U21D2, greaterthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ) 5 ⇒ &lt;br /&gt;
	key &amp;lt;AE06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ at, 6, asciicircum ], overlay1 = &amp;lt;I70&amp;gt; }; // @ 6 ^&lt;br /&gt;
	key &amp;lt;AE07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ plus, 7, plusminus, notsign ], overlay1 = &amp;lt;I70&amp;gt; }; // + 7 ± ¬&lt;br /&gt;
	key &amp;lt;AE08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ minus, 8, U2212, onequarter ], overlay1 = &amp;lt;I70&amp;gt; }; // - 8 − ¼&lt;br /&gt;
	key &amp;lt;AE09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ slash, 9, division, onehalf ], overlay1 = &amp;lt;I70&amp;gt; }; // / 9 ÷ ½&lt;br /&gt;
	key &amp;lt;AE10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asterisk, 0, multiply, threequarters ], overlay1 = &amp;lt;I70&amp;gt; }; // * 0 × ¾&lt;br /&gt;
	key &amp;lt;AE11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ equal, degree, notequal, minutes ], overlay1 = &amp;lt;I70&amp;gt; }; // = ° ≠&lt;br /&gt;
	key &amp;lt;AE12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ percent, grave, U2030, seconds ], overlay1 = &amp;lt;I70&amp;gt; }; // % ` ‰&lt;br /&gt;
	key &amp;lt;AD01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ b, B, bar, brokenbar ], overlay1 = &amp;lt;FK13&amp;gt; }; // b B | ¦ dead_ctrl&lt;br /&gt;
	key &amp;lt;AD02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, dead_acute, dead_doubleacute ], overlay1 = &amp;lt;FK14&amp;gt; }; // é É ´ ˝ dead_shift&lt;br /&gt;
	key &amp;lt;AD03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, ampersand, section ], overlay1 = &amp;lt;I77&amp;gt; }; // p P &amp;amp; § insert-shift&lt;br /&gt;
	key &amp;lt;AD04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ o, O, oe, OE ], overlay1 = &amp;lt;FK16&amp;gt; }; // o O œ Œ dead_altgr&lt;br /&gt;
	//key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ egrave, Egrave, dead_grave, grave ], }; // è È ` `&lt;br /&gt;
        key &amp;lt;AD05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, question, questiondown, dead_hook ],           // ’ ? ¿ ̉&lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ rightsinglequotemark, question, questiondown, dead_hook ], // &#039; ? ¿ ̉&lt;br /&gt;
            overlay1 = &amp;lt;FK17&amp;gt;                                                                         // compose&lt;br /&gt;
        }; &lt;br /&gt;
	key &amp;lt;AD06&amp;gt; { type[group1] = &amp;quot;THREE_LEVEL&amp;quot;, [ dead_grave, exclam, exclamdown ], overlay1 = &amp;lt;I70&amp;gt; }; // ` ! ¡&lt;br /&gt;
	key &amp;lt;AD07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ v, V, dead_caron ], overlay1 = &amp;lt;I70&amp;gt; }; // v V ˇ&lt;br /&gt;
	key &amp;lt;AD08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ d, D, eth, ETH ], overlay1 = &amp;lt;I7A&amp;gt;}; // d D ð Ð&lt;br /&gt;
	key &amp;lt;AD09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ l, L, UFDD0 ], overlay1 = &amp;lt;I7B&amp;gt;}; // l L /&lt;br /&gt;
	key &amp;lt;AD10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ j, J, U0133, U0132 ], overlay1 = &amp;lt;I70&amp;gt;}; // j J ĳ Ĳ&lt;br /&gt;
        key &amp;lt;AD11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_circumflex, dead_caron, schwa, SCHWA ], overlay1 = &amp;lt;I70&amp;gt; }; // ^ ˇ ə Ə&lt;br /&gt;
        key &amp;lt;AD12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_diaeresis, dead_abovedot, dead_breve, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ¨ ˙ ˘&lt;br /&gt;
	key &amp;lt;AC01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ a, A, ae, AE ], overlay1 = &amp;lt;ESC&amp;gt; }; // a A æ Æ escape&lt;br /&gt;
        key &amp;lt;AC02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ u, U, bracketleft ], overlay1 = &amp;lt;DELE&amp;gt; }; // u U [ delete&lt;br /&gt;
	key &amp;lt;AC03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ i, I, bracketright ], overlay1 = &amp;lt;BKSP&amp;gt; }; // i I ] backspace&lt;br /&gt;
	key &amp;lt;AC04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ e, E, EuroSign, UFDD1 ], overlay1 = &amp;lt;RTRN&amp;gt; }; // e E € ¤ return&lt;br /&gt;
        key &amp;lt;AC05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, rightsinglequotemark, dead_horn  ], // , ; &#039; &lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, apostrophe, dead_horn  ],           // , ; ’&lt;br /&gt;
            overlay1 = &amp;lt;INS&amp;gt;                                                                    // insert&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AC06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ c, C, copyright, U017F ], overlay1 = &amp;lt;LEFT&amp;gt; }; // c C © ſ&lt;br /&gt;
	key &amp;lt;AC07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ t, T, thorn, THORN ], overlay1 = &amp;lt;DOWN&amp;gt; }; // t T þ Þ&lt;br /&gt;
	key &amp;lt;AC08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ s, S, ssharp, U1E9E ], overlay1 = &amp;lt;UP&amp;gt; }; // s S ß ẞ&lt;br /&gt;
	key &amp;lt;AC09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ r, R, registered, trademark ], overlay1 = &amp;lt;RGHT&amp;gt; }; // r R ® ™&lt;br /&gt;
	key &amp;lt;AC10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ n, N, dead_tilde ], overlay1 = &amp;lt;ESC&amp;gt; }; // n N ~ escape&lt;br /&gt;
	key &amp;lt;AC11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ m, M, dead_macron, masculine ], overlay1 = &amp;lt;I70&amp;gt; }; // m M ¯ º&lt;br /&gt;
        key &amp;lt;BKSL&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_R, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;LSGT&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ecircumflex, Ecircumflex, backslash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ê Ê /&lt;br /&gt;
	key &amp;lt;AB01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ z, Z, slash, VoidSymbol ], overlay1 = &amp;lt;FK15&amp;gt; }; // z Z \&lt;br /&gt;
	key &amp;lt;AB02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ y, Y, braceleft, leftsinglequotemark ], overlay1 = &amp;lt;F35&amp;gt; }; // y Y { ‘&lt;br /&gt;
	key &amp;lt;AB03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ x, X, braceright, rightsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // x X } ’&lt;br /&gt;
	key &amp;lt;AB04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ period, colon, ellipsis, periodcentered ], overlay1 = &amp;lt;I70&amp;gt; }; // . : … ·&lt;br /&gt;
	key &amp;lt;AB05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ k, K, asciitilde, dead_tilde ], overlay1 = &amp;lt;I70&amp;gt; }; // k K ~&lt;br /&gt;
	key &amp;lt;AB10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ f, F, dead_ogonek, ordfeminine ], overlay1 = &amp;lt;HOME&amp;gt; }; // f F ˛ ª home&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;AB07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ q, Q, dead_abovering, dead_belowdot ], overlay1 = &amp;lt;PGDN&amp;gt; }; // q Q ˚ ̣pgdn&lt;br /&gt;
	key &amp;lt;AB08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ g, G, UFDD2 ], overlay1 = &amp;lt;PGUP&amp;gt; }; // g G µ pgup&lt;br /&gt;
	key &amp;lt;AB09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ h, H, dagger, doubledagger ], overlay1 = &amp;lt;END&amp;gt; }; // h H † ‡&lt;br /&gt;
	key &amp;lt;AB06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ w, W, dead_breve ], overlay1 = &amp;lt;I70&amp;gt; }; // w W ˘&lt;br /&gt;
	key &amp;lt;RTSH&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ], overlay1 = &amp;lt;I70&amp;gt; }; // ç Ç ¸ ,&lt;br /&gt;
        key &amp;lt;SPCE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ space, space, nobreakspace, U202F ], overlay1 = &amp;lt;I7F&amp;gt; }; // spaces underscore&lt;br /&gt;
&lt;br /&gt;
        // Unused keys mapped to ctrl+letter actions&lt;br /&gt;
        key &amp;lt;I6C&amp;gt; { [ r ] };&lt;br /&gt;
        key &amp;lt;I6D&amp;gt; { [ f ] };&lt;br /&gt;
        key &amp;lt;I6E&amp;gt; { [ s ] };&lt;br /&gt;
        key &amp;lt;I6F&amp;gt; { [ Tab ] };&lt;br /&gt;
        key &amp;lt;I70&amp;gt; { [ VoidSymbol ] };&lt;br /&gt;
        key &amp;lt;I71&amp;gt; { [ p ] };&lt;br /&gt;
        key &amp;lt;I72&amp;gt; { [ n ] };&lt;br /&gt;
        key &amp;lt;I73&amp;gt; { [ v ] };&lt;br /&gt;
        key &amp;lt;I74&amp;gt; { [ z ] };&lt;br /&gt;
        key &amp;lt;I75&amp;gt; { [ y ] };&lt;br /&gt;
        key &amp;lt;I76&amp;gt; { [ space ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // For some reason there are SOMETIMES (not always!) errors with this code:&lt;br /&gt;
        //    key &amp;lt;I7A&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;I7B&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;I7C&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;I7D&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;I7E&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // However passing the action in the Â«Â interpretÂ Â» section for an unsused symbol seems to work&lt;br /&gt;
        key &amp;lt;I60&amp;gt; { [ F24 ] };      // ctrl-R&lt;br /&gt;
        key &amp;lt;I61&amp;gt; { [ F25 ] };      // ctrl-F&lt;br /&gt;
        //key &amp;lt;I77&amp;gt; {  actions[group1] = [ Redirect(keycode=&amp;lt;I6C&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I77&amp;gt; { [ INS ],  actions[group1] = [ Redirect(keycode=&amp;lt;INS&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I78&amp;gt; { [ F29 ] };      // ctrl-right&lt;br /&gt;
        key &amp;lt;I79&amp;gt; { [ F30 ] };      // ctrl+Tab&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        //    key &amp;lt;I79&amp;gt; { [ Tab ], actions = [ setMods(modifiers=Mod1) ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;I7A&amp;gt; { [ F31 ] };      // ctrl-p&lt;br /&gt;
        key &amp;lt;I7B&amp;gt; { [ F32 ] };      // ctrl-n&lt;br /&gt;
        key &amp;lt;I7C&amp;gt; { [ F33 ] };      // ctrl-v&lt;br /&gt;
        key &amp;lt;I7D&amp;gt; { [ F34 ] };      // ctrl-z&lt;br /&gt;
        key &amp;lt;I7E&amp;gt; { [ F35 ] };      // alt-y&lt;br /&gt;
        key &amp;lt;I7F&amp;gt; { [ underscore ] };      // _&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Using &amp;lt; 127 keycodes also works&lt;br /&gt;
        key &amp;lt;FK13&amp;gt; { actions = [ LatchMods(modifiers=Control) ] };        // dead ctrl&lt;br /&gt;
        key &amp;lt;FK14&amp;gt; { actions = [ LatchMods(modifiers=Shift) ] };          // dead shift&lt;br /&gt;
        key &amp;lt;FK15&amp;gt; { actions = [ LatchMods(modifiers=Mod1) ] };           // dead alt&lt;br /&gt;
        key &amp;lt;FK16&amp;gt; { actions = [ LatchMods(modifiers=AltGr) ] };          // dead altgr&lt;br /&gt;
        key &amp;lt;FK17&amp;gt; { [ Multi_key ] };                                     // multi_key&lt;br /&gt;
        //    key &amp;lt;FK13&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;FK14&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;FK15&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;FK16&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;FK17&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
        // See also the bug thread here : https://bugs.freedesktop.org/show_bug.cgi?id=12401&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Transforme CAPS en lock de couche alternative «déplacement/édition», et garde le caps-lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour échanger Shift et Caps_Lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; {  [    Caps_Lock    ] };&lt;br /&gt;
&lt;br /&gt;
        // Combinaison des 2 : attention, requiert que les LFSH et CAPS dans les définitions de la touche &amp;lt;AC01&amp;gt; soient aussi échangées dans la partie principale&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
&lt;br /&gt;
        // shift + lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer CAPS en un AltGr gauche, en gardant le lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ ISO_Level3_Shift, Caps_Lock ], actions = [ SetMods(modifiers=LevelThree), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer LWIN en un AltGr gauche&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour mettre un Compose sur RWIN&lt;br /&gt;
        //key &amp;lt;RWIN&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        // key &amp;lt;MENU&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        //key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = [ SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;RCTL&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour que LWIN permette de changer de groupe&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
&lt;br /&gt;
        // Echange CTRL et Alt Gauches. Et puisque LWIN est réaffectée, garde un modificateur META en niveau 3 et 4 (AltGr)&lt;br /&gt;
        // Note: Activer cette option fonctionne mieux lorsque que l&#039;on échange aussi les raccourcis du style Alt+Tabâ€¦&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; {        [ Control_L ], actions = [ SetMods(modifiers=Control) ]       };&lt;br /&gt;
        //    key &amp;lt;LCTL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [       Alt_L,  Alt_L,  Meta_L, Meta_L         ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ]       };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        key &amp;lt;LALT&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; { type = &amp;quot;ONE_LEVEL&amp;quot;, [ VoidSymbol ], actions = [ LockControls(controls=Overlay1) ] };&lt;br /&gt;
            &lt;br /&gt;
            key &amp;lt;LFSH&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
            key &amp;lt;LWIN&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [ Alt_L, Alt_L, Meta_L, Meta_L ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ] };&lt;br /&gt;
&lt;br /&gt;
            // Make Alt+Tab still work in the overlay !&lt;br /&gt;
        //key  &amp;lt;TAB&amp;gt; {&lt;br /&gt;
        //    // would need an appropriate type here [ Tab,  ISO_Left_Tab    ],&lt;br /&gt;
        //    overlay1 = &amp;lt;F30&amp;gt;&lt;br /&gt;
        //};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;level3(ralt_switch)&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_geometry { include &amp;quot;pc(pc105)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13328</id>
		<title>Utilisateur:Legrostdg</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13328"/>
		<updated>2009-03-26T18:45:58Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : /* Keymap « de base » */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La [[Utilisateur:Nbrodu|variante proposée par Nbrodu]] est très utile mais étant plutôt adepte de vim, je n&#039;utilisais pas beaucoup les raccourcis en Ctrl+… En revanche return, delete, backspace et escape avaient selon moi besoin d&#039;être plus accessibles. J&#039;en ai profité pour mettre les touches de direction &amp;quot;alla vim&amp;quot; et ajuster les touches début, fin, pgup et pgdn de manière plus homogène.&lt;br /&gt;
&lt;br /&gt;
J&#039;ai également rajouté des touches dead-modificateur (plus parce que j&#039;étais content d&#039;avoir trouvé comment faire qu&#039;autre chose).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Keymap « de base »===&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;w plus proche&#039;&#039;&#039; (alla bépow [[Utilisateur:Kaze/Bépo-int|Explications ici]]):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Finalement le bépow ne me plaît pas tellement:&lt;br /&gt;
&amp;quot;w&amp;quot; s&#039;enchaîne souvent avec un &amp;quot;o&amp;quot; ou un &amp;quot;e&amp;quot; en anglais… À revoir&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Haha! J&#039;ai trouvé une parade :) En échangeant &amp;quot;w&amp;quot; et &amp;quot;&#039;/?&amp;quot; ça devrait être pas mal. Une nouvelle variante: le &amp;quot;BÉPO?&amp;quot; :-)&lt;br /&gt;
&lt;br /&gt;
Les inconvénients:&lt;br /&gt;
**c&#039;est vrai que è et à ça manque un peu… Mais bon c&#039;était pareil avec le bépow :)&lt;br /&gt;
**une très bonne place &amp;quot;gâchée&amp;quot; par ce vieux w.&lt;br /&gt;
&lt;br /&gt;
Les avantages de cette variante:&lt;br /&gt;
**le w est bien accessible&lt;br /&gt;
**&amp;quot;w&amp;quot;-&amp;quot;h&amp;quot; s&#039;enchaîne bien, de même que &amp;quot;w&amp;quot;-&amp;quot;o&amp;quot;, &amp;quot;w&amp;quot;-&amp;quot;e&amp;quot;, &amp;quot;e&amp;quot;-&amp;quot;w&amp;quot; et &amp;quot;o&amp;quot;-&amp;quot;w&amp;quot;. Bonne amélioration par rapport au bépow!  &lt;br /&gt;
**toute la ponctuation dans le même coin :)&lt;br /&gt;
&lt;br /&gt;
Nouveau changement :-)&lt;br /&gt;
La place pour le w était peut-être un peu &amp;quot;trop&amp;quot; accessible (on aurait pu mettre une autre touche plus fréquente à la place.&lt;br /&gt;
&lt;br /&gt;
Par exemple le f!! descendre le petit doigt est vraiment horrible :) d&#039;accord pour un z ou un w mais pas pour un f.&lt;br /&gt;
&lt;br /&gt;
Échange &amp;quot;w&amp;quot;-&amp;quot;f&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&amp;quot;[&amp;quot;-&amp;quot;]&amp;quot; dans la même rangée que &amp;quot;{&amp;quot;-&amp;quot;}&amp;quot; et &amp;quot;&amp;lt;&amp;quot;-&amp;quot;&amp;gt;&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Je trouvais ça trop pratique. Les parenthèses en altgr+&#039;é&#039; et altgr+&#039;p&#039; ce serait selon moi royal, mais c&#039;est vrai que le &#039;´&#039; est bien sur le é… Je n&#039;ai pas encore trouvé de solution idéale.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;espace insécable en altgr+space&#039;&#039;&#039; et &#039;&#039;&#039;espace fine insécable en altgr+maj+space&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
space et maj+space donnent une espace classique, je trouvais la combinaison &amp;quot;maj+space = espace&amp;quot; trop dangereuse pour la programmation.&lt;br /&gt;
&lt;br /&gt;
Pour l&#039;instant &#039;&#039;&#039;underscore est en fn+space&#039;&#039;&#039;. Ce n&#039;est pas super logique (ce n&#039;est pas du « déplacement/édition ») mais bon… la couche « déplacement/édition » est aussi accessible que la couche altgr et la laisser quasiment vide serait un peu du gaspillage. Le mieux serait peut-être de caler le &#039;_&#039; ailleurs (mais où ? :-)). Ou alors utiliser un peu plus cette couche fn -&amp;gt; :-)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Ctrl droit et Compose inversés&#039;&#039;&#039;: les touches Ctrl sont tout à fait inaccessibles sans lever la main. Un &amp;quot;dead_Compose&amp;quot; est accessible en Fn+&#039;,&#039;.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Maj et ç inversés&#039;&#039;&#039; pour augmenter l&#039;homogénéité avec l&#039;autre maj (cela rend aussi la touche plus accessible à mon avis).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
  ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
  │ # ¶│ 1 „│ 2 “│ 3 ”│ 4 ≤│ 5 ≥│ 6  ║ 7 ¬│ 8 ¼│ 9 ½│ 0 ¾│ ° ′│ ℝ ″║         ║&lt;br /&gt;
  │ $ –│ &amp;quot; —│ « &amp;lt;│ » &amp;gt;│ ( →│ ) ⇒│ @ ^║ + ±│ - −│ / ÷│ * ×│ = ≠│ % ‰║ &amp;lt;--     ║&lt;br /&gt;
  ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
  ║  |&amp;lt;-  ║ B ¦│ É ˝│ P §│ O Œ│ ?  ║ !  │ V  │ D Ð│ L  │ J Ĳ│ ˇ Ə│ ˙  ║   |  ║&lt;br /&gt;
  ║  -&amp;gt;|  ║ b |│ é ´│ p &amp;amp;│ o œ│ ’ ¿║ ` ¡│ v ˇ│ d ð│ l /│ j ĳ│ ^ ə│ ¨ ˘║ &amp;lt;-&#039;  ║&lt;br /&gt;
  ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
  ║        ║ A Æ│ U  │ I  │ E ¤│ ;  ║ C ſ│ T Þ│ S ß│ R  │ N  │ M º│    ║     ║&lt;br /&gt;
  ║ Maj. ⇑ ║ a æ│ u [│ i ]│ e €│ , &#039;║ c ©│ t þ│ s ß│ r ®│ n ˜│ m ¯│Maj.║     ║&lt;br /&gt;
  ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
  ║ «»’  ║ Ê  │ Z  │ Y ‘│ X ’│ : ·│ K  ║ F ª│ Q  │ G  │ H ‡│ W  ║   Ç ,      ║&lt;br /&gt;
  ║ &amp;lt;&amp;gt;&#039;  ║ ê /│ z \│ y {│ x }│ . …│ k ~║ f ˛│ q °│ g µ│ h †│ w ˘║   ç ¸      ║&lt;br /&gt;
  ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
  ║       ║      ║     ║ Espace   Fine Insécable  ║     ║       ║     ║      ║&lt;br /&gt;
  ║ Ctrl  ║ Alt  ║ Fn ⇄║ Espace     Insécable     ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
  ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Fn « déplacement/édition » (et underscore)===&lt;br /&gt;
&lt;br /&gt;
* ←  ↓  ↑  →  sous les doigts à droite avec les positions usuelles sur vim.&lt;br /&gt;
*&amp;quot;deb&amp;quot;, &amp;quot;pgdn&amp;quot;, &amp;quot;pgup&amp;quot; et &amp;quot;fin&amp;quot; accessibles facilement (on notera l&#039;homogégéité avec les flèches :)).&lt;br /&gt;
*&amp;quot;esc&amp;quot;, &amp;quot;del&amp;quot;, &amp;quot;bksp&amp;quot; et &amp;quot;entr&amp;quot; sous les doigts de la main gauche: trop bien. :)&lt;br /&gt;
*maj+insert (équivalent du clic scroll) en fn+p (p comme paste (en vim) ou comme prout (dans la vie de tous les jours))&lt;br /&gt;
*ctrl+p et ctrl+n (pour &amp;quot;précédent&amp;quot; et &amp;quot;suivant&amp;quot; dans plein de programmes) en haut des flèches haut et bas (peut-être pas top à cause du &amp;quot;d&amp;quot;: supprimer en vim, du coup, ils sont aussi sur les guillemets).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │    │    │ctl+│ctl+│    │    │    ║    │    │    │    │    │    ║         ║&lt;br /&gt;
 │    │    │ p  │ n  │    │    │    ║    │    │    │    │    │    ║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║dead│dead│maj+│dead│Com-║    │ctl+│ctl+│    │    │    │    ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ctrl│ maj│ ins│altg│pose║    │ p  │ n  │    │    │    │    ║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║    │    │    │    │    ║    │    │    │    │    │    │    ║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ esc│ del│bksp│entr│ins │ ←  │ ↓  │ ↑  | →  │ esc│    │Maj ║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║dead│    │    │    │    │    ║    │    │    │    │    ║            ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║ alt│    │    │    │    │    ║ deb│pgdn│pgup│ fin│    ║            ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║                          ║     ║       ║     ║      ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║            _             ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Des idées ?===&lt;br /&gt;
Si vous avez des idées pour améliorer cette super couche « déplacement/édition » rajoutez-les ici !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon projet « top secret »===&lt;br /&gt;
Mes problèmes majeurs sur les claviers traditionnels&lt;br /&gt;
*rangée des chiffres très peu accessible (voire inaccessible pour les @/6 */0 =/° %/` bépo)&lt;br /&gt;
*rangée F1, F2, … complètement inaccessible&lt;br /&gt;
*pouces inutilisés ou presque : la faute à la barre d&#039;espace immense !&lt;br /&gt;
*f/F bépo difficilement accessible&lt;br /&gt;
*k/K (caca) bépo inaccessible&lt;br /&gt;
*les touches en traviolle&lt;br /&gt;
&lt;br /&gt;
La solution miracle : tout remonter d&#039;une rangée !&lt;br /&gt;
La position de repos se retrouve sur les &amp;quot;bépo&amp;quot; et &amp;quot;vdlj&amp;quot; actuels.&lt;br /&gt;
&lt;br /&gt;
Le credo : utiliser au mieux les pouces et la rangée de repos.&lt;br /&gt;
*dans l&#039;affaire on perd le ê/Ê mais bon… la touche était inaccessible, on a un accent mort (et puis on pourra éventuellement caller un ê/Ê ailleurs)&lt;br /&gt;
*les touches sont mieux placées : f/F k/K deviennent accessibles (ils se retrouvent respectivement sur le m et le g azerty -&amp;gt; le décallage est moins important (est-ce seulement sur mon portable ?)).&lt;br /&gt;
*rangée F1, F2, … accessible&lt;br /&gt;
*plein de couches avec les pouces : on utilise un peu mieux la puissance de la rangée de repos.&lt;br /&gt;
*les chiffres dans une de ces couches&lt;br /&gt;
*déplacement/édition dans une autre&lt;br /&gt;
*une touche « changer de couche » accents ?&lt;br /&gt;
*une touche « changer de couche » ponctuation ? avec les touches « prog » ?&lt;br /&gt;
*une touche « changer la couche » de bébé ? &amp;lt;- ouhhhh!&lt;br /&gt;
*…&lt;br /&gt;
&lt;br /&gt;
Sans l&#039;éliminer tout à fait (faut pas rêver) on réduit donc le problème des touches en diagonale !&lt;br /&gt;
&lt;br /&gt;
On applique autant que possible le principe des couches.&lt;br /&gt;
&lt;br /&gt;
Il faut faire attention au fait qu&#039;on peut avoir tendance à ne pas relâcher la touche de changement de couche assez vite…&lt;br /&gt;
&lt;br /&gt;
La touche espace est un peu en plein milieu… Il faut soit lever un peu les pouces, soit, pourquoi pas ?, virer matériellement la touche espace.&lt;br /&gt;
&lt;br /&gt;
Un nom de code pour le moins trop laid pour cette variante : top-gueux-ne&lt;br /&gt;
*les mains vers le haut, c&#039;est top,&lt;br /&gt;
*addressée aux gueux, c&#039;est gueux,&lt;br /&gt;
*bim, bam, prout, les jeux de mots foireux, c&#039;est top-gueux-ne.&lt;br /&gt;
&lt;br /&gt;
À faire dès que j&#039;aurai un peu plus de temps :-)&lt;br /&gt;
&lt;br /&gt;
===Mon fichier .xkb===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
xkb_keymap        {&lt;br /&gt;
&lt;br /&gt;
xkb_keycodes      { include &amp;quot;xfree86+aliases(azerty)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
xkb_types         {&lt;br /&gt;
    include &amp;quot;complete&amp;quot;&lt;br /&gt;
    type &amp;quot;ALTGR_TWO&amp;quot; {&lt;br /&gt;
       modifiers = LevelThree;&lt;br /&gt;
       map[None] = Level1;&lt;br /&gt;
       map[LevelThree] = Level2;&lt;br /&gt;
       level_name[Level1] = &amp;quot;Base&amp;quot;;&lt;br /&gt;
       level_name[Level2] = &amp;quot;AltGr&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_compatibility { include &amp;quot;complete&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        indicator &amp;quot;Scroll Lock&amp;quot; { controls = Overlay1; allowExplicit = True; drivesKeyboard = True; };&lt;br /&gt;
        &lt;br /&gt;
        interpret F24 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Control); // ctrl-r&lt;br /&gt;
        };&lt;br /&gt;
        interpret F25 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6D&amp;gt;, modifiers=Mod1); // alt-f&lt;br /&gt;
        };&lt;br /&gt;
        interpret F26 {&lt;br /&gt;
            action = LockControls(controls=Overlay1);&lt;br /&gt;
        };&lt;br /&gt;
        interpret F27 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6E&amp;gt;, modifiers=Control); // ctrl-s&lt;br /&gt;
        };&lt;br /&gt;
        interpret F28 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Shift); // insert-shift&lt;br /&gt;
        };&lt;br /&gt;
        interpret F29 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;RGHT&amp;gt;, modifiers=Control); // ctrl-â†’&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
        interpret F30 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6F&amp;gt;, modifiers=Control); // ctrl-Tab&lt;br /&gt;
        };&lt;br /&gt;
        interpret F31 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I71&amp;gt;, modifiers=Control); // ctrl-p&lt;br /&gt;
        };&lt;br /&gt;
        interpret F32 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I72&amp;gt;, modifiers=Control); // ctrl-n&lt;br /&gt;
        };&lt;br /&gt;
        interpret F33 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;INS&amp;gt;, modifiers=Shift); // ctrl-v&lt;br /&gt;
        };&lt;br /&gt;
        interpret F34 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I74&amp;gt;, modifiers=Control); // ctrl-z&lt;br /&gt;
        };&lt;br /&gt;
        interpret F35 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I75&amp;gt;, modifiers=Mod1); // alt-y&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
partial alphanumeric_keys&lt;br /&gt;
xkb_symbols &amp;quot;dvorak&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	name[Group1]= &amp;quot;France - Bepo, ergonomic, Dvorak way (v1.0rc2)&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;pc(pc105)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;TLDE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dollar, numbersign, endash, paragraph ], overlay1 = &amp;lt;I70&amp;gt; }; // $ # – ¶&lt;br /&gt;
	key &amp;lt;AE01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ quotedbl, 1, emdash, doublelowquotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // &amp;quot; 1 — „&lt;br /&gt;
	key &amp;lt;AE02&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotleft, 2, less, leftdoublequotemark ], // « 2 &amp;lt; “&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ less, 2, guillemotleft, leftdoublequotemark ], // &amp;lt; 2 « “&lt;br /&gt;
                     overlay1 = &amp;lt;I7A&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE03&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotright, 3, greater, rightdoublequotemark ], // » 3 &amp;gt; ”&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ greater, 3, guillemotright, rightdoublequotemark ], // &amp;gt; 3 » ”&lt;br /&gt;
                     overlay1 = &amp;lt;I7B&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenleft, 4, U2192, lessthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ( 4 → &lt;br /&gt;
	key &amp;lt;AE05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenright, 5, U21D2, greaterthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ) 5 ⇒ &lt;br /&gt;
	key &amp;lt;AE06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ at, 6, asciicircum ], overlay1 = &amp;lt;I70&amp;gt; }; // @ 6 ^&lt;br /&gt;
	key &amp;lt;AE07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ plus, 7, plusminus, notsign ], overlay1 = &amp;lt;I70&amp;gt; }; // + 7 ± ¬&lt;br /&gt;
	key &amp;lt;AE08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ minus, 8, U2212, onequarter ], overlay1 = &amp;lt;I70&amp;gt; }; // - 8 − ¼&lt;br /&gt;
	key &amp;lt;AE09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ slash, 9, division, onehalf ], overlay1 = &amp;lt;I70&amp;gt; }; // / 9 ÷ ½&lt;br /&gt;
	key &amp;lt;AE10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asterisk, 0, multiply, threequarters ], overlay1 = &amp;lt;I70&amp;gt; }; // * 0 × ¾&lt;br /&gt;
	key &amp;lt;AE11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ equal, degree, notequal, minutes ], overlay1 = &amp;lt;I70&amp;gt; }; // = ° ≠&lt;br /&gt;
	key &amp;lt;AE12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ percent, grave, U2030, seconds ], overlay1 = &amp;lt;I70&amp;gt; }; // % ` ‰&lt;br /&gt;
	key &amp;lt;AD01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ b, B, bar, brokenbar ], overlay1 = &amp;lt;FK13&amp;gt; }; // b B | ¦ dead_ctrl&lt;br /&gt;
	key &amp;lt;AD02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, dead_acute, dead_doubleacute ], overlay1 = &amp;lt;FK14&amp;gt; }; // é É ´ ˝ dead_shift&lt;br /&gt;
	key &amp;lt;AD03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, ampersand, section ], overlay1 = &amp;lt;I77&amp;gt; }; // p P &amp;amp; § insert-shift&lt;br /&gt;
	key &amp;lt;AD04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ o, O, oe, OE ], overlay1 = &amp;lt;FK16&amp;gt; }; // o O œ Œ dead_altgr&lt;br /&gt;
	//key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ egrave, Egrave, dead_grave, grave ], }; // è È ` `&lt;br /&gt;
        key &amp;lt;AD05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, question, questiondown, dead_hook ],           // ’ ? ¿ ̉&lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ rightsinglequotemark, question, questiondown, dead_hook ], // &#039; ? ¿ ̉&lt;br /&gt;
            overlay1 = &amp;lt;FK17&amp;gt;                                                                         // compose&lt;br /&gt;
        }; &lt;br /&gt;
	key &amp;lt;AD06&amp;gt; { type[group1] = &amp;quot;THREE_LEVEL&amp;quot;, [ dead_grave, exclam, exclamdown ], overlay1 = &amp;lt;I70&amp;gt; }; // ` ! ¡&lt;br /&gt;
	key &amp;lt;AD07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ v, V, dead_caron ], overlay1 = &amp;lt;I70&amp;gt; }; // v V ˇ&lt;br /&gt;
	key &amp;lt;AD08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ d, D, eth, ETH ], overlay1 = &amp;lt;I7A&amp;gt;}; // d D ð Ð&lt;br /&gt;
	key &amp;lt;AD09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ l, L, UFDD0 ], overlay1 = &amp;lt;I7B&amp;gt;}; // l L /&lt;br /&gt;
	key &amp;lt;AD10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ j, J, U0133, U0132 ], overlay1 = &amp;lt;I70&amp;gt;}; // j J ĳ Ĳ&lt;br /&gt;
        key &amp;lt;AD11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_circumflex, dead_caron, schwa, SCHWA ], overlay1 = &amp;lt;I70&amp;gt; }; // ^ ˇ ə Ə&lt;br /&gt;
        key &amp;lt;AD12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_diaeresis, dead_abovedot, dead_breve, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ¨ ˙ ˘&lt;br /&gt;
	key &amp;lt;AC01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ a, A, ae, AE ], overlay1 = &amp;lt;ESC&amp;gt; }; // a A æ Æ escape&lt;br /&gt;
        key &amp;lt;AC02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ u, U, bracketleft ], overlay1 = &amp;lt;DELE&amp;gt; }; // u U [ delete&lt;br /&gt;
	key &amp;lt;AC03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ i, I, bracketright ], overlay1 = &amp;lt;BKSP&amp;gt; }; // i I ] backspace&lt;br /&gt;
	key &amp;lt;AC04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ e, E, EuroSign, UFDD1 ], overlay1 = &amp;lt;RTRN&amp;gt; }; // e E € ¤ return&lt;br /&gt;
        key &amp;lt;AC05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, rightsinglequotemark, dead_horn  ], // , ; &#039; &lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, apostrophe, dead_horn  ],           // , ; ’&lt;br /&gt;
            overlay1 = &amp;lt;INS&amp;gt;                                                                    // insert&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AC06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ c, C, copyright, U017F ], overlay1 = &amp;lt;LEFT&amp;gt; }; // c C © ſ&lt;br /&gt;
	key &amp;lt;AC07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ t, T, thorn, THORN ], overlay1 = &amp;lt;DOWN&amp;gt; }; // t T þ Þ&lt;br /&gt;
	key &amp;lt;AC08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ s, S, ssharp, U1E9E ], overlay1 = &amp;lt;UP&amp;gt; }; // s S ß ẞ&lt;br /&gt;
	key &amp;lt;AC09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ r, R, registered, trademark ], overlay1 = &amp;lt;RGHT&amp;gt; }; // r R ® ™&lt;br /&gt;
	key &amp;lt;AC10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ n, N, dead_tilde ], overlay1 = &amp;lt;ESC&amp;gt; }; // n N ~ escape&lt;br /&gt;
	key &amp;lt;AC11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ m, M, dead_macron, masculine ], overlay1 = &amp;lt;I70&amp;gt; }; // m M ¯ º&lt;br /&gt;
        key &amp;lt;BKSL&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_R, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;LSGT&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ecircumflex, Ecircumflex, backslash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ê Ê /&lt;br /&gt;
	key &amp;lt;AB01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ z, Z, slash, VoidSymbol ], overlay1 = &amp;lt;FK15&amp;gt; }; // z Z \&lt;br /&gt;
	key &amp;lt;AB02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ y, Y, braceleft, leftsinglequotemark ], overlay1 = &amp;lt;F35&amp;gt; }; // y Y { ‘&lt;br /&gt;
	key &amp;lt;AB03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ x, X, braceright, rightsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // x X } ’&lt;br /&gt;
	key &amp;lt;AB04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ period, colon, ellipsis, periodcentered ], overlay1 = &amp;lt;I70&amp;gt; }; // . : … ·&lt;br /&gt;
	key &amp;lt;AB05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ k, K, asciitilde, dead_tilde ], overlay1 = &amp;lt;I70&amp;gt; }; // k K ~&lt;br /&gt;
	key &amp;lt;AB06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ w, W, dead_breve ], overlay1 = &amp;lt;HOME&amp;gt; }; // w W ˘ home&lt;br /&gt;
	key &amp;lt;AB07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ q, Q, dead_abovering, dead_belowdot ], overlay1 = &amp;lt;PGDN&amp;gt; }; // q Q ˚ ̣pgdn&lt;br /&gt;
	key &amp;lt;AB08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ g, G, UFDD2 ], overlay1 = &amp;lt;PGUP&amp;gt; }; // g G µ pgup&lt;br /&gt;
	key &amp;lt;AB09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ h, H, dagger, doubledagger ], overlay1 = &amp;lt;END&amp;gt; }; // h H † ‡&lt;br /&gt;
	key &amp;lt;AB10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ f, F, dead_ogonek, ordfeminine ], overlay1 = &amp;lt;I25&amp;gt; }; // f F ˛ ª&lt;br /&gt;
	key &amp;lt;RTSH&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ], overlay1 = &amp;lt;I70&amp;gt; }; // ç Ç ¸ ,&lt;br /&gt;
        key &amp;lt;SPCE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ space, space, nobreakspace, U202F ], overlay1 = &amp;lt;I7F&amp;gt; }; // spaces underscore&lt;br /&gt;
&lt;br /&gt;
        // Unused keys mapped to ctrl+letter actions&lt;br /&gt;
        key &amp;lt;I6C&amp;gt; { [ r ] };&lt;br /&gt;
        key &amp;lt;I6D&amp;gt; { [ f ] };&lt;br /&gt;
        key &amp;lt;I6E&amp;gt; { [ s ] };&lt;br /&gt;
        key &amp;lt;I6F&amp;gt; { [ Tab ] };&lt;br /&gt;
        key &amp;lt;I70&amp;gt; { [ VoidSymbol ] };&lt;br /&gt;
        key &amp;lt;I71&amp;gt; { [ p ] };&lt;br /&gt;
        key &amp;lt;I72&amp;gt; { [ n ] };&lt;br /&gt;
        key &amp;lt;I73&amp;gt; { [ v ] };&lt;br /&gt;
        key &amp;lt;I74&amp;gt; { [ z ] };&lt;br /&gt;
        key &amp;lt;I75&amp;gt; { [ y ] };&lt;br /&gt;
        key &amp;lt;I76&amp;gt; { [ space ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // For some reason there are SOMETIMES (not always!) errors with this code:&lt;br /&gt;
        //    key &amp;lt;I7A&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;I7B&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;I7C&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;I7D&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;I7E&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // However passing the action in the Â«Â interpretÂ Â» section for an unsused symbol seems to work&lt;br /&gt;
        key &amp;lt;I60&amp;gt; { [ F24 ] };      // ctrl-R&lt;br /&gt;
        key &amp;lt;I61&amp;gt; { [ F25 ] };      // ctrl-F&lt;br /&gt;
        //key &amp;lt;I77&amp;gt; {  actions[group1] = [ Redirect(keycode=&amp;lt;I6C&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I77&amp;gt; { [ INS ],  actions[group1] = [ Redirect(keycode=&amp;lt;INS&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I78&amp;gt; { [ F29 ] };      // ctrl-right&lt;br /&gt;
        key &amp;lt;I79&amp;gt; { [ F30 ] };      // ctrl+Tab&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        //    key &amp;lt;I79&amp;gt; { [ Tab ], actions = [ setMods(modifiers=Mod1) ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;I7A&amp;gt; { [ F31 ] };      // ctrl-p&lt;br /&gt;
        key &amp;lt;I7B&amp;gt; { [ F32 ] };      // ctrl-n&lt;br /&gt;
        key &amp;lt;I7C&amp;gt; { [ F33 ] };      // ctrl-v&lt;br /&gt;
        key &amp;lt;I7D&amp;gt; { [ F34 ] };      // ctrl-z&lt;br /&gt;
        key &amp;lt;I7E&amp;gt; { [ F35 ] };      // alt-y&lt;br /&gt;
        key &amp;lt;I7F&amp;gt; { [ underscore ] };      // _&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Using &amp;lt; 127 keycodes also works&lt;br /&gt;
        key &amp;lt;FK13&amp;gt; { actions = [ LatchMods(modifiers=Control) ] };        // dead ctrl&lt;br /&gt;
        key &amp;lt;FK14&amp;gt; { actions = [ LatchMods(modifiers=Shift) ] };          // dead shift&lt;br /&gt;
        key &amp;lt;FK15&amp;gt; { actions = [ LatchMods(modifiers=Mod1) ] };           // dead alt&lt;br /&gt;
        key &amp;lt;FK16&amp;gt; { actions = [ LatchMods(modifiers=AltGr) ] };          // dead altgr&lt;br /&gt;
        key &amp;lt;FK17&amp;gt; { [ Multi_key ] };                                     // multi_key&lt;br /&gt;
        //    key &amp;lt;FK13&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;FK14&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;FK15&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;FK16&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;FK17&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
        // See also the bug thread here : https://bugs.freedesktop.org/show_bug.cgi?id=12401&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Transforme CAPS en lock de couche alternative «déplacement/édition», et garde le caps-lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour échanger Shift et Caps_Lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; {  [    Caps_Lock    ] };&lt;br /&gt;
&lt;br /&gt;
        // Combinaison des 2 : attention, requiert que les LFSH et CAPS dans les définitions de la touche &amp;lt;AC01&amp;gt; soient aussi échangées dans la partie principale&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
&lt;br /&gt;
        // shift + lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer CAPS en un AltGr gauche, en gardant le lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ ISO_Level3_Shift, Caps_Lock ], actions = [ SetMods(modifiers=LevelThree), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer LWIN en un AltGr gauche&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour mettre un Compose sur RWIN&lt;br /&gt;
        //key &amp;lt;RWIN&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        // key &amp;lt;MENU&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        //key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = [ SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;RCTL&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour que LWIN permette de changer de groupe&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
&lt;br /&gt;
        // Echange CTRL et Alt Gauches. Et puisque LWIN est réaffectée, garde un modificateur META en niveau 3 et 4 (AltGr)&lt;br /&gt;
        // Note: Activer cette option fonctionne mieux lorsque que l&#039;on échange aussi les raccourcis du style Alt+Tabâ€¦&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; {        [ Control_L ], actions = [ SetMods(modifiers=Control) ]       };&lt;br /&gt;
        //    key &amp;lt;LCTL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [       Alt_L,  Alt_L,  Meta_L, Meta_L         ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ]       };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        key &amp;lt;LALT&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; { type = &amp;quot;ONE_LEVEL&amp;quot;, [ VoidSymbol ], actions = [ LockControls(controls=Overlay1) ] };&lt;br /&gt;
            &lt;br /&gt;
            key &amp;lt;LFSH&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
            key &amp;lt;LWIN&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [ Alt_L, Alt_L, Meta_L, Meta_L ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ] };&lt;br /&gt;
&lt;br /&gt;
            // Make Alt+Tab still work in the overlay !&lt;br /&gt;
        //key  &amp;lt;TAB&amp;gt; {&lt;br /&gt;
        //    // would need an appropriate type here [ Tab,  ISO_Left_Tab    ],&lt;br /&gt;
        //    overlay1 = &amp;lt;F30&amp;gt;&lt;br /&gt;
        //};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;level3(ralt_switch)&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_geometry { include &amp;quot;pc(pc105)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13323</id>
		<title>Utilisateur:Legrostdg</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13323"/>
		<updated>2009-03-26T02:22:18Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : /* Mon projet « top secret » */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La [[Utilisateur:Nbrodu|variante proposée par Nbrodu]] est très utile mais étant plutôt adepte de vim, je n&#039;utilisais pas beaucoup les raccourcis en Ctrl+… En revanche return, delete, backspace et escape avaient selon moi besoin d&#039;être plus accessibles. J&#039;en ai profité pour mettre les touches de direction &amp;quot;alla vim&amp;quot; et ajuster les touches début, fin, pgup et pgdn de manière plus homogène.&lt;br /&gt;
&lt;br /&gt;
J&#039;ai également rajouté des touches dead-modificateur (plus parce que j&#039;étais content d&#039;avoir trouvé comment faire qu&#039;autre chose).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Keymap « de base »===&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;w plus proche&#039;&#039;&#039; (alla bépow [[Utilisateur:Kaze/Bépo-int|Explications ici]]):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Finalement le bépow ne me plaît pas tellement:&lt;br /&gt;
&amp;quot;w&amp;quot; s&#039;enchaîne souvent avec un &amp;quot;o&amp;quot; ou un &amp;quot;e&amp;quot; en anglais… À revoir&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Haha! J&#039;ai trouvé une parade :) En échangeant &amp;quot;w&amp;quot; et &amp;quot;&#039;/?&amp;quot; ça devrait être pas mal. Une nouvelle variante: le &amp;quot;BÉPO?&amp;quot; :-)&lt;br /&gt;
&lt;br /&gt;
Les inconvénients:&lt;br /&gt;
**c&#039;est vrai que è et à ça manque un peu… Mais bon c&#039;était pareil avec le bépow :)&lt;br /&gt;
&lt;br /&gt;
Les avantages de cette variante:&lt;br /&gt;
**le w est bien accessible&lt;br /&gt;
**&amp;quot;w&amp;quot;-&amp;quot;h&amp;quot; s&#039;enchaîne bien, de même que &amp;quot;w&amp;quot;-&amp;quot;o&amp;quot;, &amp;quot;w&amp;quot;-&amp;quot;e&amp;quot;, &amp;quot;e&amp;quot;-&amp;quot;w&amp;quot; et &amp;quot;o&amp;quot;-&amp;quot;w&amp;quot;. Bonne amélioration par rapport au bépow!  &lt;br /&gt;
**toute la ponctuation dans le même coin :)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&amp;quot;[&amp;quot;-&amp;quot;]&amp;quot; dans la même rangée que &amp;quot;{&amp;quot;-&amp;quot;}&amp;quot; et &amp;quot;&amp;lt;&amp;quot;-&amp;quot;&amp;gt;&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Je trouvais ça trop pratique. Les parenthèses en altgr+&#039;é&#039; et altgr+&#039;p&#039; ce serait selon moi royal, mais c&#039;est vrai que le &#039;´&#039; est bien sur le é… Je n&#039;ai pas encore trouvé de solution idéale.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;espace insécable en altgr+space&#039;&#039;&#039; et &#039;&#039;&#039;espace fine insécable en altgr+maj+space&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
space et maj+space donnent une espace classique, je trouvais la combinaison &amp;quot;maj+space = espace&amp;quot; trop dangereuse pour la programmation.&lt;br /&gt;
&lt;br /&gt;
Pour l&#039;instant &#039;&#039;&#039;underscore est en fn+space&#039;&#039;&#039;. Ce n&#039;est pas super logique (ce n&#039;est pas du « déplacement/édition ») mais bon… la couche « déplacement/édition » est aussi accessible que la couche altgr et la laisser quasiment vide serait un peu du gaspillage. Le mieux serait peut-être de caler le &#039;_&#039; ailleurs (mais où ? :-)). Ou alors utiliser un peu plus cette couche fn -&amp;gt; :-)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Ctrl droit et Compose inversés&#039;&#039;&#039;: les touches Ctrl sont tout à fait inaccessibles sans lever la main. Un &amp;quot;dead_Compose&amp;quot; est accessible en Fn+&#039;,&#039;.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Maj et ç inversés&#039;&#039;&#039; pour augmenter l&#039;homogénéité avec l&#039;autre maj (cela rend aussi la touche plus accessible à mon avis).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
  ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
  │ # ¶│ 1 „│ 2 “│ 3 ”│ 4 ≤│ 5 ≥│ 6  ║ 7 ¬│ 8 ¼│ 9 ½│ 0 ¾│ ° ′│ ℝ ″║         ║&lt;br /&gt;
  │ $ –│ &amp;quot; —│ « &amp;lt;│ » &amp;gt;│ ( →│ ) ⇒│ @ ^║ + ±│ - −│ / ÷│ * ×│ = ≠│ % ‰║ &amp;lt;--     ║&lt;br /&gt;
  ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
  ║  |&amp;lt;-  ║ B ¦│ É ˝│ P §│ O Œ│ ?  ║ !  │ V  │ D Ð│ L  │ J Ĳ│ ˇ Ə│ ˙  ║   |  ║&lt;br /&gt;
  ║  -&amp;gt;|  ║ b |│ é ´│ p &amp;amp;│ o œ│ ’ ¿║ ` ¡│ v ˇ│ d ð│ l /│ j ĳ│ ^ ə│ ¨ ˘║ &amp;lt;-&#039;  ║&lt;br /&gt;
  ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
  ║        ║ A Æ│ U  │ I  │ E ¤│ ;  ║ C ſ│ T Þ│ S ß│ R  │ N  │ M º│    ║     ║&lt;br /&gt;
  ║ Maj. ⇑ ║ a æ│ u [│ i ]│ e €│ , &#039;║ c ©│ t þ│ s ß│ r ®│ n ˜│ m ¯│Maj.║     ║&lt;br /&gt;
  ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
  ║ «»’  ║ Ê  │ Z  │ Y ‘│ X ’│ : ·│ K  ║ W  │ Q  │ G  │ H ‡│ F ª║   Ç ,      ║&lt;br /&gt;
  ║ &amp;lt;&amp;gt;&#039;  ║ ê /│ z \│ y {│ x }│ . …│ k ~║ w ˘│ q °│ g µ│ h †│ f ˛║   ç ¸      ║&lt;br /&gt;
  ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
  ║       ║      ║     ║ Espace   Fine Insécable  ║     ║       ║     ║      ║&lt;br /&gt;
  ║ Ctrl  ║ Alt  ║ Fn ⇄║ Espace     Insécable     ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
  ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Fn « déplacement/édition » (et underscore)===&lt;br /&gt;
&lt;br /&gt;
* ←  ↓  ↑  →  sous les doigts à droite avec les positions usuelles sur vim.&lt;br /&gt;
*&amp;quot;deb&amp;quot;, &amp;quot;pgdn&amp;quot;, &amp;quot;pgup&amp;quot; et &amp;quot;fin&amp;quot; accessibles facilement (on notera l&#039;homogégéité avec les flèches :)).&lt;br /&gt;
*&amp;quot;esc&amp;quot;, &amp;quot;del&amp;quot;, &amp;quot;bksp&amp;quot; et &amp;quot;entr&amp;quot; sous les doigts de la main gauche: trop bien. :)&lt;br /&gt;
*maj+insert (équivalent du clic scroll) en fn+p (p comme paste (en vim) ou comme prout (dans la vie de tous les jours))&lt;br /&gt;
*ctrl+p et ctrl+n (pour &amp;quot;précédent&amp;quot; et &amp;quot;suivant&amp;quot; dans plein de programmes) en haut des flèches haut et bas (peut-être pas top à cause du &amp;quot;d&amp;quot;: supprimer en vim, du coup, ils sont aussi sur les guillemets).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │    │    │ctl+│ctl+│    │    │    ║    │    │    │    │    │    ║         ║&lt;br /&gt;
 │    │    │ p  │ n  │    │    │    ║    │    │    │    │    │    ║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║dead│dead│maj+│dead│Com-║    │ctl+│ctl+│    │    │    │    ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ctrl│ maj│ ins│altg│pose║    │ p  │ n  │    │    │    │    ║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║    │    │    │    │    ║    │    │    │    │    │    │    ║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ esc│ del│bksp│entr│ins │ ←  │ ↓  │ ↑  | →  │ esc│    │Maj ║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║dead│    │    │    │    │    ║    │    │    │    │    ║            ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║ alt│    │    │    │    │    ║ deb│pgdn│pgup│ fin│    ║            ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║                          ║     ║       ║     ║      ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║            _             ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Des idées ?===&lt;br /&gt;
Si vous avez des idées pour améliorer cette super couche « déplacement/édition » rajoutez-les ici !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon projet « top secret »===&lt;br /&gt;
Mes problèmes majeurs sur les claviers traditionnels&lt;br /&gt;
*rangée des chiffres très peu accessible (voire inaccessible pour les @/6 */0 =/° %/` bépo)&lt;br /&gt;
*rangée F1, F2, … complètement inaccessible&lt;br /&gt;
*pouces inutilisés ou presque : la faute à la barre d&#039;espace immense !&lt;br /&gt;
*f/F bépo difficilement accessible&lt;br /&gt;
*k/K (caca) bépo inaccessible&lt;br /&gt;
*les touches en traviolle&lt;br /&gt;
&lt;br /&gt;
La solution miracle : tout remonter d&#039;une rangée !&lt;br /&gt;
La position de repos se retrouve sur les &amp;quot;bépo&amp;quot; et &amp;quot;vdlj&amp;quot; actuels.&lt;br /&gt;
&lt;br /&gt;
Le credo : utiliser au mieux les pouces et la rangée de repos.&lt;br /&gt;
*dans l&#039;affaire on perd le ê/Ê mais bon… la touche était inaccessible, on a un accent mort (et puis on pourra éventuellement caller un ê/Ê ailleurs)&lt;br /&gt;
*les touches sont mieux placées : f/F k/K deviennent accessibles (ils se retrouvent respectivement sur le m et le g azerty -&amp;gt; le décallage est moins important (est-ce seulement sur mon portable ?)).&lt;br /&gt;
*rangée F1, F2, … accessible&lt;br /&gt;
*plein de couches avec les pouces : on utilise un peu mieux la puissance de la rangée de repos.&lt;br /&gt;
*les chiffres dans une de ces couches&lt;br /&gt;
*déplacement/édition dans une autre&lt;br /&gt;
*une touche « changer de couche » accents ?&lt;br /&gt;
*une touche « changer de couche » ponctuation ? avec les touches « prog » ?&lt;br /&gt;
*une touche « changer la couche » de bébé ? &amp;lt;- ouhhhh!&lt;br /&gt;
*…&lt;br /&gt;
&lt;br /&gt;
Sans l&#039;éliminer tout à fait (faut pas rêver) on réduit donc le problème des touches en diagonale !&lt;br /&gt;
&lt;br /&gt;
On applique autant que possible le principe des couches.&lt;br /&gt;
&lt;br /&gt;
Il faut faire attention au fait qu&#039;on peut avoir tendance à ne pas relâcher la touche de changement de couche assez vite…&lt;br /&gt;
&lt;br /&gt;
La touche espace est un peu en plein milieu… Il faut soit lever un peu les pouces, soit, pourquoi pas ?, virer matériellement la touche espace.&lt;br /&gt;
&lt;br /&gt;
Un nom de code pour le moins trop laid pour cette variante : top-gueux-ne&lt;br /&gt;
*les mains vers le haut, c&#039;est top,&lt;br /&gt;
*addressée aux gueux, c&#039;est gueux,&lt;br /&gt;
*bim, bam, prout, les jeux de mots foireux, c&#039;est top-gueux-ne.&lt;br /&gt;
&lt;br /&gt;
À faire dès que j&#039;aurai un peu plus de temps :-)&lt;br /&gt;
&lt;br /&gt;
===Mon fichier .xkb===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
xkb_keymap        {&lt;br /&gt;
&lt;br /&gt;
xkb_keycodes      { include &amp;quot;xfree86+aliases(azerty)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
xkb_types         {&lt;br /&gt;
    include &amp;quot;complete&amp;quot;&lt;br /&gt;
    type &amp;quot;ALTGR_TWO&amp;quot; {&lt;br /&gt;
       modifiers = LevelThree;&lt;br /&gt;
       map[None] = Level1;&lt;br /&gt;
       map[LevelThree] = Level2;&lt;br /&gt;
       level_name[Level1] = &amp;quot;Base&amp;quot;;&lt;br /&gt;
       level_name[Level2] = &amp;quot;AltGr&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_compatibility { include &amp;quot;complete&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        indicator &amp;quot;Scroll Lock&amp;quot; { controls = Overlay1; allowExplicit = True; drivesKeyboard = True; };&lt;br /&gt;
        &lt;br /&gt;
        interpret F24 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Control); // ctrl-r&lt;br /&gt;
        };&lt;br /&gt;
        interpret F25 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6D&amp;gt;, modifiers=Mod1); // alt-f&lt;br /&gt;
        };&lt;br /&gt;
        interpret F26 {&lt;br /&gt;
            action = LockControls(controls=Overlay1);&lt;br /&gt;
        };&lt;br /&gt;
        interpret F27 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6E&amp;gt;, modifiers=Control); // ctrl-s&lt;br /&gt;
        };&lt;br /&gt;
        interpret F28 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Shift); // insert-shift&lt;br /&gt;
        };&lt;br /&gt;
        interpret F29 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;RGHT&amp;gt;, modifiers=Control); // ctrl-â†’&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
        interpret F30 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6F&amp;gt;, modifiers=Control); // ctrl-Tab&lt;br /&gt;
        };&lt;br /&gt;
        interpret F31 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I71&amp;gt;, modifiers=Control); // ctrl-p&lt;br /&gt;
        };&lt;br /&gt;
        interpret F32 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I72&amp;gt;, modifiers=Control); // ctrl-n&lt;br /&gt;
        };&lt;br /&gt;
        interpret F33 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;INS&amp;gt;, modifiers=Shift); // ctrl-v&lt;br /&gt;
        };&lt;br /&gt;
        interpret F34 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I74&amp;gt;, modifiers=Control); // ctrl-z&lt;br /&gt;
        };&lt;br /&gt;
        interpret F35 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I75&amp;gt;, modifiers=Mod1); // alt-y&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
partial alphanumeric_keys&lt;br /&gt;
xkb_symbols &amp;quot;dvorak&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	name[Group1]= &amp;quot;France - Bepo, ergonomic, Dvorak way (v1.0rc2)&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;pc(pc105)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;TLDE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dollar, numbersign, endash, paragraph ], overlay1 = &amp;lt;I70&amp;gt; }; // $ # – ¶&lt;br /&gt;
	key &amp;lt;AE01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ quotedbl, 1, emdash, doublelowquotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // &amp;quot; 1 — „&lt;br /&gt;
	key &amp;lt;AE02&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotleft, 2, less, leftdoublequotemark ], // « 2 &amp;lt; “&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ less, 2, guillemotleft, leftdoublequotemark ], // &amp;lt; 2 « “&lt;br /&gt;
                     overlay1 = &amp;lt;I7A&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE03&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotright, 3, greater, rightdoublequotemark ], // » 3 &amp;gt; ”&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ greater, 3, guillemotright, rightdoublequotemark ], // &amp;gt; 3 » ”&lt;br /&gt;
                     overlay1 = &amp;lt;I7B&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenleft, 4, U2192, lessthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ( 4 → &lt;br /&gt;
	key &amp;lt;AE05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenright, 5, U21D2, greaterthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ) 5 ⇒ &lt;br /&gt;
	key &amp;lt;AE06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ at, 6, asciicircum ], overlay1 = &amp;lt;I70&amp;gt; }; // @ 6 ^&lt;br /&gt;
	key &amp;lt;AE07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ plus, 7, plusminus, notsign ], overlay1 = &amp;lt;I70&amp;gt; }; // + 7 ± ¬&lt;br /&gt;
	key &amp;lt;AE08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ minus, 8, U2212, onequarter ], overlay1 = &amp;lt;I70&amp;gt; }; // - 8 − ¼&lt;br /&gt;
	key &amp;lt;AE09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ slash, 9, division, onehalf ], overlay1 = &amp;lt;I70&amp;gt; }; // / 9 ÷ ½&lt;br /&gt;
	key &amp;lt;AE10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asterisk, 0, multiply, threequarters ], overlay1 = &amp;lt;I70&amp;gt; }; // * 0 × ¾&lt;br /&gt;
	key &amp;lt;AE11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ equal, degree, notequal, minutes ], overlay1 = &amp;lt;I70&amp;gt; }; // = ° ≠&lt;br /&gt;
	key &amp;lt;AE12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ percent, grave, U2030, seconds ], overlay1 = &amp;lt;I70&amp;gt; }; // % ` ‰&lt;br /&gt;
	key &amp;lt;AD01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ b, B, bar, brokenbar ], overlay1 = &amp;lt;FK13&amp;gt; }; // b B | ¦ dead_ctrl&lt;br /&gt;
	key &amp;lt;AD02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, dead_acute, dead_doubleacute ], overlay1 = &amp;lt;FK14&amp;gt; }; // é É ´ ˝ dead_shift&lt;br /&gt;
	key &amp;lt;AD03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, ampersand, section ], overlay1 = &amp;lt;I77&amp;gt; }; // p P &amp;amp; § insert-shift&lt;br /&gt;
	key &amp;lt;AD04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ o, O, oe, OE ], overlay1 = &amp;lt;FK16&amp;gt; }; // o O œ Œ dead_altgr&lt;br /&gt;
	//key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ egrave, Egrave, dead_grave, grave ], }; // è È ` `&lt;br /&gt;
        key &amp;lt;AD05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, question, questiondown, dead_hook ],           // ’ ? ¿ ̉&lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ rightsinglequotemark, question, questiondown, dead_hook ], // &#039; ? ¿ ̉&lt;br /&gt;
            overlay1 = &amp;lt;FK17&amp;gt;                                                                         // compose&lt;br /&gt;
        }; &lt;br /&gt;
	key &amp;lt;AD06&amp;gt; { type[group1] = &amp;quot;THREE_LEVEL&amp;quot;, [ dead_grave, exclam, exclamdown ], overlay1 = &amp;lt;I70&amp;gt; }; // ` ! ¡&lt;br /&gt;
	key &amp;lt;AD07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ v, V, dead_caron ], overlay1 = &amp;lt;I70&amp;gt; }; // v V ˇ&lt;br /&gt;
	key &amp;lt;AD08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ d, D, eth, ETH ], overlay1 = &amp;lt;I7A&amp;gt;}; // d D ð Ð&lt;br /&gt;
	key &amp;lt;AD09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ l, L, UFDD0 ], overlay1 = &amp;lt;I7B&amp;gt;}; // l L /&lt;br /&gt;
	key &amp;lt;AD10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ j, J, U0133, U0132 ], overlay1 = &amp;lt;I70&amp;gt;}; // j J ĳ Ĳ&lt;br /&gt;
        key &amp;lt;AD11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_circumflex, dead_caron, schwa, SCHWA ], overlay1 = &amp;lt;I70&amp;gt; }; // ^ ˇ ə Ə&lt;br /&gt;
        key &amp;lt;AD12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_diaeresis, dead_abovedot, dead_breve, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ¨ ˙ ˘&lt;br /&gt;
	key &amp;lt;AC01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ a, A, ae, AE ], overlay1 = &amp;lt;ESC&amp;gt; }; // a A æ Æ escape&lt;br /&gt;
        key &amp;lt;AC02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ u, U, bracketleft ], overlay1 = &amp;lt;DELE&amp;gt; }; // u U [ delete&lt;br /&gt;
	key &amp;lt;AC03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ i, I, bracketright ], overlay1 = &amp;lt;BKSP&amp;gt; }; // i I ] backspace&lt;br /&gt;
	key &amp;lt;AC04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ e, E, EuroSign, UFDD1 ], overlay1 = &amp;lt;RTRN&amp;gt; }; // e E € ¤ return&lt;br /&gt;
        key &amp;lt;AC05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, rightsinglequotemark, dead_horn  ], // , ; &#039; &lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, apostrophe, dead_horn  ],           // , ; ’&lt;br /&gt;
            overlay1 = &amp;lt;INS&amp;gt;                                                                    // insert&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AC06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ c, C, copyright, U017F ], overlay1 = &amp;lt;LEFT&amp;gt; }; // c C © ſ&lt;br /&gt;
	key &amp;lt;AC07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ t, T, thorn, THORN ], overlay1 = &amp;lt;DOWN&amp;gt; }; // t T þ Þ&lt;br /&gt;
	key &amp;lt;AC08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ s, S, ssharp, U1E9E ], overlay1 = &amp;lt;UP&amp;gt; }; // s S ß ẞ&lt;br /&gt;
	key &amp;lt;AC09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ r, R, registered, trademark ], overlay1 = &amp;lt;RGHT&amp;gt; }; // r R ® ™&lt;br /&gt;
	key &amp;lt;AC10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ n, N, dead_tilde ], overlay1 = &amp;lt;ESC&amp;gt; }; // n N ~ escape&lt;br /&gt;
	key &amp;lt;AC11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ m, M, dead_macron, masculine ], overlay1 = &amp;lt;I70&amp;gt; }; // m M ¯ º&lt;br /&gt;
        key &amp;lt;BKSL&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_R, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;LSGT&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ecircumflex, Ecircumflex, backslash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ê Ê /&lt;br /&gt;
	key &amp;lt;AB01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ z, Z, slash, VoidSymbol ], overlay1 = &amp;lt;FK15&amp;gt; }; // z Z \&lt;br /&gt;
	key &amp;lt;AB02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ y, Y, braceleft, leftsinglequotemark ], overlay1 = &amp;lt;F35&amp;gt; }; // y Y { ‘&lt;br /&gt;
	key &amp;lt;AB03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ x, X, braceright, rightsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // x X } ’&lt;br /&gt;
	key &amp;lt;AB04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ period, colon, ellipsis, periodcentered ], overlay1 = &amp;lt;I70&amp;gt; }; // . : … ·&lt;br /&gt;
	key &amp;lt;AB05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ k, K, asciitilde, dead_tilde ], overlay1 = &amp;lt;I70&amp;gt; }; // k K ~&lt;br /&gt;
	key &amp;lt;AB06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ w, W, dead_breve ], overlay1 = &amp;lt;HOME&amp;gt; }; // w W ˘ home&lt;br /&gt;
	key &amp;lt;AB07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ q, Q, dead_abovering, dead_belowdot ], overlay1 = &amp;lt;PGDN&amp;gt; }; // q Q ˚ ̣pgdn&lt;br /&gt;
	key &amp;lt;AB08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ g, G, UFDD2 ], overlay1 = &amp;lt;PGUP&amp;gt; }; // g G µ pgup&lt;br /&gt;
	key &amp;lt;AB09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ h, H, dagger, doubledagger ], overlay1 = &amp;lt;END&amp;gt; }; // h H † ‡&lt;br /&gt;
	key &amp;lt;AB10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ f, F, dead_ogonek, ordfeminine ], overlay1 = &amp;lt;I25&amp;gt; }; // f F ˛ ª&lt;br /&gt;
	key &amp;lt;RTSH&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ], overlay1 = &amp;lt;I70&amp;gt; }; // ç Ç ¸ ,&lt;br /&gt;
        key &amp;lt;SPCE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ space, space, nobreakspace, U202F ], overlay1 = &amp;lt;I7F&amp;gt; }; // spaces underscore&lt;br /&gt;
&lt;br /&gt;
        // Unused keys mapped to ctrl+letter actions&lt;br /&gt;
        key &amp;lt;I6C&amp;gt; { [ r ] };&lt;br /&gt;
        key &amp;lt;I6D&amp;gt; { [ f ] };&lt;br /&gt;
        key &amp;lt;I6E&amp;gt; { [ s ] };&lt;br /&gt;
        key &amp;lt;I6F&amp;gt; { [ Tab ] };&lt;br /&gt;
        key &amp;lt;I70&amp;gt; { [ VoidSymbol ] };&lt;br /&gt;
        key &amp;lt;I71&amp;gt; { [ p ] };&lt;br /&gt;
        key &amp;lt;I72&amp;gt; { [ n ] };&lt;br /&gt;
        key &amp;lt;I73&amp;gt; { [ v ] };&lt;br /&gt;
        key &amp;lt;I74&amp;gt; { [ z ] };&lt;br /&gt;
        key &amp;lt;I75&amp;gt; { [ y ] };&lt;br /&gt;
        key &amp;lt;I76&amp;gt; { [ space ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // For some reason there are SOMETIMES (not always!) errors with this code:&lt;br /&gt;
        //    key &amp;lt;I7A&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;I7B&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;I7C&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;I7D&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;I7E&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // However passing the action in the Â«Â interpretÂ Â» section for an unsused symbol seems to work&lt;br /&gt;
        key &amp;lt;I60&amp;gt; { [ F24 ] };      // ctrl-R&lt;br /&gt;
        key &amp;lt;I61&amp;gt; { [ F25 ] };      // ctrl-F&lt;br /&gt;
        //key &amp;lt;I77&amp;gt; {  actions[group1] = [ Redirect(keycode=&amp;lt;I6C&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I77&amp;gt; { [ INS ],  actions[group1] = [ Redirect(keycode=&amp;lt;INS&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I78&amp;gt; { [ F29 ] };      // ctrl-right&lt;br /&gt;
        key &amp;lt;I79&amp;gt; { [ F30 ] };      // ctrl+Tab&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        //    key &amp;lt;I79&amp;gt; { [ Tab ], actions = [ setMods(modifiers=Mod1) ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;I7A&amp;gt; { [ F31 ] };      // ctrl-p&lt;br /&gt;
        key &amp;lt;I7B&amp;gt; { [ F32 ] };      // ctrl-n&lt;br /&gt;
        key &amp;lt;I7C&amp;gt; { [ F33 ] };      // ctrl-v&lt;br /&gt;
        key &amp;lt;I7D&amp;gt; { [ F34 ] };      // ctrl-z&lt;br /&gt;
        key &amp;lt;I7E&amp;gt; { [ F35 ] };      // alt-y&lt;br /&gt;
        key &amp;lt;I7F&amp;gt; { [ underscore ] };      // _&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Using &amp;lt; 127 keycodes also works&lt;br /&gt;
        key &amp;lt;FK13&amp;gt; { actions = [ LatchMods(modifiers=Control) ] };        // dead ctrl&lt;br /&gt;
        key &amp;lt;FK14&amp;gt; { actions = [ LatchMods(modifiers=Shift) ] };          // dead shift&lt;br /&gt;
        key &amp;lt;FK15&amp;gt; { actions = [ LatchMods(modifiers=Mod1) ] };           // dead alt&lt;br /&gt;
        key &amp;lt;FK16&amp;gt; { actions = [ LatchMods(modifiers=AltGr) ] };          // dead altgr&lt;br /&gt;
        key &amp;lt;FK17&amp;gt; { [ Multi_key ] };                                     // multi_key&lt;br /&gt;
        //    key &amp;lt;FK13&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;FK14&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;FK15&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;FK16&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;FK17&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
        // See also the bug thread here : https://bugs.freedesktop.org/show_bug.cgi?id=12401&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Transforme CAPS en lock de couche alternative «déplacement/édition», et garde le caps-lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour échanger Shift et Caps_Lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; {  [    Caps_Lock    ] };&lt;br /&gt;
&lt;br /&gt;
        // Combinaison des 2 : attention, requiert que les LFSH et CAPS dans les définitions de la touche &amp;lt;AC01&amp;gt; soient aussi échangées dans la partie principale&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
&lt;br /&gt;
        // shift + lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer CAPS en un AltGr gauche, en gardant le lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ ISO_Level3_Shift, Caps_Lock ], actions = [ SetMods(modifiers=LevelThree), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer LWIN en un AltGr gauche&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour mettre un Compose sur RWIN&lt;br /&gt;
        //key &amp;lt;RWIN&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        // key &amp;lt;MENU&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        //key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = [ SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;RCTL&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour que LWIN permette de changer de groupe&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
&lt;br /&gt;
        // Echange CTRL et Alt Gauches. Et puisque LWIN est réaffectée, garde un modificateur META en niveau 3 et 4 (AltGr)&lt;br /&gt;
        // Note: Activer cette option fonctionne mieux lorsque que l&#039;on échange aussi les raccourcis du style Alt+Tabâ€¦&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; {        [ Control_L ], actions = [ SetMods(modifiers=Control) ]       };&lt;br /&gt;
        //    key &amp;lt;LCTL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [       Alt_L,  Alt_L,  Meta_L, Meta_L         ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ]       };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        key &amp;lt;LALT&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; { type = &amp;quot;ONE_LEVEL&amp;quot;, [ VoidSymbol ], actions = [ LockControls(controls=Overlay1) ] };&lt;br /&gt;
            &lt;br /&gt;
            key &amp;lt;LFSH&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
            key &amp;lt;LWIN&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [ Alt_L, Alt_L, Meta_L, Meta_L ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ] };&lt;br /&gt;
&lt;br /&gt;
            // Make Alt+Tab still work in the overlay !&lt;br /&gt;
        //key  &amp;lt;TAB&amp;gt; {&lt;br /&gt;
        //    // would need an appropriate type here [ Tab,  ISO_Left_Tab    ],&lt;br /&gt;
        //    overlay1 = &amp;lt;F30&amp;gt;&lt;br /&gt;
        //};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;level3(ralt_switch)&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_geometry { include &amp;quot;pc(pc105)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13322</id>
		<title>Utilisateur:Legrostdg</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13322"/>
		<updated>2009-03-26T01:29:24Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : /* Mon projet « top secret » */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La [[Utilisateur:Nbrodu|variante proposée par Nbrodu]] est très utile mais étant plutôt adepte de vim, je n&#039;utilisais pas beaucoup les raccourcis en Ctrl+… En revanche return, delete, backspace et escape avaient selon moi besoin d&#039;être plus accessibles. J&#039;en ai profité pour mettre les touches de direction &amp;quot;alla vim&amp;quot; et ajuster les touches début, fin, pgup et pgdn de manière plus homogène.&lt;br /&gt;
&lt;br /&gt;
J&#039;ai également rajouté des touches dead-modificateur (plus parce que j&#039;étais content d&#039;avoir trouvé comment faire qu&#039;autre chose).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Keymap « de base »===&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;w plus proche&#039;&#039;&#039; (alla bépow [[Utilisateur:Kaze/Bépo-int|Explications ici]]):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Finalement le bépow ne me plaît pas tellement:&lt;br /&gt;
&amp;quot;w&amp;quot; s&#039;enchaîne souvent avec un &amp;quot;o&amp;quot; ou un &amp;quot;e&amp;quot; en anglais… À revoir&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Haha! J&#039;ai trouvé une parade :) En échangeant &amp;quot;w&amp;quot; et &amp;quot;&#039;/?&amp;quot; ça devrait être pas mal. Une nouvelle variante: le &amp;quot;BÉPO?&amp;quot; :-)&lt;br /&gt;
&lt;br /&gt;
Les inconvénients:&lt;br /&gt;
**c&#039;est vrai que è et à ça manque un peu… Mais bon c&#039;était pareil avec le bépow :)&lt;br /&gt;
&lt;br /&gt;
Les avantages de cette variante:&lt;br /&gt;
**le w est bien accessible&lt;br /&gt;
**&amp;quot;w&amp;quot;-&amp;quot;h&amp;quot; s&#039;enchaîne bien, de même que &amp;quot;w&amp;quot;-&amp;quot;o&amp;quot;, &amp;quot;w&amp;quot;-&amp;quot;e&amp;quot;, &amp;quot;e&amp;quot;-&amp;quot;w&amp;quot; et &amp;quot;o&amp;quot;-&amp;quot;w&amp;quot;. Bonne amélioration par rapport au bépow!  &lt;br /&gt;
**toute la ponctuation dans le même coin :)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&amp;quot;[&amp;quot;-&amp;quot;]&amp;quot; dans la même rangée que &amp;quot;{&amp;quot;-&amp;quot;}&amp;quot; et &amp;quot;&amp;lt;&amp;quot;-&amp;quot;&amp;gt;&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Je trouvais ça trop pratique. Les parenthèses en altgr+&#039;é&#039; et altgr+&#039;p&#039; ce serait selon moi royal, mais c&#039;est vrai que le &#039;´&#039; est bien sur le é… Je n&#039;ai pas encore trouvé de solution idéale.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;espace insécable en altgr+space&#039;&#039;&#039; et &#039;&#039;&#039;espace fine insécable en altgr+maj+space&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
space et maj+space donnent une espace classique, je trouvais la combinaison &amp;quot;maj+space = espace&amp;quot; trop dangereuse pour la programmation.&lt;br /&gt;
&lt;br /&gt;
Pour l&#039;instant &#039;&#039;&#039;underscore est en fn+space&#039;&#039;&#039;. Ce n&#039;est pas super logique (ce n&#039;est pas du « déplacement/édition ») mais bon… la couche « déplacement/édition » est aussi accessible que la couche altgr et la laisser quasiment vide serait un peu du gaspillage. Le mieux serait peut-être de caler le &#039;_&#039; ailleurs (mais où ? :-)). Ou alors utiliser un peu plus cette couche fn -&amp;gt; :-)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Ctrl droit et Compose inversés&#039;&#039;&#039;: les touches Ctrl sont tout à fait inaccessibles sans lever la main. Un &amp;quot;dead_Compose&amp;quot; est accessible en Fn+&#039;,&#039;.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Maj et ç inversés&#039;&#039;&#039; pour augmenter l&#039;homogénéité avec l&#039;autre maj (cela rend aussi la touche plus accessible à mon avis).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
  ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
  │ # ¶│ 1 „│ 2 “│ 3 ”│ 4 ≤│ 5 ≥│ 6  ║ 7 ¬│ 8 ¼│ 9 ½│ 0 ¾│ ° ′│ ℝ ″║         ║&lt;br /&gt;
  │ $ –│ &amp;quot; —│ « &amp;lt;│ » &amp;gt;│ ( →│ ) ⇒│ @ ^║ + ±│ - −│ / ÷│ * ×│ = ≠│ % ‰║ &amp;lt;--     ║&lt;br /&gt;
  ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
  ║  |&amp;lt;-  ║ B ¦│ É ˝│ P §│ O Œ│ ?  ║ !  │ V  │ D Ð│ L  │ J Ĳ│ ˇ Ə│ ˙  ║   |  ║&lt;br /&gt;
  ║  -&amp;gt;|  ║ b |│ é ´│ p &amp;amp;│ o œ│ ’ ¿║ ` ¡│ v ˇ│ d ð│ l /│ j ĳ│ ^ ə│ ¨ ˘║ &amp;lt;-&#039;  ║&lt;br /&gt;
  ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
  ║        ║ A Æ│ U  │ I  │ E ¤│ ;  ║ C ſ│ T Þ│ S ß│ R  │ N  │ M º│    ║     ║&lt;br /&gt;
  ║ Maj. ⇑ ║ a æ│ u [│ i ]│ e €│ , &#039;║ c ©│ t þ│ s ß│ r ®│ n ˜│ m ¯│Maj.║     ║&lt;br /&gt;
  ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
  ║ «»’  ║ Ê  │ Z  │ Y ‘│ X ’│ : ·│ K  ║ W  │ Q  │ G  │ H ‡│ F ª║   Ç ,      ║&lt;br /&gt;
  ║ &amp;lt;&amp;gt;&#039;  ║ ê /│ z \│ y {│ x }│ . …│ k ~║ w ˘│ q °│ g µ│ h †│ f ˛║   ç ¸      ║&lt;br /&gt;
  ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
  ║       ║      ║     ║ Espace   Fine Insécable  ║     ║       ║     ║      ║&lt;br /&gt;
  ║ Ctrl  ║ Alt  ║ Fn ⇄║ Espace     Insécable     ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
  ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Fn « déplacement/édition » (et underscore)===&lt;br /&gt;
&lt;br /&gt;
* ←  ↓  ↑  →  sous les doigts à droite avec les positions usuelles sur vim.&lt;br /&gt;
*&amp;quot;deb&amp;quot;, &amp;quot;pgdn&amp;quot;, &amp;quot;pgup&amp;quot; et &amp;quot;fin&amp;quot; accessibles facilement (on notera l&#039;homogégéité avec les flèches :)).&lt;br /&gt;
*&amp;quot;esc&amp;quot;, &amp;quot;del&amp;quot;, &amp;quot;bksp&amp;quot; et &amp;quot;entr&amp;quot; sous les doigts de la main gauche: trop bien. :)&lt;br /&gt;
*maj+insert (équivalent du clic scroll) en fn+p (p comme paste (en vim) ou comme prout (dans la vie de tous les jours))&lt;br /&gt;
*ctrl+p et ctrl+n (pour &amp;quot;précédent&amp;quot; et &amp;quot;suivant&amp;quot; dans plein de programmes) en haut des flèches haut et bas (peut-être pas top à cause du &amp;quot;d&amp;quot;: supprimer en vim, du coup, ils sont aussi sur les guillemets).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │    │    │ctl+│ctl+│    │    │    ║    │    │    │    │    │    ║         ║&lt;br /&gt;
 │    │    │ p  │ n  │    │    │    ║    │    │    │    │    │    ║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║dead│dead│maj+│dead│Com-║    │ctl+│ctl+│    │    │    │    ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ctrl│ maj│ ins│altg│pose║    │ p  │ n  │    │    │    │    ║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║    │    │    │    │    ║    │    │    │    │    │    │    ║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ esc│ del│bksp│entr│ins │ ←  │ ↓  │ ↑  | →  │ esc│    │Maj ║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║dead│    │    │    │    │    ║    │    │    │    │    ║            ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║ alt│    │    │    │    │    ║ deb│pgdn│pgup│ fin│    ║            ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║                          ║     ║       ║     ║      ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║            _             ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Des idées ?===&lt;br /&gt;
Si vous avez des idées pour améliorer cette super couche « déplacement/édition » rajoutez-les ici !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon projet « top secret »===&lt;br /&gt;
Mes problèmes majeurs sur les claviers traditionnels&lt;br /&gt;
*rangée des chiffres très peu accessible (voire inaccessible pour les @/6 */0 =/° %/` bépo)&lt;br /&gt;
*rangée F1, F2, … complètement inaccessible&lt;br /&gt;
*pouces inutilisés ou presque : la faute à la barre d&#039;espace !&lt;br /&gt;
*f/F bépo difficilement accessible&lt;br /&gt;
*k/K (caca) bépo inaccessible&lt;br /&gt;
&lt;br /&gt;
La solution miracle : tout remonter d&#039;une rangée !&lt;br /&gt;
La position de repos se retrouve sur les &amp;quot;bépo&amp;quot; et &amp;quot;vdlj&amp;quot; actuels.&lt;br /&gt;
*dans l&#039;affaire on perd le ê/Ê mais bon on a un accent mort (et puis on pourra caller un ê/Ê ailleurs)&lt;br /&gt;
*les touches sont mieux placées : f/F k/K deviennent accessibles (ils se retrouvent respectivement sur le m et le g azerty -&amp;gt; le décallage est moins important (est-ce seulement sur mon portable ?)).&lt;br /&gt;
*rangée F1, F2, … accessible&lt;br /&gt;
*plein de couches avec les pouces&lt;br /&gt;
*les chiffres dans une de ces couches&lt;br /&gt;
*déplacement/édition dans une autre&lt;br /&gt;
*les accents dans une autre ?&lt;br /&gt;
*la ponctuation dans une autre ?&lt;br /&gt;
&lt;br /&gt;
Il faut faire attention au fait qu&#039;on peut avoir tendance à ne pas relacher la touche de changement de couche assez vite…&lt;br /&gt;
&lt;br /&gt;
La touche espace est un peu en plein milieu… Il faut soit lever un peu les pouces, soit, pourquoi pas ?, virer matériellement la touche espace.&lt;br /&gt;
&lt;br /&gt;
Un nom de code pour le moins trop laid pour cette variante : top-gueux-ne&lt;br /&gt;
*les mains vers le haut, c&#039;est top,&lt;br /&gt;
*addressée aux gueux, c&#039;est gueux,&lt;br /&gt;
*bim, bam, prout, les jeux de mots foireux, c&#039;est top-gueux-ne.&lt;br /&gt;
&lt;br /&gt;
À faire dès que j&#039;aurai un peu plus de temps :-)&lt;br /&gt;
&lt;br /&gt;
===Mon fichier .xkb===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
xkb_keymap        {&lt;br /&gt;
&lt;br /&gt;
xkb_keycodes      { include &amp;quot;xfree86+aliases(azerty)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
xkb_types         {&lt;br /&gt;
    include &amp;quot;complete&amp;quot;&lt;br /&gt;
    type &amp;quot;ALTGR_TWO&amp;quot; {&lt;br /&gt;
       modifiers = LevelThree;&lt;br /&gt;
       map[None] = Level1;&lt;br /&gt;
       map[LevelThree] = Level2;&lt;br /&gt;
       level_name[Level1] = &amp;quot;Base&amp;quot;;&lt;br /&gt;
       level_name[Level2] = &amp;quot;AltGr&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_compatibility { include &amp;quot;complete&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        indicator &amp;quot;Scroll Lock&amp;quot; { controls = Overlay1; allowExplicit = True; drivesKeyboard = True; };&lt;br /&gt;
        &lt;br /&gt;
        interpret F24 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Control); // ctrl-r&lt;br /&gt;
        };&lt;br /&gt;
        interpret F25 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6D&amp;gt;, modifiers=Mod1); // alt-f&lt;br /&gt;
        };&lt;br /&gt;
        interpret F26 {&lt;br /&gt;
            action = LockControls(controls=Overlay1);&lt;br /&gt;
        };&lt;br /&gt;
        interpret F27 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6E&amp;gt;, modifiers=Control); // ctrl-s&lt;br /&gt;
        };&lt;br /&gt;
        interpret F28 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Shift); // insert-shift&lt;br /&gt;
        };&lt;br /&gt;
        interpret F29 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;RGHT&amp;gt;, modifiers=Control); // ctrl-â†’&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
        interpret F30 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6F&amp;gt;, modifiers=Control); // ctrl-Tab&lt;br /&gt;
        };&lt;br /&gt;
        interpret F31 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I71&amp;gt;, modifiers=Control); // ctrl-p&lt;br /&gt;
        };&lt;br /&gt;
        interpret F32 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I72&amp;gt;, modifiers=Control); // ctrl-n&lt;br /&gt;
        };&lt;br /&gt;
        interpret F33 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;INS&amp;gt;, modifiers=Shift); // ctrl-v&lt;br /&gt;
        };&lt;br /&gt;
        interpret F34 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I74&amp;gt;, modifiers=Control); // ctrl-z&lt;br /&gt;
        };&lt;br /&gt;
        interpret F35 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I75&amp;gt;, modifiers=Mod1); // alt-y&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
partial alphanumeric_keys&lt;br /&gt;
xkb_symbols &amp;quot;dvorak&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	name[Group1]= &amp;quot;France - Bepo, ergonomic, Dvorak way (v1.0rc2)&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;pc(pc105)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;TLDE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dollar, numbersign, endash, paragraph ], overlay1 = &amp;lt;I70&amp;gt; }; // $ # – ¶&lt;br /&gt;
	key &amp;lt;AE01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ quotedbl, 1, emdash, doublelowquotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // &amp;quot; 1 — „&lt;br /&gt;
	key &amp;lt;AE02&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotleft, 2, less, leftdoublequotemark ], // « 2 &amp;lt; “&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ less, 2, guillemotleft, leftdoublequotemark ], // &amp;lt; 2 « “&lt;br /&gt;
                     overlay1 = &amp;lt;I7A&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE03&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotright, 3, greater, rightdoublequotemark ], // » 3 &amp;gt; ”&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ greater, 3, guillemotright, rightdoublequotemark ], // &amp;gt; 3 » ”&lt;br /&gt;
                     overlay1 = &amp;lt;I7B&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenleft, 4, U2192, lessthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ( 4 → &lt;br /&gt;
	key &amp;lt;AE05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenright, 5, U21D2, greaterthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ) 5 ⇒ &lt;br /&gt;
	key &amp;lt;AE06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ at, 6, asciicircum ], overlay1 = &amp;lt;I70&amp;gt; }; // @ 6 ^&lt;br /&gt;
	key &amp;lt;AE07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ plus, 7, plusminus, notsign ], overlay1 = &amp;lt;I70&amp;gt; }; // + 7 ± ¬&lt;br /&gt;
	key &amp;lt;AE08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ minus, 8, U2212, onequarter ], overlay1 = &amp;lt;I70&amp;gt; }; // - 8 − ¼&lt;br /&gt;
	key &amp;lt;AE09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ slash, 9, division, onehalf ], overlay1 = &amp;lt;I70&amp;gt; }; // / 9 ÷ ½&lt;br /&gt;
	key &amp;lt;AE10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asterisk, 0, multiply, threequarters ], overlay1 = &amp;lt;I70&amp;gt; }; // * 0 × ¾&lt;br /&gt;
	key &amp;lt;AE11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ equal, degree, notequal, minutes ], overlay1 = &amp;lt;I70&amp;gt; }; // = ° ≠&lt;br /&gt;
	key &amp;lt;AE12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ percent, grave, U2030, seconds ], overlay1 = &amp;lt;I70&amp;gt; }; // % ` ‰&lt;br /&gt;
	key &amp;lt;AD01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ b, B, bar, brokenbar ], overlay1 = &amp;lt;FK13&amp;gt; }; // b B | ¦ dead_ctrl&lt;br /&gt;
	key &amp;lt;AD02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, dead_acute, dead_doubleacute ], overlay1 = &amp;lt;FK14&amp;gt; }; // é É ´ ˝ dead_shift&lt;br /&gt;
	key &amp;lt;AD03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, ampersand, section ], overlay1 = &amp;lt;I77&amp;gt; }; // p P &amp;amp; § insert-shift&lt;br /&gt;
	key &amp;lt;AD04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ o, O, oe, OE ], overlay1 = &amp;lt;FK16&amp;gt; }; // o O œ Œ dead_altgr&lt;br /&gt;
	//key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ egrave, Egrave, dead_grave, grave ], }; // è È ` `&lt;br /&gt;
        key &amp;lt;AD05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, question, questiondown, dead_hook ],           // ’ ? ¿ ̉&lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ rightsinglequotemark, question, questiondown, dead_hook ], // &#039; ? ¿ ̉&lt;br /&gt;
            overlay1 = &amp;lt;FK17&amp;gt;                                                                         // compose&lt;br /&gt;
        }; &lt;br /&gt;
	key &amp;lt;AD06&amp;gt; { type[group1] = &amp;quot;THREE_LEVEL&amp;quot;, [ dead_grave, exclam, exclamdown ], overlay1 = &amp;lt;I70&amp;gt; }; // ` ! ¡&lt;br /&gt;
	key &amp;lt;AD07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ v, V, dead_caron ], overlay1 = &amp;lt;I70&amp;gt; }; // v V ˇ&lt;br /&gt;
	key &amp;lt;AD08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ d, D, eth, ETH ], overlay1 = &amp;lt;I7A&amp;gt;}; // d D ð Ð&lt;br /&gt;
	key &amp;lt;AD09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ l, L, UFDD0 ], overlay1 = &amp;lt;I7B&amp;gt;}; // l L /&lt;br /&gt;
	key &amp;lt;AD10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ j, J, U0133, U0132 ], overlay1 = &amp;lt;I70&amp;gt;}; // j J ĳ Ĳ&lt;br /&gt;
        key &amp;lt;AD11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_circumflex, dead_caron, schwa, SCHWA ], overlay1 = &amp;lt;I70&amp;gt; }; // ^ ˇ ə Ə&lt;br /&gt;
        key &amp;lt;AD12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_diaeresis, dead_abovedot, dead_breve, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ¨ ˙ ˘&lt;br /&gt;
	key &amp;lt;AC01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ a, A, ae, AE ], overlay1 = &amp;lt;ESC&amp;gt; }; // a A æ Æ escape&lt;br /&gt;
        key &amp;lt;AC02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ u, U, bracketleft ], overlay1 = &amp;lt;DELE&amp;gt; }; // u U [ delete&lt;br /&gt;
	key &amp;lt;AC03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ i, I, bracketright ], overlay1 = &amp;lt;BKSP&amp;gt; }; // i I ] backspace&lt;br /&gt;
	key &amp;lt;AC04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ e, E, EuroSign, UFDD1 ], overlay1 = &amp;lt;RTRN&amp;gt; }; // e E € ¤ return&lt;br /&gt;
        key &amp;lt;AC05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, rightsinglequotemark, dead_horn  ], // , ; &#039; &lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, apostrophe, dead_horn  ],           // , ; ’&lt;br /&gt;
            overlay1 = &amp;lt;INS&amp;gt;                                                                    // insert&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AC06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ c, C, copyright, U017F ], overlay1 = &amp;lt;LEFT&amp;gt; }; // c C © ſ&lt;br /&gt;
	key &amp;lt;AC07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ t, T, thorn, THORN ], overlay1 = &amp;lt;DOWN&amp;gt; }; // t T þ Þ&lt;br /&gt;
	key &amp;lt;AC08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ s, S, ssharp, U1E9E ], overlay1 = &amp;lt;UP&amp;gt; }; // s S ß ẞ&lt;br /&gt;
	key &amp;lt;AC09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ r, R, registered, trademark ], overlay1 = &amp;lt;RGHT&amp;gt; }; // r R ® ™&lt;br /&gt;
	key &amp;lt;AC10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ n, N, dead_tilde ], overlay1 = &amp;lt;ESC&amp;gt; }; // n N ~ escape&lt;br /&gt;
	key &amp;lt;AC11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ m, M, dead_macron, masculine ], overlay1 = &amp;lt;I70&amp;gt; }; // m M ¯ º&lt;br /&gt;
        key &amp;lt;BKSL&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_R, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;LSGT&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ecircumflex, Ecircumflex, backslash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ê Ê /&lt;br /&gt;
	key &amp;lt;AB01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ z, Z, slash, VoidSymbol ], overlay1 = &amp;lt;FK15&amp;gt; }; // z Z \&lt;br /&gt;
	key &amp;lt;AB02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ y, Y, braceleft, leftsinglequotemark ], overlay1 = &amp;lt;F35&amp;gt; }; // y Y { ‘&lt;br /&gt;
	key &amp;lt;AB03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ x, X, braceright, rightsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // x X } ’&lt;br /&gt;
	key &amp;lt;AB04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ period, colon, ellipsis, periodcentered ], overlay1 = &amp;lt;I70&amp;gt; }; // . : … ·&lt;br /&gt;
	key &amp;lt;AB05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ k, K, asciitilde, dead_tilde ], overlay1 = &amp;lt;I70&amp;gt; }; // k K ~&lt;br /&gt;
	key &amp;lt;AB06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ w, W, dead_breve ], overlay1 = &amp;lt;HOME&amp;gt; }; // w W ˘ home&lt;br /&gt;
	key &amp;lt;AB07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ q, Q, dead_abovering, dead_belowdot ], overlay1 = &amp;lt;PGDN&amp;gt; }; // q Q ˚ ̣pgdn&lt;br /&gt;
	key &amp;lt;AB08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ g, G, UFDD2 ], overlay1 = &amp;lt;PGUP&amp;gt; }; // g G µ pgup&lt;br /&gt;
	key &amp;lt;AB09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ h, H, dagger, doubledagger ], overlay1 = &amp;lt;END&amp;gt; }; // h H † ‡&lt;br /&gt;
	key &amp;lt;AB10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ f, F, dead_ogonek, ordfeminine ], overlay1 = &amp;lt;I25&amp;gt; }; // f F ˛ ª&lt;br /&gt;
	key &amp;lt;RTSH&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ], overlay1 = &amp;lt;I70&amp;gt; }; // ç Ç ¸ ,&lt;br /&gt;
        key &amp;lt;SPCE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ space, space, nobreakspace, U202F ], overlay1 = &amp;lt;I7F&amp;gt; }; // spaces underscore&lt;br /&gt;
&lt;br /&gt;
        // Unused keys mapped to ctrl+letter actions&lt;br /&gt;
        key &amp;lt;I6C&amp;gt; { [ r ] };&lt;br /&gt;
        key &amp;lt;I6D&amp;gt; { [ f ] };&lt;br /&gt;
        key &amp;lt;I6E&amp;gt; { [ s ] };&lt;br /&gt;
        key &amp;lt;I6F&amp;gt; { [ Tab ] };&lt;br /&gt;
        key &amp;lt;I70&amp;gt; { [ VoidSymbol ] };&lt;br /&gt;
        key &amp;lt;I71&amp;gt; { [ p ] };&lt;br /&gt;
        key &amp;lt;I72&amp;gt; { [ n ] };&lt;br /&gt;
        key &amp;lt;I73&amp;gt; { [ v ] };&lt;br /&gt;
        key &amp;lt;I74&amp;gt; { [ z ] };&lt;br /&gt;
        key &amp;lt;I75&amp;gt; { [ y ] };&lt;br /&gt;
        key &amp;lt;I76&amp;gt; { [ space ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // For some reason there are SOMETIMES (not always!) errors with this code:&lt;br /&gt;
        //    key &amp;lt;I7A&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;I7B&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;I7C&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;I7D&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;I7E&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // However passing the action in the Â«Â interpretÂ Â» section for an unsused symbol seems to work&lt;br /&gt;
        key &amp;lt;I60&amp;gt; { [ F24 ] };      // ctrl-R&lt;br /&gt;
        key &amp;lt;I61&amp;gt; { [ F25 ] };      // ctrl-F&lt;br /&gt;
        //key &amp;lt;I77&amp;gt; {  actions[group1] = [ Redirect(keycode=&amp;lt;I6C&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I77&amp;gt; { [ INS ],  actions[group1] = [ Redirect(keycode=&amp;lt;INS&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I78&amp;gt; { [ F29 ] };      // ctrl-right&lt;br /&gt;
        key &amp;lt;I79&amp;gt; { [ F30 ] };      // ctrl+Tab&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        //    key &amp;lt;I79&amp;gt; { [ Tab ], actions = [ setMods(modifiers=Mod1) ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;I7A&amp;gt; { [ F31 ] };      // ctrl-p&lt;br /&gt;
        key &amp;lt;I7B&amp;gt; { [ F32 ] };      // ctrl-n&lt;br /&gt;
        key &amp;lt;I7C&amp;gt; { [ F33 ] };      // ctrl-v&lt;br /&gt;
        key &amp;lt;I7D&amp;gt; { [ F34 ] };      // ctrl-z&lt;br /&gt;
        key &amp;lt;I7E&amp;gt; { [ F35 ] };      // alt-y&lt;br /&gt;
        key &amp;lt;I7F&amp;gt; { [ underscore ] };      // _&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Using &amp;lt; 127 keycodes also works&lt;br /&gt;
        key &amp;lt;FK13&amp;gt; { actions = [ LatchMods(modifiers=Control) ] };        // dead ctrl&lt;br /&gt;
        key &amp;lt;FK14&amp;gt; { actions = [ LatchMods(modifiers=Shift) ] };          // dead shift&lt;br /&gt;
        key &amp;lt;FK15&amp;gt; { actions = [ LatchMods(modifiers=Mod1) ] };           // dead alt&lt;br /&gt;
        key &amp;lt;FK16&amp;gt; { actions = [ LatchMods(modifiers=AltGr) ] };          // dead altgr&lt;br /&gt;
        key &amp;lt;FK17&amp;gt; { [ Multi_key ] };                                     // multi_key&lt;br /&gt;
        //    key &amp;lt;FK13&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;FK14&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;FK15&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;FK16&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;FK17&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
        // See also the bug thread here : https://bugs.freedesktop.org/show_bug.cgi?id=12401&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Transforme CAPS en lock de couche alternative «déplacement/édition», et garde le caps-lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour échanger Shift et Caps_Lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; {  [    Caps_Lock    ] };&lt;br /&gt;
&lt;br /&gt;
        // Combinaison des 2 : attention, requiert que les LFSH et CAPS dans les définitions de la touche &amp;lt;AC01&amp;gt; soient aussi échangées dans la partie principale&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
&lt;br /&gt;
        // shift + lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer CAPS en un AltGr gauche, en gardant le lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ ISO_Level3_Shift, Caps_Lock ], actions = [ SetMods(modifiers=LevelThree), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer LWIN en un AltGr gauche&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour mettre un Compose sur RWIN&lt;br /&gt;
        //key &amp;lt;RWIN&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        // key &amp;lt;MENU&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        //key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = [ SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;RCTL&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour que LWIN permette de changer de groupe&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
&lt;br /&gt;
        // Echange CTRL et Alt Gauches. Et puisque LWIN est réaffectée, garde un modificateur META en niveau 3 et 4 (AltGr)&lt;br /&gt;
        // Note: Activer cette option fonctionne mieux lorsque que l&#039;on échange aussi les raccourcis du style Alt+Tabâ€¦&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; {        [ Control_L ], actions = [ SetMods(modifiers=Control) ]       };&lt;br /&gt;
        //    key &amp;lt;LCTL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [       Alt_L,  Alt_L,  Meta_L, Meta_L         ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ]       };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        key &amp;lt;LALT&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; { type = &amp;quot;ONE_LEVEL&amp;quot;, [ VoidSymbol ], actions = [ LockControls(controls=Overlay1) ] };&lt;br /&gt;
            &lt;br /&gt;
            key &amp;lt;LFSH&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
            key &amp;lt;LWIN&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [ Alt_L, Alt_L, Meta_L, Meta_L ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ] };&lt;br /&gt;
&lt;br /&gt;
            // Make Alt+Tab still work in the overlay !&lt;br /&gt;
        //key  &amp;lt;TAB&amp;gt; {&lt;br /&gt;
        //    // would need an appropriate type here [ Tab,  ISO_Left_Tab    ],&lt;br /&gt;
        //    overlay1 = &amp;lt;F30&amp;gt;&lt;br /&gt;
        //};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;level3(ralt_switch)&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_geometry { include &amp;quot;pc(pc105)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13321</id>
		<title>Utilisateur:Legrostdg</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13321"/>
		<updated>2009-03-26T01:25:53Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : /* Mon projet « top secret » */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La [[Utilisateur:Nbrodu|variante proposée par Nbrodu]] est très utile mais étant plutôt adepte de vim, je n&#039;utilisais pas beaucoup les raccourcis en Ctrl+… En revanche return, delete, backspace et escape avaient selon moi besoin d&#039;être plus accessibles. J&#039;en ai profité pour mettre les touches de direction &amp;quot;alla vim&amp;quot; et ajuster les touches début, fin, pgup et pgdn de manière plus homogène.&lt;br /&gt;
&lt;br /&gt;
J&#039;ai également rajouté des touches dead-modificateur (plus parce que j&#039;étais content d&#039;avoir trouvé comment faire qu&#039;autre chose).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Keymap « de base »===&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;w plus proche&#039;&#039;&#039; (alla bépow [[Utilisateur:Kaze/Bépo-int|Explications ici]]):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Finalement le bépow ne me plaît pas tellement:&lt;br /&gt;
&amp;quot;w&amp;quot; s&#039;enchaîne souvent avec un &amp;quot;o&amp;quot; ou un &amp;quot;e&amp;quot; en anglais… À revoir&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Haha! J&#039;ai trouvé une parade :) En échangeant &amp;quot;w&amp;quot; et &amp;quot;&#039;/?&amp;quot; ça devrait être pas mal. Une nouvelle variante: le &amp;quot;BÉPO?&amp;quot; :-)&lt;br /&gt;
&lt;br /&gt;
Les inconvénients:&lt;br /&gt;
**c&#039;est vrai que è et à ça manque un peu… Mais bon c&#039;était pareil avec le bépow :)&lt;br /&gt;
&lt;br /&gt;
Les avantages de cette variante:&lt;br /&gt;
**le w est bien accessible&lt;br /&gt;
**&amp;quot;w&amp;quot;-&amp;quot;h&amp;quot; s&#039;enchaîne bien, de même que &amp;quot;w&amp;quot;-&amp;quot;o&amp;quot;, &amp;quot;w&amp;quot;-&amp;quot;e&amp;quot;, &amp;quot;e&amp;quot;-&amp;quot;w&amp;quot; et &amp;quot;o&amp;quot;-&amp;quot;w&amp;quot;. Bonne amélioration par rapport au bépow!  &lt;br /&gt;
**toute la ponctuation dans le même coin :)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&amp;quot;[&amp;quot;-&amp;quot;]&amp;quot; dans la même rangée que &amp;quot;{&amp;quot;-&amp;quot;}&amp;quot; et &amp;quot;&amp;lt;&amp;quot;-&amp;quot;&amp;gt;&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Je trouvais ça trop pratique. Les parenthèses en altgr+&#039;é&#039; et altgr+&#039;p&#039; ce serait selon moi royal, mais c&#039;est vrai que le &#039;´&#039; est bien sur le é… Je n&#039;ai pas encore trouvé de solution idéale.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;espace insécable en altgr+space&#039;&#039;&#039; et &#039;&#039;&#039;espace fine insécable en altgr+maj+space&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
space et maj+space donnent une espace classique, je trouvais la combinaison &amp;quot;maj+space = espace&amp;quot; trop dangereuse pour la programmation.&lt;br /&gt;
&lt;br /&gt;
Pour l&#039;instant &#039;&#039;&#039;underscore est en fn+space&#039;&#039;&#039;. Ce n&#039;est pas super logique (ce n&#039;est pas du « déplacement/édition ») mais bon… la couche « déplacement/édition » est aussi accessible que la couche altgr et la laisser quasiment vide serait un peu du gaspillage. Le mieux serait peut-être de caler le &#039;_&#039; ailleurs (mais où ? :-)). Ou alors utiliser un peu plus cette couche fn -&amp;gt; :-)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Ctrl droit et Compose inversés&#039;&#039;&#039;: les touches Ctrl sont tout à fait inaccessibles sans lever la main. Un &amp;quot;dead_Compose&amp;quot; est accessible en Fn+&#039;,&#039;.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Maj et ç inversés&#039;&#039;&#039; pour augmenter l&#039;homogénéité avec l&#039;autre maj (cela rend aussi la touche plus accessible à mon avis).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
  ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
  │ # ¶│ 1 „│ 2 “│ 3 ”│ 4 ≤│ 5 ≥│ 6  ║ 7 ¬│ 8 ¼│ 9 ½│ 0 ¾│ ° ′│ ℝ ″║         ║&lt;br /&gt;
  │ $ –│ &amp;quot; —│ « &amp;lt;│ » &amp;gt;│ ( →│ ) ⇒│ @ ^║ + ±│ - −│ / ÷│ * ×│ = ≠│ % ‰║ &amp;lt;--     ║&lt;br /&gt;
  ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
  ║  |&amp;lt;-  ║ B ¦│ É ˝│ P §│ O Œ│ ?  ║ !  │ V  │ D Ð│ L  │ J Ĳ│ ˇ Ə│ ˙  ║   |  ║&lt;br /&gt;
  ║  -&amp;gt;|  ║ b |│ é ´│ p &amp;amp;│ o œ│ ’ ¿║ ` ¡│ v ˇ│ d ð│ l /│ j ĳ│ ^ ə│ ¨ ˘║ &amp;lt;-&#039;  ║&lt;br /&gt;
  ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
  ║        ║ A Æ│ U  │ I  │ E ¤│ ;  ║ C ſ│ T Þ│ S ß│ R  │ N  │ M º│    ║     ║&lt;br /&gt;
  ║ Maj. ⇑ ║ a æ│ u [│ i ]│ e €│ , &#039;║ c ©│ t þ│ s ß│ r ®│ n ˜│ m ¯│Maj.║     ║&lt;br /&gt;
  ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
  ║ «»’  ║ Ê  │ Z  │ Y ‘│ X ’│ : ·│ K  ║ W  │ Q  │ G  │ H ‡│ F ª║   Ç ,      ║&lt;br /&gt;
  ║ &amp;lt;&amp;gt;&#039;  ║ ê /│ z \│ y {│ x }│ . …│ k ~║ w ˘│ q °│ g µ│ h †│ f ˛║   ç ¸      ║&lt;br /&gt;
  ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
  ║       ║      ║     ║ Espace   Fine Insécable  ║     ║       ║     ║      ║&lt;br /&gt;
  ║ Ctrl  ║ Alt  ║ Fn ⇄║ Espace     Insécable     ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
  ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Fn « déplacement/édition » (et underscore)===&lt;br /&gt;
&lt;br /&gt;
* ←  ↓  ↑  →  sous les doigts à droite avec les positions usuelles sur vim.&lt;br /&gt;
*&amp;quot;deb&amp;quot;, &amp;quot;pgdn&amp;quot;, &amp;quot;pgup&amp;quot; et &amp;quot;fin&amp;quot; accessibles facilement (on notera l&#039;homogégéité avec les flèches :)).&lt;br /&gt;
*&amp;quot;esc&amp;quot;, &amp;quot;del&amp;quot;, &amp;quot;bksp&amp;quot; et &amp;quot;entr&amp;quot; sous les doigts de la main gauche: trop bien. :)&lt;br /&gt;
*maj+insert (équivalent du clic scroll) en fn+p (p comme paste (en vim) ou comme prout (dans la vie de tous les jours))&lt;br /&gt;
*ctrl+p et ctrl+n (pour &amp;quot;précédent&amp;quot; et &amp;quot;suivant&amp;quot; dans plein de programmes) en haut des flèches haut et bas (peut-être pas top à cause du &amp;quot;d&amp;quot;: supprimer en vim, du coup, ils sont aussi sur les guillemets).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │    │    │ctl+│ctl+│    │    │    ║    │    │    │    │    │    ║         ║&lt;br /&gt;
 │    │    │ p  │ n  │    │    │    ║    │    │    │    │    │    ║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║dead│dead│maj+│dead│Com-║    │ctl+│ctl+│    │    │    │    ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ctrl│ maj│ ins│altg│pose║    │ p  │ n  │    │    │    │    ║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║    │    │    │    │    ║    │    │    │    │    │    │    ║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ esc│ del│bksp│entr│ins │ ←  │ ↓  │ ↑  | →  │ esc│    │Maj ║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║dead│    │    │    │    │    ║    │    │    │    │    ║            ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║ alt│    │    │    │    │    ║ deb│pgdn│pgup│ fin│    ║            ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║                          ║     ║       ║     ║      ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║            _             ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Des idées ?===&lt;br /&gt;
Si vous avez des idées pour améliorer cette super couche « déplacement/édition » rajoutez-les ici !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon projet « top secret »===&lt;br /&gt;
Mes problèmes majeurs sur les claviers traditionnels&lt;br /&gt;
*rangée des chiffres très peu accessible (voire inaccessible pour les @/6 */0 =/° %/` bépo)&lt;br /&gt;
*rangée F1, F2, … complètement inaccessible&lt;br /&gt;
*pouces inutilisés ou presque : la faute à la barre d&#039;espace !&lt;br /&gt;
*f/F bépo difficilement accessible&lt;br /&gt;
*k/K (caca) bépo inaccessible&lt;br /&gt;
&lt;br /&gt;
La solution miracle : tout remonter d&#039;une rangée !&lt;br /&gt;
La position de repos se retrouve sur les &amp;quot;bépo&amp;quot; et &amp;quot;vdlj&amp;quot; actuels.&lt;br /&gt;
*dans l&#039;affaire on perd le ê/Ê mais bon on a un accent mort (et puis on pourra caller un ê/Ê ailleurs)&lt;br /&gt;
*les touches sont mieux placées : f/F k/K deviennent accessibles (ils se retrouvent respectivement sur le m et le g azerty -&amp;gt; le décallage est moins important (est-ce seulement sur mon portable ?)).&lt;br /&gt;
*rangée F1, F2, … accessible&lt;br /&gt;
*plein de couches avec les pouces&lt;br /&gt;
*les chiffres dans une de ces couches&lt;br /&gt;
*déplacement/édition dans une autre&lt;br /&gt;
*les accents dans une autre ?&lt;br /&gt;
*la ponctuation dans une autre ?&lt;br /&gt;
&lt;br /&gt;
Il faut faire attention au fait qu&#039;on peut avoir tendance à ne pas relacher la touche de changement de couche assez vite…&lt;br /&gt;
&lt;br /&gt;
La touche espace est un peu en plein milieu… Il faut soit lever un peu les pouces, soit, pourquoi pas ?, virer matériellement la touche espace.&lt;br /&gt;
&lt;br /&gt;
Un nom de code pour le moins trop laid pour cette variante : top-gueux-ne&lt;br /&gt;
*les mains vers le haut, c&#039;est top,&lt;br /&gt;
*addressée aux gueux, c&#039;est gueux,&lt;br /&gt;
*les jeux de mots foireux, c&#039;est top-gueux-ne.&lt;br /&gt;
&lt;br /&gt;
À faire dès que j&#039;aurai un peu plus de temps :-)&lt;br /&gt;
&lt;br /&gt;
===Mon fichier .xkb===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
xkb_keymap        {&lt;br /&gt;
&lt;br /&gt;
xkb_keycodes      { include &amp;quot;xfree86+aliases(azerty)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
xkb_types         {&lt;br /&gt;
    include &amp;quot;complete&amp;quot;&lt;br /&gt;
    type &amp;quot;ALTGR_TWO&amp;quot; {&lt;br /&gt;
       modifiers = LevelThree;&lt;br /&gt;
       map[None] = Level1;&lt;br /&gt;
       map[LevelThree] = Level2;&lt;br /&gt;
       level_name[Level1] = &amp;quot;Base&amp;quot;;&lt;br /&gt;
       level_name[Level2] = &amp;quot;AltGr&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_compatibility { include &amp;quot;complete&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        indicator &amp;quot;Scroll Lock&amp;quot; { controls = Overlay1; allowExplicit = True; drivesKeyboard = True; };&lt;br /&gt;
        &lt;br /&gt;
        interpret F24 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Control); // ctrl-r&lt;br /&gt;
        };&lt;br /&gt;
        interpret F25 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6D&amp;gt;, modifiers=Mod1); // alt-f&lt;br /&gt;
        };&lt;br /&gt;
        interpret F26 {&lt;br /&gt;
            action = LockControls(controls=Overlay1);&lt;br /&gt;
        };&lt;br /&gt;
        interpret F27 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6E&amp;gt;, modifiers=Control); // ctrl-s&lt;br /&gt;
        };&lt;br /&gt;
        interpret F28 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Shift); // insert-shift&lt;br /&gt;
        };&lt;br /&gt;
        interpret F29 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;RGHT&amp;gt;, modifiers=Control); // ctrl-â†’&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
        interpret F30 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6F&amp;gt;, modifiers=Control); // ctrl-Tab&lt;br /&gt;
        };&lt;br /&gt;
        interpret F31 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I71&amp;gt;, modifiers=Control); // ctrl-p&lt;br /&gt;
        };&lt;br /&gt;
        interpret F32 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I72&amp;gt;, modifiers=Control); // ctrl-n&lt;br /&gt;
        };&lt;br /&gt;
        interpret F33 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;INS&amp;gt;, modifiers=Shift); // ctrl-v&lt;br /&gt;
        };&lt;br /&gt;
        interpret F34 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I74&amp;gt;, modifiers=Control); // ctrl-z&lt;br /&gt;
        };&lt;br /&gt;
        interpret F35 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I75&amp;gt;, modifiers=Mod1); // alt-y&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
partial alphanumeric_keys&lt;br /&gt;
xkb_symbols &amp;quot;dvorak&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	name[Group1]= &amp;quot;France - Bepo, ergonomic, Dvorak way (v1.0rc2)&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;pc(pc105)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;TLDE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dollar, numbersign, endash, paragraph ], overlay1 = &amp;lt;I70&amp;gt; }; // $ # – ¶&lt;br /&gt;
	key &amp;lt;AE01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ quotedbl, 1, emdash, doublelowquotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // &amp;quot; 1 — „&lt;br /&gt;
	key &amp;lt;AE02&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotleft, 2, less, leftdoublequotemark ], // « 2 &amp;lt; “&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ less, 2, guillemotleft, leftdoublequotemark ], // &amp;lt; 2 « “&lt;br /&gt;
                     overlay1 = &amp;lt;I7A&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE03&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotright, 3, greater, rightdoublequotemark ], // » 3 &amp;gt; ”&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ greater, 3, guillemotright, rightdoublequotemark ], // &amp;gt; 3 » ”&lt;br /&gt;
                     overlay1 = &amp;lt;I7B&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenleft, 4, U2192, lessthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ( 4 → &lt;br /&gt;
	key &amp;lt;AE05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenright, 5, U21D2, greaterthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ) 5 ⇒ &lt;br /&gt;
	key &amp;lt;AE06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ at, 6, asciicircum ], overlay1 = &amp;lt;I70&amp;gt; }; // @ 6 ^&lt;br /&gt;
	key &amp;lt;AE07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ plus, 7, plusminus, notsign ], overlay1 = &amp;lt;I70&amp;gt; }; // + 7 ± ¬&lt;br /&gt;
	key &amp;lt;AE08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ minus, 8, U2212, onequarter ], overlay1 = &amp;lt;I70&amp;gt; }; // - 8 − ¼&lt;br /&gt;
	key &amp;lt;AE09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ slash, 9, division, onehalf ], overlay1 = &amp;lt;I70&amp;gt; }; // / 9 ÷ ½&lt;br /&gt;
	key &amp;lt;AE10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asterisk, 0, multiply, threequarters ], overlay1 = &amp;lt;I70&amp;gt; }; // * 0 × ¾&lt;br /&gt;
	key &amp;lt;AE11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ equal, degree, notequal, minutes ], overlay1 = &amp;lt;I70&amp;gt; }; // = ° ≠&lt;br /&gt;
	key &amp;lt;AE12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ percent, grave, U2030, seconds ], overlay1 = &amp;lt;I70&amp;gt; }; // % ` ‰&lt;br /&gt;
	key &amp;lt;AD01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ b, B, bar, brokenbar ], overlay1 = &amp;lt;FK13&amp;gt; }; // b B | ¦ dead_ctrl&lt;br /&gt;
	key &amp;lt;AD02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, dead_acute, dead_doubleacute ], overlay1 = &amp;lt;FK14&amp;gt; }; // é É ´ ˝ dead_shift&lt;br /&gt;
	key &amp;lt;AD03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, ampersand, section ], overlay1 = &amp;lt;I77&amp;gt; }; // p P &amp;amp; § insert-shift&lt;br /&gt;
	key &amp;lt;AD04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ o, O, oe, OE ], overlay1 = &amp;lt;FK16&amp;gt; }; // o O œ Œ dead_altgr&lt;br /&gt;
	//key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ egrave, Egrave, dead_grave, grave ], }; // è È ` `&lt;br /&gt;
        key &amp;lt;AD05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, question, questiondown, dead_hook ],           // ’ ? ¿ ̉&lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ rightsinglequotemark, question, questiondown, dead_hook ], // &#039; ? ¿ ̉&lt;br /&gt;
            overlay1 = &amp;lt;FK17&amp;gt;                                                                         // compose&lt;br /&gt;
        }; &lt;br /&gt;
	key &amp;lt;AD06&amp;gt; { type[group1] = &amp;quot;THREE_LEVEL&amp;quot;, [ dead_grave, exclam, exclamdown ], overlay1 = &amp;lt;I70&amp;gt; }; // ` ! ¡&lt;br /&gt;
	key &amp;lt;AD07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ v, V, dead_caron ], overlay1 = &amp;lt;I70&amp;gt; }; // v V ˇ&lt;br /&gt;
	key &amp;lt;AD08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ d, D, eth, ETH ], overlay1 = &amp;lt;I7A&amp;gt;}; // d D ð Ð&lt;br /&gt;
	key &amp;lt;AD09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ l, L, UFDD0 ], overlay1 = &amp;lt;I7B&amp;gt;}; // l L /&lt;br /&gt;
	key &amp;lt;AD10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ j, J, U0133, U0132 ], overlay1 = &amp;lt;I70&amp;gt;}; // j J ĳ Ĳ&lt;br /&gt;
        key &amp;lt;AD11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_circumflex, dead_caron, schwa, SCHWA ], overlay1 = &amp;lt;I70&amp;gt; }; // ^ ˇ ə Ə&lt;br /&gt;
        key &amp;lt;AD12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_diaeresis, dead_abovedot, dead_breve, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ¨ ˙ ˘&lt;br /&gt;
	key &amp;lt;AC01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ a, A, ae, AE ], overlay1 = &amp;lt;ESC&amp;gt; }; // a A æ Æ escape&lt;br /&gt;
        key &amp;lt;AC02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ u, U, bracketleft ], overlay1 = &amp;lt;DELE&amp;gt; }; // u U [ delete&lt;br /&gt;
	key &amp;lt;AC03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ i, I, bracketright ], overlay1 = &amp;lt;BKSP&amp;gt; }; // i I ] backspace&lt;br /&gt;
	key &amp;lt;AC04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ e, E, EuroSign, UFDD1 ], overlay1 = &amp;lt;RTRN&amp;gt; }; // e E € ¤ return&lt;br /&gt;
        key &amp;lt;AC05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, rightsinglequotemark, dead_horn  ], // , ; &#039; &lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, apostrophe, dead_horn  ],           // , ; ’&lt;br /&gt;
            overlay1 = &amp;lt;INS&amp;gt;                                                                    // insert&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AC06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ c, C, copyright, U017F ], overlay1 = &amp;lt;LEFT&amp;gt; }; // c C © ſ&lt;br /&gt;
	key &amp;lt;AC07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ t, T, thorn, THORN ], overlay1 = &amp;lt;DOWN&amp;gt; }; // t T þ Þ&lt;br /&gt;
	key &amp;lt;AC08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ s, S, ssharp, U1E9E ], overlay1 = &amp;lt;UP&amp;gt; }; // s S ß ẞ&lt;br /&gt;
	key &amp;lt;AC09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ r, R, registered, trademark ], overlay1 = &amp;lt;RGHT&amp;gt; }; // r R ® ™&lt;br /&gt;
	key &amp;lt;AC10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ n, N, dead_tilde ], overlay1 = &amp;lt;ESC&amp;gt; }; // n N ~ escape&lt;br /&gt;
	key &amp;lt;AC11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ m, M, dead_macron, masculine ], overlay1 = &amp;lt;I70&amp;gt; }; // m M ¯ º&lt;br /&gt;
        key &amp;lt;BKSL&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_R, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;LSGT&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ecircumflex, Ecircumflex, backslash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ê Ê /&lt;br /&gt;
	key &amp;lt;AB01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ z, Z, slash, VoidSymbol ], overlay1 = &amp;lt;FK15&amp;gt; }; // z Z \&lt;br /&gt;
	key &amp;lt;AB02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ y, Y, braceleft, leftsinglequotemark ], overlay1 = &amp;lt;F35&amp;gt; }; // y Y { ‘&lt;br /&gt;
	key &amp;lt;AB03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ x, X, braceright, rightsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // x X } ’&lt;br /&gt;
	key &amp;lt;AB04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ period, colon, ellipsis, periodcentered ], overlay1 = &amp;lt;I70&amp;gt; }; // . : … ·&lt;br /&gt;
	key &amp;lt;AB05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ k, K, asciitilde, dead_tilde ], overlay1 = &amp;lt;I70&amp;gt; }; // k K ~&lt;br /&gt;
	key &amp;lt;AB06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ w, W, dead_breve ], overlay1 = &amp;lt;HOME&amp;gt; }; // w W ˘ home&lt;br /&gt;
	key &amp;lt;AB07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ q, Q, dead_abovering, dead_belowdot ], overlay1 = &amp;lt;PGDN&amp;gt; }; // q Q ˚ ̣pgdn&lt;br /&gt;
	key &amp;lt;AB08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ g, G, UFDD2 ], overlay1 = &amp;lt;PGUP&amp;gt; }; // g G µ pgup&lt;br /&gt;
	key &amp;lt;AB09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ h, H, dagger, doubledagger ], overlay1 = &amp;lt;END&amp;gt; }; // h H † ‡&lt;br /&gt;
	key &amp;lt;AB10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ f, F, dead_ogonek, ordfeminine ], overlay1 = &amp;lt;I25&amp;gt; }; // f F ˛ ª&lt;br /&gt;
	key &amp;lt;RTSH&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ], overlay1 = &amp;lt;I70&amp;gt; }; // ç Ç ¸ ,&lt;br /&gt;
        key &amp;lt;SPCE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ space, space, nobreakspace, U202F ], overlay1 = &amp;lt;I7F&amp;gt; }; // spaces underscore&lt;br /&gt;
&lt;br /&gt;
        // Unused keys mapped to ctrl+letter actions&lt;br /&gt;
        key &amp;lt;I6C&amp;gt; { [ r ] };&lt;br /&gt;
        key &amp;lt;I6D&amp;gt; { [ f ] };&lt;br /&gt;
        key &amp;lt;I6E&amp;gt; { [ s ] };&lt;br /&gt;
        key &amp;lt;I6F&amp;gt; { [ Tab ] };&lt;br /&gt;
        key &amp;lt;I70&amp;gt; { [ VoidSymbol ] };&lt;br /&gt;
        key &amp;lt;I71&amp;gt; { [ p ] };&lt;br /&gt;
        key &amp;lt;I72&amp;gt; { [ n ] };&lt;br /&gt;
        key &amp;lt;I73&amp;gt; { [ v ] };&lt;br /&gt;
        key &amp;lt;I74&amp;gt; { [ z ] };&lt;br /&gt;
        key &amp;lt;I75&amp;gt; { [ y ] };&lt;br /&gt;
        key &amp;lt;I76&amp;gt; { [ space ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // For some reason there are SOMETIMES (not always!) errors with this code:&lt;br /&gt;
        //    key &amp;lt;I7A&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;I7B&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;I7C&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;I7D&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;I7E&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // However passing the action in the Â«Â interpretÂ Â» section for an unsused symbol seems to work&lt;br /&gt;
        key &amp;lt;I60&amp;gt; { [ F24 ] };      // ctrl-R&lt;br /&gt;
        key &amp;lt;I61&amp;gt; { [ F25 ] };      // ctrl-F&lt;br /&gt;
        //key &amp;lt;I77&amp;gt; {  actions[group1] = [ Redirect(keycode=&amp;lt;I6C&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I77&amp;gt; { [ INS ],  actions[group1] = [ Redirect(keycode=&amp;lt;INS&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I78&amp;gt; { [ F29 ] };      // ctrl-right&lt;br /&gt;
        key &amp;lt;I79&amp;gt; { [ F30 ] };      // ctrl+Tab&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        //    key &amp;lt;I79&amp;gt; { [ Tab ], actions = [ setMods(modifiers=Mod1) ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;I7A&amp;gt; { [ F31 ] };      // ctrl-p&lt;br /&gt;
        key &amp;lt;I7B&amp;gt; { [ F32 ] };      // ctrl-n&lt;br /&gt;
        key &amp;lt;I7C&amp;gt; { [ F33 ] };      // ctrl-v&lt;br /&gt;
        key &amp;lt;I7D&amp;gt; { [ F34 ] };      // ctrl-z&lt;br /&gt;
        key &amp;lt;I7E&amp;gt; { [ F35 ] };      // alt-y&lt;br /&gt;
        key &amp;lt;I7F&amp;gt; { [ underscore ] };      // _&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Using &amp;lt; 127 keycodes also works&lt;br /&gt;
        key &amp;lt;FK13&amp;gt; { actions = [ LatchMods(modifiers=Control) ] };        // dead ctrl&lt;br /&gt;
        key &amp;lt;FK14&amp;gt; { actions = [ LatchMods(modifiers=Shift) ] };          // dead shift&lt;br /&gt;
        key &amp;lt;FK15&amp;gt; { actions = [ LatchMods(modifiers=Mod1) ] };           // dead alt&lt;br /&gt;
        key &amp;lt;FK16&amp;gt; { actions = [ LatchMods(modifiers=AltGr) ] };          // dead altgr&lt;br /&gt;
        key &amp;lt;FK17&amp;gt; { [ Multi_key ] };                                     // multi_key&lt;br /&gt;
        //    key &amp;lt;FK13&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;FK14&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;FK15&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;FK16&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;FK17&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
        // See also the bug thread here : https://bugs.freedesktop.org/show_bug.cgi?id=12401&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Transforme CAPS en lock de couche alternative «déplacement/édition», et garde le caps-lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour échanger Shift et Caps_Lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; {  [    Caps_Lock    ] };&lt;br /&gt;
&lt;br /&gt;
        // Combinaison des 2 : attention, requiert que les LFSH et CAPS dans les définitions de la touche &amp;lt;AC01&amp;gt; soient aussi échangées dans la partie principale&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
&lt;br /&gt;
        // shift + lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer CAPS en un AltGr gauche, en gardant le lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ ISO_Level3_Shift, Caps_Lock ], actions = [ SetMods(modifiers=LevelThree), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer LWIN en un AltGr gauche&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour mettre un Compose sur RWIN&lt;br /&gt;
        //key &amp;lt;RWIN&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        // key &amp;lt;MENU&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        //key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = [ SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;RCTL&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour que LWIN permette de changer de groupe&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
&lt;br /&gt;
        // Echange CTRL et Alt Gauches. Et puisque LWIN est réaffectée, garde un modificateur META en niveau 3 et 4 (AltGr)&lt;br /&gt;
        // Note: Activer cette option fonctionne mieux lorsque que l&#039;on échange aussi les raccourcis du style Alt+Tabâ€¦&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; {        [ Control_L ], actions = [ SetMods(modifiers=Control) ]       };&lt;br /&gt;
        //    key &amp;lt;LCTL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [       Alt_L,  Alt_L,  Meta_L, Meta_L         ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ]       };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        key &amp;lt;LALT&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; { type = &amp;quot;ONE_LEVEL&amp;quot;, [ VoidSymbol ], actions = [ LockControls(controls=Overlay1) ] };&lt;br /&gt;
            &lt;br /&gt;
            key &amp;lt;LFSH&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
            key &amp;lt;LWIN&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [ Alt_L, Alt_L, Meta_L, Meta_L ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ] };&lt;br /&gt;
&lt;br /&gt;
            // Make Alt+Tab still work in the overlay !&lt;br /&gt;
        //key  &amp;lt;TAB&amp;gt; {&lt;br /&gt;
        //    // would need an appropriate type here [ Tab,  ISO_Left_Tab    ],&lt;br /&gt;
        //    overlay1 = &amp;lt;F30&amp;gt;&lt;br /&gt;
        //};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;level3(ralt_switch)&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_geometry { include &amp;quot;pc(pc105)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13320</id>
		<title>Utilisateur:Legrostdg</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13320"/>
		<updated>2009-03-26T01:14:22Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : /* Mon projet « top secret » */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La [[Utilisateur:Nbrodu|variante proposée par Nbrodu]] est très utile mais étant plutôt adepte de vim, je n&#039;utilisais pas beaucoup les raccourcis en Ctrl+… En revanche return, delete, backspace et escape avaient selon moi besoin d&#039;être plus accessibles. J&#039;en ai profité pour mettre les touches de direction &amp;quot;alla vim&amp;quot; et ajuster les touches début, fin, pgup et pgdn de manière plus homogène.&lt;br /&gt;
&lt;br /&gt;
J&#039;ai également rajouté des touches dead-modificateur (plus parce que j&#039;étais content d&#039;avoir trouvé comment faire qu&#039;autre chose).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Keymap « de base »===&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;w plus proche&#039;&#039;&#039; (alla bépow [[Utilisateur:Kaze/Bépo-int|Explications ici]]):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Finalement le bépow ne me plaît pas tellement:&lt;br /&gt;
&amp;quot;w&amp;quot; s&#039;enchaîne souvent avec un &amp;quot;o&amp;quot; ou un &amp;quot;e&amp;quot; en anglais… À revoir&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Haha! J&#039;ai trouvé une parade :) En échangeant &amp;quot;w&amp;quot; et &amp;quot;&#039;/?&amp;quot; ça devrait être pas mal. Une nouvelle variante: le &amp;quot;BÉPO?&amp;quot; :-)&lt;br /&gt;
&lt;br /&gt;
Les inconvénients:&lt;br /&gt;
**c&#039;est vrai que è et à ça manque un peu… Mais bon c&#039;était pareil avec le bépow :)&lt;br /&gt;
&lt;br /&gt;
Les avantages de cette variante:&lt;br /&gt;
**le w est bien accessible&lt;br /&gt;
**&amp;quot;w&amp;quot;-&amp;quot;h&amp;quot; s&#039;enchaîne bien, de même que &amp;quot;w&amp;quot;-&amp;quot;o&amp;quot;, &amp;quot;w&amp;quot;-&amp;quot;e&amp;quot;, &amp;quot;e&amp;quot;-&amp;quot;w&amp;quot; et &amp;quot;o&amp;quot;-&amp;quot;w&amp;quot;. Bonne amélioration par rapport au bépow!  &lt;br /&gt;
**toute la ponctuation dans le même coin :)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&amp;quot;[&amp;quot;-&amp;quot;]&amp;quot; dans la même rangée que &amp;quot;{&amp;quot;-&amp;quot;}&amp;quot; et &amp;quot;&amp;lt;&amp;quot;-&amp;quot;&amp;gt;&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Je trouvais ça trop pratique. Les parenthèses en altgr+&#039;é&#039; et altgr+&#039;p&#039; ce serait selon moi royal, mais c&#039;est vrai que le &#039;´&#039; est bien sur le é… Je n&#039;ai pas encore trouvé de solution idéale.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;espace insécable en altgr+space&#039;&#039;&#039; et &#039;&#039;&#039;espace fine insécable en altgr+maj+space&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
space et maj+space donnent une espace classique, je trouvais la combinaison &amp;quot;maj+space = espace&amp;quot; trop dangereuse pour la programmation.&lt;br /&gt;
&lt;br /&gt;
Pour l&#039;instant &#039;&#039;&#039;underscore est en fn+space&#039;&#039;&#039;. Ce n&#039;est pas super logique (ce n&#039;est pas du « déplacement/édition ») mais bon… la couche « déplacement/édition » est aussi accessible que la couche altgr et la laisser quasiment vide serait un peu du gaspillage. Le mieux serait peut-être de caler le &#039;_&#039; ailleurs (mais où ? :-)). Ou alors utiliser un peu plus cette couche fn -&amp;gt; :-)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Ctrl droit et Compose inversés&#039;&#039;&#039;: les touches Ctrl sont tout à fait inaccessibles sans lever la main. Un &amp;quot;dead_Compose&amp;quot; est accessible en Fn+&#039;,&#039;.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Maj et ç inversés&#039;&#039;&#039; pour augmenter l&#039;homogénéité avec l&#039;autre maj (cela rend aussi la touche plus accessible à mon avis).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
  ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
  │ # ¶│ 1 „│ 2 “│ 3 ”│ 4 ≤│ 5 ≥│ 6  ║ 7 ¬│ 8 ¼│ 9 ½│ 0 ¾│ ° ′│ ℝ ″║         ║&lt;br /&gt;
  │ $ –│ &amp;quot; —│ « &amp;lt;│ » &amp;gt;│ ( →│ ) ⇒│ @ ^║ + ±│ - −│ / ÷│ * ×│ = ≠│ % ‰║ &amp;lt;--     ║&lt;br /&gt;
  ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
  ║  |&amp;lt;-  ║ B ¦│ É ˝│ P §│ O Œ│ ?  ║ !  │ V  │ D Ð│ L  │ J Ĳ│ ˇ Ə│ ˙  ║   |  ║&lt;br /&gt;
  ║  -&amp;gt;|  ║ b |│ é ´│ p &amp;amp;│ o œ│ ’ ¿║ ` ¡│ v ˇ│ d ð│ l /│ j ĳ│ ^ ə│ ¨ ˘║ &amp;lt;-&#039;  ║&lt;br /&gt;
  ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
  ║        ║ A Æ│ U  │ I  │ E ¤│ ;  ║ C ſ│ T Þ│ S ß│ R  │ N  │ M º│    ║     ║&lt;br /&gt;
  ║ Maj. ⇑ ║ a æ│ u [│ i ]│ e €│ , &#039;║ c ©│ t þ│ s ß│ r ®│ n ˜│ m ¯│Maj.║     ║&lt;br /&gt;
  ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
  ║ «»’  ║ Ê  │ Z  │ Y ‘│ X ’│ : ·│ K  ║ W  │ Q  │ G  │ H ‡│ F ª║   Ç ,      ║&lt;br /&gt;
  ║ &amp;lt;&amp;gt;&#039;  ║ ê /│ z \│ y {│ x }│ . …│ k ~║ w ˘│ q °│ g µ│ h †│ f ˛║   ç ¸      ║&lt;br /&gt;
  ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
  ║       ║      ║     ║ Espace   Fine Insécable  ║     ║       ║     ║      ║&lt;br /&gt;
  ║ Ctrl  ║ Alt  ║ Fn ⇄║ Espace     Insécable     ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
  ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Fn « déplacement/édition » (et underscore)===&lt;br /&gt;
&lt;br /&gt;
* ←  ↓  ↑  →  sous les doigts à droite avec les positions usuelles sur vim.&lt;br /&gt;
*&amp;quot;deb&amp;quot;, &amp;quot;pgdn&amp;quot;, &amp;quot;pgup&amp;quot; et &amp;quot;fin&amp;quot; accessibles facilement (on notera l&#039;homogégéité avec les flèches :)).&lt;br /&gt;
*&amp;quot;esc&amp;quot;, &amp;quot;del&amp;quot;, &amp;quot;bksp&amp;quot; et &amp;quot;entr&amp;quot; sous les doigts de la main gauche: trop bien. :)&lt;br /&gt;
*maj+insert (équivalent du clic scroll) en fn+p (p comme paste (en vim) ou comme prout (dans la vie de tous les jours))&lt;br /&gt;
*ctrl+p et ctrl+n (pour &amp;quot;précédent&amp;quot; et &amp;quot;suivant&amp;quot; dans plein de programmes) en haut des flèches haut et bas (peut-être pas top à cause du &amp;quot;d&amp;quot;: supprimer en vim, du coup, ils sont aussi sur les guillemets).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │    │    │ctl+│ctl+│    │    │    ║    │    │    │    │    │    ║         ║&lt;br /&gt;
 │    │    │ p  │ n  │    │    │    ║    │    │    │    │    │    ║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║dead│dead│maj+│dead│Com-║    │ctl+│ctl+│    │    │    │    ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ctrl│ maj│ ins│altg│pose║    │ p  │ n  │    │    │    │    ║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║    │    │    │    │    ║    │    │    │    │    │    │    ║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ esc│ del│bksp│entr│ins │ ←  │ ↓  │ ↑  | →  │ esc│    │Maj ║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║dead│    │    │    │    │    ║    │    │    │    │    ║            ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║ alt│    │    │    │    │    ║ deb│pgdn│pgup│ fin│    ║            ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║                          ║     ║       ║     ║      ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║            _             ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Des idées ?===&lt;br /&gt;
Si vous avez des idées pour améliorer cette super couche « déplacement/édition » rajoutez-les ici !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon projet « top secret »===&lt;br /&gt;
Mes problèmes majeurs sur les claviers traditionnels&lt;br /&gt;
*rangée des chiffres très peu accessible (voire inaccessible pour les @/6 */0 =/° %/` bépo)&lt;br /&gt;
*rangée F1, F2, … complètement inaccessible&lt;br /&gt;
*pouces inutilisés ou presque : la faute à la barre d&#039;espace !&lt;br /&gt;
*f/F bépo difficilement accessible&lt;br /&gt;
*k/K (caca) bépo inaccessible&lt;br /&gt;
&lt;br /&gt;
La solution miracle : tout remonter d&#039;une rangée !&lt;br /&gt;
La position de repos se retrouve sur les &amp;quot;bépo&amp;quot; et &amp;quot;vdlj&amp;quot; actuels.&lt;br /&gt;
*dans l&#039;affaire on perd le ê/Ê mais bon on a un accent mort (et puis on pourra caller un ê/Ê ailleurs)&lt;br /&gt;
*les touches sont mieux placées : f/F k/K deviennent accessibles (ils se retrouvent respectivement sur le m et le g azerty -&amp;gt; le décallage est moins important (est-ce seulement sur mon portable ?)).&lt;br /&gt;
*rangée F1, F2, … accessible&lt;br /&gt;
*plein de couches avec les pouces&lt;br /&gt;
*les chiffres dans une de ces couches&lt;br /&gt;
*déplacement/édition dans une autre&lt;br /&gt;
*les accents dans une autre ?&lt;br /&gt;
*la ponctuation dans une autre ?&lt;br /&gt;
&lt;br /&gt;
Il faut faire attention au fait qu&#039;on peut avoir tendance à ne pas relacher la touche de changement de couche assez vite…&lt;br /&gt;
&lt;br /&gt;
Un nom de code pour le moins trop laid pour cette variante : top-gueux-ne&lt;br /&gt;
*les mains vers le haut, c&#039;est top,&lt;br /&gt;
*addressée aux gueux, c&#039;est gueux,&lt;br /&gt;
*les jeux de mots foireux, c&#039;est top-gueux-ne.&lt;br /&gt;
&lt;br /&gt;
À faire dès que j&#039;aurai un peu plus de temps :-)&lt;br /&gt;
&lt;br /&gt;
===Mon fichier .xkb===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
xkb_keymap        {&lt;br /&gt;
&lt;br /&gt;
xkb_keycodes      { include &amp;quot;xfree86+aliases(azerty)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
xkb_types         {&lt;br /&gt;
    include &amp;quot;complete&amp;quot;&lt;br /&gt;
    type &amp;quot;ALTGR_TWO&amp;quot; {&lt;br /&gt;
       modifiers = LevelThree;&lt;br /&gt;
       map[None] = Level1;&lt;br /&gt;
       map[LevelThree] = Level2;&lt;br /&gt;
       level_name[Level1] = &amp;quot;Base&amp;quot;;&lt;br /&gt;
       level_name[Level2] = &amp;quot;AltGr&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_compatibility { include &amp;quot;complete&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        indicator &amp;quot;Scroll Lock&amp;quot; { controls = Overlay1; allowExplicit = True; drivesKeyboard = True; };&lt;br /&gt;
        &lt;br /&gt;
        interpret F24 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Control); // ctrl-r&lt;br /&gt;
        };&lt;br /&gt;
        interpret F25 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6D&amp;gt;, modifiers=Mod1); // alt-f&lt;br /&gt;
        };&lt;br /&gt;
        interpret F26 {&lt;br /&gt;
            action = LockControls(controls=Overlay1);&lt;br /&gt;
        };&lt;br /&gt;
        interpret F27 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6E&amp;gt;, modifiers=Control); // ctrl-s&lt;br /&gt;
        };&lt;br /&gt;
        interpret F28 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Shift); // insert-shift&lt;br /&gt;
        };&lt;br /&gt;
        interpret F29 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;RGHT&amp;gt;, modifiers=Control); // ctrl-â†’&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
        interpret F30 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6F&amp;gt;, modifiers=Control); // ctrl-Tab&lt;br /&gt;
        };&lt;br /&gt;
        interpret F31 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I71&amp;gt;, modifiers=Control); // ctrl-p&lt;br /&gt;
        };&lt;br /&gt;
        interpret F32 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I72&amp;gt;, modifiers=Control); // ctrl-n&lt;br /&gt;
        };&lt;br /&gt;
        interpret F33 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;INS&amp;gt;, modifiers=Shift); // ctrl-v&lt;br /&gt;
        };&lt;br /&gt;
        interpret F34 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I74&amp;gt;, modifiers=Control); // ctrl-z&lt;br /&gt;
        };&lt;br /&gt;
        interpret F35 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I75&amp;gt;, modifiers=Mod1); // alt-y&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
partial alphanumeric_keys&lt;br /&gt;
xkb_symbols &amp;quot;dvorak&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	name[Group1]= &amp;quot;France - Bepo, ergonomic, Dvorak way (v1.0rc2)&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;pc(pc105)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;TLDE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dollar, numbersign, endash, paragraph ], overlay1 = &amp;lt;I70&amp;gt; }; // $ # – ¶&lt;br /&gt;
	key &amp;lt;AE01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ quotedbl, 1, emdash, doublelowquotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // &amp;quot; 1 — „&lt;br /&gt;
	key &amp;lt;AE02&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotleft, 2, less, leftdoublequotemark ], // « 2 &amp;lt; “&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ less, 2, guillemotleft, leftdoublequotemark ], // &amp;lt; 2 « “&lt;br /&gt;
                     overlay1 = &amp;lt;I7A&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE03&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotright, 3, greater, rightdoublequotemark ], // » 3 &amp;gt; ”&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ greater, 3, guillemotright, rightdoublequotemark ], // &amp;gt; 3 » ”&lt;br /&gt;
                     overlay1 = &amp;lt;I7B&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenleft, 4, U2192, lessthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ( 4 → &lt;br /&gt;
	key &amp;lt;AE05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenright, 5, U21D2, greaterthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ) 5 ⇒ &lt;br /&gt;
	key &amp;lt;AE06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ at, 6, asciicircum ], overlay1 = &amp;lt;I70&amp;gt; }; // @ 6 ^&lt;br /&gt;
	key &amp;lt;AE07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ plus, 7, plusminus, notsign ], overlay1 = &amp;lt;I70&amp;gt; }; // + 7 ± ¬&lt;br /&gt;
	key &amp;lt;AE08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ minus, 8, U2212, onequarter ], overlay1 = &amp;lt;I70&amp;gt; }; // - 8 − ¼&lt;br /&gt;
	key &amp;lt;AE09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ slash, 9, division, onehalf ], overlay1 = &amp;lt;I70&amp;gt; }; // / 9 ÷ ½&lt;br /&gt;
	key &amp;lt;AE10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asterisk, 0, multiply, threequarters ], overlay1 = &amp;lt;I70&amp;gt; }; // * 0 × ¾&lt;br /&gt;
	key &amp;lt;AE11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ equal, degree, notequal, minutes ], overlay1 = &amp;lt;I70&amp;gt; }; // = ° ≠&lt;br /&gt;
	key &amp;lt;AE12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ percent, grave, U2030, seconds ], overlay1 = &amp;lt;I70&amp;gt; }; // % ` ‰&lt;br /&gt;
	key &amp;lt;AD01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ b, B, bar, brokenbar ], overlay1 = &amp;lt;FK13&amp;gt; }; // b B | ¦ dead_ctrl&lt;br /&gt;
	key &amp;lt;AD02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, dead_acute, dead_doubleacute ], overlay1 = &amp;lt;FK14&amp;gt; }; // é É ´ ˝ dead_shift&lt;br /&gt;
	key &amp;lt;AD03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, ampersand, section ], overlay1 = &amp;lt;I77&amp;gt; }; // p P &amp;amp; § insert-shift&lt;br /&gt;
	key &amp;lt;AD04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ o, O, oe, OE ], overlay1 = &amp;lt;FK16&amp;gt; }; // o O œ Œ dead_altgr&lt;br /&gt;
	//key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ egrave, Egrave, dead_grave, grave ], }; // è È ` `&lt;br /&gt;
        key &amp;lt;AD05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, question, questiondown, dead_hook ],           // ’ ? ¿ ̉&lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ rightsinglequotemark, question, questiondown, dead_hook ], // &#039; ? ¿ ̉&lt;br /&gt;
            overlay1 = &amp;lt;FK17&amp;gt;                                                                         // compose&lt;br /&gt;
        }; &lt;br /&gt;
	key &amp;lt;AD06&amp;gt; { type[group1] = &amp;quot;THREE_LEVEL&amp;quot;, [ dead_grave, exclam, exclamdown ], overlay1 = &amp;lt;I70&amp;gt; }; // ` ! ¡&lt;br /&gt;
	key &amp;lt;AD07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ v, V, dead_caron ], overlay1 = &amp;lt;I70&amp;gt; }; // v V ˇ&lt;br /&gt;
	key &amp;lt;AD08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ d, D, eth, ETH ], overlay1 = &amp;lt;I7A&amp;gt;}; // d D ð Ð&lt;br /&gt;
	key &amp;lt;AD09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ l, L, UFDD0 ], overlay1 = &amp;lt;I7B&amp;gt;}; // l L /&lt;br /&gt;
	key &amp;lt;AD10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ j, J, U0133, U0132 ], overlay1 = &amp;lt;I70&amp;gt;}; // j J ĳ Ĳ&lt;br /&gt;
        key &amp;lt;AD11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_circumflex, dead_caron, schwa, SCHWA ], overlay1 = &amp;lt;I70&amp;gt; }; // ^ ˇ ə Ə&lt;br /&gt;
        key &amp;lt;AD12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_diaeresis, dead_abovedot, dead_breve, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ¨ ˙ ˘&lt;br /&gt;
	key &amp;lt;AC01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ a, A, ae, AE ], overlay1 = &amp;lt;ESC&amp;gt; }; // a A æ Æ escape&lt;br /&gt;
        key &amp;lt;AC02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ u, U, bracketleft ], overlay1 = &amp;lt;DELE&amp;gt; }; // u U [ delete&lt;br /&gt;
	key &amp;lt;AC03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ i, I, bracketright ], overlay1 = &amp;lt;BKSP&amp;gt; }; // i I ] backspace&lt;br /&gt;
	key &amp;lt;AC04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ e, E, EuroSign, UFDD1 ], overlay1 = &amp;lt;RTRN&amp;gt; }; // e E € ¤ return&lt;br /&gt;
        key &amp;lt;AC05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, rightsinglequotemark, dead_horn  ], // , ; &#039; &lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, apostrophe, dead_horn  ],           // , ; ’&lt;br /&gt;
            overlay1 = &amp;lt;INS&amp;gt;                                                                    // insert&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AC06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ c, C, copyright, U017F ], overlay1 = &amp;lt;LEFT&amp;gt; }; // c C © ſ&lt;br /&gt;
	key &amp;lt;AC07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ t, T, thorn, THORN ], overlay1 = &amp;lt;DOWN&amp;gt; }; // t T þ Þ&lt;br /&gt;
	key &amp;lt;AC08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ s, S, ssharp, U1E9E ], overlay1 = &amp;lt;UP&amp;gt; }; // s S ß ẞ&lt;br /&gt;
	key &amp;lt;AC09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ r, R, registered, trademark ], overlay1 = &amp;lt;RGHT&amp;gt; }; // r R ® ™&lt;br /&gt;
	key &amp;lt;AC10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ n, N, dead_tilde ], overlay1 = &amp;lt;ESC&amp;gt; }; // n N ~ escape&lt;br /&gt;
	key &amp;lt;AC11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ m, M, dead_macron, masculine ], overlay1 = &amp;lt;I70&amp;gt; }; // m M ¯ º&lt;br /&gt;
        key &amp;lt;BKSL&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_R, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;LSGT&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ecircumflex, Ecircumflex, backslash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ê Ê /&lt;br /&gt;
	key &amp;lt;AB01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ z, Z, slash, VoidSymbol ], overlay1 = &amp;lt;FK15&amp;gt; }; // z Z \&lt;br /&gt;
	key &amp;lt;AB02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ y, Y, braceleft, leftsinglequotemark ], overlay1 = &amp;lt;F35&amp;gt; }; // y Y { ‘&lt;br /&gt;
	key &amp;lt;AB03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ x, X, braceright, rightsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // x X } ’&lt;br /&gt;
	key &amp;lt;AB04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ period, colon, ellipsis, periodcentered ], overlay1 = &amp;lt;I70&amp;gt; }; // . : … ·&lt;br /&gt;
	key &amp;lt;AB05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ k, K, asciitilde, dead_tilde ], overlay1 = &amp;lt;I70&amp;gt; }; // k K ~&lt;br /&gt;
	key &amp;lt;AB06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ w, W, dead_breve ], overlay1 = &amp;lt;HOME&amp;gt; }; // w W ˘ home&lt;br /&gt;
	key &amp;lt;AB07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ q, Q, dead_abovering, dead_belowdot ], overlay1 = &amp;lt;PGDN&amp;gt; }; // q Q ˚ ̣pgdn&lt;br /&gt;
	key &amp;lt;AB08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ g, G, UFDD2 ], overlay1 = &amp;lt;PGUP&amp;gt; }; // g G µ pgup&lt;br /&gt;
	key &amp;lt;AB09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ h, H, dagger, doubledagger ], overlay1 = &amp;lt;END&amp;gt; }; // h H † ‡&lt;br /&gt;
	key &amp;lt;AB10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ f, F, dead_ogonek, ordfeminine ], overlay1 = &amp;lt;I25&amp;gt; }; // f F ˛ ª&lt;br /&gt;
	key &amp;lt;RTSH&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ], overlay1 = &amp;lt;I70&amp;gt; }; // ç Ç ¸ ,&lt;br /&gt;
        key &amp;lt;SPCE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ space, space, nobreakspace, U202F ], overlay1 = &amp;lt;I7F&amp;gt; }; // spaces underscore&lt;br /&gt;
&lt;br /&gt;
        // Unused keys mapped to ctrl+letter actions&lt;br /&gt;
        key &amp;lt;I6C&amp;gt; { [ r ] };&lt;br /&gt;
        key &amp;lt;I6D&amp;gt; { [ f ] };&lt;br /&gt;
        key &amp;lt;I6E&amp;gt; { [ s ] };&lt;br /&gt;
        key &amp;lt;I6F&amp;gt; { [ Tab ] };&lt;br /&gt;
        key &amp;lt;I70&amp;gt; { [ VoidSymbol ] };&lt;br /&gt;
        key &amp;lt;I71&amp;gt; { [ p ] };&lt;br /&gt;
        key &amp;lt;I72&amp;gt; { [ n ] };&lt;br /&gt;
        key &amp;lt;I73&amp;gt; { [ v ] };&lt;br /&gt;
        key &amp;lt;I74&amp;gt; { [ z ] };&lt;br /&gt;
        key &amp;lt;I75&amp;gt; { [ y ] };&lt;br /&gt;
        key &amp;lt;I76&amp;gt; { [ space ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // For some reason there are SOMETIMES (not always!) errors with this code:&lt;br /&gt;
        //    key &amp;lt;I7A&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;I7B&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;I7C&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;I7D&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;I7E&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // However passing the action in the Â«Â interpretÂ Â» section for an unsused symbol seems to work&lt;br /&gt;
        key &amp;lt;I60&amp;gt; { [ F24 ] };      // ctrl-R&lt;br /&gt;
        key &amp;lt;I61&amp;gt; { [ F25 ] };      // ctrl-F&lt;br /&gt;
        //key &amp;lt;I77&amp;gt; {  actions[group1] = [ Redirect(keycode=&amp;lt;I6C&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I77&amp;gt; { [ INS ],  actions[group1] = [ Redirect(keycode=&amp;lt;INS&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I78&amp;gt; { [ F29 ] };      // ctrl-right&lt;br /&gt;
        key &amp;lt;I79&amp;gt; { [ F30 ] };      // ctrl+Tab&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        //    key &amp;lt;I79&amp;gt; { [ Tab ], actions = [ setMods(modifiers=Mod1) ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;I7A&amp;gt; { [ F31 ] };      // ctrl-p&lt;br /&gt;
        key &amp;lt;I7B&amp;gt; { [ F32 ] };      // ctrl-n&lt;br /&gt;
        key &amp;lt;I7C&amp;gt; { [ F33 ] };      // ctrl-v&lt;br /&gt;
        key &amp;lt;I7D&amp;gt; { [ F34 ] };      // ctrl-z&lt;br /&gt;
        key &amp;lt;I7E&amp;gt; { [ F35 ] };      // alt-y&lt;br /&gt;
        key &amp;lt;I7F&amp;gt; { [ underscore ] };      // _&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Using &amp;lt; 127 keycodes also works&lt;br /&gt;
        key &amp;lt;FK13&amp;gt; { actions = [ LatchMods(modifiers=Control) ] };        // dead ctrl&lt;br /&gt;
        key &amp;lt;FK14&amp;gt; { actions = [ LatchMods(modifiers=Shift) ] };          // dead shift&lt;br /&gt;
        key &amp;lt;FK15&amp;gt; { actions = [ LatchMods(modifiers=Mod1) ] };           // dead alt&lt;br /&gt;
        key &amp;lt;FK16&amp;gt; { actions = [ LatchMods(modifiers=AltGr) ] };          // dead altgr&lt;br /&gt;
        key &amp;lt;FK17&amp;gt; { [ Multi_key ] };                                     // multi_key&lt;br /&gt;
        //    key &amp;lt;FK13&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;FK14&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;FK15&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;FK16&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;FK17&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
        // See also the bug thread here : https://bugs.freedesktop.org/show_bug.cgi?id=12401&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Transforme CAPS en lock de couche alternative «déplacement/édition», et garde le caps-lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour échanger Shift et Caps_Lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; {  [    Caps_Lock    ] };&lt;br /&gt;
&lt;br /&gt;
        // Combinaison des 2 : attention, requiert que les LFSH et CAPS dans les définitions de la touche &amp;lt;AC01&amp;gt; soient aussi échangées dans la partie principale&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
&lt;br /&gt;
        // shift + lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer CAPS en un AltGr gauche, en gardant le lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ ISO_Level3_Shift, Caps_Lock ], actions = [ SetMods(modifiers=LevelThree), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer LWIN en un AltGr gauche&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour mettre un Compose sur RWIN&lt;br /&gt;
        //key &amp;lt;RWIN&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        // key &amp;lt;MENU&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        //key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = [ SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;RCTL&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour que LWIN permette de changer de groupe&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
&lt;br /&gt;
        // Echange CTRL et Alt Gauches. Et puisque LWIN est réaffectée, garde un modificateur META en niveau 3 et 4 (AltGr)&lt;br /&gt;
        // Note: Activer cette option fonctionne mieux lorsque que l&#039;on échange aussi les raccourcis du style Alt+Tabâ€¦&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; {        [ Control_L ], actions = [ SetMods(modifiers=Control) ]       };&lt;br /&gt;
        //    key &amp;lt;LCTL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [       Alt_L,  Alt_L,  Meta_L, Meta_L         ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ]       };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        key &amp;lt;LALT&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; { type = &amp;quot;ONE_LEVEL&amp;quot;, [ VoidSymbol ], actions = [ LockControls(controls=Overlay1) ] };&lt;br /&gt;
            &lt;br /&gt;
            key &amp;lt;LFSH&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
            key &amp;lt;LWIN&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [ Alt_L, Alt_L, Meta_L, Meta_L ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ] };&lt;br /&gt;
&lt;br /&gt;
            // Make Alt+Tab still work in the overlay !&lt;br /&gt;
        //key  &amp;lt;TAB&amp;gt; {&lt;br /&gt;
        //    // would need an appropriate type here [ Tab,  ISO_Left_Tab    ],&lt;br /&gt;
        //    overlay1 = &amp;lt;F30&amp;gt;&lt;br /&gt;
        //};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;level3(ralt_switch)&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_geometry { include &amp;quot;pc(pc105)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13319</id>
		<title>Utilisateur:Legrostdg</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13319"/>
		<updated>2009-03-26T01:02:05Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : /* Mon projet « top secret » */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La [[Utilisateur:Nbrodu|variante proposée par Nbrodu]] est très utile mais étant plutôt adepte de vim, je n&#039;utilisais pas beaucoup les raccourcis en Ctrl+… En revanche return, delete, backspace et escape avaient selon moi besoin d&#039;être plus accessibles. J&#039;en ai profité pour mettre les touches de direction &amp;quot;alla vim&amp;quot; et ajuster les touches début, fin, pgup et pgdn de manière plus homogène.&lt;br /&gt;
&lt;br /&gt;
J&#039;ai également rajouté des touches dead-modificateur (plus parce que j&#039;étais content d&#039;avoir trouvé comment faire qu&#039;autre chose).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Keymap « de base »===&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;w plus proche&#039;&#039;&#039; (alla bépow [[Utilisateur:Kaze/Bépo-int|Explications ici]]):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Finalement le bépow ne me plaît pas tellement:&lt;br /&gt;
&amp;quot;w&amp;quot; s&#039;enchaîne souvent avec un &amp;quot;o&amp;quot; ou un &amp;quot;e&amp;quot; en anglais… À revoir&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Haha! J&#039;ai trouvé une parade :) En échangeant &amp;quot;w&amp;quot; et &amp;quot;&#039;/?&amp;quot; ça devrait être pas mal. Une nouvelle variante: le &amp;quot;BÉPO?&amp;quot; :-)&lt;br /&gt;
&lt;br /&gt;
Les inconvénients:&lt;br /&gt;
**c&#039;est vrai que è et à ça manque un peu… Mais bon c&#039;était pareil avec le bépow :)&lt;br /&gt;
&lt;br /&gt;
Les avantages de cette variante:&lt;br /&gt;
**le w est bien accessible&lt;br /&gt;
**&amp;quot;w&amp;quot;-&amp;quot;h&amp;quot; s&#039;enchaîne bien, de même que &amp;quot;w&amp;quot;-&amp;quot;o&amp;quot;, &amp;quot;w&amp;quot;-&amp;quot;e&amp;quot;, &amp;quot;e&amp;quot;-&amp;quot;w&amp;quot; et &amp;quot;o&amp;quot;-&amp;quot;w&amp;quot;. Bonne amélioration par rapport au bépow!  &lt;br /&gt;
**toute la ponctuation dans le même coin :)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&amp;quot;[&amp;quot;-&amp;quot;]&amp;quot; dans la même rangée que &amp;quot;{&amp;quot;-&amp;quot;}&amp;quot; et &amp;quot;&amp;lt;&amp;quot;-&amp;quot;&amp;gt;&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Je trouvais ça trop pratique. Les parenthèses en altgr+&#039;é&#039; et altgr+&#039;p&#039; ce serait selon moi royal, mais c&#039;est vrai que le &#039;´&#039; est bien sur le é… Je n&#039;ai pas encore trouvé de solution idéale.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;espace insécable en altgr+space&#039;&#039;&#039; et &#039;&#039;&#039;espace fine insécable en altgr+maj+space&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
space et maj+space donnent une espace classique, je trouvais la combinaison &amp;quot;maj+space = espace&amp;quot; trop dangereuse pour la programmation.&lt;br /&gt;
&lt;br /&gt;
Pour l&#039;instant &#039;&#039;&#039;underscore est en fn+space&#039;&#039;&#039;. Ce n&#039;est pas super logique (ce n&#039;est pas du « déplacement/édition ») mais bon… la couche « déplacement/édition » est aussi accessible que la couche altgr et la laisser quasiment vide serait un peu du gaspillage. Le mieux serait peut-être de caler le &#039;_&#039; ailleurs (mais où ? :-)). Ou alors utiliser un peu plus cette couche fn -&amp;gt; :-)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Ctrl droit et Compose inversés&#039;&#039;&#039;: les touches Ctrl sont tout à fait inaccessibles sans lever la main. Un &amp;quot;dead_Compose&amp;quot; est accessible en Fn+&#039;,&#039;.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Maj et ç inversés&#039;&#039;&#039; pour augmenter l&#039;homogénéité avec l&#039;autre maj (cela rend aussi la touche plus accessible à mon avis).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
  ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
  │ # ¶│ 1 „│ 2 “│ 3 ”│ 4 ≤│ 5 ≥│ 6  ║ 7 ¬│ 8 ¼│ 9 ½│ 0 ¾│ ° ′│ ℝ ″║         ║&lt;br /&gt;
  │ $ –│ &amp;quot; —│ « &amp;lt;│ » &amp;gt;│ ( →│ ) ⇒│ @ ^║ + ±│ - −│ / ÷│ * ×│ = ≠│ % ‰║ &amp;lt;--     ║&lt;br /&gt;
  ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
  ║  |&amp;lt;-  ║ B ¦│ É ˝│ P §│ O Œ│ ?  ║ !  │ V  │ D Ð│ L  │ J Ĳ│ ˇ Ə│ ˙  ║   |  ║&lt;br /&gt;
  ║  -&amp;gt;|  ║ b |│ é ´│ p &amp;amp;│ o œ│ ’ ¿║ ` ¡│ v ˇ│ d ð│ l /│ j ĳ│ ^ ə│ ¨ ˘║ &amp;lt;-&#039;  ║&lt;br /&gt;
  ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
  ║        ║ A Æ│ U  │ I  │ E ¤│ ;  ║ C ſ│ T Þ│ S ß│ R  │ N  │ M º│    ║     ║&lt;br /&gt;
  ║ Maj. ⇑ ║ a æ│ u [│ i ]│ e €│ , &#039;║ c ©│ t þ│ s ß│ r ®│ n ˜│ m ¯│Maj.║     ║&lt;br /&gt;
  ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
  ║ «»’  ║ Ê  │ Z  │ Y ‘│ X ’│ : ·│ K  ║ W  │ Q  │ G  │ H ‡│ F ª║   Ç ,      ║&lt;br /&gt;
  ║ &amp;lt;&amp;gt;&#039;  ║ ê /│ z \│ y {│ x }│ . …│ k ~║ w ˘│ q °│ g µ│ h †│ f ˛║   ç ¸      ║&lt;br /&gt;
  ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
  ║       ║      ║     ║ Espace   Fine Insécable  ║     ║       ║     ║      ║&lt;br /&gt;
  ║ Ctrl  ║ Alt  ║ Fn ⇄║ Espace     Insécable     ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
  ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Fn « déplacement/édition » (et underscore)===&lt;br /&gt;
&lt;br /&gt;
* ←  ↓  ↑  →  sous les doigts à droite avec les positions usuelles sur vim.&lt;br /&gt;
*&amp;quot;deb&amp;quot;, &amp;quot;pgdn&amp;quot;, &amp;quot;pgup&amp;quot; et &amp;quot;fin&amp;quot; accessibles facilement (on notera l&#039;homogégéité avec les flèches :)).&lt;br /&gt;
*&amp;quot;esc&amp;quot;, &amp;quot;del&amp;quot;, &amp;quot;bksp&amp;quot; et &amp;quot;entr&amp;quot; sous les doigts de la main gauche: trop bien. :)&lt;br /&gt;
*maj+insert (équivalent du clic scroll) en fn+p (p comme paste (en vim) ou comme prout (dans la vie de tous les jours))&lt;br /&gt;
*ctrl+p et ctrl+n (pour &amp;quot;précédent&amp;quot; et &amp;quot;suivant&amp;quot; dans plein de programmes) en haut des flèches haut et bas (peut-être pas top à cause du &amp;quot;d&amp;quot;: supprimer en vim, du coup, ils sont aussi sur les guillemets).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │    │    │ctl+│ctl+│    │    │    ║    │    │    │    │    │    ║         ║&lt;br /&gt;
 │    │    │ p  │ n  │    │    │    ║    │    │    │    │    │    ║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║dead│dead│maj+│dead│Com-║    │ctl+│ctl+│    │    │    │    ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ctrl│ maj│ ins│altg│pose║    │ p  │ n  │    │    │    │    ║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║    │    │    │    │    ║    │    │    │    │    │    │    ║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ esc│ del│bksp│entr│ins │ ←  │ ↓  │ ↑  | →  │ esc│    │Maj ║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║dead│    │    │    │    │    ║    │    │    │    │    ║            ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║ alt│    │    │    │    │    ║ deb│pgdn│pgup│ fin│    ║            ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║                          ║     ║       ║     ║      ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║            _             ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Des idées ?===&lt;br /&gt;
Si vous avez des idées pour améliorer cette super couche « déplacement/édition » rajoutez-les ici !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon projet « top secret »===&lt;br /&gt;
Mes problèmes majeurs sur les claviers traditionnels&lt;br /&gt;
*rangée des chiffres très peu accessible (voire inaccessible pour les @/6 */0 =/° %/` bépo)&lt;br /&gt;
*rangée F1, F2, … complètement inaccessible&lt;br /&gt;
*pouces inutilisés ou presque : la faute à la barre d&#039;espace !&lt;br /&gt;
*f/F bépo difficilement accessible&lt;br /&gt;
*k/K (caca) bépo inaccessible&lt;br /&gt;
&lt;br /&gt;
La solution miracle : tout remonter d&#039;une rangée !&lt;br /&gt;
La position de repos se retrouve sur les &amp;quot;bépo&amp;quot; et &amp;quot;vdlj&amp;quot; actuels.&lt;br /&gt;
*dans l&#039;affaire on perd le ê/Ê mais bon on a un accent mort (et puis on pourra caller un ê/Ê ailleurs)&lt;br /&gt;
*les touches sont mieux placées : f/F k/K deviennent accessibles (ils se retrouvent respectivement sur le m et le g azerty -&amp;gt; le décallage est moins important (est-ce seulement sur mon portable ?)).&lt;br /&gt;
*rangée F1, F2, … accessible&lt;br /&gt;
*plein de couches avec les pouces&lt;br /&gt;
*les chiffres dans une de ces couches&lt;br /&gt;
*déplacement/édition dans une autre&lt;br /&gt;
*les accents dans une autre ?&lt;br /&gt;
*la ponctuation dans une autre ?&lt;br /&gt;
&lt;br /&gt;
Il faut faire attention au fait qu&#039;on peut avoir tendance à ne pas relacher la touche de changement de couche assez vite…&lt;br /&gt;
&lt;br /&gt;
À faire dès que j&#039;aurai un peu plus de temps :-)&lt;br /&gt;
&lt;br /&gt;
===Mon fichier .xkb===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
xkb_keymap        {&lt;br /&gt;
&lt;br /&gt;
xkb_keycodes      { include &amp;quot;xfree86+aliases(azerty)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
xkb_types         {&lt;br /&gt;
    include &amp;quot;complete&amp;quot;&lt;br /&gt;
    type &amp;quot;ALTGR_TWO&amp;quot; {&lt;br /&gt;
       modifiers = LevelThree;&lt;br /&gt;
       map[None] = Level1;&lt;br /&gt;
       map[LevelThree] = Level2;&lt;br /&gt;
       level_name[Level1] = &amp;quot;Base&amp;quot;;&lt;br /&gt;
       level_name[Level2] = &amp;quot;AltGr&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_compatibility { include &amp;quot;complete&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        indicator &amp;quot;Scroll Lock&amp;quot; { controls = Overlay1; allowExplicit = True; drivesKeyboard = True; };&lt;br /&gt;
        &lt;br /&gt;
        interpret F24 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Control); // ctrl-r&lt;br /&gt;
        };&lt;br /&gt;
        interpret F25 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6D&amp;gt;, modifiers=Mod1); // alt-f&lt;br /&gt;
        };&lt;br /&gt;
        interpret F26 {&lt;br /&gt;
            action = LockControls(controls=Overlay1);&lt;br /&gt;
        };&lt;br /&gt;
        interpret F27 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6E&amp;gt;, modifiers=Control); // ctrl-s&lt;br /&gt;
        };&lt;br /&gt;
        interpret F28 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Shift); // insert-shift&lt;br /&gt;
        };&lt;br /&gt;
        interpret F29 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;RGHT&amp;gt;, modifiers=Control); // ctrl-â†’&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
        interpret F30 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6F&amp;gt;, modifiers=Control); // ctrl-Tab&lt;br /&gt;
        };&lt;br /&gt;
        interpret F31 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I71&amp;gt;, modifiers=Control); // ctrl-p&lt;br /&gt;
        };&lt;br /&gt;
        interpret F32 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I72&amp;gt;, modifiers=Control); // ctrl-n&lt;br /&gt;
        };&lt;br /&gt;
        interpret F33 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;INS&amp;gt;, modifiers=Shift); // ctrl-v&lt;br /&gt;
        };&lt;br /&gt;
        interpret F34 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I74&amp;gt;, modifiers=Control); // ctrl-z&lt;br /&gt;
        };&lt;br /&gt;
        interpret F35 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I75&amp;gt;, modifiers=Mod1); // alt-y&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
partial alphanumeric_keys&lt;br /&gt;
xkb_symbols &amp;quot;dvorak&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	name[Group1]= &amp;quot;France - Bepo, ergonomic, Dvorak way (v1.0rc2)&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;pc(pc105)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;TLDE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dollar, numbersign, endash, paragraph ], overlay1 = &amp;lt;I70&amp;gt; }; // $ # – ¶&lt;br /&gt;
	key &amp;lt;AE01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ quotedbl, 1, emdash, doublelowquotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // &amp;quot; 1 — „&lt;br /&gt;
	key &amp;lt;AE02&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotleft, 2, less, leftdoublequotemark ], // « 2 &amp;lt; “&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ less, 2, guillemotleft, leftdoublequotemark ], // &amp;lt; 2 « “&lt;br /&gt;
                     overlay1 = &amp;lt;I7A&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE03&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotright, 3, greater, rightdoublequotemark ], // » 3 &amp;gt; ”&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ greater, 3, guillemotright, rightdoublequotemark ], // &amp;gt; 3 » ”&lt;br /&gt;
                     overlay1 = &amp;lt;I7B&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenleft, 4, U2192, lessthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ( 4 → &lt;br /&gt;
	key &amp;lt;AE05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenright, 5, U21D2, greaterthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ) 5 ⇒ &lt;br /&gt;
	key &amp;lt;AE06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ at, 6, asciicircum ], overlay1 = &amp;lt;I70&amp;gt; }; // @ 6 ^&lt;br /&gt;
	key &amp;lt;AE07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ plus, 7, plusminus, notsign ], overlay1 = &amp;lt;I70&amp;gt; }; // + 7 ± ¬&lt;br /&gt;
	key &amp;lt;AE08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ minus, 8, U2212, onequarter ], overlay1 = &amp;lt;I70&amp;gt; }; // - 8 − ¼&lt;br /&gt;
	key &amp;lt;AE09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ slash, 9, division, onehalf ], overlay1 = &amp;lt;I70&amp;gt; }; // / 9 ÷ ½&lt;br /&gt;
	key &amp;lt;AE10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asterisk, 0, multiply, threequarters ], overlay1 = &amp;lt;I70&amp;gt; }; // * 0 × ¾&lt;br /&gt;
	key &amp;lt;AE11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ equal, degree, notequal, minutes ], overlay1 = &amp;lt;I70&amp;gt; }; // = ° ≠&lt;br /&gt;
	key &amp;lt;AE12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ percent, grave, U2030, seconds ], overlay1 = &amp;lt;I70&amp;gt; }; // % ` ‰&lt;br /&gt;
	key &amp;lt;AD01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ b, B, bar, brokenbar ], overlay1 = &amp;lt;FK13&amp;gt; }; // b B | ¦ dead_ctrl&lt;br /&gt;
	key &amp;lt;AD02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, dead_acute, dead_doubleacute ], overlay1 = &amp;lt;FK14&amp;gt; }; // é É ´ ˝ dead_shift&lt;br /&gt;
	key &amp;lt;AD03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, ampersand, section ], overlay1 = &amp;lt;I77&amp;gt; }; // p P &amp;amp; § insert-shift&lt;br /&gt;
	key &amp;lt;AD04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ o, O, oe, OE ], overlay1 = &amp;lt;FK16&amp;gt; }; // o O œ Œ dead_altgr&lt;br /&gt;
	//key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ egrave, Egrave, dead_grave, grave ], }; // è È ` `&lt;br /&gt;
        key &amp;lt;AD05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, question, questiondown, dead_hook ],           // ’ ? ¿ ̉&lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ rightsinglequotemark, question, questiondown, dead_hook ], // &#039; ? ¿ ̉&lt;br /&gt;
            overlay1 = &amp;lt;FK17&amp;gt;                                                                         // compose&lt;br /&gt;
        }; &lt;br /&gt;
	key &amp;lt;AD06&amp;gt; { type[group1] = &amp;quot;THREE_LEVEL&amp;quot;, [ dead_grave, exclam, exclamdown ], overlay1 = &amp;lt;I70&amp;gt; }; // ` ! ¡&lt;br /&gt;
	key &amp;lt;AD07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ v, V, dead_caron ], overlay1 = &amp;lt;I70&amp;gt; }; // v V ˇ&lt;br /&gt;
	key &amp;lt;AD08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ d, D, eth, ETH ], overlay1 = &amp;lt;I7A&amp;gt;}; // d D ð Ð&lt;br /&gt;
	key &amp;lt;AD09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ l, L, UFDD0 ], overlay1 = &amp;lt;I7B&amp;gt;}; // l L /&lt;br /&gt;
	key &amp;lt;AD10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ j, J, U0133, U0132 ], overlay1 = &amp;lt;I70&amp;gt;}; // j J ĳ Ĳ&lt;br /&gt;
        key &amp;lt;AD11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_circumflex, dead_caron, schwa, SCHWA ], overlay1 = &amp;lt;I70&amp;gt; }; // ^ ˇ ə Ə&lt;br /&gt;
        key &amp;lt;AD12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_diaeresis, dead_abovedot, dead_breve, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ¨ ˙ ˘&lt;br /&gt;
	key &amp;lt;AC01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ a, A, ae, AE ], overlay1 = &amp;lt;ESC&amp;gt; }; // a A æ Æ escape&lt;br /&gt;
        key &amp;lt;AC02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ u, U, bracketleft ], overlay1 = &amp;lt;DELE&amp;gt; }; // u U [ delete&lt;br /&gt;
	key &amp;lt;AC03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ i, I, bracketright ], overlay1 = &amp;lt;BKSP&amp;gt; }; // i I ] backspace&lt;br /&gt;
	key &amp;lt;AC04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ e, E, EuroSign, UFDD1 ], overlay1 = &amp;lt;RTRN&amp;gt; }; // e E € ¤ return&lt;br /&gt;
        key &amp;lt;AC05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, rightsinglequotemark, dead_horn  ], // , ; &#039; &lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, apostrophe, dead_horn  ],           // , ; ’&lt;br /&gt;
            overlay1 = &amp;lt;INS&amp;gt;                                                                    // insert&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AC06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ c, C, copyright, U017F ], overlay1 = &amp;lt;LEFT&amp;gt; }; // c C © ſ&lt;br /&gt;
	key &amp;lt;AC07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ t, T, thorn, THORN ], overlay1 = &amp;lt;DOWN&amp;gt; }; // t T þ Þ&lt;br /&gt;
	key &amp;lt;AC08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ s, S, ssharp, U1E9E ], overlay1 = &amp;lt;UP&amp;gt; }; // s S ß ẞ&lt;br /&gt;
	key &amp;lt;AC09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ r, R, registered, trademark ], overlay1 = &amp;lt;RGHT&amp;gt; }; // r R ® ™&lt;br /&gt;
	key &amp;lt;AC10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ n, N, dead_tilde ], overlay1 = &amp;lt;ESC&amp;gt; }; // n N ~ escape&lt;br /&gt;
	key &amp;lt;AC11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ m, M, dead_macron, masculine ], overlay1 = &amp;lt;I70&amp;gt; }; // m M ¯ º&lt;br /&gt;
        key &amp;lt;BKSL&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_R, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;LSGT&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ecircumflex, Ecircumflex, backslash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ê Ê /&lt;br /&gt;
	key &amp;lt;AB01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ z, Z, slash, VoidSymbol ], overlay1 = &amp;lt;FK15&amp;gt; }; // z Z \&lt;br /&gt;
	key &amp;lt;AB02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ y, Y, braceleft, leftsinglequotemark ], overlay1 = &amp;lt;F35&amp;gt; }; // y Y { ‘&lt;br /&gt;
	key &amp;lt;AB03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ x, X, braceright, rightsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // x X } ’&lt;br /&gt;
	key &amp;lt;AB04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ period, colon, ellipsis, periodcentered ], overlay1 = &amp;lt;I70&amp;gt; }; // . : … ·&lt;br /&gt;
	key &amp;lt;AB05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ k, K, asciitilde, dead_tilde ], overlay1 = &amp;lt;I70&amp;gt; }; // k K ~&lt;br /&gt;
	key &amp;lt;AB06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ w, W, dead_breve ], overlay1 = &amp;lt;HOME&amp;gt; }; // w W ˘ home&lt;br /&gt;
	key &amp;lt;AB07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ q, Q, dead_abovering, dead_belowdot ], overlay1 = &amp;lt;PGDN&amp;gt; }; // q Q ˚ ̣pgdn&lt;br /&gt;
	key &amp;lt;AB08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ g, G, UFDD2 ], overlay1 = &amp;lt;PGUP&amp;gt; }; // g G µ pgup&lt;br /&gt;
	key &amp;lt;AB09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ h, H, dagger, doubledagger ], overlay1 = &amp;lt;END&amp;gt; }; // h H † ‡&lt;br /&gt;
	key &amp;lt;AB10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ f, F, dead_ogonek, ordfeminine ], overlay1 = &amp;lt;I25&amp;gt; }; // f F ˛ ª&lt;br /&gt;
	key &amp;lt;RTSH&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ], overlay1 = &amp;lt;I70&amp;gt; }; // ç Ç ¸ ,&lt;br /&gt;
        key &amp;lt;SPCE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ space, space, nobreakspace, U202F ], overlay1 = &amp;lt;I7F&amp;gt; }; // spaces underscore&lt;br /&gt;
&lt;br /&gt;
        // Unused keys mapped to ctrl+letter actions&lt;br /&gt;
        key &amp;lt;I6C&amp;gt; { [ r ] };&lt;br /&gt;
        key &amp;lt;I6D&amp;gt; { [ f ] };&lt;br /&gt;
        key &amp;lt;I6E&amp;gt; { [ s ] };&lt;br /&gt;
        key &amp;lt;I6F&amp;gt; { [ Tab ] };&lt;br /&gt;
        key &amp;lt;I70&amp;gt; { [ VoidSymbol ] };&lt;br /&gt;
        key &amp;lt;I71&amp;gt; { [ p ] };&lt;br /&gt;
        key &amp;lt;I72&amp;gt; { [ n ] };&lt;br /&gt;
        key &amp;lt;I73&amp;gt; { [ v ] };&lt;br /&gt;
        key &amp;lt;I74&amp;gt; { [ z ] };&lt;br /&gt;
        key &amp;lt;I75&amp;gt; { [ y ] };&lt;br /&gt;
        key &amp;lt;I76&amp;gt; { [ space ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // For some reason there are SOMETIMES (not always!) errors with this code:&lt;br /&gt;
        //    key &amp;lt;I7A&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;I7B&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;I7C&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;I7D&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;I7E&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // However passing the action in the Â«Â interpretÂ Â» section for an unsused symbol seems to work&lt;br /&gt;
        key &amp;lt;I60&amp;gt; { [ F24 ] };      // ctrl-R&lt;br /&gt;
        key &amp;lt;I61&amp;gt; { [ F25 ] };      // ctrl-F&lt;br /&gt;
        //key &amp;lt;I77&amp;gt; {  actions[group1] = [ Redirect(keycode=&amp;lt;I6C&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I77&amp;gt; { [ INS ],  actions[group1] = [ Redirect(keycode=&amp;lt;INS&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I78&amp;gt; { [ F29 ] };      // ctrl-right&lt;br /&gt;
        key &amp;lt;I79&amp;gt; { [ F30 ] };      // ctrl+Tab&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        //    key &amp;lt;I79&amp;gt; { [ Tab ], actions = [ setMods(modifiers=Mod1) ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;I7A&amp;gt; { [ F31 ] };      // ctrl-p&lt;br /&gt;
        key &amp;lt;I7B&amp;gt; { [ F32 ] };      // ctrl-n&lt;br /&gt;
        key &amp;lt;I7C&amp;gt; { [ F33 ] };      // ctrl-v&lt;br /&gt;
        key &amp;lt;I7D&amp;gt; { [ F34 ] };      // ctrl-z&lt;br /&gt;
        key &amp;lt;I7E&amp;gt; { [ F35 ] };      // alt-y&lt;br /&gt;
        key &amp;lt;I7F&amp;gt; { [ underscore ] };      // _&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Using &amp;lt; 127 keycodes also works&lt;br /&gt;
        key &amp;lt;FK13&amp;gt; { actions = [ LatchMods(modifiers=Control) ] };        // dead ctrl&lt;br /&gt;
        key &amp;lt;FK14&amp;gt; { actions = [ LatchMods(modifiers=Shift) ] };          // dead shift&lt;br /&gt;
        key &amp;lt;FK15&amp;gt; { actions = [ LatchMods(modifiers=Mod1) ] };           // dead alt&lt;br /&gt;
        key &amp;lt;FK16&amp;gt; { actions = [ LatchMods(modifiers=AltGr) ] };          // dead altgr&lt;br /&gt;
        key &amp;lt;FK17&amp;gt; { [ Multi_key ] };                                     // multi_key&lt;br /&gt;
        //    key &amp;lt;FK13&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;FK14&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;FK15&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;FK16&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;FK17&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
        // See also the bug thread here : https://bugs.freedesktop.org/show_bug.cgi?id=12401&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Transforme CAPS en lock de couche alternative «déplacement/édition», et garde le caps-lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour échanger Shift et Caps_Lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; {  [    Caps_Lock    ] };&lt;br /&gt;
&lt;br /&gt;
        // Combinaison des 2 : attention, requiert que les LFSH et CAPS dans les définitions de la touche &amp;lt;AC01&amp;gt; soient aussi échangées dans la partie principale&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
&lt;br /&gt;
        // shift + lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer CAPS en un AltGr gauche, en gardant le lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ ISO_Level3_Shift, Caps_Lock ], actions = [ SetMods(modifiers=LevelThree), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer LWIN en un AltGr gauche&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour mettre un Compose sur RWIN&lt;br /&gt;
        //key &amp;lt;RWIN&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        // key &amp;lt;MENU&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        //key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = [ SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;RCTL&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour que LWIN permette de changer de groupe&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
&lt;br /&gt;
        // Echange CTRL et Alt Gauches. Et puisque LWIN est réaffectée, garde un modificateur META en niveau 3 et 4 (AltGr)&lt;br /&gt;
        // Note: Activer cette option fonctionne mieux lorsque que l&#039;on échange aussi les raccourcis du style Alt+Tabâ€¦&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; {        [ Control_L ], actions = [ SetMods(modifiers=Control) ]       };&lt;br /&gt;
        //    key &amp;lt;LCTL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [       Alt_L,  Alt_L,  Meta_L, Meta_L         ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ]       };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        key &amp;lt;LALT&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; { type = &amp;quot;ONE_LEVEL&amp;quot;, [ VoidSymbol ], actions = [ LockControls(controls=Overlay1) ] };&lt;br /&gt;
            &lt;br /&gt;
            key &amp;lt;LFSH&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
            key &amp;lt;LWIN&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [ Alt_L, Alt_L, Meta_L, Meta_L ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ] };&lt;br /&gt;
&lt;br /&gt;
            // Make Alt+Tab still work in the overlay !&lt;br /&gt;
        //key  &amp;lt;TAB&amp;gt; {&lt;br /&gt;
        //    // would need an appropriate type here [ Tab,  ISO_Left_Tab    ],&lt;br /&gt;
        //    overlay1 = &amp;lt;F30&amp;gt;&lt;br /&gt;
        //};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;level3(ralt_switch)&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_geometry { include &amp;quot;pc(pc105)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13318</id>
		<title>Utilisateur:Legrostdg</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13318"/>
		<updated>2009-03-26T00:25:13Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : /* Mon projet « top secret » */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La [[Utilisateur:Nbrodu|variante proposée par Nbrodu]] est très utile mais étant plutôt adepte de vim, je n&#039;utilisais pas beaucoup les raccourcis en Ctrl+… En revanche return, delete, backspace et escape avaient selon moi besoin d&#039;être plus accessibles. J&#039;en ai profité pour mettre les touches de direction &amp;quot;alla vim&amp;quot; et ajuster les touches début, fin, pgup et pgdn de manière plus homogène.&lt;br /&gt;
&lt;br /&gt;
J&#039;ai également rajouté des touches dead-modificateur (plus parce que j&#039;étais content d&#039;avoir trouvé comment faire qu&#039;autre chose).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Keymap « de base »===&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;w plus proche&#039;&#039;&#039; (alla bépow [[Utilisateur:Kaze/Bépo-int|Explications ici]]):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Finalement le bépow ne me plaît pas tellement:&lt;br /&gt;
&amp;quot;w&amp;quot; s&#039;enchaîne souvent avec un &amp;quot;o&amp;quot; ou un &amp;quot;e&amp;quot; en anglais… À revoir&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Haha! J&#039;ai trouvé une parade :) En échangeant &amp;quot;w&amp;quot; et &amp;quot;&#039;/?&amp;quot; ça devrait être pas mal. Une nouvelle variante: le &amp;quot;BÉPO?&amp;quot; :-)&lt;br /&gt;
&lt;br /&gt;
Les inconvénients:&lt;br /&gt;
**c&#039;est vrai que è et à ça manque un peu… Mais bon c&#039;était pareil avec le bépow :)&lt;br /&gt;
&lt;br /&gt;
Les avantages de cette variante:&lt;br /&gt;
**le w est bien accessible&lt;br /&gt;
**&amp;quot;w&amp;quot;-&amp;quot;h&amp;quot; s&#039;enchaîne bien, de même que &amp;quot;w&amp;quot;-&amp;quot;o&amp;quot;, &amp;quot;w&amp;quot;-&amp;quot;e&amp;quot;, &amp;quot;e&amp;quot;-&amp;quot;w&amp;quot; et &amp;quot;o&amp;quot;-&amp;quot;w&amp;quot;. Bonne amélioration par rapport au bépow!  &lt;br /&gt;
**toute la ponctuation dans le même coin :)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&amp;quot;[&amp;quot;-&amp;quot;]&amp;quot; dans la même rangée que &amp;quot;{&amp;quot;-&amp;quot;}&amp;quot; et &amp;quot;&amp;lt;&amp;quot;-&amp;quot;&amp;gt;&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Je trouvais ça trop pratique. Les parenthèses en altgr+&#039;é&#039; et altgr+&#039;p&#039; ce serait selon moi royal, mais c&#039;est vrai que le &#039;´&#039; est bien sur le é… Je n&#039;ai pas encore trouvé de solution idéale.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;espace insécable en altgr+space&#039;&#039;&#039; et &#039;&#039;&#039;espace fine insécable en altgr+maj+space&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
space et maj+space donnent une espace classique, je trouvais la combinaison &amp;quot;maj+space = espace&amp;quot; trop dangereuse pour la programmation.&lt;br /&gt;
&lt;br /&gt;
Pour l&#039;instant &#039;&#039;&#039;underscore est en fn+space&#039;&#039;&#039;. Ce n&#039;est pas super logique (ce n&#039;est pas du « déplacement/édition ») mais bon… la couche « déplacement/édition » est aussi accessible que la couche altgr et la laisser quasiment vide serait un peu du gaspillage. Le mieux serait peut-être de caler le &#039;_&#039; ailleurs (mais où ? :-)). Ou alors utiliser un peu plus cette couche fn -&amp;gt; :-)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Ctrl droit et Compose inversés&#039;&#039;&#039;: les touches Ctrl sont tout à fait inaccessibles sans lever la main. Un &amp;quot;dead_Compose&amp;quot; est accessible en Fn+&#039;,&#039;.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Maj et ç inversés&#039;&#039;&#039; pour augmenter l&#039;homogénéité avec l&#039;autre maj (cela rend aussi la touche plus accessible à mon avis).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
  ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
  │ # ¶│ 1 „│ 2 “│ 3 ”│ 4 ≤│ 5 ≥│ 6  ║ 7 ¬│ 8 ¼│ 9 ½│ 0 ¾│ ° ′│ ℝ ″║         ║&lt;br /&gt;
  │ $ –│ &amp;quot; —│ « &amp;lt;│ » &amp;gt;│ ( →│ ) ⇒│ @ ^║ + ±│ - −│ / ÷│ * ×│ = ≠│ % ‰║ &amp;lt;--     ║&lt;br /&gt;
  ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
  ║  |&amp;lt;-  ║ B ¦│ É ˝│ P §│ O Œ│ ?  ║ !  │ V  │ D Ð│ L  │ J Ĳ│ ˇ Ə│ ˙  ║   |  ║&lt;br /&gt;
  ║  -&amp;gt;|  ║ b |│ é ´│ p &amp;amp;│ o œ│ ’ ¿║ ` ¡│ v ˇ│ d ð│ l /│ j ĳ│ ^ ə│ ¨ ˘║ &amp;lt;-&#039;  ║&lt;br /&gt;
  ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
  ║        ║ A Æ│ U  │ I  │ E ¤│ ;  ║ C ſ│ T Þ│ S ß│ R  │ N  │ M º│    ║     ║&lt;br /&gt;
  ║ Maj. ⇑ ║ a æ│ u [│ i ]│ e €│ , &#039;║ c ©│ t þ│ s ß│ r ®│ n ˜│ m ¯│Maj.║     ║&lt;br /&gt;
  ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
  ║ «»’  ║ Ê  │ Z  │ Y ‘│ X ’│ : ·│ K  ║ W  │ Q  │ G  │ H ‡│ F ª║   Ç ,      ║&lt;br /&gt;
  ║ &amp;lt;&amp;gt;&#039;  ║ ê /│ z \│ y {│ x }│ . …│ k ~║ w ˘│ q °│ g µ│ h †│ f ˛║   ç ¸      ║&lt;br /&gt;
  ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
  ║       ║      ║     ║ Espace   Fine Insécable  ║     ║       ║     ║      ║&lt;br /&gt;
  ║ Ctrl  ║ Alt  ║ Fn ⇄║ Espace     Insécable     ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
  ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Fn « déplacement/édition » (et underscore)===&lt;br /&gt;
&lt;br /&gt;
* ←  ↓  ↑  →  sous les doigts à droite avec les positions usuelles sur vim.&lt;br /&gt;
*&amp;quot;deb&amp;quot;, &amp;quot;pgdn&amp;quot;, &amp;quot;pgup&amp;quot; et &amp;quot;fin&amp;quot; accessibles facilement (on notera l&#039;homogégéité avec les flèches :)).&lt;br /&gt;
*&amp;quot;esc&amp;quot;, &amp;quot;del&amp;quot;, &amp;quot;bksp&amp;quot; et &amp;quot;entr&amp;quot; sous les doigts de la main gauche: trop bien. :)&lt;br /&gt;
*maj+insert (équivalent du clic scroll) en fn+p (p comme paste (en vim) ou comme prout (dans la vie de tous les jours))&lt;br /&gt;
*ctrl+p et ctrl+n (pour &amp;quot;précédent&amp;quot; et &amp;quot;suivant&amp;quot; dans plein de programmes) en haut des flèches haut et bas (peut-être pas top à cause du &amp;quot;d&amp;quot;: supprimer en vim, du coup, ils sont aussi sur les guillemets).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │    │    │ctl+│ctl+│    │    │    ║    │    │    │    │    │    ║         ║&lt;br /&gt;
 │    │    │ p  │ n  │    │    │    ║    │    │    │    │    │    ║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║dead│dead│maj+│dead│Com-║    │ctl+│ctl+│    │    │    │    ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ctrl│ maj│ ins│altg│pose║    │ p  │ n  │    │    │    │    ║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║    │    │    │    │    ║    │    │    │    │    │    │    ║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ esc│ del│bksp│entr│ins │ ←  │ ↓  │ ↑  | →  │ esc│    │Maj ║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║dead│    │    │    │    │    ║    │    │    │    │    ║            ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║ alt│    │    │    │    │    ║ deb│pgdn│pgup│ fin│    ║            ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║                          ║     ║       ║     ║      ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║            _             ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Des idées ?===&lt;br /&gt;
Si vous avez des idées pour améliorer cette super couche « déplacement/édition » rajoutez-les ici !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon projet « top secret »===&lt;br /&gt;
Mes problèmes majeurs sur les claviers traditionnels&lt;br /&gt;
*rangée des chiffres très peu accessible (voire inaccessible pour le 6)&lt;br /&gt;
*rangée F1, F2, … complètement inaccessible&lt;br /&gt;
*pouces inutilisés ou presque : la faute à la barre d&#039;espace !&lt;br /&gt;
&lt;br /&gt;
La solution miracle : tout remonter d&#039;une rangée !&lt;br /&gt;
La position de repos se retrouve sur les &amp;quot;bépo&amp;quot; et &amp;quot;vdlj&amp;quot; actuels.&lt;br /&gt;
*plein de couches avec les pouces&lt;br /&gt;
*les chiffres dans une de ces couches&lt;br /&gt;
*déplacement/édition dans une autre&lt;br /&gt;
*les accents dans une autre ? il faut faire attention au fait qu&#039;on peut avoir tendance à ne pas relacher la touche de changement de couche assez vite…&lt;br /&gt;
&lt;br /&gt;
À faire dès que j&#039;aurai un peu plus de temps :-)&lt;br /&gt;
&lt;br /&gt;
===Mon fichier .xkb===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
xkb_keymap        {&lt;br /&gt;
&lt;br /&gt;
xkb_keycodes      { include &amp;quot;xfree86+aliases(azerty)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
xkb_types         {&lt;br /&gt;
    include &amp;quot;complete&amp;quot;&lt;br /&gt;
    type &amp;quot;ALTGR_TWO&amp;quot; {&lt;br /&gt;
       modifiers = LevelThree;&lt;br /&gt;
       map[None] = Level1;&lt;br /&gt;
       map[LevelThree] = Level2;&lt;br /&gt;
       level_name[Level1] = &amp;quot;Base&amp;quot;;&lt;br /&gt;
       level_name[Level2] = &amp;quot;AltGr&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_compatibility { include &amp;quot;complete&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        indicator &amp;quot;Scroll Lock&amp;quot; { controls = Overlay1; allowExplicit = True; drivesKeyboard = True; };&lt;br /&gt;
        &lt;br /&gt;
        interpret F24 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Control); // ctrl-r&lt;br /&gt;
        };&lt;br /&gt;
        interpret F25 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6D&amp;gt;, modifiers=Mod1); // alt-f&lt;br /&gt;
        };&lt;br /&gt;
        interpret F26 {&lt;br /&gt;
            action = LockControls(controls=Overlay1);&lt;br /&gt;
        };&lt;br /&gt;
        interpret F27 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6E&amp;gt;, modifiers=Control); // ctrl-s&lt;br /&gt;
        };&lt;br /&gt;
        interpret F28 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Shift); // insert-shift&lt;br /&gt;
        };&lt;br /&gt;
        interpret F29 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;RGHT&amp;gt;, modifiers=Control); // ctrl-â†’&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
        interpret F30 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6F&amp;gt;, modifiers=Control); // ctrl-Tab&lt;br /&gt;
        };&lt;br /&gt;
        interpret F31 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I71&amp;gt;, modifiers=Control); // ctrl-p&lt;br /&gt;
        };&lt;br /&gt;
        interpret F32 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I72&amp;gt;, modifiers=Control); // ctrl-n&lt;br /&gt;
        };&lt;br /&gt;
        interpret F33 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;INS&amp;gt;, modifiers=Shift); // ctrl-v&lt;br /&gt;
        };&lt;br /&gt;
        interpret F34 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I74&amp;gt;, modifiers=Control); // ctrl-z&lt;br /&gt;
        };&lt;br /&gt;
        interpret F35 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I75&amp;gt;, modifiers=Mod1); // alt-y&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
partial alphanumeric_keys&lt;br /&gt;
xkb_symbols &amp;quot;dvorak&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	name[Group1]= &amp;quot;France - Bepo, ergonomic, Dvorak way (v1.0rc2)&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;pc(pc105)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;TLDE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dollar, numbersign, endash, paragraph ], overlay1 = &amp;lt;I70&amp;gt; }; // $ # – ¶&lt;br /&gt;
	key &amp;lt;AE01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ quotedbl, 1, emdash, doublelowquotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // &amp;quot; 1 — „&lt;br /&gt;
	key &amp;lt;AE02&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotleft, 2, less, leftdoublequotemark ], // « 2 &amp;lt; “&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ less, 2, guillemotleft, leftdoublequotemark ], // &amp;lt; 2 « “&lt;br /&gt;
                     overlay1 = &amp;lt;I7A&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE03&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotright, 3, greater, rightdoublequotemark ], // » 3 &amp;gt; ”&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ greater, 3, guillemotright, rightdoublequotemark ], // &amp;gt; 3 » ”&lt;br /&gt;
                     overlay1 = &amp;lt;I7B&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenleft, 4, U2192, lessthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ( 4 → &lt;br /&gt;
	key &amp;lt;AE05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenright, 5, U21D2, greaterthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ) 5 ⇒ &lt;br /&gt;
	key &amp;lt;AE06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ at, 6, asciicircum ], overlay1 = &amp;lt;I70&amp;gt; }; // @ 6 ^&lt;br /&gt;
	key &amp;lt;AE07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ plus, 7, plusminus, notsign ], overlay1 = &amp;lt;I70&amp;gt; }; // + 7 ± ¬&lt;br /&gt;
	key &amp;lt;AE08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ minus, 8, U2212, onequarter ], overlay1 = &amp;lt;I70&amp;gt; }; // - 8 − ¼&lt;br /&gt;
	key &amp;lt;AE09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ slash, 9, division, onehalf ], overlay1 = &amp;lt;I70&amp;gt; }; // / 9 ÷ ½&lt;br /&gt;
	key &amp;lt;AE10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asterisk, 0, multiply, threequarters ], overlay1 = &amp;lt;I70&amp;gt; }; // * 0 × ¾&lt;br /&gt;
	key &amp;lt;AE11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ equal, degree, notequal, minutes ], overlay1 = &amp;lt;I70&amp;gt; }; // = ° ≠&lt;br /&gt;
	key &amp;lt;AE12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ percent, grave, U2030, seconds ], overlay1 = &amp;lt;I70&amp;gt; }; // % ` ‰&lt;br /&gt;
	key &amp;lt;AD01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ b, B, bar, brokenbar ], overlay1 = &amp;lt;FK13&amp;gt; }; // b B | ¦ dead_ctrl&lt;br /&gt;
	key &amp;lt;AD02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, dead_acute, dead_doubleacute ], overlay1 = &amp;lt;FK14&amp;gt; }; // é É ´ ˝ dead_shift&lt;br /&gt;
	key &amp;lt;AD03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, ampersand, section ], overlay1 = &amp;lt;I77&amp;gt; }; // p P &amp;amp; § insert-shift&lt;br /&gt;
	key &amp;lt;AD04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ o, O, oe, OE ], overlay1 = &amp;lt;FK16&amp;gt; }; // o O œ Œ dead_altgr&lt;br /&gt;
	//key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ egrave, Egrave, dead_grave, grave ], }; // è È ` `&lt;br /&gt;
        key &amp;lt;AD05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, question, questiondown, dead_hook ],           // ’ ? ¿ ̉&lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ rightsinglequotemark, question, questiondown, dead_hook ], // &#039; ? ¿ ̉&lt;br /&gt;
            overlay1 = &amp;lt;FK17&amp;gt;                                                                         // compose&lt;br /&gt;
        }; &lt;br /&gt;
	key &amp;lt;AD06&amp;gt; { type[group1] = &amp;quot;THREE_LEVEL&amp;quot;, [ dead_grave, exclam, exclamdown ], overlay1 = &amp;lt;I70&amp;gt; }; // ` ! ¡&lt;br /&gt;
	key &amp;lt;AD07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ v, V, dead_caron ], overlay1 = &amp;lt;I70&amp;gt; }; // v V ˇ&lt;br /&gt;
	key &amp;lt;AD08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ d, D, eth, ETH ], overlay1 = &amp;lt;I7A&amp;gt;}; // d D ð Ð&lt;br /&gt;
	key &amp;lt;AD09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ l, L, UFDD0 ], overlay1 = &amp;lt;I7B&amp;gt;}; // l L /&lt;br /&gt;
	key &amp;lt;AD10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ j, J, U0133, U0132 ], overlay1 = &amp;lt;I70&amp;gt;}; // j J ĳ Ĳ&lt;br /&gt;
        key &amp;lt;AD11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_circumflex, dead_caron, schwa, SCHWA ], overlay1 = &amp;lt;I70&amp;gt; }; // ^ ˇ ə Ə&lt;br /&gt;
        key &amp;lt;AD12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_diaeresis, dead_abovedot, dead_breve, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ¨ ˙ ˘&lt;br /&gt;
	key &amp;lt;AC01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ a, A, ae, AE ], overlay1 = &amp;lt;ESC&amp;gt; }; // a A æ Æ escape&lt;br /&gt;
        key &amp;lt;AC02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ u, U, bracketleft ], overlay1 = &amp;lt;DELE&amp;gt; }; // u U [ delete&lt;br /&gt;
	key &amp;lt;AC03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ i, I, bracketright ], overlay1 = &amp;lt;BKSP&amp;gt; }; // i I ] backspace&lt;br /&gt;
	key &amp;lt;AC04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ e, E, EuroSign, UFDD1 ], overlay1 = &amp;lt;RTRN&amp;gt; }; // e E € ¤ return&lt;br /&gt;
        key &amp;lt;AC05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, rightsinglequotemark, dead_horn  ], // , ; &#039; &lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, apostrophe, dead_horn  ],           // , ; ’&lt;br /&gt;
            overlay1 = &amp;lt;INS&amp;gt;                                                                    // insert&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AC06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ c, C, copyright, U017F ], overlay1 = &amp;lt;LEFT&amp;gt; }; // c C © ſ&lt;br /&gt;
	key &amp;lt;AC07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ t, T, thorn, THORN ], overlay1 = &amp;lt;DOWN&amp;gt; }; // t T þ Þ&lt;br /&gt;
	key &amp;lt;AC08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ s, S, ssharp, U1E9E ], overlay1 = &amp;lt;UP&amp;gt; }; // s S ß ẞ&lt;br /&gt;
	key &amp;lt;AC09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ r, R, registered, trademark ], overlay1 = &amp;lt;RGHT&amp;gt; }; // r R ® ™&lt;br /&gt;
	key &amp;lt;AC10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ n, N, dead_tilde ], overlay1 = &amp;lt;ESC&amp;gt; }; // n N ~ escape&lt;br /&gt;
	key &amp;lt;AC11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ m, M, dead_macron, masculine ], overlay1 = &amp;lt;I70&amp;gt; }; // m M ¯ º&lt;br /&gt;
        key &amp;lt;BKSL&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_R, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;LSGT&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ecircumflex, Ecircumflex, backslash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ê Ê /&lt;br /&gt;
	key &amp;lt;AB01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ z, Z, slash, VoidSymbol ], overlay1 = &amp;lt;FK15&amp;gt; }; // z Z \&lt;br /&gt;
	key &amp;lt;AB02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ y, Y, braceleft, leftsinglequotemark ], overlay1 = &amp;lt;F35&amp;gt; }; // y Y { ‘&lt;br /&gt;
	key &amp;lt;AB03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ x, X, braceright, rightsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // x X } ’&lt;br /&gt;
	key &amp;lt;AB04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ period, colon, ellipsis, periodcentered ], overlay1 = &amp;lt;I70&amp;gt; }; // . : … ·&lt;br /&gt;
	key &amp;lt;AB05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ k, K, asciitilde, dead_tilde ], overlay1 = &amp;lt;I70&amp;gt; }; // k K ~&lt;br /&gt;
	key &amp;lt;AB06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ w, W, dead_breve ], overlay1 = &amp;lt;HOME&amp;gt; }; // w W ˘ home&lt;br /&gt;
	key &amp;lt;AB07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ q, Q, dead_abovering, dead_belowdot ], overlay1 = &amp;lt;PGDN&amp;gt; }; // q Q ˚ ̣pgdn&lt;br /&gt;
	key &amp;lt;AB08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ g, G, UFDD2 ], overlay1 = &amp;lt;PGUP&amp;gt; }; // g G µ pgup&lt;br /&gt;
	key &amp;lt;AB09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ h, H, dagger, doubledagger ], overlay1 = &amp;lt;END&amp;gt; }; // h H † ‡&lt;br /&gt;
	key &amp;lt;AB10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ f, F, dead_ogonek, ordfeminine ], overlay1 = &amp;lt;I25&amp;gt; }; // f F ˛ ª&lt;br /&gt;
	key &amp;lt;RTSH&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ], overlay1 = &amp;lt;I70&amp;gt; }; // ç Ç ¸ ,&lt;br /&gt;
        key &amp;lt;SPCE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ space, space, nobreakspace, U202F ], overlay1 = &amp;lt;I7F&amp;gt; }; // spaces underscore&lt;br /&gt;
&lt;br /&gt;
        // Unused keys mapped to ctrl+letter actions&lt;br /&gt;
        key &amp;lt;I6C&amp;gt; { [ r ] };&lt;br /&gt;
        key &amp;lt;I6D&amp;gt; { [ f ] };&lt;br /&gt;
        key &amp;lt;I6E&amp;gt; { [ s ] };&lt;br /&gt;
        key &amp;lt;I6F&amp;gt; { [ Tab ] };&lt;br /&gt;
        key &amp;lt;I70&amp;gt; { [ VoidSymbol ] };&lt;br /&gt;
        key &amp;lt;I71&amp;gt; { [ p ] };&lt;br /&gt;
        key &amp;lt;I72&amp;gt; { [ n ] };&lt;br /&gt;
        key &amp;lt;I73&amp;gt; { [ v ] };&lt;br /&gt;
        key &amp;lt;I74&amp;gt; { [ z ] };&lt;br /&gt;
        key &amp;lt;I75&amp;gt; { [ y ] };&lt;br /&gt;
        key &amp;lt;I76&amp;gt; { [ space ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // For some reason there are SOMETIMES (not always!) errors with this code:&lt;br /&gt;
        //    key &amp;lt;I7A&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;I7B&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;I7C&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;I7D&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;I7E&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // However passing the action in the Â«Â interpretÂ Â» section for an unsused symbol seems to work&lt;br /&gt;
        key &amp;lt;I60&amp;gt; { [ F24 ] };      // ctrl-R&lt;br /&gt;
        key &amp;lt;I61&amp;gt; { [ F25 ] };      // ctrl-F&lt;br /&gt;
        //key &amp;lt;I77&amp;gt; {  actions[group1] = [ Redirect(keycode=&amp;lt;I6C&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I77&amp;gt; { [ INS ],  actions[group1] = [ Redirect(keycode=&amp;lt;INS&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I78&amp;gt; { [ F29 ] };      // ctrl-right&lt;br /&gt;
        key &amp;lt;I79&amp;gt; { [ F30 ] };      // ctrl+Tab&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        //    key &amp;lt;I79&amp;gt; { [ Tab ], actions = [ setMods(modifiers=Mod1) ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;I7A&amp;gt; { [ F31 ] };      // ctrl-p&lt;br /&gt;
        key &amp;lt;I7B&amp;gt; { [ F32 ] };      // ctrl-n&lt;br /&gt;
        key &amp;lt;I7C&amp;gt; { [ F33 ] };      // ctrl-v&lt;br /&gt;
        key &amp;lt;I7D&amp;gt; { [ F34 ] };      // ctrl-z&lt;br /&gt;
        key &amp;lt;I7E&amp;gt; { [ F35 ] };      // alt-y&lt;br /&gt;
        key &amp;lt;I7F&amp;gt; { [ underscore ] };      // _&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Using &amp;lt; 127 keycodes also works&lt;br /&gt;
        key &amp;lt;FK13&amp;gt; { actions = [ LatchMods(modifiers=Control) ] };        // dead ctrl&lt;br /&gt;
        key &amp;lt;FK14&amp;gt; { actions = [ LatchMods(modifiers=Shift) ] };          // dead shift&lt;br /&gt;
        key &amp;lt;FK15&amp;gt; { actions = [ LatchMods(modifiers=Mod1) ] };           // dead alt&lt;br /&gt;
        key &amp;lt;FK16&amp;gt; { actions = [ LatchMods(modifiers=AltGr) ] };          // dead altgr&lt;br /&gt;
        key &amp;lt;FK17&amp;gt; { [ Multi_key ] };                                     // multi_key&lt;br /&gt;
        //    key &amp;lt;FK13&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;FK14&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;FK15&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;FK16&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;FK17&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
        // See also the bug thread here : https://bugs.freedesktop.org/show_bug.cgi?id=12401&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Transforme CAPS en lock de couche alternative «déplacement/édition», et garde le caps-lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour échanger Shift et Caps_Lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; {  [    Caps_Lock    ] };&lt;br /&gt;
&lt;br /&gt;
        // Combinaison des 2 : attention, requiert que les LFSH et CAPS dans les définitions de la touche &amp;lt;AC01&amp;gt; soient aussi échangées dans la partie principale&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
&lt;br /&gt;
        // shift + lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer CAPS en un AltGr gauche, en gardant le lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ ISO_Level3_Shift, Caps_Lock ], actions = [ SetMods(modifiers=LevelThree), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer LWIN en un AltGr gauche&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour mettre un Compose sur RWIN&lt;br /&gt;
        //key &amp;lt;RWIN&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        // key &amp;lt;MENU&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        //key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = [ SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;RCTL&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour que LWIN permette de changer de groupe&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
&lt;br /&gt;
        // Echange CTRL et Alt Gauches. Et puisque LWIN est réaffectée, garde un modificateur META en niveau 3 et 4 (AltGr)&lt;br /&gt;
        // Note: Activer cette option fonctionne mieux lorsque que l&#039;on échange aussi les raccourcis du style Alt+Tabâ€¦&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; {        [ Control_L ], actions = [ SetMods(modifiers=Control) ]       };&lt;br /&gt;
        //    key &amp;lt;LCTL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [       Alt_L,  Alt_L,  Meta_L, Meta_L         ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ]       };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        key &amp;lt;LALT&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; { type = &amp;quot;ONE_LEVEL&amp;quot;, [ VoidSymbol ], actions = [ LockControls(controls=Overlay1) ] };&lt;br /&gt;
            &lt;br /&gt;
            key &amp;lt;LFSH&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
            key &amp;lt;LWIN&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [ Alt_L, Alt_L, Meta_L, Meta_L ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ] };&lt;br /&gt;
&lt;br /&gt;
            // Make Alt+Tab still work in the overlay !&lt;br /&gt;
        //key  &amp;lt;TAB&amp;gt; {&lt;br /&gt;
        //    // would need an appropriate type here [ Tab,  ISO_Left_Tab    ],&lt;br /&gt;
        //    overlay1 = &amp;lt;F30&amp;gt;&lt;br /&gt;
        //};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;level3(ralt_switch)&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_geometry { include &amp;quot;pc(pc105)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13317</id>
		<title>Utilisateur:Legrostdg</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13317"/>
		<updated>2009-03-26T00:24:50Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La [[Utilisateur:Nbrodu|variante proposée par Nbrodu]] est très utile mais étant plutôt adepte de vim, je n&#039;utilisais pas beaucoup les raccourcis en Ctrl+… En revanche return, delete, backspace et escape avaient selon moi besoin d&#039;être plus accessibles. J&#039;en ai profité pour mettre les touches de direction &amp;quot;alla vim&amp;quot; et ajuster les touches début, fin, pgup et pgdn de manière plus homogène.&lt;br /&gt;
&lt;br /&gt;
J&#039;ai également rajouté des touches dead-modificateur (plus parce que j&#039;étais content d&#039;avoir trouvé comment faire qu&#039;autre chose).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Keymap « de base »===&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;w plus proche&#039;&#039;&#039; (alla bépow [[Utilisateur:Kaze/Bépo-int|Explications ici]]):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Finalement le bépow ne me plaît pas tellement:&lt;br /&gt;
&amp;quot;w&amp;quot; s&#039;enchaîne souvent avec un &amp;quot;o&amp;quot; ou un &amp;quot;e&amp;quot; en anglais… À revoir&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Haha! J&#039;ai trouvé une parade :) En échangeant &amp;quot;w&amp;quot; et &amp;quot;&#039;/?&amp;quot; ça devrait être pas mal. Une nouvelle variante: le &amp;quot;BÉPO?&amp;quot; :-)&lt;br /&gt;
&lt;br /&gt;
Les inconvénients:&lt;br /&gt;
**c&#039;est vrai que è et à ça manque un peu… Mais bon c&#039;était pareil avec le bépow :)&lt;br /&gt;
&lt;br /&gt;
Les avantages de cette variante:&lt;br /&gt;
**le w est bien accessible&lt;br /&gt;
**&amp;quot;w&amp;quot;-&amp;quot;h&amp;quot; s&#039;enchaîne bien, de même que &amp;quot;w&amp;quot;-&amp;quot;o&amp;quot;, &amp;quot;w&amp;quot;-&amp;quot;e&amp;quot;, &amp;quot;e&amp;quot;-&amp;quot;w&amp;quot; et &amp;quot;o&amp;quot;-&amp;quot;w&amp;quot;. Bonne amélioration par rapport au bépow!  &lt;br /&gt;
**toute la ponctuation dans le même coin :)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&amp;quot;[&amp;quot;-&amp;quot;]&amp;quot; dans la même rangée que &amp;quot;{&amp;quot;-&amp;quot;}&amp;quot; et &amp;quot;&amp;lt;&amp;quot;-&amp;quot;&amp;gt;&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Je trouvais ça trop pratique. Les parenthèses en altgr+&#039;é&#039; et altgr+&#039;p&#039; ce serait selon moi royal, mais c&#039;est vrai que le &#039;´&#039; est bien sur le é… Je n&#039;ai pas encore trouvé de solution idéale.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;espace insécable en altgr+space&#039;&#039;&#039; et &#039;&#039;&#039;espace fine insécable en altgr+maj+space&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
space et maj+space donnent une espace classique, je trouvais la combinaison &amp;quot;maj+space = espace&amp;quot; trop dangereuse pour la programmation.&lt;br /&gt;
&lt;br /&gt;
Pour l&#039;instant &#039;&#039;&#039;underscore est en fn+space&#039;&#039;&#039;. Ce n&#039;est pas super logique (ce n&#039;est pas du « déplacement/édition ») mais bon… la couche « déplacement/édition » est aussi accessible que la couche altgr et la laisser quasiment vide serait un peu du gaspillage. Le mieux serait peut-être de caler le &#039;_&#039; ailleurs (mais où ? :-)). Ou alors utiliser un peu plus cette couche fn -&amp;gt; :-)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Ctrl droit et Compose inversés&#039;&#039;&#039;: les touches Ctrl sont tout à fait inaccessibles sans lever la main. Un &amp;quot;dead_Compose&amp;quot; est accessible en Fn+&#039;,&#039;.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Maj et ç inversés&#039;&#039;&#039; pour augmenter l&#039;homogénéité avec l&#039;autre maj (cela rend aussi la touche plus accessible à mon avis).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
  ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
  │ # ¶│ 1 „│ 2 “│ 3 ”│ 4 ≤│ 5 ≥│ 6  ║ 7 ¬│ 8 ¼│ 9 ½│ 0 ¾│ ° ′│ ℝ ″║         ║&lt;br /&gt;
  │ $ –│ &amp;quot; —│ « &amp;lt;│ » &amp;gt;│ ( →│ ) ⇒│ @ ^║ + ±│ - −│ / ÷│ * ×│ = ≠│ % ‰║ &amp;lt;--     ║&lt;br /&gt;
  ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
  ║  |&amp;lt;-  ║ B ¦│ É ˝│ P §│ O Œ│ ?  ║ !  │ V  │ D Ð│ L  │ J Ĳ│ ˇ Ə│ ˙  ║   |  ║&lt;br /&gt;
  ║  -&amp;gt;|  ║ b |│ é ´│ p &amp;amp;│ o œ│ ’ ¿║ ` ¡│ v ˇ│ d ð│ l /│ j ĳ│ ^ ə│ ¨ ˘║ &amp;lt;-&#039;  ║&lt;br /&gt;
  ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
  ║        ║ A Æ│ U  │ I  │ E ¤│ ;  ║ C ſ│ T Þ│ S ß│ R  │ N  │ M º│    ║     ║&lt;br /&gt;
  ║ Maj. ⇑ ║ a æ│ u [│ i ]│ e €│ , &#039;║ c ©│ t þ│ s ß│ r ®│ n ˜│ m ¯│Maj.║     ║&lt;br /&gt;
  ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
  ║ «»’  ║ Ê  │ Z  │ Y ‘│ X ’│ : ·│ K  ║ W  │ Q  │ G  │ H ‡│ F ª║   Ç ,      ║&lt;br /&gt;
  ║ &amp;lt;&amp;gt;&#039;  ║ ê /│ z \│ y {│ x }│ . …│ k ~║ w ˘│ q °│ g µ│ h †│ f ˛║   ç ¸      ║&lt;br /&gt;
  ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
  ║       ║      ║     ║ Espace   Fine Insécable  ║     ║       ║     ║      ║&lt;br /&gt;
  ║ Ctrl  ║ Alt  ║ Fn ⇄║ Espace     Insécable     ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
  ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Fn « déplacement/édition » (et underscore)===&lt;br /&gt;
&lt;br /&gt;
* ←  ↓  ↑  →  sous les doigts à droite avec les positions usuelles sur vim.&lt;br /&gt;
*&amp;quot;deb&amp;quot;, &amp;quot;pgdn&amp;quot;, &amp;quot;pgup&amp;quot; et &amp;quot;fin&amp;quot; accessibles facilement (on notera l&#039;homogégéité avec les flèches :)).&lt;br /&gt;
*&amp;quot;esc&amp;quot;, &amp;quot;del&amp;quot;, &amp;quot;bksp&amp;quot; et &amp;quot;entr&amp;quot; sous les doigts de la main gauche: trop bien. :)&lt;br /&gt;
*maj+insert (équivalent du clic scroll) en fn+p (p comme paste (en vim) ou comme prout (dans la vie de tous les jours))&lt;br /&gt;
*ctrl+p et ctrl+n (pour &amp;quot;précédent&amp;quot; et &amp;quot;suivant&amp;quot; dans plein de programmes) en haut des flèches haut et bas (peut-être pas top à cause du &amp;quot;d&amp;quot;: supprimer en vim, du coup, ils sont aussi sur les guillemets).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │    │    │ctl+│ctl+│    │    │    ║    │    │    │    │    │    ║         ║&lt;br /&gt;
 │    │    │ p  │ n  │    │    │    ║    │    │    │    │    │    ║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║dead│dead│maj+│dead│Com-║    │ctl+│ctl+│    │    │    │    ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ctrl│ maj│ ins│altg│pose║    │ p  │ n  │    │    │    │    ║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║    │    │    │    │    ║    │    │    │    │    │    │    ║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ esc│ del│bksp│entr│ins │ ←  │ ↓  │ ↑  | →  │ esc│    │Maj ║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║dead│    │    │    │    │    ║    │    │    │    │    ║            ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║ alt│    │    │    │    │    ║ deb│pgdn│pgup│ fin│    ║            ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║                          ║     ║       ║     ║      ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║            _             ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Des idées ?===&lt;br /&gt;
Si vous avez des idées pour améliorer cette super couche « déplacement/édition » rajoutez-les ici !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon projet « top secret »===&lt;br /&gt;
Mes problèmes majeurs sur les claviers traditionnels&lt;br /&gt;
*rangée des chiffres très peu accessible (voire inaccessible pour le 6)&lt;br /&gt;
*rangée F1, F2, … complètement inaccessible&lt;br /&gt;
*pouces inutilisés ou presque : la faute à la barre d&#039;espace !&lt;br /&gt;
&lt;br /&gt;
La solution miracle : tout remonter d&#039;une rangée !&lt;br /&gt;
La position de repos se retrouve sur les &amp;quot;bépo&amp;quot; et &amp;quot;vdlj&amp;quot; actuels.&lt;br /&gt;
*plein de couches avec les pouces&lt;br /&gt;
*les chiffres dans une de ces couches&lt;br /&gt;
*déplacement/édition dans une autre&lt;br /&gt;
*les accents dans une autre ? attention, il faut faire attention au fait qu&#039;on peut avoir tendance à ne pas relacher la touche de changement de couche assez vite…&lt;br /&gt;
&lt;br /&gt;
À faire dès que j&#039;aurai un peu plus de temps :-)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon fichier .xkb===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
xkb_keymap        {&lt;br /&gt;
&lt;br /&gt;
xkb_keycodes      { include &amp;quot;xfree86+aliases(azerty)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
xkb_types         {&lt;br /&gt;
    include &amp;quot;complete&amp;quot;&lt;br /&gt;
    type &amp;quot;ALTGR_TWO&amp;quot; {&lt;br /&gt;
       modifiers = LevelThree;&lt;br /&gt;
       map[None] = Level1;&lt;br /&gt;
       map[LevelThree] = Level2;&lt;br /&gt;
       level_name[Level1] = &amp;quot;Base&amp;quot;;&lt;br /&gt;
       level_name[Level2] = &amp;quot;AltGr&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_compatibility { include &amp;quot;complete&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        indicator &amp;quot;Scroll Lock&amp;quot; { controls = Overlay1; allowExplicit = True; drivesKeyboard = True; };&lt;br /&gt;
        &lt;br /&gt;
        interpret F24 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Control); // ctrl-r&lt;br /&gt;
        };&lt;br /&gt;
        interpret F25 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6D&amp;gt;, modifiers=Mod1); // alt-f&lt;br /&gt;
        };&lt;br /&gt;
        interpret F26 {&lt;br /&gt;
            action = LockControls(controls=Overlay1);&lt;br /&gt;
        };&lt;br /&gt;
        interpret F27 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6E&amp;gt;, modifiers=Control); // ctrl-s&lt;br /&gt;
        };&lt;br /&gt;
        interpret F28 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Shift); // insert-shift&lt;br /&gt;
        };&lt;br /&gt;
        interpret F29 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;RGHT&amp;gt;, modifiers=Control); // ctrl-â†’&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
        interpret F30 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6F&amp;gt;, modifiers=Control); // ctrl-Tab&lt;br /&gt;
        };&lt;br /&gt;
        interpret F31 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I71&amp;gt;, modifiers=Control); // ctrl-p&lt;br /&gt;
        };&lt;br /&gt;
        interpret F32 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I72&amp;gt;, modifiers=Control); // ctrl-n&lt;br /&gt;
        };&lt;br /&gt;
        interpret F33 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;INS&amp;gt;, modifiers=Shift); // ctrl-v&lt;br /&gt;
        };&lt;br /&gt;
        interpret F34 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I74&amp;gt;, modifiers=Control); // ctrl-z&lt;br /&gt;
        };&lt;br /&gt;
        interpret F35 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I75&amp;gt;, modifiers=Mod1); // alt-y&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
partial alphanumeric_keys&lt;br /&gt;
xkb_symbols &amp;quot;dvorak&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	name[Group1]= &amp;quot;France - Bepo, ergonomic, Dvorak way (v1.0rc2)&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;pc(pc105)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;TLDE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dollar, numbersign, endash, paragraph ], overlay1 = &amp;lt;I70&amp;gt; }; // $ # – ¶&lt;br /&gt;
	key &amp;lt;AE01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ quotedbl, 1, emdash, doublelowquotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // &amp;quot; 1 — „&lt;br /&gt;
	key &amp;lt;AE02&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotleft, 2, less, leftdoublequotemark ], // « 2 &amp;lt; “&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ less, 2, guillemotleft, leftdoublequotemark ], // &amp;lt; 2 « “&lt;br /&gt;
                     overlay1 = &amp;lt;I7A&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE03&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotright, 3, greater, rightdoublequotemark ], // » 3 &amp;gt; ”&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ greater, 3, guillemotright, rightdoublequotemark ], // &amp;gt; 3 » ”&lt;br /&gt;
                     overlay1 = &amp;lt;I7B&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenleft, 4, U2192, lessthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ( 4 → &lt;br /&gt;
	key &amp;lt;AE05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenright, 5, U21D2, greaterthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ) 5 ⇒ &lt;br /&gt;
	key &amp;lt;AE06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ at, 6, asciicircum ], overlay1 = &amp;lt;I70&amp;gt; }; // @ 6 ^&lt;br /&gt;
	key &amp;lt;AE07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ plus, 7, plusminus, notsign ], overlay1 = &amp;lt;I70&amp;gt; }; // + 7 ± ¬&lt;br /&gt;
	key &amp;lt;AE08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ minus, 8, U2212, onequarter ], overlay1 = &amp;lt;I70&amp;gt; }; // - 8 − ¼&lt;br /&gt;
	key &amp;lt;AE09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ slash, 9, division, onehalf ], overlay1 = &amp;lt;I70&amp;gt; }; // / 9 ÷ ½&lt;br /&gt;
	key &amp;lt;AE10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asterisk, 0, multiply, threequarters ], overlay1 = &amp;lt;I70&amp;gt; }; // * 0 × ¾&lt;br /&gt;
	key &amp;lt;AE11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ equal, degree, notequal, minutes ], overlay1 = &amp;lt;I70&amp;gt; }; // = ° ≠&lt;br /&gt;
	key &amp;lt;AE12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ percent, grave, U2030, seconds ], overlay1 = &amp;lt;I70&amp;gt; }; // % ` ‰&lt;br /&gt;
	key &amp;lt;AD01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ b, B, bar, brokenbar ], overlay1 = &amp;lt;FK13&amp;gt; }; // b B | ¦ dead_ctrl&lt;br /&gt;
	key &amp;lt;AD02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, dead_acute, dead_doubleacute ], overlay1 = &amp;lt;FK14&amp;gt; }; // é É ´ ˝ dead_shift&lt;br /&gt;
	key &amp;lt;AD03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, ampersand, section ], overlay1 = &amp;lt;I77&amp;gt; }; // p P &amp;amp; § insert-shift&lt;br /&gt;
	key &amp;lt;AD04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ o, O, oe, OE ], overlay1 = &amp;lt;FK16&amp;gt; }; // o O œ Œ dead_altgr&lt;br /&gt;
	//key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ egrave, Egrave, dead_grave, grave ], }; // è È ` `&lt;br /&gt;
        key &amp;lt;AD05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, question, questiondown, dead_hook ],           // ’ ? ¿ ̉&lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ rightsinglequotemark, question, questiondown, dead_hook ], // &#039; ? ¿ ̉&lt;br /&gt;
            overlay1 = &amp;lt;FK17&amp;gt;                                                                         // compose&lt;br /&gt;
        }; &lt;br /&gt;
	key &amp;lt;AD06&amp;gt; { type[group1] = &amp;quot;THREE_LEVEL&amp;quot;, [ dead_grave, exclam, exclamdown ], overlay1 = &amp;lt;I70&amp;gt; }; // ` ! ¡&lt;br /&gt;
	key &amp;lt;AD07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ v, V, dead_caron ], overlay1 = &amp;lt;I70&amp;gt; }; // v V ˇ&lt;br /&gt;
	key &amp;lt;AD08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ d, D, eth, ETH ], overlay1 = &amp;lt;I7A&amp;gt;}; // d D ð Ð&lt;br /&gt;
	key &amp;lt;AD09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ l, L, UFDD0 ], overlay1 = &amp;lt;I7B&amp;gt;}; // l L /&lt;br /&gt;
	key &amp;lt;AD10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ j, J, U0133, U0132 ], overlay1 = &amp;lt;I70&amp;gt;}; // j J ĳ Ĳ&lt;br /&gt;
        key &amp;lt;AD11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_circumflex, dead_caron, schwa, SCHWA ], overlay1 = &amp;lt;I70&amp;gt; }; // ^ ˇ ə Ə&lt;br /&gt;
        key &amp;lt;AD12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_diaeresis, dead_abovedot, dead_breve, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ¨ ˙ ˘&lt;br /&gt;
	key &amp;lt;AC01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ a, A, ae, AE ], overlay1 = &amp;lt;ESC&amp;gt; }; // a A æ Æ escape&lt;br /&gt;
        key &amp;lt;AC02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ u, U, bracketleft ], overlay1 = &amp;lt;DELE&amp;gt; }; // u U [ delete&lt;br /&gt;
	key &amp;lt;AC03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ i, I, bracketright ], overlay1 = &amp;lt;BKSP&amp;gt; }; // i I ] backspace&lt;br /&gt;
	key &amp;lt;AC04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ e, E, EuroSign, UFDD1 ], overlay1 = &amp;lt;RTRN&amp;gt; }; // e E € ¤ return&lt;br /&gt;
        key &amp;lt;AC05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, rightsinglequotemark, dead_horn  ], // , ; &#039; &lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, apostrophe, dead_horn  ],           // , ; ’&lt;br /&gt;
            overlay1 = &amp;lt;INS&amp;gt;                                                                    // insert&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AC06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ c, C, copyright, U017F ], overlay1 = &amp;lt;LEFT&amp;gt; }; // c C © ſ&lt;br /&gt;
	key &amp;lt;AC07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ t, T, thorn, THORN ], overlay1 = &amp;lt;DOWN&amp;gt; }; // t T þ Þ&lt;br /&gt;
	key &amp;lt;AC08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ s, S, ssharp, U1E9E ], overlay1 = &amp;lt;UP&amp;gt; }; // s S ß ẞ&lt;br /&gt;
	key &amp;lt;AC09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ r, R, registered, trademark ], overlay1 = &amp;lt;RGHT&amp;gt; }; // r R ® ™&lt;br /&gt;
	key &amp;lt;AC10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ n, N, dead_tilde ], overlay1 = &amp;lt;ESC&amp;gt; }; // n N ~ escape&lt;br /&gt;
	key &amp;lt;AC11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ m, M, dead_macron, masculine ], overlay1 = &amp;lt;I70&amp;gt; }; // m M ¯ º&lt;br /&gt;
        key &amp;lt;BKSL&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_R, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;LSGT&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ecircumflex, Ecircumflex, backslash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ê Ê /&lt;br /&gt;
	key &amp;lt;AB01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ z, Z, slash, VoidSymbol ], overlay1 = &amp;lt;FK15&amp;gt; }; // z Z \&lt;br /&gt;
	key &amp;lt;AB02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ y, Y, braceleft, leftsinglequotemark ], overlay1 = &amp;lt;F35&amp;gt; }; // y Y { ‘&lt;br /&gt;
	key &amp;lt;AB03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ x, X, braceright, rightsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // x X } ’&lt;br /&gt;
	key &amp;lt;AB04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ period, colon, ellipsis, periodcentered ], overlay1 = &amp;lt;I70&amp;gt; }; // . : … ·&lt;br /&gt;
	key &amp;lt;AB05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ k, K, asciitilde, dead_tilde ], overlay1 = &amp;lt;I70&amp;gt; }; // k K ~&lt;br /&gt;
	key &amp;lt;AB06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ w, W, dead_breve ], overlay1 = &amp;lt;HOME&amp;gt; }; // w W ˘ home&lt;br /&gt;
	key &amp;lt;AB07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ q, Q, dead_abovering, dead_belowdot ], overlay1 = &amp;lt;PGDN&amp;gt; }; // q Q ˚ ̣pgdn&lt;br /&gt;
	key &amp;lt;AB08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ g, G, UFDD2 ], overlay1 = &amp;lt;PGUP&amp;gt; }; // g G µ pgup&lt;br /&gt;
	key &amp;lt;AB09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ h, H, dagger, doubledagger ], overlay1 = &amp;lt;END&amp;gt; }; // h H † ‡&lt;br /&gt;
	key &amp;lt;AB10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ f, F, dead_ogonek, ordfeminine ], overlay1 = &amp;lt;I25&amp;gt; }; // f F ˛ ª&lt;br /&gt;
	key &amp;lt;RTSH&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ], overlay1 = &amp;lt;I70&amp;gt; }; // ç Ç ¸ ,&lt;br /&gt;
        key &amp;lt;SPCE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ space, space, nobreakspace, U202F ], overlay1 = &amp;lt;I7F&amp;gt; }; // spaces underscore&lt;br /&gt;
&lt;br /&gt;
        // Unused keys mapped to ctrl+letter actions&lt;br /&gt;
        key &amp;lt;I6C&amp;gt; { [ r ] };&lt;br /&gt;
        key &amp;lt;I6D&amp;gt; { [ f ] };&lt;br /&gt;
        key &amp;lt;I6E&amp;gt; { [ s ] };&lt;br /&gt;
        key &amp;lt;I6F&amp;gt; { [ Tab ] };&lt;br /&gt;
        key &amp;lt;I70&amp;gt; { [ VoidSymbol ] };&lt;br /&gt;
        key &amp;lt;I71&amp;gt; { [ p ] };&lt;br /&gt;
        key &amp;lt;I72&amp;gt; { [ n ] };&lt;br /&gt;
        key &amp;lt;I73&amp;gt; { [ v ] };&lt;br /&gt;
        key &amp;lt;I74&amp;gt; { [ z ] };&lt;br /&gt;
        key &amp;lt;I75&amp;gt; { [ y ] };&lt;br /&gt;
        key &amp;lt;I76&amp;gt; { [ space ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // For some reason there are SOMETIMES (not always!) errors with this code:&lt;br /&gt;
        //    key &amp;lt;I7A&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;I7B&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;I7C&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;I7D&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;I7E&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // However passing the action in the Â«Â interpretÂ Â» section for an unsused symbol seems to work&lt;br /&gt;
        key &amp;lt;I60&amp;gt; { [ F24 ] };      // ctrl-R&lt;br /&gt;
        key &amp;lt;I61&amp;gt; { [ F25 ] };      // ctrl-F&lt;br /&gt;
        //key &amp;lt;I77&amp;gt; {  actions[group1] = [ Redirect(keycode=&amp;lt;I6C&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I77&amp;gt; { [ INS ],  actions[group1] = [ Redirect(keycode=&amp;lt;INS&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I78&amp;gt; { [ F29 ] };      // ctrl-right&lt;br /&gt;
        key &amp;lt;I79&amp;gt; { [ F30 ] };      // ctrl+Tab&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        //    key &amp;lt;I79&amp;gt; { [ Tab ], actions = [ setMods(modifiers=Mod1) ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;I7A&amp;gt; { [ F31 ] };      // ctrl-p&lt;br /&gt;
        key &amp;lt;I7B&amp;gt; { [ F32 ] };      // ctrl-n&lt;br /&gt;
        key &amp;lt;I7C&amp;gt; { [ F33 ] };      // ctrl-v&lt;br /&gt;
        key &amp;lt;I7D&amp;gt; { [ F34 ] };      // ctrl-z&lt;br /&gt;
        key &amp;lt;I7E&amp;gt; { [ F35 ] };      // alt-y&lt;br /&gt;
        key &amp;lt;I7F&amp;gt; { [ underscore ] };      // _&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Using &amp;lt; 127 keycodes also works&lt;br /&gt;
        key &amp;lt;FK13&amp;gt; { actions = [ LatchMods(modifiers=Control) ] };        // dead ctrl&lt;br /&gt;
        key &amp;lt;FK14&amp;gt; { actions = [ LatchMods(modifiers=Shift) ] };          // dead shift&lt;br /&gt;
        key &amp;lt;FK15&amp;gt; { actions = [ LatchMods(modifiers=Mod1) ] };           // dead alt&lt;br /&gt;
        key &amp;lt;FK16&amp;gt; { actions = [ LatchMods(modifiers=AltGr) ] };          // dead altgr&lt;br /&gt;
        key &amp;lt;FK17&amp;gt; { [ Multi_key ] };                                     // multi_key&lt;br /&gt;
        //    key &amp;lt;FK13&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;FK14&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;FK15&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;FK16&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;FK17&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
        // See also the bug thread here : https://bugs.freedesktop.org/show_bug.cgi?id=12401&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Transforme CAPS en lock de couche alternative «déplacement/édition», et garde le caps-lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour échanger Shift et Caps_Lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; {  [    Caps_Lock    ] };&lt;br /&gt;
&lt;br /&gt;
        // Combinaison des 2 : attention, requiert que les LFSH et CAPS dans les définitions de la touche &amp;lt;AC01&amp;gt; soient aussi échangées dans la partie principale&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
&lt;br /&gt;
        // shift + lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer CAPS en un AltGr gauche, en gardant le lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ ISO_Level3_Shift, Caps_Lock ], actions = [ SetMods(modifiers=LevelThree), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer LWIN en un AltGr gauche&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour mettre un Compose sur RWIN&lt;br /&gt;
        //key &amp;lt;RWIN&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        // key &amp;lt;MENU&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        //key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = [ SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;RCTL&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour que LWIN permette de changer de groupe&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
&lt;br /&gt;
        // Echange CTRL et Alt Gauches. Et puisque LWIN est réaffectée, garde un modificateur META en niveau 3 et 4 (AltGr)&lt;br /&gt;
        // Note: Activer cette option fonctionne mieux lorsque que l&#039;on échange aussi les raccourcis du style Alt+Tabâ€¦&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; {        [ Control_L ], actions = [ SetMods(modifiers=Control) ]       };&lt;br /&gt;
        //    key &amp;lt;LCTL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [       Alt_L,  Alt_L,  Meta_L, Meta_L         ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ]       };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        key &amp;lt;LALT&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; { type = &amp;quot;ONE_LEVEL&amp;quot;, [ VoidSymbol ], actions = [ LockControls(controls=Overlay1) ] };&lt;br /&gt;
            &lt;br /&gt;
            key &amp;lt;LFSH&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
            key &amp;lt;LWIN&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [ Alt_L, Alt_L, Meta_L, Meta_L ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ] };&lt;br /&gt;
&lt;br /&gt;
            // Make Alt+Tab still work in the overlay !&lt;br /&gt;
        //key  &amp;lt;TAB&amp;gt; {&lt;br /&gt;
        //    // would need an appropriate type here [ Tab,  ISO_Left_Tab    ],&lt;br /&gt;
        //    overlay1 = &amp;lt;F30&amp;gt;&lt;br /&gt;
        //};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;level3(ralt_switch)&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_geometry { include &amp;quot;pc(pc105)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13316</id>
		<title>Utilisateur:Legrostdg</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13316"/>
		<updated>2009-03-25T23:57:59Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La [[Utilisateur:Nbrodu|variante proposée par Nbrodu]] est très utile mais étant plutôt adepte de vim, je n&#039;utilisais pas beaucoup les raccourcis en Ctrl+… En revanche return, delete, backspace et escape avaient selon moi besoin d&#039;être plus accessibles. J&#039;en ai profité pour mettre les touches de direction &amp;quot;alla vim&amp;quot; et ajuster les touches début, fin, pgup et pgdn de manière plus homogène.&lt;br /&gt;
&lt;br /&gt;
J&#039;ai également rajouté des touches dead-modificateur (plus parce que j&#039;étais content d&#039;avoir trouvé comment faire qu&#039;autre chose).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Keymap « de base »===&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;w plus proche&#039;&#039;&#039; (alla bépow [[Utilisateur:Kaze/Bépo-int|Explications ici]]):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Finalement le bépow ne me plaît pas tellement:&lt;br /&gt;
&amp;quot;w&amp;quot; s&#039;enchaîne souvent avec un &amp;quot;o&amp;quot; ou un &amp;quot;e&amp;quot; en anglais… À revoir&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Haha! J&#039;ai trouvé une parade :) En échangeant &amp;quot;w&amp;quot; et &amp;quot;&#039;/?&amp;quot; ça devrait être pas mal. Une nouvelle variante: le &amp;quot;BÉPO?&amp;quot; :-)&lt;br /&gt;
&lt;br /&gt;
Les inconvénients:&lt;br /&gt;
**c&#039;est vrai que è et à ça manque un peu… Mais bon c&#039;était pareil avec le bépow :)&lt;br /&gt;
&lt;br /&gt;
Les avantages de cette variante:&lt;br /&gt;
**le w est bien accessible&lt;br /&gt;
**&amp;quot;w&amp;quot;-&amp;quot;h&amp;quot; s&#039;enchaîne bien, de même que &amp;quot;w&amp;quot;-&amp;quot;o&amp;quot;, &amp;quot;w&amp;quot;-&amp;quot;e&amp;quot;, &amp;quot;e&amp;quot;-&amp;quot;w&amp;quot; et &amp;quot;o&amp;quot;-&amp;quot;w&amp;quot;. Bonne amélioration par rapport au bépow!  &lt;br /&gt;
**toute la ponctuation dans le même coin :)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&amp;quot;[&amp;quot;-&amp;quot;]&amp;quot; dans la même rangée que &amp;quot;{&amp;quot;-&amp;quot;}&amp;quot; et &amp;quot;&amp;lt;&amp;quot;-&amp;quot;&amp;gt;&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Je trouvais ça trop pratique. Les parenthèses en altgr+&#039;é&#039; et altgr+&#039;p&#039; ce serait selon moi royal, mais c&#039;est vrai que le &#039;´&#039; est bien sur le é… Je n&#039;ai pas encore trouvé de solution idéale.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;espace insécable en altgr+space&#039;&#039;&#039; et &#039;&#039;&#039;espace fine insécable en altgr+maj+space&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
space et maj+space donnent une espace classique, je trouvais la combinaison &amp;quot;maj+space = espace&amp;quot; trop dangereuse pour la programmation.&lt;br /&gt;
&lt;br /&gt;
Pour l&#039;instant &#039;&#039;&#039;underscore est en fn+space&#039;&#039;&#039;. Ce n&#039;est pas super logique (ce n&#039;est pas du « déplacement/édition ») mais bon… la couche « déplacement/édition » est aussi accessible que la couche altgr et la laisser quasiment vide serait un peu du gaspillage. Le mieux serait peut-être de caler le &#039;_&#039; ailleurs (mais où ? :-)). Ou alors utiliser un peu plus cette couche fn -&amp;gt; :-)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Ctrl droit et Compose inversés&#039;&#039;&#039;: les touches Ctrl sont tout à fait inaccessibles sans lever la main. Un &amp;quot;dead_Compose&amp;quot; est accessible en Fn+&#039;,&#039;.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Maj et ç inversés&#039;&#039;&#039; pour augmenter l&#039;homogénéité avec l&#039;autre maj (cela rend aussi la touche plus accessible à mon avis).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
  ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
  │ # ¶│ 1 „│ 2 “│ 3 ”│ 4 ≤│ 5 ≥│ 6  ║ 7 ¬│ 8 ¼│ 9 ½│ 0 ¾│ ° ′│ ℝ ″║         ║&lt;br /&gt;
  │ $ –│ &amp;quot; —│ « &amp;lt;│ » &amp;gt;│ ( →│ ) ⇒│ @ ^║ + ±│ - −│ / ÷│ * ×│ = ≠│ % ‰║ &amp;lt;--     ║&lt;br /&gt;
  ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
  ║  |&amp;lt;-  ║ B ¦│ É ˝│ P §│ O Œ│ ?  ║ !  │ V  │ D Ð│ L  │ J Ĳ│ ˇ Ə│ ˙  ║   |  ║&lt;br /&gt;
  ║  -&amp;gt;|  ║ b |│ é ´│ p &amp;amp;│ o œ│ ’ ¿║ ` ¡│ v ˇ│ d ð│ l /│ j ĳ│ ^ ə│ ¨ ˘║ &amp;lt;-&#039;  ║&lt;br /&gt;
  ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
  ║        ║ A Æ│ U  │ I  │ E ¤│ ;  ║ C ſ│ T Þ│ S ß│ R  │ N  │ M º│    ║     ║&lt;br /&gt;
  ║ Maj. ⇑ ║ a æ│ u [│ i ]│ e €│ , &#039;║ c ©│ t þ│ s ß│ r ®│ n ˜│ m ¯│Maj.║     ║&lt;br /&gt;
  ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
  ║ «»’  ║ Ê  │ Z  │ Y ‘│ X ’│ : ·│ K  ║ W  │ Q  │ G  │ H ‡│ F ª║   Ç ,      ║&lt;br /&gt;
  ║ &amp;lt;&amp;gt;&#039;  ║ ê /│ z \│ y {│ x }│ . …│ k ~║ w ˘│ q °│ g µ│ h †│ f ˛║   ç ¸      ║&lt;br /&gt;
  ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
  ║       ║      ║     ║ Espace   Fine Insécable  ║     ║       ║     ║      ║&lt;br /&gt;
  ║ Ctrl  ║ Alt  ║ Fn ⇄║ Espace     Insécable     ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
  ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Fn « déplacement/édition » (et underscore)===&lt;br /&gt;
&lt;br /&gt;
* ←  ↓  ↑  →  sous les doigts à droite avec les positions usuelles sur vim.&lt;br /&gt;
*&amp;quot;deb&amp;quot;, &amp;quot;pgdn&amp;quot;, &amp;quot;pgup&amp;quot; et &amp;quot;fin&amp;quot; accessibles facilement (on notera l&#039;homogégéité avec les flèches :)).&lt;br /&gt;
*&amp;quot;esc&amp;quot;, &amp;quot;del&amp;quot;, &amp;quot;bksp&amp;quot; et &amp;quot;entr&amp;quot; sous les doigts de la main gauche: trop bien. :)&lt;br /&gt;
*maj+insert (équivalent du clic scroll) en fn+p (p comme paste (en vim) ou comme prout (dans la vie de tous les jours))&lt;br /&gt;
*ctrl+p et ctrl+n (pour &amp;quot;précédent&amp;quot; et &amp;quot;suivant&amp;quot; dans plein de programmes) en haut des flèches haut et bas (peut-être pas top à cause du &amp;quot;d&amp;quot;: supprimer en vim, du coup, ils sont aussi sur les guillemets).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │    │    │ctl+│ctl+│    │    │    ║    │    │    │    │    │    ║         ║&lt;br /&gt;
 │    │    │ p  │ n  │    │    │    ║    │    │    │    │    │    ║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║dead│dead│maj+│dead│Com-║    │ctl+│ctl+│    │    │    │    ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ctrl│ maj│ ins│altg│pose║    │ p  │ n  │    │    │    │    ║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║    │    │    │    │    ║    │    │    │    │    │    │    ║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ esc│ del│bksp│entr│ins │ ←  │ ↓  │ ↑  | →  │ esc│    │Maj ║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║dead│    │    │    │    │    ║    │    │    │    │    ║            ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║ alt│    │    │    │    │    ║ deb│pgdn│pgup│ fin│    ║            ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║                          ║     ║       ║     ║      ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║            _             ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Des idées ?===&lt;br /&gt;
Si vous avez des idées pour améliorer cette super couche « déplacement/édition » rajoutez-les ici !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon fichier .xkb===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
xkb_keymap        {&lt;br /&gt;
&lt;br /&gt;
xkb_keycodes      { include &amp;quot;xfree86+aliases(azerty)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
xkb_types         {&lt;br /&gt;
    include &amp;quot;complete&amp;quot;&lt;br /&gt;
    type &amp;quot;ALTGR_TWO&amp;quot; {&lt;br /&gt;
       modifiers = LevelThree;&lt;br /&gt;
       map[None] = Level1;&lt;br /&gt;
       map[LevelThree] = Level2;&lt;br /&gt;
       level_name[Level1] = &amp;quot;Base&amp;quot;;&lt;br /&gt;
       level_name[Level2] = &amp;quot;AltGr&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_compatibility { include &amp;quot;complete&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        indicator &amp;quot;Scroll Lock&amp;quot; { controls = Overlay1; allowExplicit = True; drivesKeyboard = True; };&lt;br /&gt;
        &lt;br /&gt;
        interpret F24 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Control); // ctrl-r&lt;br /&gt;
        };&lt;br /&gt;
        interpret F25 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6D&amp;gt;, modifiers=Mod1); // alt-f&lt;br /&gt;
        };&lt;br /&gt;
        interpret F26 {&lt;br /&gt;
            action = LockControls(controls=Overlay1);&lt;br /&gt;
        };&lt;br /&gt;
        interpret F27 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6E&amp;gt;, modifiers=Control); // ctrl-s&lt;br /&gt;
        };&lt;br /&gt;
        interpret F28 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Shift); // insert-shift&lt;br /&gt;
        };&lt;br /&gt;
        interpret F29 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;RGHT&amp;gt;, modifiers=Control); // ctrl-â†’&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
        interpret F30 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6F&amp;gt;, modifiers=Control); // ctrl-Tab&lt;br /&gt;
        };&lt;br /&gt;
        interpret F31 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I71&amp;gt;, modifiers=Control); // ctrl-p&lt;br /&gt;
        };&lt;br /&gt;
        interpret F32 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I72&amp;gt;, modifiers=Control); // ctrl-n&lt;br /&gt;
        };&lt;br /&gt;
        interpret F33 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;INS&amp;gt;, modifiers=Shift); // ctrl-v&lt;br /&gt;
        };&lt;br /&gt;
        interpret F34 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I74&amp;gt;, modifiers=Control); // ctrl-z&lt;br /&gt;
        };&lt;br /&gt;
        interpret F35 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I75&amp;gt;, modifiers=Mod1); // alt-y&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
partial alphanumeric_keys&lt;br /&gt;
xkb_symbols &amp;quot;dvorak&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	name[Group1]= &amp;quot;France - Bepo, ergonomic, Dvorak way (v1.0rc2)&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;pc(pc105)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;TLDE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dollar, numbersign, endash, paragraph ], overlay1 = &amp;lt;I70&amp;gt; }; // $ # – ¶&lt;br /&gt;
	key &amp;lt;AE01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ quotedbl, 1, emdash, doublelowquotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // &amp;quot; 1 — „&lt;br /&gt;
	key &amp;lt;AE02&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotleft, 2, less, leftdoublequotemark ], // « 2 &amp;lt; “&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ less, 2, guillemotleft, leftdoublequotemark ], // &amp;lt; 2 « “&lt;br /&gt;
                     overlay1 = &amp;lt;I7A&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE03&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotright, 3, greater, rightdoublequotemark ], // » 3 &amp;gt; ”&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ greater, 3, guillemotright, rightdoublequotemark ], // &amp;gt; 3 » ”&lt;br /&gt;
                     overlay1 = &amp;lt;I7B&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenleft, 4, U2192, lessthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ( 4 → &lt;br /&gt;
	key &amp;lt;AE05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenright, 5, U21D2, greaterthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ) 5 ⇒ &lt;br /&gt;
	key &amp;lt;AE06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ at, 6, asciicircum ], overlay1 = &amp;lt;I70&amp;gt; }; // @ 6 ^&lt;br /&gt;
	key &amp;lt;AE07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ plus, 7, plusminus, notsign ], overlay1 = &amp;lt;I70&amp;gt; }; // + 7 ± ¬&lt;br /&gt;
	key &amp;lt;AE08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ minus, 8, U2212, onequarter ], overlay1 = &amp;lt;I70&amp;gt; }; // - 8 − ¼&lt;br /&gt;
	key &amp;lt;AE09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ slash, 9, division, onehalf ], overlay1 = &amp;lt;I70&amp;gt; }; // / 9 ÷ ½&lt;br /&gt;
	key &amp;lt;AE10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asterisk, 0, multiply, threequarters ], overlay1 = &amp;lt;I70&amp;gt; }; // * 0 × ¾&lt;br /&gt;
	key &amp;lt;AE11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ equal, degree, notequal, minutes ], overlay1 = &amp;lt;I70&amp;gt; }; // = ° ≠&lt;br /&gt;
	key &amp;lt;AE12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ percent, grave, U2030, seconds ], overlay1 = &amp;lt;I70&amp;gt; }; // % ` ‰&lt;br /&gt;
	key &amp;lt;AD01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ b, B, bar, brokenbar ], overlay1 = &amp;lt;FK13&amp;gt; }; // b B | ¦ dead_ctrl&lt;br /&gt;
	key &amp;lt;AD02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, dead_acute, dead_doubleacute ], overlay1 = &amp;lt;FK14&amp;gt; }; // é É ´ ˝ dead_shift&lt;br /&gt;
	key &amp;lt;AD03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, ampersand, section ], overlay1 = &amp;lt;I77&amp;gt; }; // p P &amp;amp; § insert-shift&lt;br /&gt;
	key &amp;lt;AD04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ o, O, oe, OE ], overlay1 = &amp;lt;FK16&amp;gt; }; // o O œ Œ dead_altgr&lt;br /&gt;
	//key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ egrave, Egrave, dead_grave, grave ], }; // è È ` `&lt;br /&gt;
        key &amp;lt;AD05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, question, questiondown, dead_hook ],           // ’ ? ¿ ̉&lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ rightsinglequotemark, question, questiondown, dead_hook ], // &#039; ? ¿ ̉&lt;br /&gt;
            overlay1 = &amp;lt;FK17&amp;gt;                                                                         // compose&lt;br /&gt;
        }; &lt;br /&gt;
	key &amp;lt;AD06&amp;gt; { type[group1] = &amp;quot;THREE_LEVEL&amp;quot;, [ dead_grave, exclam, exclamdown ], overlay1 = &amp;lt;I70&amp;gt; }; // ` ! ¡&lt;br /&gt;
	key &amp;lt;AD07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ v, V, dead_caron ], overlay1 = &amp;lt;I70&amp;gt; }; // v V ˇ&lt;br /&gt;
	key &amp;lt;AD08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ d, D, eth, ETH ], overlay1 = &amp;lt;I7A&amp;gt;}; // d D ð Ð&lt;br /&gt;
	key &amp;lt;AD09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ l, L, UFDD0 ], overlay1 = &amp;lt;I7B&amp;gt;}; // l L /&lt;br /&gt;
	key &amp;lt;AD10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ j, J, U0133, U0132 ], overlay1 = &amp;lt;I70&amp;gt;}; // j J ĳ Ĳ&lt;br /&gt;
        key &amp;lt;AD11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_circumflex, dead_caron, schwa, SCHWA ], overlay1 = &amp;lt;I70&amp;gt; }; // ^ ˇ ə Ə&lt;br /&gt;
        key &amp;lt;AD12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_diaeresis, dead_abovedot, dead_breve, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ¨ ˙ ˘&lt;br /&gt;
	key &amp;lt;AC01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ a, A, ae, AE ], overlay1 = &amp;lt;ESC&amp;gt; }; // a A æ Æ escape&lt;br /&gt;
        key &amp;lt;AC02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ u, U, bracketleft ], overlay1 = &amp;lt;DELE&amp;gt; }; // u U [ delete&lt;br /&gt;
	key &amp;lt;AC03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ i, I, bracketright ], overlay1 = &amp;lt;BKSP&amp;gt; }; // i I ] backspace&lt;br /&gt;
	key &amp;lt;AC04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ e, E, EuroSign, UFDD1 ], overlay1 = &amp;lt;RTRN&amp;gt; }; // e E € ¤ return&lt;br /&gt;
        key &amp;lt;AC05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, rightsinglequotemark, dead_horn  ], // , ; &#039; &lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, apostrophe, dead_horn  ],           // , ; ’&lt;br /&gt;
            overlay1 = &amp;lt;INS&amp;gt;                                                                    // insert&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AC06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ c, C, copyright, U017F ], overlay1 = &amp;lt;LEFT&amp;gt; }; // c C © ſ&lt;br /&gt;
	key &amp;lt;AC07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ t, T, thorn, THORN ], overlay1 = &amp;lt;DOWN&amp;gt; }; // t T þ Þ&lt;br /&gt;
	key &amp;lt;AC08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ s, S, ssharp, U1E9E ], overlay1 = &amp;lt;UP&amp;gt; }; // s S ß ẞ&lt;br /&gt;
	key &amp;lt;AC09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ r, R, registered, trademark ], overlay1 = &amp;lt;RGHT&amp;gt; }; // r R ® ™&lt;br /&gt;
	key &amp;lt;AC10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ n, N, dead_tilde ], overlay1 = &amp;lt;ESC&amp;gt; }; // n N ~ escape&lt;br /&gt;
	key &amp;lt;AC11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ m, M, dead_macron, masculine ], overlay1 = &amp;lt;I70&amp;gt; }; // m M ¯ º&lt;br /&gt;
        key &amp;lt;BKSL&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_R, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;LSGT&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ecircumflex, Ecircumflex, backslash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ê Ê /&lt;br /&gt;
	key &amp;lt;AB01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ z, Z, slash, VoidSymbol ], overlay1 = &amp;lt;FK15&amp;gt; }; // z Z \&lt;br /&gt;
	key &amp;lt;AB02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ y, Y, braceleft, leftsinglequotemark ], overlay1 = &amp;lt;F35&amp;gt; }; // y Y { ‘&lt;br /&gt;
	key &amp;lt;AB03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ x, X, braceright, rightsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // x X } ’&lt;br /&gt;
	key &amp;lt;AB04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ period, colon, ellipsis, periodcentered ], overlay1 = &amp;lt;I70&amp;gt; }; // . : … ·&lt;br /&gt;
	key &amp;lt;AB05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ k, K, asciitilde, dead_tilde ], overlay1 = &amp;lt;I70&amp;gt; }; // k K ~&lt;br /&gt;
	key &amp;lt;AB06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ w, W, dead_breve ], overlay1 = &amp;lt;HOME&amp;gt; }; // w W ˘ home&lt;br /&gt;
	key &amp;lt;AB07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ q, Q, dead_abovering, dead_belowdot ], overlay1 = &amp;lt;PGDN&amp;gt; }; // q Q ˚ ̣pgdn&lt;br /&gt;
	key &amp;lt;AB08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ g, G, UFDD2 ], overlay1 = &amp;lt;PGUP&amp;gt; }; // g G µ pgup&lt;br /&gt;
	key &amp;lt;AB09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ h, H, dagger, doubledagger ], overlay1 = &amp;lt;END&amp;gt; }; // h H † ‡&lt;br /&gt;
	key &amp;lt;AB10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ f, F, dead_ogonek, ordfeminine ], overlay1 = &amp;lt;I25&amp;gt; }; // f F ˛ ª&lt;br /&gt;
	key &amp;lt;RTSH&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ], overlay1 = &amp;lt;I70&amp;gt; }; // ç Ç ¸ ,&lt;br /&gt;
        key &amp;lt;SPCE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ space, space, nobreakspace, U202F ], overlay1 = &amp;lt;I7F&amp;gt; }; // spaces underscore&lt;br /&gt;
&lt;br /&gt;
        // Unused keys mapped to ctrl+letter actions&lt;br /&gt;
        key &amp;lt;I6C&amp;gt; { [ r ] };&lt;br /&gt;
        key &amp;lt;I6D&amp;gt; { [ f ] };&lt;br /&gt;
        key &amp;lt;I6E&amp;gt; { [ s ] };&lt;br /&gt;
        key &amp;lt;I6F&amp;gt; { [ Tab ] };&lt;br /&gt;
        key &amp;lt;I70&amp;gt; { [ VoidSymbol ] };&lt;br /&gt;
        key &amp;lt;I71&amp;gt; { [ p ] };&lt;br /&gt;
        key &amp;lt;I72&amp;gt; { [ n ] };&lt;br /&gt;
        key &amp;lt;I73&amp;gt; { [ v ] };&lt;br /&gt;
        key &amp;lt;I74&amp;gt; { [ z ] };&lt;br /&gt;
        key &amp;lt;I75&amp;gt; { [ y ] };&lt;br /&gt;
        key &amp;lt;I76&amp;gt; { [ space ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // For some reason there are SOMETIMES (not always!) errors with this code:&lt;br /&gt;
        //    key &amp;lt;I7A&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;I7B&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;I7C&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;I7D&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;I7E&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // However passing the action in the Â«Â interpretÂ Â» section for an unsused symbol seems to work&lt;br /&gt;
        key &amp;lt;I60&amp;gt; { [ F24 ] };      // ctrl-R&lt;br /&gt;
        key &amp;lt;I61&amp;gt; { [ F25 ] };      // ctrl-F&lt;br /&gt;
        //key &amp;lt;I77&amp;gt; {  actions[group1] = [ Redirect(keycode=&amp;lt;I6C&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I77&amp;gt; { [ INS ],  actions[group1] = [ Redirect(keycode=&amp;lt;INS&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I78&amp;gt; { [ F29 ] };      // ctrl-right&lt;br /&gt;
        key &amp;lt;I79&amp;gt; { [ F30 ] };      // ctrl+Tab&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        //    key &amp;lt;I79&amp;gt; { [ Tab ], actions = [ setMods(modifiers=Mod1) ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;I7A&amp;gt; { [ F31 ] };      // ctrl-p&lt;br /&gt;
        key &amp;lt;I7B&amp;gt; { [ F32 ] };      // ctrl-n&lt;br /&gt;
        key &amp;lt;I7C&amp;gt; { [ F33 ] };      // ctrl-v&lt;br /&gt;
        key &amp;lt;I7D&amp;gt; { [ F34 ] };      // ctrl-z&lt;br /&gt;
        key &amp;lt;I7E&amp;gt; { [ F35 ] };      // alt-y&lt;br /&gt;
        key &amp;lt;I7F&amp;gt; { [ underscore ] };      // _&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Using &amp;lt; 127 keycodes also works&lt;br /&gt;
        key &amp;lt;FK13&amp;gt; { actions = [ LatchMods(modifiers=Control) ] };        // dead ctrl&lt;br /&gt;
        key &amp;lt;FK14&amp;gt; { actions = [ LatchMods(modifiers=Shift) ] };          // dead shift&lt;br /&gt;
        key &amp;lt;FK15&amp;gt; { actions = [ LatchMods(modifiers=Mod1) ] };           // dead alt&lt;br /&gt;
        key &amp;lt;FK16&amp;gt; { actions = [ LatchMods(modifiers=AltGr) ] };          // dead altgr&lt;br /&gt;
        key &amp;lt;FK17&amp;gt; { [ Multi_key ] };                                     // multi_key&lt;br /&gt;
        //    key &amp;lt;FK13&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;FK14&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;FK15&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;FK16&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;FK17&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
        // See also the bug thread here : https://bugs.freedesktop.org/show_bug.cgi?id=12401&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Transforme CAPS en lock de couche alternative «déplacement/édition», et garde le caps-lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour échanger Shift et Caps_Lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; {  [    Caps_Lock    ] };&lt;br /&gt;
&lt;br /&gt;
        // Combinaison des 2 : attention, requiert que les LFSH et CAPS dans les définitions de la touche &amp;lt;AC01&amp;gt; soient aussi échangées dans la partie principale&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
&lt;br /&gt;
        // shift + lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer CAPS en un AltGr gauche, en gardant le lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ ISO_Level3_Shift, Caps_Lock ], actions = [ SetMods(modifiers=LevelThree), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer LWIN en un AltGr gauche&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour mettre un Compose sur RWIN&lt;br /&gt;
        //key &amp;lt;RWIN&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        // key &amp;lt;MENU&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        //key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = [ SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;RCTL&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour que LWIN permette de changer de groupe&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
&lt;br /&gt;
        // Echange CTRL et Alt Gauches. Et puisque LWIN est réaffectée, garde un modificateur META en niveau 3 et 4 (AltGr)&lt;br /&gt;
        // Note: Activer cette option fonctionne mieux lorsque que l&#039;on échange aussi les raccourcis du style Alt+Tabâ€¦&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; {        [ Control_L ], actions = [ SetMods(modifiers=Control) ]       };&lt;br /&gt;
        //    key &amp;lt;LCTL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [       Alt_L,  Alt_L,  Meta_L, Meta_L         ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ]       };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        key &amp;lt;LALT&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; { type = &amp;quot;ONE_LEVEL&amp;quot;, [ VoidSymbol ], actions = [ LockControls(controls=Overlay1) ] };&lt;br /&gt;
            &lt;br /&gt;
            key &amp;lt;LFSH&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
            key &amp;lt;LWIN&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [ Alt_L, Alt_L, Meta_L, Meta_L ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ] };&lt;br /&gt;
&lt;br /&gt;
            // Make Alt+Tab still work in the overlay !&lt;br /&gt;
        //key  &amp;lt;TAB&amp;gt; {&lt;br /&gt;
        //    // would need an appropriate type here [ Tab,  ISO_Left_Tab    ],&lt;br /&gt;
        //    overlay1 = &amp;lt;F30&amp;gt;&lt;br /&gt;
        //};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;level3(ralt_switch)&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_geometry { include &amp;quot;pc(pc105)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13315</id>
		<title>Utilisateur:Legrostdg</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13315"/>
		<updated>2009-03-25T23:46:05Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : /* Keymap « de base » */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La [[Utilisateur:Nbrodu|variante proposée par Nbrodu]] est très utile mais étant plutôt adepte de vim, je n&#039;utilisais pas beaucoup les raccourcis en Ctrl+… En revanche return, delete, backspace et escape avaient selon moi besoin d&#039;être plus accessibles. J&#039;en ai profité pour mettre les touches de direction &amp;quot;alla vim&amp;quot; et ajuster les touches début, fin, pgup et pgdn de manière plus homogène.&lt;br /&gt;
&lt;br /&gt;
J&#039;ai également rajouté des touches dead-modificateur (plus parce que j&#039;étais content d&#039;avoir trouvé comment faire qu&#039;autre chose).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Keymap « de base »===&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;w plus proche&#039;&#039;&#039; (alla bépow [[Utilisateur:Kaze/Bépo-int|Explications ici]]):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Finalement le bépow ne me plaît pas tellement:&lt;br /&gt;
&amp;quot;w&amp;quot; s&#039;enchaîne souvent avec un &amp;quot;o&amp;quot; ou un &amp;quot;e&amp;quot; en anglais… À revoir&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Haha! J&#039;ai trouvé une parade :) En échangeant &amp;quot;w&amp;quot; et &amp;quot;&#039;/?&amp;quot; ça devrait être pas mal. Une nouvelle variante: le &amp;quot;BÉPO?&amp;quot; :-)&lt;br /&gt;
&lt;br /&gt;
Les inconvénients:&lt;br /&gt;
**c&#039;est vrai que è et à ça manque un peu… Mais bon c&#039;était pareil avec le bépow :)&lt;br /&gt;
&lt;br /&gt;
Les avantages de cette variante:&lt;br /&gt;
**le w est bien accessible&lt;br /&gt;
**&amp;quot;w&amp;quot;-&amp;quot;h&amp;quot; s&#039;enchaîne bien, de même que &amp;quot;w&amp;quot;-&amp;quot;o&amp;quot;, &amp;quot;w&amp;quot;-&amp;quot;e&amp;quot;, &amp;quot;e&amp;quot;-&amp;quot;w&amp;quot; et &amp;quot;o&amp;quot;-&amp;quot;w&amp;quot;. Bonne amélioration par rapport au bépow!  &lt;br /&gt;
**toute la ponctuation dans le même coin :)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&amp;quot;[&amp;quot;-&amp;quot;]&amp;quot; dans la même rangée que &amp;quot;{&amp;quot;-&amp;quot;}&amp;quot; et &amp;quot;&amp;lt;&amp;quot;-&amp;quot;&amp;gt;&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Je trouvais ça trop pratique. Les parenthèses en altgr+&#039;é&#039; et altgr+&#039;p&#039; ce serait selon moi royal, mais c&#039;est vrai que le &#039;´&#039; est bien sur le é… Je n&#039;ai pas encore trouvé de solution idéale.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;espace insécable en altgr+space&#039;&#039;&#039; et &#039;&#039;&#039;espace fine insécable en altgr+maj+space&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
space et maj+space donnent une espace classique, je trouvais la combinaison &amp;quot;maj+space = espace&amp;quot; trop dangereuse pour la programmation.&lt;br /&gt;
&lt;br /&gt;
Pour l&#039;instant &#039;&#039;&#039;underscore est en fn+space&#039;&#039;&#039;. Ce n&#039;est pas super logique (ce n&#039;est pas du « déplacement/édition ») mais bon… la couche « déplacement/édition » est aussi accessible que la couche altgr et la laisser quasiment vide serait un peu du gaspillage. Le mieux serait peut-être de caler le &#039;_&#039; ailleurs (mais où ? :-)). Ou alors utiliser un peu plus cette couche fn -&amp;gt; :-)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Ctrl droit et Compose inversés&#039;&#039;&#039;: les touches Ctrl sont tout à fait inaccessibles sans lever la main. Un &amp;quot;dead_Compose&amp;quot; est accessible en Fn+&#039;,&#039;.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Maj et ç inversés&#039;&#039;&#039; pour augmenter l&#039;homogénéité avec l&#039;autre maj (cela rend aussi la touche plus accessible à mon avis).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
  ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
  │ # ¶│ 1 „│ 2 “│ 3 ”│ 4 ≤│ 5 ≥│ 6  ║ 7 ¬│ 8 ¼│ 9 ½│ 0 ¾│ ° ′│ ℝ ″║         ║&lt;br /&gt;
  │ $ –│ &amp;quot; —│ « &amp;lt;│ » &amp;gt;│ ( →│ ) ⇒│ @ ^║ + ±│ - −│ / ÷│ * ×│ = ≠│ % ‰║ &amp;lt;--     ║&lt;br /&gt;
  ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
  ║  |&amp;lt;-  ║ B ¦│ É ˝│ P §│ O Œ│ W  ║ !  │ V  │ D Ð│ L  │ J Ĳ│ ˇ Ə│ ˙  ║   |  ║&lt;br /&gt;
  ║  -&amp;gt;|  ║ b |│ é ´│ p &amp;amp;│ o œ│ w  ║ ` ¡│ v ˇ│ d ð│ l /│ j ĳ│ ^ ə│ ¨ ˘║ &amp;lt;-&#039;  ║&lt;br /&gt;
  ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
  ║        ║ A Æ│ U  │ I  │ E ¤│ ;  ║ C ſ│ T Þ│ S ß│ R  │ N  │ M º│    ║     ║&lt;br /&gt;
  ║ Maj. ⇑ ║ a æ│ u [│ i ]│ e €│ , &#039;║ c ©│ t þ│ s ß│ r ®│ n ˜│ m ¯│Maj.║     ║&lt;br /&gt;
  ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
  ║ «»’  ║ Ê  │ Z  │ Y ‘│ X ’│ : ·│ K  ║ ?  │ Q  │ G  │ H ‡│ F ª║   Ç ,      ║&lt;br /&gt;
  ║ &amp;lt;&amp;gt;&#039;  ║ ê /│ z \│ y {│ x }│ . …│ k ~║ ’ ¿│ q °│ g µ│ h †│ f ˛║   ç ¸      ║&lt;br /&gt;
  ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
  ║       ║      ║     ║ Espace   Fine Insécable  ║     ║       ║     ║      ║&lt;br /&gt;
  ║ Ctrl  ║ Alt  ║ Fn ⇄║ Espace     Insécable     ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
  ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Fn « déplacement/édition » (et underscore)===&lt;br /&gt;
&lt;br /&gt;
* ←  ↓  ↑  →  sous les doigts à droite avec les positions usuelles sur vim.&lt;br /&gt;
*&amp;quot;deb&amp;quot;, &amp;quot;pgdn&amp;quot;, &amp;quot;pgup&amp;quot; et &amp;quot;fin&amp;quot; accessibles facilement (on notera l&#039;homogégéité avec les flèches :)).&lt;br /&gt;
*&amp;quot;esc&amp;quot;, &amp;quot;del&amp;quot;, &amp;quot;bksp&amp;quot; et &amp;quot;entr&amp;quot; sous les doigts de la main gauche: trop bien. :)&lt;br /&gt;
*maj+insert (équivalent du clic scroll) en fn+p (p comme paste (en vim) ou comme prout (dans la vie de tous les jours))&lt;br /&gt;
*ctrl+p et ctrl+n (pour &amp;quot;précédent&amp;quot; et &amp;quot;suivant&amp;quot; dans plein de programmes) en haut des flèches haut et bas (peut-être pas top à cause du &amp;quot;d&amp;quot;: supprimer en vim, du coup, ils sont aussi sur les guillemets).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │    │    │ctl+│ctl+│    │    │    ║    │    │    │    │    │    ║         ║&lt;br /&gt;
 │    │    │ p  │ n  │    │    │    ║    │    │    │    │    │    ║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║dead│dead│maj+│dead│    ║    │ctl+│ctl+│    │    │    │    ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ctrl│ maj│ ins│altg│    ║    │ p  │ n  │    │    │    │    ║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║    │    │    │    │Com-║    │    │    │    │    │    │    ║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ esc│ del│bksp│entr│pose│ ←  │ ↓  │ ↑  | →  │ esc│    │Maj ║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║dead│    │    │    │    │    ║    │    │    │    │    ║            ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║ alt│    │    │    │    │    ║ deb│pgdn│pgup│ fin│    ║            ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║                          ║     ║       ║     ║      ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║            _             ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Des idées ?===&lt;br /&gt;
Si vous avez des idées pour améliorer cette super couche « déplacement/édition » rajoutez-les ici !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon fichier .xkb===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
xkb_keymap        {&lt;br /&gt;
&lt;br /&gt;
xkb_keycodes      { include &amp;quot;xfree86+aliases(azerty)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
xkb_types         {&lt;br /&gt;
    include &amp;quot;complete&amp;quot;&lt;br /&gt;
    type &amp;quot;ALTGR_TWO&amp;quot; {&lt;br /&gt;
       modifiers = LevelThree;&lt;br /&gt;
       map[None] = Level1;&lt;br /&gt;
       map[LevelThree] = Level2;&lt;br /&gt;
       level_name[Level1] = &amp;quot;Base&amp;quot;;&lt;br /&gt;
       level_name[Level2] = &amp;quot;AltGr&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_compatibility { include &amp;quot;complete&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        indicator &amp;quot;Scroll Lock&amp;quot; { controls = Overlay1; allowExplicit = True; drivesKeyboard = True; };&lt;br /&gt;
        &lt;br /&gt;
        interpret F24 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Control); // ctrl-r&lt;br /&gt;
        };&lt;br /&gt;
        interpret F25 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6D&amp;gt;, modifiers=Mod1); // alt-f&lt;br /&gt;
        };&lt;br /&gt;
        interpret F26 {&lt;br /&gt;
            action = LockControls(controls=Overlay1);&lt;br /&gt;
        };&lt;br /&gt;
        interpret F27 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6E&amp;gt;, modifiers=Control); // ctrl-s&lt;br /&gt;
        };&lt;br /&gt;
        interpret F28 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Shift); // insert-shift&lt;br /&gt;
        };&lt;br /&gt;
        interpret F29 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;RGHT&amp;gt;, modifiers=Control); // ctrl-â†’&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
        interpret F30 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6F&amp;gt;, modifiers=Control); // ctrl-Tab&lt;br /&gt;
        };&lt;br /&gt;
        interpret F31 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I71&amp;gt;, modifiers=Control); // ctrl-p&lt;br /&gt;
        };&lt;br /&gt;
        interpret F32 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I72&amp;gt;, modifiers=Control); // ctrl-n&lt;br /&gt;
        };&lt;br /&gt;
        interpret F33 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;INS&amp;gt;, modifiers=Shift); // ctrl-v&lt;br /&gt;
        };&lt;br /&gt;
        interpret F34 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I74&amp;gt;, modifiers=Control); // ctrl-z&lt;br /&gt;
        };&lt;br /&gt;
        interpret F35 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I75&amp;gt;, modifiers=Mod1); // alt-y&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
partial alphanumeric_keys&lt;br /&gt;
xkb_symbols &amp;quot;dvorak&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	name[Group1]= &amp;quot;France - Bepo, ergonomic, Dvorak way (v1.0rc2)&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;pc(pc105)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;TLDE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dollar, numbersign, endash, paragraph ], overlay1 = &amp;lt;I70&amp;gt; }; // $ # – ¶&lt;br /&gt;
	key &amp;lt;AE01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ quotedbl, 1, emdash, doublelowquotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // &amp;quot; 1 — „&lt;br /&gt;
	key &amp;lt;AE02&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotleft, 2, less, leftdoublequotemark ], // « 2 &amp;lt; “&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ less, 2, guillemotleft, leftdoublequotemark ], // &amp;lt; 2 « “&lt;br /&gt;
                     overlay1 = &amp;lt;I7A&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE03&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotright, 3, greater, rightdoublequotemark ], // » 3 &amp;gt; ”&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ greater, 3, guillemotright, rightdoublequotemark ], // &amp;gt; 3 » ”&lt;br /&gt;
                     overlay1 = &amp;lt;I7B&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenleft, 4, U2192, lessthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ( 4 → &lt;br /&gt;
	key &amp;lt;AE05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenright, 5, U21D2, greaterthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ) 5 ⇒ &lt;br /&gt;
	key &amp;lt;AE06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ at, 6, asciicircum ], overlay1 = &amp;lt;I70&amp;gt; }; // @ 6 ^&lt;br /&gt;
	key &amp;lt;AE07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ plus, 7, plusminus, notsign ], overlay1 = &amp;lt;I70&amp;gt; }; // + 7 ± ¬&lt;br /&gt;
	key &amp;lt;AE08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ minus, 8, U2212, onequarter ], overlay1 = &amp;lt;I70&amp;gt; }; // - 8 − ¼&lt;br /&gt;
	key &amp;lt;AE09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ slash, 9, division, onehalf ], overlay1 = &amp;lt;I70&amp;gt; }; // / 9 ÷ ½&lt;br /&gt;
	key &amp;lt;AE10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asterisk, 0, multiply, threequarters ], overlay1 = &amp;lt;I70&amp;gt; }; // * 0 × ¾&lt;br /&gt;
	key &amp;lt;AE11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ equal, degree, notequal, minutes ], overlay1 = &amp;lt;I70&amp;gt; }; // = ° ≠&lt;br /&gt;
	key &amp;lt;AE12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ percent, grave, U2030, seconds ], overlay1 = &amp;lt;I70&amp;gt; }; // % ` ‰&lt;br /&gt;
	key &amp;lt;AD01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ b, B, bar, brokenbar ], overlay1 = &amp;lt;FK13&amp;gt; }; // b B | ¦ dead_ctrl&lt;br /&gt;
	key &amp;lt;AD02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, dead_acute, dead_doubleacute ], overlay1 = &amp;lt;FK14&amp;gt; }; // é É ´ ˝ dead_shift&lt;br /&gt;
	key &amp;lt;AD03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, ampersand, section ], overlay1 = &amp;lt;I77&amp;gt; }; // p P &amp;amp; § insert-shift&lt;br /&gt;
	key &amp;lt;AD04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ o, O, oe, OE ], overlay1 = &amp;lt;FK16&amp;gt; }; // o O œ Œ dead_altgr&lt;br /&gt;
	//key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ egrave, Egrave, dead_grave, grave ], }; // è È ` `&lt;br /&gt;
	key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ w, W, dead_breve ], overlay1 = &amp;lt;FK17&amp;gt; }; // w W ˘ multi_key&lt;br /&gt;
	key &amp;lt;AD06&amp;gt; { type[group1] = &amp;quot;THREE_LEVEL&amp;quot;, [ dead_grave, exclam, exclamdown ], overlay1 = &amp;lt;I70&amp;gt; }; // ` ! ¡&lt;br /&gt;
	key &amp;lt;AD07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ v, V, dead_caron ], overlay1 = &amp;lt;I70&amp;gt; }; // v V ˇ&lt;br /&gt;
	key &amp;lt;AD08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ d, D, eth, ETH ], overlay1 = &amp;lt;I7A&amp;gt;}; // d D ð Ð&lt;br /&gt;
	key &amp;lt;AD09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ l, L, UFDD0 ], overlay1 = &amp;lt;I7B&amp;gt;}; // l L /&lt;br /&gt;
	key &amp;lt;AD10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ j, J, U0133, U0132 ], overlay1 = &amp;lt;I70&amp;gt;}; // j J ĳ Ĳ&lt;br /&gt;
        key &amp;lt;AD11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_circumflex, dead_caron, schwa, SCHWA ], overlay1 = &amp;lt;I70&amp;gt; }; // ^ ˇ ə Ə&lt;br /&gt;
        key &amp;lt;AD12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_diaeresis, dead_abovedot, dead_breve, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ¨ ˙ ˘&lt;br /&gt;
	key &amp;lt;AC01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ a, A, ae, AE ], overlay1 = &amp;lt;ESC&amp;gt; }; // a A æ Æ escape&lt;br /&gt;
        key &amp;lt;AC02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ u, U, bracketleft ], overlay1 = &amp;lt;DELE&amp;gt; }; // u U [ delete&lt;br /&gt;
	key &amp;lt;AC03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ i, I, bracketright ], overlay1 = &amp;lt;BKSP&amp;gt; }; // i I ] backspace&lt;br /&gt;
	key &amp;lt;AC04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ e, E, EuroSign, UFDD1 ], overlay1 = &amp;lt;RTRN&amp;gt; }; // e E € ¤ return&lt;br /&gt;
        key &amp;lt;AC05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, rightsinglequotemark, dead_horn  ], // , ; &#039; &lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, apostrophe, dead_horn  ],           // , ; ’&lt;br /&gt;
            overlay1 = &amp;lt;INS&amp;gt;                                                                    // insert&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AC06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ c, C, copyright, U017F ], overlay1 = &amp;lt;LEFT&amp;gt; }; // c C © ſ&lt;br /&gt;
	key &amp;lt;AC07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ t, T, thorn, THORN ], overlay1 = &amp;lt;DOWN&amp;gt; }; // t T þ Þ&lt;br /&gt;
	key &amp;lt;AC08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ s, S, ssharp, U1E9E ], overlay1 = &amp;lt;UP&amp;gt; }; // s S ß ẞ&lt;br /&gt;
	key &amp;lt;AC09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ r, R, registered, trademark ], overlay1 = &amp;lt;RGHT&amp;gt; }; // r R ® ™&lt;br /&gt;
	key &amp;lt;AC10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ n, N, dead_tilde ], overlay1 = &amp;lt;ESC&amp;gt; }; // n N ~ escape&lt;br /&gt;
	key &amp;lt;AC11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ m, M, dead_macron, masculine ], overlay1 = &amp;lt;I70&amp;gt; }; // m M ¯ º&lt;br /&gt;
        key &amp;lt;BKSL&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_R, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;LSGT&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ecircumflex, Ecircumflex, backslash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ê Ê /&lt;br /&gt;
	key &amp;lt;AB01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ z, Z, slash, VoidSymbol ], overlay1 = &amp;lt;FK15&amp;gt; }; // z Z \&lt;br /&gt;
	key &amp;lt;AB02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ y, Y, braceleft, leftsinglequotemark ], overlay1 = &amp;lt;F35&amp;gt; }; // y Y { ‘&lt;br /&gt;
	key &amp;lt;AB03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ x, X, braceright, rightsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // x X } ’&lt;br /&gt;
	key &amp;lt;AB04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ period, colon, ellipsis, periodcentered ], overlay1 = &amp;lt;I70&amp;gt; }; // . : … ·&lt;br /&gt;
	key &amp;lt;AB05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ k, K, asciitilde, dead_tilde ], overlay1 = &amp;lt;I70&amp;gt; }; // k K ~&lt;br /&gt;
        key &amp;lt;AB06&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, question, questiondown, dead_hook ],           // ’ ? ¿ ̉&lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ rightsinglequotemark, question, questiondown, dead_hook ], // &#039; ? ¿ ̉&lt;br /&gt;
            overlay1 = &amp;lt;HOME&amp;gt;                                                                         // home&lt;br /&gt;
        }; &lt;br /&gt;
	key &amp;lt;AB07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ q, Q, dead_abovering, dead_belowdot ], overlay1 = &amp;lt;PGDN&amp;gt; }; // q Q ˚ ̣pgdn&lt;br /&gt;
	key &amp;lt;AB08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ g, G, UFDD2 ], overlay1 = &amp;lt;PGUP&amp;gt; }; // g G µ pgup&lt;br /&gt;
	key &amp;lt;AB09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ h, H, dagger, doubledagger ], overlay1 = &amp;lt;END&amp;gt; }; // h H † ‡&lt;br /&gt;
	key &amp;lt;AB10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ f, F, dead_ogonek, ordfeminine ], overlay1 = &amp;lt;I25&amp;gt; }; // f F ˛ ª&lt;br /&gt;
	key &amp;lt;RTSH&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ], overlay1 = &amp;lt;I70&amp;gt; }; // ç Ç ¸ ,&lt;br /&gt;
        key &amp;lt;SPCE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ space, space, nobreakspace, U202F ], overlay1 = &amp;lt;I7F&amp;gt; }; // spaces underscore&lt;br /&gt;
&lt;br /&gt;
        // Unused keys mapped to ctrl+letter actions&lt;br /&gt;
        key &amp;lt;I6C&amp;gt; { [ r ] };&lt;br /&gt;
        key &amp;lt;I6D&amp;gt; { [ f ] };&lt;br /&gt;
        key &amp;lt;I6E&amp;gt; { [ s ] };&lt;br /&gt;
        key &amp;lt;I6F&amp;gt; { [ Tab ] };&lt;br /&gt;
        key &amp;lt;I70&amp;gt; { [ VoidSymbol ] };&lt;br /&gt;
        key &amp;lt;I71&amp;gt; { [ p ] };&lt;br /&gt;
        key &amp;lt;I72&amp;gt; { [ n ] };&lt;br /&gt;
        key &amp;lt;I73&amp;gt; { [ v ] };&lt;br /&gt;
        key &amp;lt;I74&amp;gt; { [ z ] };&lt;br /&gt;
        key &amp;lt;I75&amp;gt; { [ y ] };&lt;br /&gt;
        key &amp;lt;I76&amp;gt; { [ space ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // For some reason there are SOMETIMES (not always!) errors with this code:&lt;br /&gt;
        //    key &amp;lt;I7A&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;I7B&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;I7C&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;I7D&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;I7E&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // However passing the action in the Â«Â interpretÂ Â» section for an unsused symbol seems to work&lt;br /&gt;
        key &amp;lt;I60&amp;gt; { [ F24 ] };      // ctrl-R&lt;br /&gt;
        key &amp;lt;I61&amp;gt; { [ F25 ] };      // ctrl-F&lt;br /&gt;
        //key &amp;lt;I77&amp;gt; {  actions[group1] = [ Redirect(keycode=&amp;lt;I6C&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I77&amp;gt; { [ INS ],  actions[group1] = [ Redirect(keycode=&amp;lt;INS&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I78&amp;gt; { [ F29 ] };      // ctrl-right&lt;br /&gt;
        key &amp;lt;I79&amp;gt; { [ F30 ] };      // ctrl+Tab&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        //    key &amp;lt;I79&amp;gt; { [ Tab ], actions = [ setMods(modifiers=Mod1) ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;I7A&amp;gt; { [ F31 ] };      // ctrl-p&lt;br /&gt;
        key &amp;lt;I7B&amp;gt; { [ F32 ] };      // ctrl-n&lt;br /&gt;
        key &amp;lt;I7C&amp;gt; { [ F33 ] };      // ctrl-v&lt;br /&gt;
        key &amp;lt;I7D&amp;gt; { [ F34 ] };      // ctrl-z&lt;br /&gt;
        key &amp;lt;I7E&amp;gt; { [ F35 ] };      // alt-y&lt;br /&gt;
        key &amp;lt;I7F&amp;gt; { [ underscore ] };      // _&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Using &amp;lt; 127 keycodes also works&lt;br /&gt;
        key &amp;lt;FK13&amp;gt; { actions = [ LatchMods(modifiers=Control) ] };        // dead ctrl&lt;br /&gt;
        key &amp;lt;FK14&amp;gt; { actions = [ LatchMods(modifiers=Shift) ] };          // dead shift&lt;br /&gt;
        key &amp;lt;FK15&amp;gt; { actions = [ LatchMods(modifiers=Mod1) ] };           // dead alt&lt;br /&gt;
        key &amp;lt;FK16&amp;gt; { actions = [ LatchMods(modifiers=AltGr) ] };          // dead altgr&lt;br /&gt;
        key &amp;lt;FK17&amp;gt; { [ Multi_key ] };                                     // multi_key&lt;br /&gt;
        //    key &amp;lt;FK13&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;FK14&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;FK15&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;FK16&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;FK17&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
        // See also the bug thread here : https://bugs.freedesktop.org/show_bug.cgi?id=12401&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Transforme CAPS en lock de couche alternative «déplacement/édition», et garde le caps-lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour échanger Shift et Caps_Lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; {  [    Caps_Lock    ] };&lt;br /&gt;
&lt;br /&gt;
        // Combinaison des 2 : attention, requiert que les LFSH et CAPS dans les définitions de la touche &amp;lt;AC01&amp;gt; soient aussi échangées dans la partie principale&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
&lt;br /&gt;
        // shift + lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer CAPS en un AltGr gauche, en gardant le lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ ISO_Level3_Shift, Caps_Lock ], actions = [ SetMods(modifiers=LevelThree), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer LWIN en un AltGr gauche&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour mettre un Compose sur RWIN&lt;br /&gt;
        //key &amp;lt;RWIN&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        // key &amp;lt;MENU&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        //key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = [ SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;RCTL&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour que LWIN permette de changer de groupe&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
&lt;br /&gt;
        // Echange CTRL et Alt Gauches. Et puisque LWIN est réaffectée, garde un modificateur META en niveau 3 et 4 (AltGr)&lt;br /&gt;
        // Note: Activer cette option fonctionne mieux lorsque que l&#039;on échange aussi les raccourcis du style Alt+Tabâ€¦&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; {        [ Control_L ], actions = [ SetMods(modifiers=Control) ]       };&lt;br /&gt;
        //    key &amp;lt;LCTL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [       Alt_L,  Alt_L,  Meta_L, Meta_L         ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ]       };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        key &amp;lt;LALT&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; { type = &amp;quot;ONE_LEVEL&amp;quot;, [ VoidSymbol ], actions = [ LockControls(controls=Overlay1) ] };&lt;br /&gt;
            &lt;br /&gt;
            key &amp;lt;LFSH&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
            key &amp;lt;LWIN&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [ Alt_L, Alt_L, Meta_L, Meta_L ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ] };&lt;br /&gt;
&lt;br /&gt;
            // Make Alt+Tab still work in the overlay !&lt;br /&gt;
        //key  &amp;lt;TAB&amp;gt; {&lt;br /&gt;
        //    // would need an appropriate type here [ Tab,  ISO_Left_Tab    ],&lt;br /&gt;
        //    overlay1 = &amp;lt;F30&amp;gt;&lt;br /&gt;
        //};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;level3(ralt_switch)&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_geometry { include &amp;quot;pc(pc105)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13314</id>
		<title>Utilisateur:Legrostdg</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13314"/>
		<updated>2009-03-25T23:43:01Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : /* Keymap « de base » */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La [[Utilisateur:Nbrodu|variante proposée par Nbrodu]] est très utile mais étant plutôt adepte de vim, je n&#039;utilisais pas beaucoup les raccourcis en Ctrl+… En revanche return, delete, backspace et escape avaient selon moi besoin d&#039;être plus accessibles. J&#039;en ai profité pour mettre les touches de direction &amp;quot;alla vim&amp;quot; et ajuster les touches début, fin, pgup et pgdn de manière plus homogène.&lt;br /&gt;
&lt;br /&gt;
J&#039;ai également rajouté des touches dead-modificateur (plus parce que j&#039;étais content d&#039;avoir trouvé comment faire qu&#039;autre chose).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Keymap « de base »===&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;w plus proche&#039;&#039;&#039; (alla bépow [[Utilisateur:Kaze/Bépo-int|Explications ici]]):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Finalement le bépow ne me plaît pas tellement:&lt;br /&gt;
&amp;quot;w&amp;quot; s&#039;enchaîne souvent avec un &amp;quot;o&amp;quot; ou un &amp;quot;e&amp;quot; en anglais… À revoir&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Haha! J&#039;ai trouvé une parade :) En échangeant &amp;quot;w&amp;quot; et &amp;quot;&#039;/?&amp;quot; ça devrait être pas mal. Une nouvelle variante: le &amp;quot;BÉPO?&amp;quot; :-)&lt;br /&gt;
&lt;br /&gt;
Les inconvénients:&lt;br /&gt;
**c&#039;est vrai que è et à ça manque un peu… Mais bon c&#039;était pareil avec le bépow :)&lt;br /&gt;
&lt;br /&gt;
Les avantages de cette variante:&lt;br /&gt;
**le w est bien accessible&lt;br /&gt;
**&amp;quot;w&amp;quot;-&amp;quot;h&amp;quot; s&#039;enchaîne bien :) &lt;br /&gt;
**toute la ponctuation dans le même coin :)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&amp;quot;[&amp;quot;-&amp;quot;]&amp;quot; dans la même rangée que &amp;quot;{&amp;quot;-&amp;quot;}&amp;quot; et &amp;quot;&amp;lt;&amp;quot;-&amp;quot;&amp;gt;&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Je trouvais ça trop pratique. Les parenthèses en altgr+&#039;é&#039; et altgr+&#039;p&#039; ce serait selon moi royal, mais c&#039;est vrai que le &#039;´&#039; est bien sur le é… Je n&#039;ai pas encore trouvé de solution idéale.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;espace insécable en altgr+space&#039;&#039;&#039; et &#039;&#039;&#039;espace fine insécable en altgr+maj+space&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
space et maj+space donnent une espace classique, je trouvais la combinaison &amp;quot;maj+space = espace&amp;quot; trop dangereuse pour la programmation.&lt;br /&gt;
&lt;br /&gt;
Pour l&#039;instant &#039;&#039;&#039;underscore est en fn+space&#039;&#039;&#039;. Ce n&#039;est pas super logique (ce n&#039;est pas du « déplacement/édition ») mais bon… la couche « déplacement/édition » est aussi accessible que la couche altgr et la laisser quasiment vide serait un peu du gaspillage. Le mieux serait peut-être de caler le &#039;_&#039; ailleurs (mais où ? :-)). Ou alors utiliser un peu plus cette couche fn -&amp;gt; :-)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Ctrl droit et Compose inversés&#039;&#039;&#039;: les touches Ctrl sont tout à fait inaccessibles sans lever la main. Un &amp;quot;dead_Compose&amp;quot; est accessible en Fn+&#039;,&#039;.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Maj et ç inversés&#039;&#039;&#039; pour augmenter l&#039;homogénéité avec l&#039;autre maj (cela rend aussi la touche plus accessible à mon avis).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
  ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
  │ # ¶│ 1 „│ 2 “│ 3 ”│ 4 ≤│ 5 ≥│ 6  ║ 7 ¬│ 8 ¼│ 9 ½│ 0 ¾│ ° ′│ ℝ ″║         ║&lt;br /&gt;
  │ $ –│ &amp;quot; —│ « &amp;lt;│ » &amp;gt;│ ( →│ ) ⇒│ @ ^║ + ±│ - −│ / ÷│ * ×│ = ≠│ % ‰║ &amp;lt;--     ║&lt;br /&gt;
  ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
  ║  |&amp;lt;-  ║ B ¦│ É ˝│ P §│ O Œ│ W  ║ !  │ V  │ D Ð│ L  │ J Ĳ│ ˇ Ə│ ˙  ║   |  ║&lt;br /&gt;
  ║  -&amp;gt;|  ║ b |│ é ´│ p &amp;amp;│ o œ│ w  ║ ` ¡│ v ˇ│ d ð│ l /│ j ĳ│ ^ ə│ ¨ ˘║ &amp;lt;-&#039;  ║&lt;br /&gt;
  ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
  ║        ║ A Æ│ U  │ I  │ E ¤│ ;  ║ C ſ│ T Þ│ S ß│ R  │ N  │ M º│    ║     ║&lt;br /&gt;
  ║ Maj. ⇑ ║ a æ│ u [│ i ]│ e €│ , &#039;║ c ©│ t þ│ s ß│ r ®│ n ˜│ m ¯│Maj.║     ║&lt;br /&gt;
  ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
  ║ «»’  ║ Ê  │ Z  │ Y ‘│ X ’│ : ·│ K  ║ ?  │ Q  │ G  │ H ‡│ F ª║   Ç ,      ║&lt;br /&gt;
  ║ &amp;lt;&amp;gt;&#039;  ║ ê /│ z \│ y {│ x }│ . …│ k ~║ ’ ¿│ q °│ g µ│ h †│ f ˛║   ç ¸      ║&lt;br /&gt;
  ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
  ║       ║      ║     ║ Espace   Fine Insécable  ║     ║       ║     ║      ║&lt;br /&gt;
  ║ Ctrl  ║ Alt  ║ Fn ⇄║ Espace     Insécable     ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
  ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Fn « déplacement/édition » (et underscore)===&lt;br /&gt;
&lt;br /&gt;
* ←  ↓  ↑  →  sous les doigts à droite avec les positions usuelles sur vim.&lt;br /&gt;
*&amp;quot;deb&amp;quot;, &amp;quot;pgdn&amp;quot;, &amp;quot;pgup&amp;quot; et &amp;quot;fin&amp;quot; accessibles facilement (on notera l&#039;homogégéité avec les flèches :)).&lt;br /&gt;
*&amp;quot;esc&amp;quot;, &amp;quot;del&amp;quot;, &amp;quot;bksp&amp;quot; et &amp;quot;entr&amp;quot; sous les doigts de la main gauche: trop bien. :)&lt;br /&gt;
*maj+insert (équivalent du clic scroll) en fn+p (p comme paste (en vim) ou comme prout (dans la vie de tous les jours))&lt;br /&gt;
*ctrl+p et ctrl+n (pour &amp;quot;précédent&amp;quot; et &amp;quot;suivant&amp;quot; dans plein de programmes) en haut des flèches haut et bas (peut-être pas top à cause du &amp;quot;d&amp;quot;: supprimer en vim, du coup, ils sont aussi sur les guillemets).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │    │    │ctl+│ctl+│    │    │    ║    │    │    │    │    │    ║         ║&lt;br /&gt;
 │    │    │ p  │ n  │    │    │    ║    │    │    │    │    │    ║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║dead│dead│maj+│dead│    ║    │ctl+│ctl+│    │    │    │    ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ctrl│ maj│ ins│altg│    ║    │ p  │ n  │    │    │    │    ║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║    │    │    │    │Com-║    │    │    │    │    │    │    ║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ esc│ del│bksp│entr│pose│ ←  │ ↓  │ ↑  | →  │ esc│    │Maj ║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║dead│    │    │    │    │    ║    │    │    │    │    ║            ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║ alt│    │    │    │    │    ║ deb│pgdn│pgup│ fin│    ║            ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║                          ║     ║       ║     ║      ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║            _             ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Des idées ?===&lt;br /&gt;
Si vous avez des idées pour améliorer cette super couche « déplacement/édition » rajoutez-les ici !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon fichier .xkb===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
xkb_keymap        {&lt;br /&gt;
&lt;br /&gt;
xkb_keycodes      { include &amp;quot;xfree86+aliases(azerty)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
xkb_types         {&lt;br /&gt;
    include &amp;quot;complete&amp;quot;&lt;br /&gt;
    type &amp;quot;ALTGR_TWO&amp;quot; {&lt;br /&gt;
       modifiers = LevelThree;&lt;br /&gt;
       map[None] = Level1;&lt;br /&gt;
       map[LevelThree] = Level2;&lt;br /&gt;
       level_name[Level1] = &amp;quot;Base&amp;quot;;&lt;br /&gt;
       level_name[Level2] = &amp;quot;AltGr&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_compatibility { include &amp;quot;complete&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        indicator &amp;quot;Scroll Lock&amp;quot; { controls = Overlay1; allowExplicit = True; drivesKeyboard = True; };&lt;br /&gt;
        &lt;br /&gt;
        interpret F24 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Control); // ctrl-r&lt;br /&gt;
        };&lt;br /&gt;
        interpret F25 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6D&amp;gt;, modifiers=Mod1); // alt-f&lt;br /&gt;
        };&lt;br /&gt;
        interpret F26 {&lt;br /&gt;
            action = LockControls(controls=Overlay1);&lt;br /&gt;
        };&lt;br /&gt;
        interpret F27 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6E&amp;gt;, modifiers=Control); // ctrl-s&lt;br /&gt;
        };&lt;br /&gt;
        interpret F28 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Shift); // insert-shift&lt;br /&gt;
        };&lt;br /&gt;
        interpret F29 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;RGHT&amp;gt;, modifiers=Control); // ctrl-â†’&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
        interpret F30 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6F&amp;gt;, modifiers=Control); // ctrl-Tab&lt;br /&gt;
        };&lt;br /&gt;
        interpret F31 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I71&amp;gt;, modifiers=Control); // ctrl-p&lt;br /&gt;
        };&lt;br /&gt;
        interpret F32 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I72&amp;gt;, modifiers=Control); // ctrl-n&lt;br /&gt;
        };&lt;br /&gt;
        interpret F33 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;INS&amp;gt;, modifiers=Shift); // ctrl-v&lt;br /&gt;
        };&lt;br /&gt;
        interpret F34 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I74&amp;gt;, modifiers=Control); // ctrl-z&lt;br /&gt;
        };&lt;br /&gt;
        interpret F35 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I75&amp;gt;, modifiers=Mod1); // alt-y&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
partial alphanumeric_keys&lt;br /&gt;
xkb_symbols &amp;quot;dvorak&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	name[Group1]= &amp;quot;France - Bepo, ergonomic, Dvorak way (v1.0rc2)&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;pc(pc105)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;TLDE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dollar, numbersign, endash, paragraph ], overlay1 = &amp;lt;I70&amp;gt; }; // $ # – ¶&lt;br /&gt;
	key &amp;lt;AE01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ quotedbl, 1, emdash, doublelowquotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // &amp;quot; 1 — „&lt;br /&gt;
	key &amp;lt;AE02&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotleft, 2, less, leftdoublequotemark ], // « 2 &amp;lt; “&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ less, 2, guillemotleft, leftdoublequotemark ], // &amp;lt; 2 « “&lt;br /&gt;
                     overlay1 = &amp;lt;I7A&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE03&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotright, 3, greater, rightdoublequotemark ], // » 3 &amp;gt; ”&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ greater, 3, guillemotright, rightdoublequotemark ], // &amp;gt; 3 » ”&lt;br /&gt;
                     overlay1 = &amp;lt;I7B&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenleft, 4, U2192, lessthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ( 4 → &lt;br /&gt;
	key &amp;lt;AE05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenright, 5, U21D2, greaterthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ) 5 ⇒ &lt;br /&gt;
	key &amp;lt;AE06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ at, 6, asciicircum ], overlay1 = &amp;lt;I70&amp;gt; }; // @ 6 ^&lt;br /&gt;
	key &amp;lt;AE07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ plus, 7, plusminus, notsign ], overlay1 = &amp;lt;I70&amp;gt; }; // + 7 ± ¬&lt;br /&gt;
	key &amp;lt;AE08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ minus, 8, U2212, onequarter ], overlay1 = &amp;lt;I70&amp;gt; }; // - 8 − ¼&lt;br /&gt;
	key &amp;lt;AE09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ slash, 9, division, onehalf ], overlay1 = &amp;lt;I70&amp;gt; }; // / 9 ÷ ½&lt;br /&gt;
	key &amp;lt;AE10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asterisk, 0, multiply, threequarters ], overlay1 = &amp;lt;I70&amp;gt; }; // * 0 × ¾&lt;br /&gt;
	key &amp;lt;AE11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ equal, degree, notequal, minutes ], overlay1 = &amp;lt;I70&amp;gt; }; // = ° ≠&lt;br /&gt;
	key &amp;lt;AE12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ percent, grave, U2030, seconds ], overlay1 = &amp;lt;I70&amp;gt; }; // % ` ‰&lt;br /&gt;
	key &amp;lt;AD01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ b, B, bar, brokenbar ], overlay1 = &amp;lt;FK13&amp;gt; }; // b B | ¦ dead_ctrl&lt;br /&gt;
	key &amp;lt;AD02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, dead_acute, dead_doubleacute ], overlay1 = &amp;lt;FK14&amp;gt; }; // é É ´ ˝ dead_shift&lt;br /&gt;
	key &amp;lt;AD03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, ampersand, section ], overlay1 = &amp;lt;I77&amp;gt; }; // p P &amp;amp; § insert-shift&lt;br /&gt;
	key &amp;lt;AD04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ o, O, oe, OE ], overlay1 = &amp;lt;FK16&amp;gt; }; // o O œ Œ dead_altgr&lt;br /&gt;
	//key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ egrave, Egrave, dead_grave, grave ], }; // è È ` `&lt;br /&gt;
	key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ w, W, dead_breve ], overlay1 = &amp;lt;FK17&amp;gt; }; // w W ˘ multi_key&lt;br /&gt;
	key &amp;lt;AD06&amp;gt; { type[group1] = &amp;quot;THREE_LEVEL&amp;quot;, [ dead_grave, exclam, exclamdown ], overlay1 = &amp;lt;I70&amp;gt; }; // ` ! ¡&lt;br /&gt;
	key &amp;lt;AD07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ v, V, dead_caron ], overlay1 = &amp;lt;I70&amp;gt; }; // v V ˇ&lt;br /&gt;
	key &amp;lt;AD08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ d, D, eth, ETH ], overlay1 = &amp;lt;I7A&amp;gt;}; // d D ð Ð&lt;br /&gt;
	key &amp;lt;AD09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ l, L, UFDD0 ], overlay1 = &amp;lt;I7B&amp;gt;}; // l L /&lt;br /&gt;
	key &amp;lt;AD10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ j, J, U0133, U0132 ], overlay1 = &amp;lt;I70&amp;gt;}; // j J ĳ Ĳ&lt;br /&gt;
        key &amp;lt;AD11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_circumflex, dead_caron, schwa, SCHWA ], overlay1 = &amp;lt;I70&amp;gt; }; // ^ ˇ ə Ə&lt;br /&gt;
        key &amp;lt;AD12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_diaeresis, dead_abovedot, dead_breve, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ¨ ˙ ˘&lt;br /&gt;
	key &amp;lt;AC01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ a, A, ae, AE ], overlay1 = &amp;lt;ESC&amp;gt; }; // a A æ Æ escape&lt;br /&gt;
        key &amp;lt;AC02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ u, U, bracketleft ], overlay1 = &amp;lt;DELE&amp;gt; }; // u U [ delete&lt;br /&gt;
	key &amp;lt;AC03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ i, I, bracketright ], overlay1 = &amp;lt;BKSP&amp;gt; }; // i I ] backspace&lt;br /&gt;
	key &amp;lt;AC04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ e, E, EuroSign, UFDD1 ], overlay1 = &amp;lt;RTRN&amp;gt; }; // e E € ¤ return&lt;br /&gt;
        key &amp;lt;AC05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, rightsinglequotemark, dead_horn  ], // , ; &#039; &lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, apostrophe, dead_horn  ],           // , ; ’&lt;br /&gt;
            overlay1 = &amp;lt;INS&amp;gt;                                                                    // insert&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AC06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ c, C, copyright, U017F ], overlay1 = &amp;lt;LEFT&amp;gt; }; // c C © ſ&lt;br /&gt;
	key &amp;lt;AC07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ t, T, thorn, THORN ], overlay1 = &amp;lt;DOWN&amp;gt; }; // t T þ Þ&lt;br /&gt;
	key &amp;lt;AC08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ s, S, ssharp, U1E9E ], overlay1 = &amp;lt;UP&amp;gt; }; // s S ß ẞ&lt;br /&gt;
	key &amp;lt;AC09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ r, R, registered, trademark ], overlay1 = &amp;lt;RGHT&amp;gt; }; // r R ® ™&lt;br /&gt;
	key &amp;lt;AC10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ n, N, dead_tilde ], overlay1 = &amp;lt;ESC&amp;gt; }; // n N ~ escape&lt;br /&gt;
	key &amp;lt;AC11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ m, M, dead_macron, masculine ], overlay1 = &amp;lt;I70&amp;gt; }; // m M ¯ º&lt;br /&gt;
        key &amp;lt;BKSL&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_R, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;LSGT&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ecircumflex, Ecircumflex, backslash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ê Ê /&lt;br /&gt;
	key &amp;lt;AB01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ z, Z, slash, VoidSymbol ], overlay1 = &amp;lt;FK15&amp;gt; }; // z Z \&lt;br /&gt;
	key &amp;lt;AB02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ y, Y, braceleft, leftsinglequotemark ], overlay1 = &amp;lt;F35&amp;gt; }; // y Y { ‘&lt;br /&gt;
	key &amp;lt;AB03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ x, X, braceright, rightsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // x X } ’&lt;br /&gt;
	key &amp;lt;AB04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ period, colon, ellipsis, periodcentered ], overlay1 = &amp;lt;I70&amp;gt; }; // . : … ·&lt;br /&gt;
	key &amp;lt;AB05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ k, K, asciitilde, dead_tilde ], overlay1 = &amp;lt;I70&amp;gt; }; // k K ~&lt;br /&gt;
        key &amp;lt;AB06&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, question, questiondown, dead_hook ],           // ’ ? ¿ ̉&lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ rightsinglequotemark, question, questiondown, dead_hook ], // &#039; ? ¿ ̉&lt;br /&gt;
            overlay1 = &amp;lt;HOME&amp;gt;                                                                         // home&lt;br /&gt;
        }; &lt;br /&gt;
	key &amp;lt;AB07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ q, Q, dead_abovering, dead_belowdot ], overlay1 = &amp;lt;PGDN&amp;gt; }; // q Q ˚ ̣pgdn&lt;br /&gt;
	key &amp;lt;AB08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ g, G, UFDD2 ], overlay1 = &amp;lt;PGUP&amp;gt; }; // g G µ pgup&lt;br /&gt;
	key &amp;lt;AB09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ h, H, dagger, doubledagger ], overlay1 = &amp;lt;END&amp;gt; }; // h H † ‡&lt;br /&gt;
	key &amp;lt;AB10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ f, F, dead_ogonek, ordfeminine ], overlay1 = &amp;lt;I25&amp;gt; }; // f F ˛ ª&lt;br /&gt;
	key &amp;lt;RTSH&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ], overlay1 = &amp;lt;I70&amp;gt; }; // ç Ç ¸ ,&lt;br /&gt;
        key &amp;lt;SPCE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ space, space, nobreakspace, U202F ], overlay1 = &amp;lt;I7F&amp;gt; }; // spaces underscore&lt;br /&gt;
&lt;br /&gt;
        // Unused keys mapped to ctrl+letter actions&lt;br /&gt;
        key &amp;lt;I6C&amp;gt; { [ r ] };&lt;br /&gt;
        key &amp;lt;I6D&amp;gt; { [ f ] };&lt;br /&gt;
        key &amp;lt;I6E&amp;gt; { [ s ] };&lt;br /&gt;
        key &amp;lt;I6F&amp;gt; { [ Tab ] };&lt;br /&gt;
        key &amp;lt;I70&amp;gt; { [ VoidSymbol ] };&lt;br /&gt;
        key &amp;lt;I71&amp;gt; { [ p ] };&lt;br /&gt;
        key &amp;lt;I72&amp;gt; { [ n ] };&lt;br /&gt;
        key &amp;lt;I73&amp;gt; { [ v ] };&lt;br /&gt;
        key &amp;lt;I74&amp;gt; { [ z ] };&lt;br /&gt;
        key &amp;lt;I75&amp;gt; { [ y ] };&lt;br /&gt;
        key &amp;lt;I76&amp;gt; { [ space ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // For some reason there are SOMETIMES (not always!) errors with this code:&lt;br /&gt;
        //    key &amp;lt;I7A&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;I7B&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;I7C&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;I7D&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;I7E&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // However passing the action in the Â«Â interpretÂ Â» section for an unsused symbol seems to work&lt;br /&gt;
        key &amp;lt;I60&amp;gt; { [ F24 ] };      // ctrl-R&lt;br /&gt;
        key &amp;lt;I61&amp;gt; { [ F25 ] };      // ctrl-F&lt;br /&gt;
        //key &amp;lt;I77&amp;gt; {  actions[group1] = [ Redirect(keycode=&amp;lt;I6C&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I77&amp;gt; { [ INS ],  actions[group1] = [ Redirect(keycode=&amp;lt;INS&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I78&amp;gt; { [ F29 ] };      // ctrl-right&lt;br /&gt;
        key &amp;lt;I79&amp;gt; { [ F30 ] };      // ctrl+Tab&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        //    key &amp;lt;I79&amp;gt; { [ Tab ], actions = [ setMods(modifiers=Mod1) ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;I7A&amp;gt; { [ F31 ] };      // ctrl-p&lt;br /&gt;
        key &amp;lt;I7B&amp;gt; { [ F32 ] };      // ctrl-n&lt;br /&gt;
        key &amp;lt;I7C&amp;gt; { [ F33 ] };      // ctrl-v&lt;br /&gt;
        key &amp;lt;I7D&amp;gt; { [ F34 ] };      // ctrl-z&lt;br /&gt;
        key &amp;lt;I7E&amp;gt; { [ F35 ] };      // alt-y&lt;br /&gt;
        key &amp;lt;I7F&amp;gt; { [ underscore ] };      // _&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Using &amp;lt; 127 keycodes also works&lt;br /&gt;
        key &amp;lt;FK13&amp;gt; { actions = [ LatchMods(modifiers=Control) ] };        // dead ctrl&lt;br /&gt;
        key &amp;lt;FK14&amp;gt; { actions = [ LatchMods(modifiers=Shift) ] };          // dead shift&lt;br /&gt;
        key &amp;lt;FK15&amp;gt; { actions = [ LatchMods(modifiers=Mod1) ] };           // dead alt&lt;br /&gt;
        key &amp;lt;FK16&amp;gt; { actions = [ LatchMods(modifiers=AltGr) ] };          // dead altgr&lt;br /&gt;
        key &amp;lt;FK17&amp;gt; { [ Multi_key ] };                                     // multi_key&lt;br /&gt;
        //    key &amp;lt;FK13&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;FK14&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;FK15&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;FK16&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;FK17&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
        // See also the bug thread here : https://bugs.freedesktop.org/show_bug.cgi?id=12401&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Transforme CAPS en lock de couche alternative «déplacement/édition», et garde le caps-lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour échanger Shift et Caps_Lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; {  [    Caps_Lock    ] };&lt;br /&gt;
&lt;br /&gt;
        // Combinaison des 2 : attention, requiert que les LFSH et CAPS dans les définitions de la touche &amp;lt;AC01&amp;gt; soient aussi échangées dans la partie principale&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
&lt;br /&gt;
        // shift + lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer CAPS en un AltGr gauche, en gardant le lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ ISO_Level3_Shift, Caps_Lock ], actions = [ SetMods(modifiers=LevelThree), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer LWIN en un AltGr gauche&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour mettre un Compose sur RWIN&lt;br /&gt;
        //key &amp;lt;RWIN&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        // key &amp;lt;MENU&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        //key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = [ SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;RCTL&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour que LWIN permette de changer de groupe&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
&lt;br /&gt;
        // Echange CTRL et Alt Gauches. Et puisque LWIN est réaffectée, garde un modificateur META en niveau 3 et 4 (AltGr)&lt;br /&gt;
        // Note: Activer cette option fonctionne mieux lorsque que l&#039;on échange aussi les raccourcis du style Alt+Tabâ€¦&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; {        [ Control_L ], actions = [ SetMods(modifiers=Control) ]       };&lt;br /&gt;
        //    key &amp;lt;LCTL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [       Alt_L,  Alt_L,  Meta_L, Meta_L         ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ]       };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        key &amp;lt;LALT&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; { type = &amp;quot;ONE_LEVEL&amp;quot;, [ VoidSymbol ], actions = [ LockControls(controls=Overlay1) ] };&lt;br /&gt;
            &lt;br /&gt;
            key &amp;lt;LFSH&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
            key &amp;lt;LWIN&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [ Alt_L, Alt_L, Meta_L, Meta_L ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ] };&lt;br /&gt;
&lt;br /&gt;
            // Make Alt+Tab still work in the overlay !&lt;br /&gt;
        //key  &amp;lt;TAB&amp;gt; {&lt;br /&gt;
        //    // would need an appropriate type here [ Tab,  ISO_Left_Tab    ],&lt;br /&gt;
        //    overlay1 = &amp;lt;F30&amp;gt;&lt;br /&gt;
        //};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;level3(ralt_switch)&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_geometry { include &amp;quot;pc(pc105)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13313</id>
		<title>Utilisateur:Legrostdg</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13313"/>
		<updated>2009-03-25T23:31:32Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La [[Utilisateur:Nbrodu|variante proposée par Nbrodu]] est très utile mais étant plutôt adepte de vim, je n&#039;utilisais pas beaucoup les raccourcis en Ctrl+… En revanche return, delete, backspace et escape avaient selon moi besoin d&#039;être plus accessibles. J&#039;en ai profité pour mettre les touches de direction &amp;quot;alla vim&amp;quot; et ajuster les touches début, fin, pgup et pgdn de manière plus homogène.&lt;br /&gt;
&lt;br /&gt;
J&#039;ai également rajouté des touches dead-modificateur (plus parce que j&#039;étais content d&#039;avoir trouvé comment faire qu&#039;autre chose).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Keymap « de base »===&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;w plus proche&#039;&#039;&#039; (alla bépow [[Utilisateur:Kaze/Bépo-int|Explications ici]]):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Finalement le bépow ne me plaît pas tellement:&lt;br /&gt;
&amp;quot;w&amp;quot; s&#039;enchaîne souvent avec un &amp;quot;o&amp;quot; ou un &amp;quot;e&amp;quot; en anglais… À revoir&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Haha! J&#039;ai trouvé une parade :) En échangeant &amp;quot;w&amp;quot; et &amp;quot;&#039;/?&amp;quot; ça devrait être pas mal. Une nouvelle variante: le &amp;quot;BÉPO?&amp;quot; :-)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&amp;quot;[&amp;quot;-&amp;quot;]&amp;quot; dans la même rangée que &amp;quot;{&amp;quot;-&amp;quot;}&amp;quot; et &amp;quot;&amp;lt;&amp;quot;-&amp;quot;&amp;gt;&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Je trouvais ça trop pratique. Les parenthèses en altgr+&#039;é&#039; et altgr+&#039;p&#039; ce serait selon moi royal, mais c&#039;est vrai que le &#039;´&#039; est bien sur le é… Je n&#039;ai pas encore trouvé de solution idéale.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;espace insécable en altgr+space&#039;&#039;&#039; et &#039;&#039;&#039;espace fine insécable en altgr+maj+space&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
space et maj+space donnent une espace classique, je trouvais la combinaison &amp;quot;maj+space = espace&amp;quot; trop dangereuse pour la programmation.&lt;br /&gt;
&lt;br /&gt;
Pour l&#039;instant &#039;&#039;&#039;underscore est en fn+space&#039;&#039;&#039;. Ce n&#039;est pas super logique (ce n&#039;est pas du « déplacement/édition ») mais bon… la couche « déplacement/édition » est aussi accessible que la couche altgr et la laisser quasiment vide serait un peu du gaspillage. Le mieux serait peut-être de caler le &#039;_&#039; ailleurs (mais où ? :-)). Ou alors utiliser un peu plus cette couche fn -&amp;gt; :-)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Ctrl droit et Compose inversés&#039;&#039;&#039;: les touches Ctrl sont tout à fait inaccessibles sans lever la main. Un &amp;quot;dead_Compose&amp;quot; est accessible en Fn+&#039;,&#039;.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Maj et ç inversés&#039;&#039;&#039; pour augmenter l&#039;homogénéité avec l&#039;autre maj (cela rend aussi la touche plus accessible à mon avis).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
  ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
  │ # ¶│ 1 „│ 2 “│ 3 ”│ 4 ≤│ 5 ≥│ 6  ║ 7 ¬│ 8 ¼│ 9 ½│ 0 ¾│ ° ′│ ℝ ″║         ║&lt;br /&gt;
  │ $ –│ &amp;quot; —│ « &amp;lt;│ » &amp;gt;│ ( →│ ) ⇒│ @ ^║ + ±│ - −│ / ÷│ * ×│ = ≠│ % ‰║ &amp;lt;--     ║&lt;br /&gt;
  ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
  ║  |&amp;lt;-  ║ B ¦│ É ˝│ P §│ O Œ│ W  ║ !  │ V  │ D Ð│ L  │ J Ĳ│ ˇ Ə│ ˙  ║   |  ║&lt;br /&gt;
  ║  -&amp;gt;|  ║ b |│ é ´│ p &amp;amp;│ o œ│ w  ║ ` ¡│ v ˇ│ d ð│ l /│ j ĳ│ ^ ə│ ¨ ˘║ &amp;lt;-&#039;  ║&lt;br /&gt;
  ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
  ║        ║ A Æ│ U  │ I  │ E ¤│ ;  ║ C ſ│ T Þ│ S ß│ R  │ N  │ M º│    ║     ║&lt;br /&gt;
  ║ Maj. ⇑ ║ a æ│ u [│ i ]│ e €│ , &#039;║ c ©│ t þ│ s ß│ r ®│ n ˜│ m ¯│Maj.║     ║&lt;br /&gt;
  ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
  ║ «»’  ║ Ê  │ Z  │ Y ‘│ X ’│ : ·│ K  ║ ?  │ Q  │ G  │ H ‡│ F ª║   Ç ,      ║&lt;br /&gt;
  ║ &amp;lt;&amp;gt;&#039;  ║ ê /│ z \│ y {│ x }│ . …│ k ~║ ’ ¿│ q °│ g µ│ h †│ f ˛║   ç ¸      ║&lt;br /&gt;
  ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
  ║       ║      ║     ║ Espace   Fine Insécable  ║     ║       ║     ║      ║&lt;br /&gt;
  ║ Ctrl  ║ Alt  ║ Fn ⇄║ Espace     Insécable     ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
  ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Fn « déplacement/édition » (et underscore)===&lt;br /&gt;
&lt;br /&gt;
* ←  ↓  ↑  →  sous les doigts à droite avec les positions usuelles sur vim.&lt;br /&gt;
*&amp;quot;deb&amp;quot;, &amp;quot;pgdn&amp;quot;, &amp;quot;pgup&amp;quot; et &amp;quot;fin&amp;quot; accessibles facilement (on notera l&#039;homogégéité avec les flèches :)).&lt;br /&gt;
*&amp;quot;esc&amp;quot;, &amp;quot;del&amp;quot;, &amp;quot;bksp&amp;quot; et &amp;quot;entr&amp;quot; sous les doigts de la main gauche: trop bien. :)&lt;br /&gt;
*maj+insert (équivalent du clic scroll) en fn+p (p comme paste (en vim) ou comme prout (dans la vie de tous les jours))&lt;br /&gt;
*ctrl+p et ctrl+n (pour &amp;quot;précédent&amp;quot; et &amp;quot;suivant&amp;quot; dans plein de programmes) en haut des flèches haut et bas (peut-être pas top à cause du &amp;quot;d&amp;quot;: supprimer en vim, du coup, ils sont aussi sur les guillemets).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │    │    │ctl+│ctl+│    │    │    ║    │    │    │    │    │    ║         ║&lt;br /&gt;
 │    │    │ p  │ n  │    │    │    ║    │    │    │    │    │    ║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║dead│dead│maj+│dead│    ║    │ctl+│ctl+│    │    │    │    ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ctrl│ maj│ ins│altg│    ║    │ p  │ n  │    │    │    │    ║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║    │    │    │    │Com-║    │    │    │    │    │    │    ║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ esc│ del│bksp│entr│pose│ ←  │ ↓  │ ↑  | →  │ esc│    │Maj ║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║dead│    │    │    │    │    ║    │    │    │    │    ║            ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║ alt│    │    │    │    │    ║ deb│pgdn│pgup│ fin│    ║            ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║                          ║     ║       ║     ║      ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║            _             ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Des idées ?===&lt;br /&gt;
Si vous avez des idées pour améliorer cette super couche « déplacement/édition » rajoutez-les ici !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon fichier .xkb===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
xkb_keymap        {&lt;br /&gt;
&lt;br /&gt;
xkb_keycodes      { include &amp;quot;xfree86+aliases(azerty)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
xkb_types         {&lt;br /&gt;
    include &amp;quot;complete&amp;quot;&lt;br /&gt;
    type &amp;quot;ALTGR_TWO&amp;quot; {&lt;br /&gt;
       modifiers = LevelThree;&lt;br /&gt;
       map[None] = Level1;&lt;br /&gt;
       map[LevelThree] = Level2;&lt;br /&gt;
       level_name[Level1] = &amp;quot;Base&amp;quot;;&lt;br /&gt;
       level_name[Level2] = &amp;quot;AltGr&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_compatibility { include &amp;quot;complete&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        indicator &amp;quot;Scroll Lock&amp;quot; { controls = Overlay1; allowExplicit = True; drivesKeyboard = True; };&lt;br /&gt;
        &lt;br /&gt;
        interpret F24 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Control); // ctrl-r&lt;br /&gt;
        };&lt;br /&gt;
        interpret F25 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6D&amp;gt;, modifiers=Mod1); // alt-f&lt;br /&gt;
        };&lt;br /&gt;
        interpret F26 {&lt;br /&gt;
            action = LockControls(controls=Overlay1);&lt;br /&gt;
        };&lt;br /&gt;
        interpret F27 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6E&amp;gt;, modifiers=Control); // ctrl-s&lt;br /&gt;
        };&lt;br /&gt;
        interpret F28 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Shift); // insert-shift&lt;br /&gt;
        };&lt;br /&gt;
        interpret F29 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;RGHT&amp;gt;, modifiers=Control); // ctrl-â†’&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
        interpret F30 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6F&amp;gt;, modifiers=Control); // ctrl-Tab&lt;br /&gt;
        };&lt;br /&gt;
        interpret F31 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I71&amp;gt;, modifiers=Control); // ctrl-p&lt;br /&gt;
        };&lt;br /&gt;
        interpret F32 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I72&amp;gt;, modifiers=Control); // ctrl-n&lt;br /&gt;
        };&lt;br /&gt;
        interpret F33 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;INS&amp;gt;, modifiers=Shift); // ctrl-v&lt;br /&gt;
        };&lt;br /&gt;
        interpret F34 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I74&amp;gt;, modifiers=Control); // ctrl-z&lt;br /&gt;
        };&lt;br /&gt;
        interpret F35 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I75&amp;gt;, modifiers=Mod1); // alt-y&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
partial alphanumeric_keys&lt;br /&gt;
xkb_symbols &amp;quot;dvorak&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	name[Group1]= &amp;quot;France - Bepo, ergonomic, Dvorak way (v1.0rc2)&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;pc(pc105)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;TLDE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dollar, numbersign, endash, paragraph ], overlay1 = &amp;lt;I70&amp;gt; }; // $ # – ¶&lt;br /&gt;
	key &amp;lt;AE01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ quotedbl, 1, emdash, doublelowquotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // &amp;quot; 1 — „&lt;br /&gt;
	key &amp;lt;AE02&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotleft, 2, less, leftdoublequotemark ], // « 2 &amp;lt; “&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ less, 2, guillemotleft, leftdoublequotemark ], // &amp;lt; 2 « “&lt;br /&gt;
                     overlay1 = &amp;lt;I7A&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE03&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotright, 3, greater, rightdoublequotemark ], // » 3 &amp;gt; ”&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ greater, 3, guillemotright, rightdoublequotemark ], // &amp;gt; 3 » ”&lt;br /&gt;
                     overlay1 = &amp;lt;I7B&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenleft, 4, U2192, lessthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ( 4 → &lt;br /&gt;
	key &amp;lt;AE05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenright, 5, U21D2, greaterthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ) 5 ⇒ &lt;br /&gt;
	key &amp;lt;AE06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ at, 6, asciicircum ], overlay1 = &amp;lt;I70&amp;gt; }; // @ 6 ^&lt;br /&gt;
	key &amp;lt;AE07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ plus, 7, plusminus, notsign ], overlay1 = &amp;lt;I70&amp;gt; }; // + 7 ± ¬&lt;br /&gt;
	key &amp;lt;AE08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ minus, 8, U2212, onequarter ], overlay1 = &amp;lt;I70&amp;gt; }; // - 8 − ¼&lt;br /&gt;
	key &amp;lt;AE09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ slash, 9, division, onehalf ], overlay1 = &amp;lt;I70&amp;gt; }; // / 9 ÷ ½&lt;br /&gt;
	key &amp;lt;AE10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asterisk, 0, multiply, threequarters ], overlay1 = &amp;lt;I70&amp;gt; }; // * 0 × ¾&lt;br /&gt;
	key &amp;lt;AE11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ equal, degree, notequal, minutes ], overlay1 = &amp;lt;I70&amp;gt; }; // = ° ≠&lt;br /&gt;
	key &amp;lt;AE12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ percent, grave, U2030, seconds ], overlay1 = &amp;lt;I70&amp;gt; }; // % ` ‰&lt;br /&gt;
	key &amp;lt;AD01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ b, B, bar, brokenbar ], overlay1 = &amp;lt;FK13&amp;gt; }; // b B | ¦ dead_ctrl&lt;br /&gt;
	key &amp;lt;AD02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, dead_acute, dead_doubleacute ], overlay1 = &amp;lt;FK14&amp;gt; }; // é É ´ ˝ dead_shift&lt;br /&gt;
	key &amp;lt;AD03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, ampersand, section ], overlay1 = &amp;lt;I77&amp;gt; }; // p P &amp;amp; § insert-shift&lt;br /&gt;
	key &amp;lt;AD04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ o, O, oe, OE ], overlay1 = &amp;lt;FK16&amp;gt; }; // o O œ Œ dead_altgr&lt;br /&gt;
	//key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ egrave, Egrave, dead_grave, grave ], }; // è È ` `&lt;br /&gt;
	key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ w, W, dead_breve ], overlay1 = &amp;lt;FK17&amp;gt; }; // w W ˘ multi_key&lt;br /&gt;
	key &amp;lt;AD06&amp;gt; { type[group1] = &amp;quot;THREE_LEVEL&amp;quot;, [ dead_grave, exclam, exclamdown ], overlay1 = &amp;lt;I70&amp;gt; }; // ` ! ¡&lt;br /&gt;
	key &amp;lt;AD07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ v, V, dead_caron ], overlay1 = &amp;lt;I70&amp;gt; }; // v V ˇ&lt;br /&gt;
	key &amp;lt;AD08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ d, D, eth, ETH ], overlay1 = &amp;lt;I7A&amp;gt;}; // d D ð Ð&lt;br /&gt;
	key &amp;lt;AD09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ l, L, UFDD0 ], overlay1 = &amp;lt;I7B&amp;gt;}; // l L /&lt;br /&gt;
	key &amp;lt;AD10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ j, J, U0133, U0132 ], overlay1 = &amp;lt;I70&amp;gt;}; // j J ĳ Ĳ&lt;br /&gt;
        key &amp;lt;AD11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_circumflex, dead_caron, schwa, SCHWA ], overlay1 = &amp;lt;I70&amp;gt; }; // ^ ˇ ə Ə&lt;br /&gt;
        key &amp;lt;AD12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_diaeresis, dead_abovedot, dead_breve, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ¨ ˙ ˘&lt;br /&gt;
	key &amp;lt;AC01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ a, A, ae, AE ], overlay1 = &amp;lt;ESC&amp;gt; }; // a A æ Æ escape&lt;br /&gt;
        key &amp;lt;AC02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ u, U, bracketleft ], overlay1 = &amp;lt;DELE&amp;gt; }; // u U [ delete&lt;br /&gt;
	key &amp;lt;AC03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ i, I, bracketright ], overlay1 = &amp;lt;BKSP&amp;gt; }; // i I ] backspace&lt;br /&gt;
	key &amp;lt;AC04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ e, E, EuroSign, UFDD1 ], overlay1 = &amp;lt;RTRN&amp;gt; }; // e E € ¤ return&lt;br /&gt;
        key &amp;lt;AC05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, rightsinglequotemark, dead_horn  ], // , ; &#039; &lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, apostrophe, dead_horn  ],           // , ; ’&lt;br /&gt;
            overlay1 = &amp;lt;INS&amp;gt;                                                                    // insert&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AC06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ c, C, copyright, U017F ], overlay1 = &amp;lt;LEFT&amp;gt; }; // c C © ſ&lt;br /&gt;
	key &amp;lt;AC07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ t, T, thorn, THORN ], overlay1 = &amp;lt;DOWN&amp;gt; }; // t T þ Þ&lt;br /&gt;
	key &amp;lt;AC08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ s, S, ssharp, U1E9E ], overlay1 = &amp;lt;UP&amp;gt; }; // s S ß ẞ&lt;br /&gt;
	key &amp;lt;AC09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ r, R, registered, trademark ], overlay1 = &amp;lt;RGHT&amp;gt; }; // r R ® ™&lt;br /&gt;
	key &amp;lt;AC10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ n, N, dead_tilde ], overlay1 = &amp;lt;ESC&amp;gt; }; // n N ~ escape&lt;br /&gt;
	key &amp;lt;AC11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ m, M, dead_macron, masculine ], overlay1 = &amp;lt;I70&amp;gt; }; // m M ¯ º&lt;br /&gt;
        key &amp;lt;BKSL&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_R, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;LSGT&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ecircumflex, Ecircumflex, backslash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ê Ê /&lt;br /&gt;
	key &amp;lt;AB01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ z, Z, slash, VoidSymbol ], overlay1 = &amp;lt;FK15&amp;gt; }; // z Z \&lt;br /&gt;
	key &amp;lt;AB02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ y, Y, braceleft, leftsinglequotemark ], overlay1 = &amp;lt;F35&amp;gt; }; // y Y { ‘&lt;br /&gt;
	key &amp;lt;AB03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ x, X, braceright, rightsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // x X } ’&lt;br /&gt;
	key &amp;lt;AB04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ period, colon, ellipsis, periodcentered ], overlay1 = &amp;lt;I70&amp;gt; }; // . : … ·&lt;br /&gt;
	key &amp;lt;AB05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ k, K, asciitilde, dead_tilde ], overlay1 = &amp;lt;I70&amp;gt; }; // k K ~&lt;br /&gt;
        key &amp;lt;AB06&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, question, questiondown, dead_hook ],           // ’ ? ¿ ̉&lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ rightsinglequotemark, question, questiondown, dead_hook ], // &#039; ? ¿ ̉&lt;br /&gt;
            overlay1 = &amp;lt;HOME&amp;gt;                                                                         // home&lt;br /&gt;
        }; &lt;br /&gt;
	key &amp;lt;AB07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ q, Q, dead_abovering, dead_belowdot ], overlay1 = &amp;lt;PGDN&amp;gt; }; // q Q ˚ ̣pgdn&lt;br /&gt;
	key &amp;lt;AB08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ g, G, UFDD2 ], overlay1 = &amp;lt;PGUP&amp;gt; }; // g G µ pgup&lt;br /&gt;
	key &amp;lt;AB09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ h, H, dagger, doubledagger ], overlay1 = &amp;lt;END&amp;gt; }; // h H † ‡&lt;br /&gt;
	key &amp;lt;AB10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ f, F, dead_ogonek, ordfeminine ], overlay1 = &amp;lt;I25&amp;gt; }; // f F ˛ ª&lt;br /&gt;
	key &amp;lt;RTSH&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ], overlay1 = &amp;lt;I70&amp;gt; }; // ç Ç ¸ ,&lt;br /&gt;
        key &amp;lt;SPCE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ space, space, nobreakspace, U202F ], overlay1 = &amp;lt;I7F&amp;gt; }; // spaces underscore&lt;br /&gt;
&lt;br /&gt;
        // Unused keys mapped to ctrl+letter actions&lt;br /&gt;
        key &amp;lt;I6C&amp;gt; { [ r ] };&lt;br /&gt;
        key &amp;lt;I6D&amp;gt; { [ f ] };&lt;br /&gt;
        key &amp;lt;I6E&amp;gt; { [ s ] };&lt;br /&gt;
        key &amp;lt;I6F&amp;gt; { [ Tab ] };&lt;br /&gt;
        key &amp;lt;I70&amp;gt; { [ VoidSymbol ] };&lt;br /&gt;
        key &amp;lt;I71&amp;gt; { [ p ] };&lt;br /&gt;
        key &amp;lt;I72&amp;gt; { [ n ] };&lt;br /&gt;
        key &amp;lt;I73&amp;gt; { [ v ] };&lt;br /&gt;
        key &amp;lt;I74&amp;gt; { [ z ] };&lt;br /&gt;
        key &amp;lt;I75&amp;gt; { [ y ] };&lt;br /&gt;
        key &amp;lt;I76&amp;gt; { [ space ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // For some reason there are SOMETIMES (not always!) errors with this code:&lt;br /&gt;
        //    key &amp;lt;I7A&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;I7B&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;I7C&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;I7D&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;I7E&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // However passing the action in the Â«Â interpretÂ Â» section for an unsused symbol seems to work&lt;br /&gt;
        key &amp;lt;I60&amp;gt; { [ F24 ] };      // ctrl-R&lt;br /&gt;
        key &amp;lt;I61&amp;gt; { [ F25 ] };      // ctrl-F&lt;br /&gt;
        //key &amp;lt;I77&amp;gt; {  actions[group1] = [ Redirect(keycode=&amp;lt;I6C&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I77&amp;gt; { [ INS ],  actions[group1] = [ Redirect(keycode=&amp;lt;INS&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I78&amp;gt; { [ F29 ] };      // ctrl-right&lt;br /&gt;
        key &amp;lt;I79&amp;gt; { [ F30 ] };      // ctrl+Tab&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        //    key &amp;lt;I79&amp;gt; { [ Tab ], actions = [ setMods(modifiers=Mod1) ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;I7A&amp;gt; { [ F31 ] };      // ctrl-p&lt;br /&gt;
        key &amp;lt;I7B&amp;gt; { [ F32 ] };      // ctrl-n&lt;br /&gt;
        key &amp;lt;I7C&amp;gt; { [ F33 ] };      // ctrl-v&lt;br /&gt;
        key &amp;lt;I7D&amp;gt; { [ F34 ] };      // ctrl-z&lt;br /&gt;
        key &amp;lt;I7E&amp;gt; { [ F35 ] };      // alt-y&lt;br /&gt;
        key &amp;lt;I7F&amp;gt; { [ underscore ] };      // _&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Using &amp;lt; 127 keycodes also works&lt;br /&gt;
        key &amp;lt;FK13&amp;gt; { actions = [ LatchMods(modifiers=Control) ] };        // dead ctrl&lt;br /&gt;
        key &amp;lt;FK14&amp;gt; { actions = [ LatchMods(modifiers=Shift) ] };          // dead shift&lt;br /&gt;
        key &amp;lt;FK15&amp;gt; { actions = [ LatchMods(modifiers=Mod1) ] };           // dead alt&lt;br /&gt;
        key &amp;lt;FK16&amp;gt; { actions = [ LatchMods(modifiers=AltGr) ] };          // dead altgr&lt;br /&gt;
        key &amp;lt;FK17&amp;gt; { [ Multi_key ] };                                     // multi_key&lt;br /&gt;
        //    key &amp;lt;FK13&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;FK14&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;FK15&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;FK16&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;FK17&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
        // See also the bug thread here : https://bugs.freedesktop.org/show_bug.cgi?id=12401&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Transforme CAPS en lock de couche alternative «déplacement/édition», et garde le caps-lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour échanger Shift et Caps_Lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; {  [    Caps_Lock    ] };&lt;br /&gt;
&lt;br /&gt;
        // Combinaison des 2 : attention, requiert que les LFSH et CAPS dans les définitions de la touche &amp;lt;AC01&amp;gt; soient aussi échangées dans la partie principale&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
&lt;br /&gt;
        // shift + lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer CAPS en un AltGr gauche, en gardant le lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ ISO_Level3_Shift, Caps_Lock ], actions = [ SetMods(modifiers=LevelThree), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer LWIN en un AltGr gauche&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour mettre un Compose sur RWIN&lt;br /&gt;
        //key &amp;lt;RWIN&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        // key &amp;lt;MENU&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        //key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = [ SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;RCTL&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour que LWIN permette de changer de groupe&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
&lt;br /&gt;
        // Echange CTRL et Alt Gauches. Et puisque LWIN est réaffectée, garde un modificateur META en niveau 3 et 4 (AltGr)&lt;br /&gt;
        // Note: Activer cette option fonctionne mieux lorsque que l&#039;on échange aussi les raccourcis du style Alt+Tabâ€¦&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; {        [ Control_L ], actions = [ SetMods(modifiers=Control) ]       };&lt;br /&gt;
        //    key &amp;lt;LCTL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [       Alt_L,  Alt_L,  Meta_L, Meta_L         ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ]       };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        key &amp;lt;LALT&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; { type = &amp;quot;ONE_LEVEL&amp;quot;, [ VoidSymbol ], actions = [ LockControls(controls=Overlay1) ] };&lt;br /&gt;
            &lt;br /&gt;
            key &amp;lt;LFSH&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
            key &amp;lt;LWIN&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [ Alt_L, Alt_L, Meta_L, Meta_L ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ] };&lt;br /&gt;
&lt;br /&gt;
            // Make Alt+Tab still work in the overlay !&lt;br /&gt;
        //key  &amp;lt;TAB&amp;gt; {&lt;br /&gt;
        //    // would need an appropriate type here [ Tab,  ISO_Left_Tab    ],&lt;br /&gt;
        //    overlay1 = &amp;lt;F30&amp;gt;&lt;br /&gt;
        //};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;level3(ralt_switch)&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_geometry { include &amp;quot;pc(pc105)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13312</id>
		<title>Utilisateur:Legrostdg</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13312"/>
		<updated>2009-03-25T23:18:28Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : /* Keymap « de base » */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La [[Utilisateur:Nbrodu|variante proposée par Nbrodu]] est très utile mais étant plutôt adepte de vim, je n&#039;utilisais pas beaucoup les raccourcis en Ctrl+… En revanche return, delete, backspace et escape avaient selon moi besoin d&#039;être plus accessibles. J&#039;en ai profité pour mettre les touches de direction &amp;quot;alla vim&amp;quot; et ajuster les touches début, fin, pgup et pgdn de manière plus homogène.&lt;br /&gt;
&lt;br /&gt;
J&#039;ai également rajouté des touches dead-modificateur (plus parce que j&#039;étais content d&#039;avoir trouvé comment faire qu&#039;autre chose).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Keymap « de base »===&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;w plus proche&#039;&#039;&#039; (alla bépow [[Utilisateur:Kaze/Bépo-int|Explications ici]]):&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Finalement le bépow ne me plaît pas tellement:&lt;br /&gt;
&amp;quot;w&amp;quot; s&#039;enchaîne souvent avec un &amp;quot;o&amp;quot; ou un &amp;quot;e&amp;quot; en anglais… À revoir&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;&amp;quot;[&amp;quot;-&amp;quot;]&amp;quot; dans la même rangée que &amp;quot;{&amp;quot;-&amp;quot;}&amp;quot; et &amp;quot;&amp;lt;&amp;quot;-&amp;quot;&amp;gt;&amp;quot;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Je trouvais ça trop pratique. Les parenthèses en altgr+&#039;é&#039; et altgr+&#039;p&#039; ce serait selon moi royal, mais c&#039;est vrai que le &#039;´&#039; est bien sur le é… Je n&#039;ai pas encore trouvé de solution idéale.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;espace insécable en altgr+space&#039;&#039;&#039; et &#039;&#039;&#039;espace fine insécable en altgr+maj+space&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
space et maj+space donnent une espace classique, je trouvais la combinaison &amp;quot;maj+space = espace&amp;quot; trop dangereuse pour la programmation.&lt;br /&gt;
&lt;br /&gt;
Pour l&#039;instant &#039;&#039;&#039;underscore est en fn+space&#039;&#039;&#039;. Ce n&#039;est pas super logique (ce n&#039;est pas du « déplacement/édition ») mais bon… la couche « déplacement/édition » est aussi accessible que la couche altgr et la laisser quasiment vide serait un peu du gaspillage. Le mieux serait peut-être de caler le &#039;_&#039; ailleurs (mais où ? :-)). Ou alors utiliser un peu plus cette couche fn -&amp;gt; :-)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Ctrl droit et Compose inversés&#039;&#039;&#039;: les touches Ctrl sont tout à fait inaccessibles sans lever la main. Un &amp;quot;dead_Compose&amp;quot; est accessible en Fn+&#039;,&#039;.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Maj et ç inversés&#039;&#039;&#039; pour augmenter l&#039;homogénéité avec l&#039;autre maj (cela rend aussi la touche plus accessible à mon avis).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
  ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
  │ # ¶│ 1 „│ 2 “│ 3 ”│ 4 ≤│ 5 ≥│ 6  ║ 7 ¬│ 8 ¼│ 9 ½│ 0 ¾│ ° ′│ ℝ ″║         ║&lt;br /&gt;
  │ $ –│ &amp;quot; —│ « &amp;lt;│ » &amp;gt;│ ( →│ ) ⇒│ @ ^║ + ±│ - −│ / ÷│ * ×│ = ≠│ % ‰║ &amp;lt;--     ║&lt;br /&gt;
  ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
  ║  |&amp;lt;-  ║ B ¦│ É ˝│ P §│ O Œ│ W  ║ !  │ V  │ D Ð│ L  │ J Ĳ│ ˇ Ə│ ˙  ║   |  ║&lt;br /&gt;
  ║  -&amp;gt;|  ║ b |│ é ´│ p &amp;amp;│ o œ│ w  ║ ` ¡│ v ˇ│ d ð│ l /│ j ĳ│ ^ ə│ ¨ ˘║ &amp;lt;-&#039;  ║&lt;br /&gt;
  ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
  ║        ║ A Æ│ U  │ I  │ E ¤│ ;  ║ C ſ│ T Þ│ S ß│ R  │ N  │ M º│    ║     ║&lt;br /&gt;
  ║ Maj. ⇑ ║ a æ│ u [│ i ]│ e €│ , &#039;║ c ©│ t þ│ s ß│ r ®│ n ˜│ m ¯│Maj.║     ║&lt;br /&gt;
  ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
  ║ «»’  ║ Ê  │ Z  │ Y ‘│ X ’│ : ·│ K  ║ ?  │ Q  │ G  │ H ‡│ F ª║   Ç ,      ║&lt;br /&gt;
  ║ &amp;lt;&amp;gt;&#039;  ║ ê /│ z \│ y {│ x }│ . …│ k ~║ ’ ¿│ q °│ g µ│ h †│ f ˛║   ç ¸      ║&lt;br /&gt;
  ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
  ║       ║      ║     ║ Espace   Fine Insécable  ║     ║       ║     ║      ║&lt;br /&gt;
  ║ Ctrl  ║ Alt  ║ Fn ⇄║ Espace     Insécable     ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
  ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Fn « déplacement/édition » (et underscore)===&lt;br /&gt;
&lt;br /&gt;
* ←  ↓  ↑  →  sous les doigts à droite avec les positions usuelles sur vim.&lt;br /&gt;
*&amp;quot;deb&amp;quot;, &amp;quot;pgdn&amp;quot;, &amp;quot;pgup&amp;quot; et &amp;quot;fin&amp;quot; accessibles facilement (on notera l&#039;homogégéité avec les flèches :)).&lt;br /&gt;
*&amp;quot;esc&amp;quot;, &amp;quot;del&amp;quot;, &amp;quot;bksp&amp;quot; et &amp;quot;entr&amp;quot; sous les doigts de la main gauche: trop bien. :)&lt;br /&gt;
*maj+insert (équivalent du clic scroll) en fn+p (p comme paste (en vim) ou comme prout (dans la vie de tous les jours))&lt;br /&gt;
*ctrl+p et ctrl+n (pour &amp;quot;précédent&amp;quot; et &amp;quot;suivant&amp;quot; dans plein de programmes) en haut des flèches haut et bas (peut-être pas top à cause du &amp;quot;d&amp;quot;: supprimer en vim, du coup, ils sont aussi sur les guillemets).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │    │    │ctl+│ctl+│    │    │    ║    │    │    │    │    │    ║         ║&lt;br /&gt;
 │    │    │ p  │ n  │    │    │    ║    │    │    │    │    │    ║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║dead│dead│maj+│dead│    ║    │ctl+│ctl+│    │    │    │    ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ctrl│ maj│ ins│altg│    ║    │ p  │ n  │    │    │    │    ║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║    │    │    │    │Com-║    │    │    │    │    │    │    ║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ esc│ del│bksp│entr│pose│ ←  │ ↓  │ ↑  | →  │ esc│    │Maj ║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║dead│    │    │    │    │    ║    │    │    │    │    ║            ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║ alt│    │    │    │    │    ║ deb│pgdn│pgup│ fin│    ║            ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║                          ║     ║       ║     ║      ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║            _             ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Des idées ?===&lt;br /&gt;
Si vous avez des idées pour améliorer cette super couche « déplacement/édition » rajoutez-les ici !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon fichier .xkb===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
xkb_keymap        {&lt;br /&gt;
&lt;br /&gt;
xkb_keycodes      { include &amp;quot;xfree86+aliases(azerty)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
xkb_types         {&lt;br /&gt;
    include &amp;quot;complete&amp;quot;&lt;br /&gt;
    type &amp;quot;ALTGR_TWO&amp;quot; {&lt;br /&gt;
       modifiers = LevelThree;&lt;br /&gt;
       map[None] = Level1;&lt;br /&gt;
       map[LevelThree] = Level2;&lt;br /&gt;
       level_name[Level1] = &amp;quot;Base&amp;quot;;&lt;br /&gt;
       level_name[Level2] = &amp;quot;AltGr&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_compatibility { include &amp;quot;complete&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        indicator &amp;quot;Scroll Lock&amp;quot; { controls = Overlay1; allowExplicit = True; drivesKeyboard = True; };&lt;br /&gt;
        &lt;br /&gt;
        interpret F24 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Control); // ctrl-r&lt;br /&gt;
        };&lt;br /&gt;
        interpret F25 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6D&amp;gt;, modifiers=Mod1); // alt-f&lt;br /&gt;
        };&lt;br /&gt;
        interpret F26 {&lt;br /&gt;
            action = LockControls(controls=Overlay1);&lt;br /&gt;
        };&lt;br /&gt;
        interpret F27 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6E&amp;gt;, modifiers=Control); // ctrl-s&lt;br /&gt;
        };&lt;br /&gt;
        interpret F28 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Shift); // insert-shift&lt;br /&gt;
        };&lt;br /&gt;
        interpret F29 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;RGHT&amp;gt;, modifiers=Control); // ctrl-â†’&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
        interpret F30 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6F&amp;gt;, modifiers=Control); // ctrl-Tab&lt;br /&gt;
        };&lt;br /&gt;
        interpret F31 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I71&amp;gt;, modifiers=Control); // ctrl-p&lt;br /&gt;
        };&lt;br /&gt;
        interpret F32 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I72&amp;gt;, modifiers=Control); // ctrl-n&lt;br /&gt;
        };&lt;br /&gt;
        interpret F33 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;INS&amp;gt;, modifiers=Shift); // ctrl-v&lt;br /&gt;
        };&lt;br /&gt;
        interpret F34 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I74&amp;gt;, modifiers=Control); // ctrl-z&lt;br /&gt;
        };&lt;br /&gt;
        interpret F35 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I75&amp;gt;, modifiers=Mod1); // alt-y&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
partial alphanumeric_keys&lt;br /&gt;
xkb_symbols &amp;quot;dvorak&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	name[Group1]= &amp;quot;France - Bepo, ergonomic, Dvorak way (v1.0rc2)&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;pc(pc105)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;TLDE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dollar, numbersign, endash, paragraph ], overlay1 = &amp;lt;I70&amp;gt; }; // $ # – ¶&lt;br /&gt;
	key &amp;lt;AE01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ quotedbl, 1, emdash, doublelowquotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // &amp;quot; 1 — „&lt;br /&gt;
	key &amp;lt;AE02&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotleft, 2, less, leftdoublequotemark ], // « 2 &amp;lt; “&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ less, 2, guillemotleft, leftdoublequotemark ], // &amp;lt; 2 « “&lt;br /&gt;
                     overlay1 = &amp;lt;I7A&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE03&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotright, 3, greater, rightdoublequotemark ], // » 3 &amp;gt; ”&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ greater, 3, guillemotright, rightdoublequotemark ], // &amp;gt; 3 » ”&lt;br /&gt;
                     overlay1 = &amp;lt;I7B&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenleft, 4, U2192, lessthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ( 4 → &lt;br /&gt;
	key &amp;lt;AE05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenright, 5, U21D2, greaterthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ) 5 ⇒ &lt;br /&gt;
	key &amp;lt;AE06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ at, 6, asciicircum ], overlay1 = &amp;lt;I70&amp;gt; }; // @ 6 ^&lt;br /&gt;
	key &amp;lt;AE07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ plus, 7, plusminus, notsign ], overlay1 = &amp;lt;I70&amp;gt; }; // + 7 ± ¬&lt;br /&gt;
	key &amp;lt;AE08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ minus, 8, U2212, onequarter ], overlay1 = &amp;lt;I70&amp;gt; }; // - 8 − ¼&lt;br /&gt;
	key &amp;lt;AE09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ slash, 9, division, onehalf ], overlay1 = &amp;lt;I70&amp;gt; }; // / 9 ÷ ½&lt;br /&gt;
	key &amp;lt;AE10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asterisk, 0, multiply, threequarters ], overlay1 = &amp;lt;I70&amp;gt; }; // * 0 × ¾&lt;br /&gt;
	key &amp;lt;AE11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ equal, degree, notequal, minutes ], overlay1 = &amp;lt;I70&amp;gt; }; // = ° ≠&lt;br /&gt;
	key &amp;lt;AE12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ percent, grave, U2030, seconds ], overlay1 = &amp;lt;I70&amp;gt; }; // % ` ‰&lt;br /&gt;
	key &amp;lt;AD01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ b, B, bar, brokenbar ], overlay1 = &amp;lt;FK13&amp;gt; }; // b B | ¦ dead_ctrl&lt;br /&gt;
	key &amp;lt;AD02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, dead_acute, dead_doubleacute ], overlay1 = &amp;lt;FK14&amp;gt; }; // é É ´ ˝ dead_shift&lt;br /&gt;
	key &amp;lt;AD03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, ampersand, section ], overlay1 = &amp;lt;I77&amp;gt; }; // p P &amp;amp; § insert-shift&lt;br /&gt;
	key &amp;lt;AD04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ o, O, oe, OE ], overlay1 = &amp;lt;FK16&amp;gt; }; // o O œ Œ dead_altgr&lt;br /&gt;
	//key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ egrave, Egrave, dead_grave, grave ], }; // è È ` `&lt;br /&gt;
	key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ w, W, dead_breve ], overlay1 = &amp;lt;FK17&amp;gt; }; // w W ˘ multi_key&lt;br /&gt;
	key &amp;lt;AD06&amp;gt; { type[group1] = &amp;quot;THREE_LEVEL&amp;quot;, [ dead_grave, exclam, exclamdown ], overlay1 = &amp;lt;I70&amp;gt; }; // ` ! ¡&lt;br /&gt;
	key &amp;lt;AD07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ v, V, dead_caron ], overlay1 = &amp;lt;I70&amp;gt; }; // v V ˇ&lt;br /&gt;
	key &amp;lt;AD08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ d, D, eth, ETH ], overlay1 = &amp;lt;I7A&amp;gt;}; // d D ð Ð&lt;br /&gt;
	key &amp;lt;AD09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ l, L, UFDD0 ], overlay1 = &amp;lt;I7B&amp;gt;}; // l L /&lt;br /&gt;
	key &amp;lt;AD10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ j, J, U0133, U0132 ], overlay1 = &amp;lt;I70&amp;gt;}; // j J ĳ Ĳ&lt;br /&gt;
        key &amp;lt;AD11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_circumflex, dead_caron, schwa, SCHWA ], overlay1 = &amp;lt;I70&amp;gt; }; // ^ ˇ ə Ə&lt;br /&gt;
        key &amp;lt;AD12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_diaeresis, dead_abovedot, dead_breve, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ¨ ˙ ˘&lt;br /&gt;
	key &amp;lt;AC01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ a, A, ae, AE ], overlay1 = &amp;lt;ESC&amp;gt; }; // a A æ Æ escape&lt;br /&gt;
        key &amp;lt;AC02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ u, U, bracketleft ], overlay1 = &amp;lt;DELE&amp;gt; }; // u U [ delete&lt;br /&gt;
	key &amp;lt;AC03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ i, I, bracketright ], overlay1 = &amp;lt;BKSP&amp;gt; }; // i I ] backspace&lt;br /&gt;
	key &amp;lt;AC04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ e, E, EuroSign, UFDD1 ], overlay1 = &amp;lt;RTRN&amp;gt; }; // e E € ¤ return&lt;br /&gt;
        key &amp;lt;AC05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, rightsinglequotemark, dead_horn  ], // , ; &#039; &lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, apostrophe, dead_horn  ],           // , ; ’&lt;br /&gt;
            overlay1 = &amp;lt;INS&amp;gt;                                                                    // insert&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AC06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ c, C, copyright, U017F ], overlay1 = &amp;lt;LEFT&amp;gt; }; // c C © ſ&lt;br /&gt;
	key &amp;lt;AC07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ t, T, thorn, THORN ], overlay1 = &amp;lt;DOWN&amp;gt; }; // t T þ Þ&lt;br /&gt;
	key &amp;lt;AC08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ s, S, ssharp, U1E9E ], overlay1 = &amp;lt;UP&amp;gt; }; // s S ß ẞ&lt;br /&gt;
	key &amp;lt;AC09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ r, R, registered, trademark ], overlay1 = &amp;lt;RGHT&amp;gt; }; // r R ® ™&lt;br /&gt;
	key &amp;lt;AC10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ n, N, dead_tilde ], overlay1 = &amp;lt;ESC&amp;gt; }; // n N ~ escape&lt;br /&gt;
	key &amp;lt;AC11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ m, M, dead_macron, masculine ], overlay1 = &amp;lt;I70&amp;gt; }; // m M ¯ º&lt;br /&gt;
        key &amp;lt;BKSL&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_R, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;LSGT&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ecircumflex, Ecircumflex, backslash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ê Ê /&lt;br /&gt;
	key &amp;lt;AB01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ z, Z, slash, VoidSymbol ], overlay1 = &amp;lt;FK15&amp;gt; }; // z Z \&lt;br /&gt;
	key &amp;lt;AB02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ y, Y, braceleft, leftsinglequotemark ], overlay1 = &amp;lt;F35&amp;gt; }; // y Y { ‘&lt;br /&gt;
	key &amp;lt;AB03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ x, X, braceright, rightsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // x X } ’&lt;br /&gt;
	key &amp;lt;AB04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ period, colon, ellipsis, periodcentered ], overlay1 = &amp;lt;I70&amp;gt; }; // . : … ·&lt;br /&gt;
	key &amp;lt;AB05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ k, K, asciitilde, dead_tilde ], overlay1 = &amp;lt;I70&amp;gt; }; // k K ~&lt;br /&gt;
        key &amp;lt;AB06&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, question, questiondown, dead_hook ],           // ’ ? ¿ ̉&lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ rightsinglequotemark, question, questiondown, dead_hook ], // &#039; ? ¿ ̉&lt;br /&gt;
            overlay1 = &amp;lt;HOME&amp;gt;                                                                         // home&lt;br /&gt;
        }; &lt;br /&gt;
	key &amp;lt;AB07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ q, Q, dead_abovering, dead_belowdot ], overlay1 = &amp;lt;PGDN&amp;gt; }; // q Q ˚ ̣pgdn&lt;br /&gt;
	key &amp;lt;AB08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ g, G, UFDD2 ], overlay1 = &amp;lt;PGUP&amp;gt; }; // g G µ pgup&lt;br /&gt;
	key &amp;lt;AB09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ h, H, dagger, doubledagger ], overlay1 = &amp;lt;END&amp;gt; }; // h H † ‡&lt;br /&gt;
	key &amp;lt;AB10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ f, F, dead_ogonek, ordfeminine ], overlay1 = &amp;lt;I25&amp;gt; }; // f F ˛ ª&lt;br /&gt;
	key &amp;lt;RTSH&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ], overlay1 = &amp;lt;I70&amp;gt; }; // ç Ç ¸ ,&lt;br /&gt;
        key &amp;lt;SPCE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ space, space, nobreakspace, U202F ], overlay1 = &amp;lt;I7F&amp;gt; }; // spaces underscore&lt;br /&gt;
&lt;br /&gt;
        // Unused keys mapped to ctrl+letter actions&lt;br /&gt;
        key &amp;lt;I6C&amp;gt; { [ r ] };&lt;br /&gt;
        key &amp;lt;I6D&amp;gt; { [ f ] };&lt;br /&gt;
        key &amp;lt;I6E&amp;gt; { [ s ] };&lt;br /&gt;
        key &amp;lt;I6F&amp;gt; { [ Tab ] };&lt;br /&gt;
        key &amp;lt;I70&amp;gt; { [ VoidSymbol ] };&lt;br /&gt;
        key &amp;lt;I71&amp;gt; { [ p ] };&lt;br /&gt;
        key &amp;lt;I72&amp;gt; { [ n ] };&lt;br /&gt;
        key &amp;lt;I73&amp;gt; { [ v ] };&lt;br /&gt;
        key &amp;lt;I74&amp;gt; { [ z ] };&lt;br /&gt;
        key &amp;lt;I75&amp;gt; { [ y ] };&lt;br /&gt;
        key &amp;lt;I76&amp;gt; { [ space ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // For some reason there are SOMETIMES (not always!) errors with this code:&lt;br /&gt;
        //    key &amp;lt;I7A&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;I7B&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;I7C&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;I7D&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;I7E&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // However passing the action in the Â«Â interpretÂ Â» section for an unsused symbol seems to work&lt;br /&gt;
        key &amp;lt;I60&amp;gt; { [ F24 ] };      // ctrl-R&lt;br /&gt;
        key &amp;lt;I61&amp;gt; { [ F25 ] };      // ctrl-F&lt;br /&gt;
        //key &amp;lt;I77&amp;gt; {  actions[group1] = [ Redirect(keycode=&amp;lt;I6C&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I77&amp;gt; { [ INS ],  actions[group1] = [ Redirect(keycode=&amp;lt;INS&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I78&amp;gt; { [ F29 ] };      // ctrl-right&lt;br /&gt;
        key &amp;lt;I79&amp;gt; { [ F30 ] };      // ctrl+Tab&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        //    key &amp;lt;I79&amp;gt; { [ Tab ], actions = [ setMods(modifiers=Mod1) ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;I7A&amp;gt; { [ F31 ] };      // ctrl-p&lt;br /&gt;
        key &amp;lt;I7B&amp;gt; { [ F32 ] };      // ctrl-n&lt;br /&gt;
        key &amp;lt;I7C&amp;gt; { [ F33 ] };      // ctrl-v&lt;br /&gt;
        key &amp;lt;I7D&amp;gt; { [ F34 ] };      // ctrl-z&lt;br /&gt;
        key &amp;lt;I7E&amp;gt; { [ F35 ] };      // alt-y&lt;br /&gt;
        key &amp;lt;I7F&amp;gt; { [ underscore ] };      // _&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Using &amp;lt; 127 keycodes also works&lt;br /&gt;
        key &amp;lt;FK13&amp;gt; { actions = [ LatchMods(modifiers=Control) ] };        // dead ctrl&lt;br /&gt;
        key &amp;lt;FK14&amp;gt; { actions = [ LatchMods(modifiers=Shift) ] };          // dead shift&lt;br /&gt;
        key &amp;lt;FK15&amp;gt; { actions = [ LatchMods(modifiers=Mod1) ] };           // dead alt&lt;br /&gt;
        key &amp;lt;FK16&amp;gt; { actions = [ LatchMods(modifiers=AltGr) ] };          // dead altgr&lt;br /&gt;
        key &amp;lt;FK17&amp;gt; { [ Multi_key ] };                                     // multi_key&lt;br /&gt;
        //    key &amp;lt;FK13&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;FK14&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;FK15&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;FK16&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;FK17&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
        // See also the bug thread here : https://bugs.freedesktop.org/show_bug.cgi?id=12401&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Transforme CAPS en lock de couche alternative «déplacement/édition», et garde le caps-lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour échanger Shift et Caps_Lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; {  [    Caps_Lock    ] };&lt;br /&gt;
&lt;br /&gt;
        // Combinaison des 2 : attention, requiert que les LFSH et CAPS dans les définitions de la touche &amp;lt;AC01&amp;gt; soient aussi échangées dans la partie principale&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
&lt;br /&gt;
        // shift + lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer CAPS en un AltGr gauche, en gardant le lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ ISO_Level3_Shift, Caps_Lock ], actions = [ SetMods(modifiers=LevelThree), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer LWIN en un AltGr gauche&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour mettre un Compose sur RWIN&lt;br /&gt;
        //key &amp;lt;RWIN&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        // key &amp;lt;MENU&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        //key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = [ SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;RCTL&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour que LWIN permette de changer de groupe&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
&lt;br /&gt;
        // Echange CTRL et Alt Gauches. Et puisque LWIN est réaffectée, garde un modificateur META en niveau 3 et 4 (AltGr)&lt;br /&gt;
        // Note: Activer cette option fonctionne mieux lorsque que l&#039;on échange aussi les raccourcis du style Alt+Tabâ€¦&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; {        [ Control_L ], actions = [ SetMods(modifiers=Control) ]       };&lt;br /&gt;
        //    key &amp;lt;LCTL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [       Alt_L,  Alt_L,  Meta_L, Meta_L         ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ]       };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        key &amp;lt;LALT&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; { type = &amp;quot;ONE_LEVEL&amp;quot;, [ VoidSymbol ], actions = [ LockControls(controls=Overlay1) ] };&lt;br /&gt;
            &lt;br /&gt;
            key &amp;lt;LFSH&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
            key &amp;lt;LWIN&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [ Alt_L, Alt_L, Meta_L, Meta_L ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ] };&lt;br /&gt;
&lt;br /&gt;
            // Make Alt+Tab still work in the overlay !&lt;br /&gt;
        //key  &amp;lt;TAB&amp;gt; {&lt;br /&gt;
        //    // would need an appropriate type here [ Tab,  ISO_Left_Tab    ],&lt;br /&gt;
        //    overlay1 = &amp;lt;F30&amp;gt;&lt;br /&gt;
        //};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;level3(ralt_switch)&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_geometry { include &amp;quot;pc(pc105)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13311</id>
		<title>Utilisateur:Legrostdg</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13311"/>
		<updated>2009-03-25T23:11:49Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : /* Keymap « de base » */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La [[Utilisateur:Nbrodu|variante proposée par Nbrodu]] est très utile mais étant plutôt adepte de vim, je n&#039;utilisais pas beaucoup les raccourcis en Ctrl+… En revanche return, delete, backspace et escape avaient selon moi besoin d&#039;être plus accessibles. J&#039;en ai profité pour mettre les touches de direction &amp;quot;alla vim&amp;quot; et ajuster les touches début, fin, pgup et pgdn de manière plus homogène.&lt;br /&gt;
&lt;br /&gt;
J&#039;ai également rajouté des touches dead-modificateur (plus parce que j&#039;étais content d&#039;avoir trouvé comment faire qu&#039;autre chose).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Keymap « de base »===&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;version bépow&#039;&#039;&#039;. [[Utilisateur:Kaze/Bépo-int|Explications ici]].&lt;br /&gt;
&lt;br /&gt;
Le w était vraiment trop loin et les &#039;[&#039; et &#039;]&#039; disponibles dans la même rangée que &#039;{&#039;-&#039;}&#039; et &#039;&amp;lt;&#039;-&#039;&amp;gt;&#039; je trouvait ça trop pratique. Les parenthèses en altgr+&#039;é&#039; et altgr+&#039;p&#039; ce serait selon moi royal, mais c&#039;est vrai que le &#039;´&#039; est bien sur le é… Je n&#039;ai pas encore trouvé de solution idéale.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Finalement le bépow ne me plaît pas tellement:&lt;br /&gt;
&amp;quot;w&amp;quot; s&#039;enchaîne souvent avec un &amp;quot;o&amp;quot; ou un &amp;quot;e&amp;quot; en anglais… À revoir&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;espace insécable en altgr+space&#039;&#039;&#039; et &#039;&#039;&#039;espace fine insécable en altgr+maj+space&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
space et maj+space donnent une espace classique, je trouvais la combinaison &amp;quot;maj+space = espace&amp;quot; trop dangereuse pour la programmation.&lt;br /&gt;
&lt;br /&gt;
Pour l&#039;instant &#039;&#039;&#039;underscore est en fn+space&#039;&#039;&#039;. Ce n&#039;est pas super logique (ce n&#039;est pas du « déplacement/édition ») mais bon… la couche « déplacement/édition » est aussi accessible que la couche altgr et la laisser quasiment vide serait un peu du gaspillage. Le mieux serait peut-être de caler le &#039;_&#039; ailleurs (mais où ? :-)). Ou alors utiliser un peu plus cette couche fn -&amp;gt; :-)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Ctrl droit et Compose inversés&#039;&#039;&#039;: les touches Ctrl sont tout à fait inaccessibles sans lever la main. Un &amp;quot;dead_Compose&amp;quot; est accessible en Fn+&#039;,&#039;.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Maj et ç inversés&#039;&#039;&#039; pour augmenter l&#039;homogénéité avec l&#039;autre maj (cela rend aussi la touche plus accessible à mon avis).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
  ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
  │ # ¶│ 1 „│ 2 “│ 3 ”│ 4 ≤│ 5 ≥│ 6  ║ 7 ¬│ 8 ¼│ 9 ½│ 0 ¾│ ° ′│ ℝ ″║         ║&lt;br /&gt;
  │ $ –│ &amp;quot; —│ « &amp;lt;│ » &amp;gt;│ ( →│ ) ⇒│ @ ^║ + ±│ - −│ / ÷│ * ×│ = ≠│ % ‰║ &amp;lt;--     ║&lt;br /&gt;
  ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
  ║  |&amp;lt;-  ║ B ¦│ É ˝│ P §│ O Œ│ W  ║ !  │ V  │ D Ð│ L  │ J Ĳ│ ˇ Ə│ ˙  ║   |  ║&lt;br /&gt;
  ║  -&amp;gt;|  ║ b |│ é ´│ p &amp;amp;│ o œ│ w  ║ ` ¡│ v ˇ│ d ð│ l /│ j ĳ│ ^ ə│ ¨ ˘║ &amp;lt;-&#039;  ║&lt;br /&gt;
  ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
  ║        ║ A Æ│ U  │ I  │ E ¤│ ;  ║ C ſ│ T Þ│ S ß│ R  │ N  │ M º│    ║     ║&lt;br /&gt;
  ║ Maj. ⇑ ║ a æ│ u [│ i ]│ e €│ , &#039;║ c ©│ t þ│ s ß│ r ®│ n ˜│ m ¯│Maj.║     ║&lt;br /&gt;
  ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
  ║ «»’  ║ Ê  │ Z  │ Y ‘│ X ’│ : ·│ K  ║ ?  │ Q  │ G  │ H ‡│ F ª║   Ç ,      ║&lt;br /&gt;
  ║ &amp;lt;&amp;gt;&#039;  ║ ê /│ z \│ y {│ x }│ . …│ k ~║ ’ ¿│ q °│ g µ│ h †│ f ˛║   ç ¸      ║&lt;br /&gt;
  ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
  ║       ║      ║     ║ Espace   Fine Insécable  ║     ║       ║     ║      ║&lt;br /&gt;
  ║ Ctrl  ║ Alt  ║ Fn ⇄║ Espace     Insécable     ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
  ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Fn « déplacement/édition » (et underscore)===&lt;br /&gt;
&lt;br /&gt;
* ←  ↓  ↑  →  sous les doigts à droite avec les positions usuelles sur vim.&lt;br /&gt;
*&amp;quot;deb&amp;quot;, &amp;quot;pgdn&amp;quot;, &amp;quot;pgup&amp;quot; et &amp;quot;fin&amp;quot; accessibles facilement (on notera l&#039;homogégéité avec les flèches :)).&lt;br /&gt;
*&amp;quot;esc&amp;quot;, &amp;quot;del&amp;quot;, &amp;quot;bksp&amp;quot; et &amp;quot;entr&amp;quot; sous les doigts de la main gauche: trop bien. :)&lt;br /&gt;
*maj+insert (équivalent du clic scroll) en fn+p (p comme paste (en vim) ou comme prout (dans la vie de tous les jours))&lt;br /&gt;
*ctrl+p et ctrl+n (pour &amp;quot;précédent&amp;quot; et &amp;quot;suivant&amp;quot; dans plein de programmes) en haut des flèches haut et bas (peut-être pas top à cause du &amp;quot;d&amp;quot;: supprimer en vim, du coup, ils sont aussi sur les guillemets).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │    │    │ctl+│ctl+│    │    │    ║    │    │    │    │    │    ║         ║&lt;br /&gt;
 │    │    │ p  │ n  │    │    │    ║    │    │    │    │    │    ║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║dead│dead│maj+│dead│    ║    │ctl+│ctl+│    │    │    │    ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ctrl│ maj│ ins│altg│    ║    │ p  │ n  │    │    │    │    ║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║    │    │    │    │Com-║    │    │    │    │    │    │    ║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ esc│ del│bksp│entr│pose│ ←  │ ↓  │ ↑  | →  │ esc│    │Maj ║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║dead│    │    │    │    │    ║    │    │    │    │    ║            ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║ alt│    │    │    │    │    ║ deb│pgdn│pgup│ fin│    ║            ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║                          ║     ║       ║     ║      ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║            _             ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Des idées ?===&lt;br /&gt;
Si vous avez des idées pour améliorer cette super couche « déplacement/édition » rajoutez-les ici !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon fichier .xkb===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
xkb_keymap        {&lt;br /&gt;
&lt;br /&gt;
xkb_keycodes      { include &amp;quot;xfree86+aliases(azerty)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
xkb_types         {&lt;br /&gt;
    include &amp;quot;complete&amp;quot;&lt;br /&gt;
    type &amp;quot;ALTGR_TWO&amp;quot; {&lt;br /&gt;
       modifiers = LevelThree;&lt;br /&gt;
       map[None] = Level1;&lt;br /&gt;
       map[LevelThree] = Level2;&lt;br /&gt;
       level_name[Level1] = &amp;quot;Base&amp;quot;;&lt;br /&gt;
       level_name[Level2] = &amp;quot;AltGr&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_compatibility { include &amp;quot;complete&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        indicator &amp;quot;Scroll Lock&amp;quot; { controls = Overlay1; allowExplicit = True; drivesKeyboard = True; };&lt;br /&gt;
        &lt;br /&gt;
        interpret F24 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Control); // ctrl-r&lt;br /&gt;
        };&lt;br /&gt;
        interpret F25 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6D&amp;gt;, modifiers=Mod1); // alt-f&lt;br /&gt;
        };&lt;br /&gt;
        interpret F26 {&lt;br /&gt;
            action = LockControls(controls=Overlay1);&lt;br /&gt;
        };&lt;br /&gt;
        interpret F27 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6E&amp;gt;, modifiers=Control); // ctrl-s&lt;br /&gt;
        };&lt;br /&gt;
        interpret F28 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Shift); // insert-shift&lt;br /&gt;
        };&lt;br /&gt;
        interpret F29 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;RGHT&amp;gt;, modifiers=Control); // ctrl-â†’&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
        interpret F30 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6F&amp;gt;, modifiers=Control); // ctrl-Tab&lt;br /&gt;
        };&lt;br /&gt;
        interpret F31 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I71&amp;gt;, modifiers=Control); // ctrl-p&lt;br /&gt;
        };&lt;br /&gt;
        interpret F32 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I72&amp;gt;, modifiers=Control); // ctrl-n&lt;br /&gt;
        };&lt;br /&gt;
        interpret F33 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;INS&amp;gt;, modifiers=Shift); // ctrl-v&lt;br /&gt;
        };&lt;br /&gt;
        interpret F34 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I74&amp;gt;, modifiers=Control); // ctrl-z&lt;br /&gt;
        };&lt;br /&gt;
        interpret F35 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I75&amp;gt;, modifiers=Mod1); // alt-y&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
partial alphanumeric_keys&lt;br /&gt;
xkb_symbols &amp;quot;dvorak&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	name[Group1]= &amp;quot;France - Bepo, ergonomic, Dvorak way (v1.0rc2)&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;pc(pc105)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;TLDE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dollar, numbersign, endash, paragraph ], overlay1 = &amp;lt;I70&amp;gt; }; // $ # – ¶&lt;br /&gt;
	key &amp;lt;AE01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ quotedbl, 1, emdash, doublelowquotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // &amp;quot; 1 — „&lt;br /&gt;
	key &amp;lt;AE02&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotleft, 2, less, leftdoublequotemark ], // « 2 &amp;lt; “&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ less, 2, guillemotleft, leftdoublequotemark ], // &amp;lt; 2 « “&lt;br /&gt;
                     overlay1 = &amp;lt;I7A&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE03&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotright, 3, greater, rightdoublequotemark ], // » 3 &amp;gt; ”&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ greater, 3, guillemotright, rightdoublequotemark ], // &amp;gt; 3 » ”&lt;br /&gt;
                     overlay1 = &amp;lt;I7B&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenleft, 4, U2192, lessthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ( 4 → &lt;br /&gt;
	key &amp;lt;AE05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenright, 5, U21D2, greaterthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ) 5 ⇒ &lt;br /&gt;
	key &amp;lt;AE06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ at, 6, asciicircum ], overlay1 = &amp;lt;I70&amp;gt; }; // @ 6 ^&lt;br /&gt;
	key &amp;lt;AE07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ plus, 7, plusminus, notsign ], overlay1 = &amp;lt;I70&amp;gt; }; // + 7 ± ¬&lt;br /&gt;
	key &amp;lt;AE08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ minus, 8, U2212, onequarter ], overlay1 = &amp;lt;I70&amp;gt; }; // - 8 − ¼&lt;br /&gt;
	key &amp;lt;AE09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ slash, 9, division, onehalf ], overlay1 = &amp;lt;I70&amp;gt; }; // / 9 ÷ ½&lt;br /&gt;
	key &amp;lt;AE10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asterisk, 0, multiply, threequarters ], overlay1 = &amp;lt;I70&amp;gt; }; // * 0 × ¾&lt;br /&gt;
	key &amp;lt;AE11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ equal, degree, notequal, minutes ], overlay1 = &amp;lt;I70&amp;gt; }; // = ° ≠&lt;br /&gt;
	key &amp;lt;AE12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ percent, grave, U2030, seconds ], overlay1 = &amp;lt;I70&amp;gt; }; // % ` ‰&lt;br /&gt;
	key &amp;lt;AD01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ b, B, bar, brokenbar ], overlay1 = &amp;lt;FK13&amp;gt; }; // b B | ¦ dead_ctrl&lt;br /&gt;
	key &amp;lt;AD02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, dead_acute, dead_doubleacute ], overlay1 = &amp;lt;FK14&amp;gt; }; // é É ´ ˝ dead_shift&lt;br /&gt;
	key &amp;lt;AD03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, ampersand, section ], overlay1 = &amp;lt;I77&amp;gt; }; // p P &amp;amp; § insert-shift&lt;br /&gt;
	key &amp;lt;AD04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ o, O, oe, OE ], overlay1 = &amp;lt;FK16&amp;gt; }; // o O œ Œ dead_altgr&lt;br /&gt;
	//key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ egrave, Egrave, dead_grave, grave ], }; // è È ` `&lt;br /&gt;
	key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ w, W, dead_breve ], overlay1 = &amp;lt;FK17&amp;gt; }; // w W ˘ multi_key&lt;br /&gt;
	key &amp;lt;AD06&amp;gt; { type[group1] = &amp;quot;THREE_LEVEL&amp;quot;, [ dead_grave, exclam, exclamdown ], overlay1 = &amp;lt;I70&amp;gt; }; // ` ! ¡&lt;br /&gt;
	key &amp;lt;AD07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ v, V, dead_caron ], overlay1 = &amp;lt;I70&amp;gt; }; // v V ˇ&lt;br /&gt;
	key &amp;lt;AD08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ d, D, eth, ETH ], overlay1 = &amp;lt;I7A&amp;gt;}; // d D ð Ð&lt;br /&gt;
	key &amp;lt;AD09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ l, L, UFDD0 ], overlay1 = &amp;lt;I7B&amp;gt;}; // l L /&lt;br /&gt;
	key &amp;lt;AD10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ j, J, U0133, U0132 ], overlay1 = &amp;lt;I70&amp;gt;}; // j J ĳ Ĳ&lt;br /&gt;
        key &amp;lt;AD11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_circumflex, dead_caron, schwa, SCHWA ], overlay1 = &amp;lt;I70&amp;gt; }; // ^ ˇ ə Ə&lt;br /&gt;
        key &amp;lt;AD12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_diaeresis, dead_abovedot, dead_breve, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ¨ ˙ ˘&lt;br /&gt;
	key &amp;lt;AC01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ a, A, ae, AE ], overlay1 = &amp;lt;ESC&amp;gt; }; // a A æ Æ escape&lt;br /&gt;
        key &amp;lt;AC02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ u, U, bracketleft ], overlay1 = &amp;lt;DELE&amp;gt; }; // u U [ delete&lt;br /&gt;
	key &amp;lt;AC03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ i, I, bracketright ], overlay1 = &amp;lt;BKSP&amp;gt; }; // i I ] backspace&lt;br /&gt;
	key &amp;lt;AC04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ e, E, EuroSign, UFDD1 ], overlay1 = &amp;lt;RTRN&amp;gt; }; // e E € ¤ return&lt;br /&gt;
        key &amp;lt;AC05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, rightsinglequotemark, dead_horn  ], // , ; &#039; &lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, apostrophe, dead_horn  ],           // , ; ’&lt;br /&gt;
            overlay1 = &amp;lt;INS&amp;gt;                                                                    // insert&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AC06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ c, C, copyright, U017F ], overlay1 = &amp;lt;LEFT&amp;gt; }; // c C © ſ&lt;br /&gt;
	key &amp;lt;AC07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ t, T, thorn, THORN ], overlay1 = &amp;lt;DOWN&amp;gt; }; // t T þ Þ&lt;br /&gt;
	key &amp;lt;AC08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ s, S, ssharp, U1E9E ], overlay1 = &amp;lt;UP&amp;gt; }; // s S ß ẞ&lt;br /&gt;
	key &amp;lt;AC09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ r, R, registered, trademark ], overlay1 = &amp;lt;RGHT&amp;gt; }; // r R ® ™&lt;br /&gt;
	key &amp;lt;AC10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ n, N, dead_tilde ], overlay1 = &amp;lt;ESC&amp;gt; }; // n N ~ escape&lt;br /&gt;
	key &amp;lt;AC11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ m, M, dead_macron, masculine ], overlay1 = &amp;lt;I70&amp;gt; }; // m M ¯ º&lt;br /&gt;
        key &amp;lt;BKSL&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_R, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;LSGT&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ecircumflex, Ecircumflex, backslash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ê Ê /&lt;br /&gt;
	key &amp;lt;AB01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ z, Z, slash, VoidSymbol ], overlay1 = &amp;lt;FK15&amp;gt; }; // z Z \&lt;br /&gt;
	key &amp;lt;AB02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ y, Y, braceleft, leftsinglequotemark ], overlay1 = &amp;lt;F35&amp;gt; }; // y Y { ‘&lt;br /&gt;
	key &amp;lt;AB03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ x, X, braceright, rightsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // x X } ’&lt;br /&gt;
	key &amp;lt;AB04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ period, colon, ellipsis, periodcentered ], overlay1 = &amp;lt;I70&amp;gt; }; // . : … ·&lt;br /&gt;
	key &amp;lt;AB05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ k, K, asciitilde, dead_tilde ], overlay1 = &amp;lt;I70&amp;gt; }; // k K ~&lt;br /&gt;
        key &amp;lt;AB06&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, question, questiondown, dead_hook ],           // ’ ? ¿ ̉&lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ rightsinglequotemark, question, questiondown, dead_hook ], // &#039; ? ¿ ̉&lt;br /&gt;
            overlay1 = &amp;lt;HOME&amp;gt;                                                                         // home&lt;br /&gt;
        }; &lt;br /&gt;
	key &amp;lt;AB07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ q, Q, dead_abovering, dead_belowdot ], overlay1 = &amp;lt;PGDN&amp;gt; }; // q Q ˚ ̣pgdn&lt;br /&gt;
	key &amp;lt;AB08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ g, G, UFDD2 ], overlay1 = &amp;lt;PGUP&amp;gt; }; // g G µ pgup&lt;br /&gt;
	key &amp;lt;AB09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ h, H, dagger, doubledagger ], overlay1 = &amp;lt;END&amp;gt; }; // h H † ‡&lt;br /&gt;
	key &amp;lt;AB10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ f, F, dead_ogonek, ordfeminine ], overlay1 = &amp;lt;I25&amp;gt; }; // f F ˛ ª&lt;br /&gt;
	key &amp;lt;RTSH&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ], overlay1 = &amp;lt;I70&amp;gt; }; // ç Ç ¸ ,&lt;br /&gt;
        key &amp;lt;SPCE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ space, space, nobreakspace, U202F ], overlay1 = &amp;lt;I7F&amp;gt; }; // spaces underscore&lt;br /&gt;
&lt;br /&gt;
        // Unused keys mapped to ctrl+letter actions&lt;br /&gt;
        key &amp;lt;I6C&amp;gt; { [ r ] };&lt;br /&gt;
        key &amp;lt;I6D&amp;gt; { [ f ] };&lt;br /&gt;
        key &amp;lt;I6E&amp;gt; { [ s ] };&lt;br /&gt;
        key &amp;lt;I6F&amp;gt; { [ Tab ] };&lt;br /&gt;
        key &amp;lt;I70&amp;gt; { [ VoidSymbol ] };&lt;br /&gt;
        key &amp;lt;I71&amp;gt; { [ p ] };&lt;br /&gt;
        key &amp;lt;I72&amp;gt; { [ n ] };&lt;br /&gt;
        key &amp;lt;I73&amp;gt; { [ v ] };&lt;br /&gt;
        key &amp;lt;I74&amp;gt; { [ z ] };&lt;br /&gt;
        key &amp;lt;I75&amp;gt; { [ y ] };&lt;br /&gt;
        key &amp;lt;I76&amp;gt; { [ space ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // For some reason there are SOMETIMES (not always!) errors with this code:&lt;br /&gt;
        //    key &amp;lt;I7A&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;I7B&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;I7C&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;I7D&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;I7E&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // However passing the action in the Â«Â interpretÂ Â» section for an unsused symbol seems to work&lt;br /&gt;
        key &amp;lt;I60&amp;gt; { [ F24 ] };      // ctrl-R&lt;br /&gt;
        key &amp;lt;I61&amp;gt; { [ F25 ] };      // ctrl-F&lt;br /&gt;
        //key &amp;lt;I77&amp;gt; {  actions[group1] = [ Redirect(keycode=&amp;lt;I6C&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I77&amp;gt; { [ INS ],  actions[group1] = [ Redirect(keycode=&amp;lt;INS&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I78&amp;gt; { [ F29 ] };      // ctrl-right&lt;br /&gt;
        key &amp;lt;I79&amp;gt; { [ F30 ] };      // ctrl+Tab&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        //    key &amp;lt;I79&amp;gt; { [ Tab ], actions = [ setMods(modifiers=Mod1) ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;I7A&amp;gt; { [ F31 ] };      // ctrl-p&lt;br /&gt;
        key &amp;lt;I7B&amp;gt; { [ F32 ] };      // ctrl-n&lt;br /&gt;
        key &amp;lt;I7C&amp;gt; { [ F33 ] };      // ctrl-v&lt;br /&gt;
        key &amp;lt;I7D&amp;gt; { [ F34 ] };      // ctrl-z&lt;br /&gt;
        key &amp;lt;I7E&amp;gt; { [ F35 ] };      // alt-y&lt;br /&gt;
        key &amp;lt;I7F&amp;gt; { [ underscore ] };      // _&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Using &amp;lt; 127 keycodes also works&lt;br /&gt;
        key &amp;lt;FK13&amp;gt; { actions = [ LatchMods(modifiers=Control) ] };        // dead ctrl&lt;br /&gt;
        key &amp;lt;FK14&amp;gt; { actions = [ LatchMods(modifiers=Shift) ] };          // dead shift&lt;br /&gt;
        key &amp;lt;FK15&amp;gt; { actions = [ LatchMods(modifiers=Mod1) ] };           // dead alt&lt;br /&gt;
        key &amp;lt;FK16&amp;gt; { actions = [ LatchMods(modifiers=AltGr) ] };          // dead altgr&lt;br /&gt;
        key &amp;lt;FK17&amp;gt; { [ Multi_key ] };                                     // multi_key&lt;br /&gt;
        //    key &amp;lt;FK13&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;FK14&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;FK15&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;FK16&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;FK17&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
        // See also the bug thread here : https://bugs.freedesktop.org/show_bug.cgi?id=12401&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Transforme CAPS en lock de couche alternative «déplacement/édition», et garde le caps-lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour échanger Shift et Caps_Lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; {  [    Caps_Lock    ] };&lt;br /&gt;
&lt;br /&gt;
        // Combinaison des 2 : attention, requiert que les LFSH et CAPS dans les définitions de la touche &amp;lt;AC01&amp;gt; soient aussi échangées dans la partie principale&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
&lt;br /&gt;
        // shift + lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer CAPS en un AltGr gauche, en gardant le lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ ISO_Level3_Shift, Caps_Lock ], actions = [ SetMods(modifiers=LevelThree), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer LWIN en un AltGr gauche&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour mettre un Compose sur RWIN&lt;br /&gt;
        //key &amp;lt;RWIN&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        // key &amp;lt;MENU&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        //key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = [ SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;RCTL&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour que LWIN permette de changer de groupe&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
&lt;br /&gt;
        // Echange CTRL et Alt Gauches. Et puisque LWIN est réaffectée, garde un modificateur META en niveau 3 et 4 (AltGr)&lt;br /&gt;
        // Note: Activer cette option fonctionne mieux lorsque que l&#039;on échange aussi les raccourcis du style Alt+Tabâ€¦&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; {        [ Control_L ], actions = [ SetMods(modifiers=Control) ]       };&lt;br /&gt;
        //    key &amp;lt;LCTL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [       Alt_L,  Alt_L,  Meta_L, Meta_L         ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ]       };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        key &amp;lt;LALT&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; { type = &amp;quot;ONE_LEVEL&amp;quot;, [ VoidSymbol ], actions = [ LockControls(controls=Overlay1) ] };&lt;br /&gt;
            &lt;br /&gt;
            key &amp;lt;LFSH&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
            key &amp;lt;LWIN&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [ Alt_L, Alt_L, Meta_L, Meta_L ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ] };&lt;br /&gt;
&lt;br /&gt;
            // Make Alt+Tab still work in the overlay !&lt;br /&gt;
        //key  &amp;lt;TAB&amp;gt; {&lt;br /&gt;
        //    // would need an appropriate type here [ Tab,  ISO_Left_Tab    ],&lt;br /&gt;
        //    overlay1 = &amp;lt;F30&amp;gt;&lt;br /&gt;
        //};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;level3(ralt_switch)&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_geometry { include &amp;quot;pc(pc105)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13310</id>
		<title>Utilisateur:Legrostdg</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13310"/>
		<updated>2009-03-25T23:10:58Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : /* Keymap « de base » */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La [[Utilisateur:Nbrodu|variante proposée par Nbrodu]] est très utile mais étant plutôt adepte de vim, je n&#039;utilisais pas beaucoup les raccourcis en Ctrl+… En revanche return, delete, backspace et escape avaient selon moi besoin d&#039;être plus accessibles. J&#039;en ai profité pour mettre les touches de direction &amp;quot;alla vim&amp;quot; et ajuster les touches début, fin, pgup et pgdn de manière plus homogène.&lt;br /&gt;
&lt;br /&gt;
J&#039;ai également rajouté des touches dead-modificateur (plus parce que j&#039;étais content d&#039;avoir trouvé comment faire qu&#039;autre chose).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Keymap « de base »===&lt;br /&gt;
&lt;br /&gt;
*version bépow. [[Utilisateur:Kaze/Bépo-int|Explications ici]].&lt;br /&gt;
&lt;br /&gt;
Le w était vraiment trop loin et les &#039;[&#039; et &#039;]&#039; disponibles dans la même rangée que &#039;{&#039;-&#039;}&#039; et &#039;&amp;lt;&#039;-&#039;&amp;gt;&#039; je trouvait ça trop pratique. Les parenthèses en altgr+&#039;é&#039; et altgr+&#039;p&#039; ce serait selon moi royal, mais c&#039;est vrai que le &#039;´&#039; est bien sur le é… Je n&#039;ai pas encore trouvé de solution idéale.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Finalement le bépow ne me plaît pas tellement:&lt;br /&gt;
&amp;quot;w&amp;quot; s&#039;enchaîne souvent avec un &amp;quot;o&amp;quot; ou un &amp;quot;e&amp;quot; en anglais… À revoir&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;espace insécable en altgr+space&#039;&#039;&#039; et &#039;&#039;&#039;espace fine insécable en altgr+maj+space&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
space et maj+space donnent une espace classique, je trouvais la combinaison &amp;quot;maj+space = espace&amp;quot; trop dangereuse pour la programmation.&lt;br /&gt;
&lt;br /&gt;
Pour l&#039;instant &#039;&#039;&#039;underscore est en fn+space&#039;&#039;&#039;. Ce n&#039;est pas super logique (ce n&#039;est pas du « déplacement/édition ») mais bon… la couche « déplacement/édition » est aussi accessible que la couche altgr et la laisser quasiment vide serait un peu du gaspillage. Le mieux serait peut-être de caler le &#039;_&#039; ailleurs (mais où ? :-)). Ou alors utiliser un peu plus cette couche fn -&amp;gt; :-)&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Ctrl droit et Compose inversés&#039;&#039;&#039;: les touches Ctrl sont tout à fait inaccessibles sans lever la main. Un &amp;quot;dead_Compose&amp;quot; est accessible en Fn+&#039;,&#039;.&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;Maj et ç inversés&#039;&#039;&#039; pour augmenter l&#039;homogénéité avec l&#039;autre maj (cela rend aussi la touche plus accessible à mon avis).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
  ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
  │ # ¶│ 1 „│ 2 “│ 3 ”│ 4 ≤│ 5 ≥│ 6  ║ 7 ¬│ 8 ¼│ 9 ½│ 0 ¾│ ° ′│ ℝ ″║         ║&lt;br /&gt;
  │ $ –│ &amp;quot; —│ « &amp;lt;│ » &amp;gt;│ ( →│ ) ⇒│ @ ^║ + ±│ - −│ / ÷│ * ×│ = ≠│ % ‰║ &amp;lt;--     ║&lt;br /&gt;
  ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
  ║  |&amp;lt;-  ║ B ¦│ É ˝│ P §│ O Œ│ W  ║ !  │ V  │ D Ð│ L  │ J Ĳ│ ˇ Ə│ ˙  ║   |  ║&lt;br /&gt;
  ║  -&amp;gt;|  ║ b |│ é ´│ p &amp;amp;│ o œ│ w  ║ ` ¡│ v ˇ│ d ð│ l /│ j ĳ│ ^ ə│ ¨ ˘║ &amp;lt;-&#039;  ║&lt;br /&gt;
  ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
  ║        ║ A Æ│ U  │ I  │ E ¤│ ;  ║ C ſ│ T Þ│ S ß│ R  │ N  │ M º│    ║     ║&lt;br /&gt;
  ║ Maj. ⇑ ║ a æ│ u [│ i ]│ e €│ , &#039;║ c ©│ t þ│ s ß│ r ®│ n ˜│ m ¯│Maj.║     ║&lt;br /&gt;
  ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
  ║ «»’  ║ Ê  │ Z  │ Y ‘│ X ’│ : ·│ K  ║ ?  │ Q  │ G  │ H ‡│ F ª║   Ç ,      ║&lt;br /&gt;
  ║ &amp;lt;&amp;gt;&#039;  ║ ê /│ z \│ y {│ x }│ . …│ k ~║ ’ ¿│ q °│ g µ│ h †│ f ˛║   ç ¸      ║&lt;br /&gt;
  ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
  ║       ║      ║     ║ Espace   Fine Insécable  ║     ║       ║     ║      ║&lt;br /&gt;
  ║ Ctrl  ║ Alt  ║ Fn ⇄║ Espace     Insécable     ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
  ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Fn « déplacement/édition » (et underscore)===&lt;br /&gt;
&lt;br /&gt;
* ←  ↓  ↑  →  sous les doigts à droite avec les positions usuelles sur vim.&lt;br /&gt;
*&amp;quot;deb&amp;quot;, &amp;quot;pgdn&amp;quot;, &amp;quot;pgup&amp;quot; et &amp;quot;fin&amp;quot; accessibles facilement (on notera l&#039;homogégéité avec les flèches :)).&lt;br /&gt;
*&amp;quot;esc&amp;quot;, &amp;quot;del&amp;quot;, &amp;quot;bksp&amp;quot; et &amp;quot;entr&amp;quot; sous les doigts de la main gauche: trop bien. :)&lt;br /&gt;
*maj+insert (équivalent du clic scroll) en fn+p (p comme paste (en vim) ou comme prout (dans la vie de tous les jours))&lt;br /&gt;
*ctrl+p et ctrl+n (pour &amp;quot;précédent&amp;quot; et &amp;quot;suivant&amp;quot; dans plein de programmes) en haut des flèches haut et bas (peut-être pas top à cause du &amp;quot;d&amp;quot;: supprimer en vim, du coup, ils sont aussi sur les guillemets).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │    │    │ctl+│ctl+│    │    │    ║    │    │    │    │    │    ║         ║&lt;br /&gt;
 │    │    │ p  │ n  │    │    │    ║    │    │    │    │    │    ║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║dead│dead│maj+│dead│    ║    │ctl+│ctl+│    │    │    │    ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ctrl│ maj│ ins│altg│    ║    │ p  │ n  │    │    │    │    ║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║    │    │    │    │Com-║    │    │    │    │    │    │    ║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ esc│ del│bksp│entr│pose│ ←  │ ↓  │ ↑  | →  │ esc│    │Maj ║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║dead│    │    │    │    │    ║    │    │    │    │    ║            ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║ alt│    │    │    │    │    ║ deb│pgdn│pgup│ fin│    ║            ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║                          ║     ║       ║     ║      ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║            _             ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Des idées ?===&lt;br /&gt;
Si vous avez des idées pour améliorer cette super couche « déplacement/édition » rajoutez-les ici !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon fichier .xkb===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
xkb_keymap        {&lt;br /&gt;
&lt;br /&gt;
xkb_keycodes      { include &amp;quot;xfree86+aliases(azerty)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
xkb_types         {&lt;br /&gt;
    include &amp;quot;complete&amp;quot;&lt;br /&gt;
    type &amp;quot;ALTGR_TWO&amp;quot; {&lt;br /&gt;
       modifiers = LevelThree;&lt;br /&gt;
       map[None] = Level1;&lt;br /&gt;
       map[LevelThree] = Level2;&lt;br /&gt;
       level_name[Level1] = &amp;quot;Base&amp;quot;;&lt;br /&gt;
       level_name[Level2] = &amp;quot;AltGr&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_compatibility { include &amp;quot;complete&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        indicator &amp;quot;Scroll Lock&amp;quot; { controls = Overlay1; allowExplicit = True; drivesKeyboard = True; };&lt;br /&gt;
        &lt;br /&gt;
        interpret F24 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Control); // ctrl-r&lt;br /&gt;
        };&lt;br /&gt;
        interpret F25 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6D&amp;gt;, modifiers=Mod1); // alt-f&lt;br /&gt;
        };&lt;br /&gt;
        interpret F26 {&lt;br /&gt;
            action = LockControls(controls=Overlay1);&lt;br /&gt;
        };&lt;br /&gt;
        interpret F27 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6E&amp;gt;, modifiers=Control); // ctrl-s&lt;br /&gt;
        };&lt;br /&gt;
        interpret F28 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Shift); // insert-shift&lt;br /&gt;
        };&lt;br /&gt;
        interpret F29 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;RGHT&amp;gt;, modifiers=Control); // ctrl-â†’&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
        interpret F30 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6F&amp;gt;, modifiers=Control); // ctrl-Tab&lt;br /&gt;
        };&lt;br /&gt;
        interpret F31 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I71&amp;gt;, modifiers=Control); // ctrl-p&lt;br /&gt;
        };&lt;br /&gt;
        interpret F32 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I72&amp;gt;, modifiers=Control); // ctrl-n&lt;br /&gt;
        };&lt;br /&gt;
        interpret F33 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;INS&amp;gt;, modifiers=Shift); // ctrl-v&lt;br /&gt;
        };&lt;br /&gt;
        interpret F34 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I74&amp;gt;, modifiers=Control); // ctrl-z&lt;br /&gt;
        };&lt;br /&gt;
        interpret F35 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I75&amp;gt;, modifiers=Mod1); // alt-y&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
partial alphanumeric_keys&lt;br /&gt;
xkb_symbols &amp;quot;dvorak&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	name[Group1]= &amp;quot;France - Bepo, ergonomic, Dvorak way (v1.0rc2)&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;pc(pc105)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;TLDE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dollar, numbersign, endash, paragraph ], overlay1 = &amp;lt;I70&amp;gt; }; // $ # – ¶&lt;br /&gt;
	key &amp;lt;AE01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ quotedbl, 1, emdash, doublelowquotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // &amp;quot; 1 — „&lt;br /&gt;
	key &amp;lt;AE02&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotleft, 2, less, leftdoublequotemark ], // « 2 &amp;lt; “&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ less, 2, guillemotleft, leftdoublequotemark ], // &amp;lt; 2 « “&lt;br /&gt;
                     overlay1 = &amp;lt;I7A&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE03&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotright, 3, greater, rightdoublequotemark ], // » 3 &amp;gt; ”&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ greater, 3, guillemotright, rightdoublequotemark ], // &amp;gt; 3 » ”&lt;br /&gt;
                     overlay1 = &amp;lt;I7B&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenleft, 4, U2192, lessthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ( 4 → &lt;br /&gt;
	key &amp;lt;AE05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenright, 5, U21D2, greaterthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ) 5 ⇒ &lt;br /&gt;
	key &amp;lt;AE06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ at, 6, asciicircum ], overlay1 = &amp;lt;I70&amp;gt; }; // @ 6 ^&lt;br /&gt;
	key &amp;lt;AE07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ plus, 7, plusminus, notsign ], overlay1 = &amp;lt;I70&amp;gt; }; // + 7 ± ¬&lt;br /&gt;
	key &amp;lt;AE08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ minus, 8, U2212, onequarter ], overlay1 = &amp;lt;I70&amp;gt; }; // - 8 − ¼&lt;br /&gt;
	key &amp;lt;AE09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ slash, 9, division, onehalf ], overlay1 = &amp;lt;I70&amp;gt; }; // / 9 ÷ ½&lt;br /&gt;
	key &amp;lt;AE10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asterisk, 0, multiply, threequarters ], overlay1 = &amp;lt;I70&amp;gt; }; // * 0 × ¾&lt;br /&gt;
	key &amp;lt;AE11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ equal, degree, notequal, minutes ], overlay1 = &amp;lt;I70&amp;gt; }; // = ° ≠&lt;br /&gt;
	key &amp;lt;AE12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ percent, grave, U2030, seconds ], overlay1 = &amp;lt;I70&amp;gt; }; // % ` ‰&lt;br /&gt;
	key &amp;lt;AD01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ b, B, bar, brokenbar ], overlay1 = &amp;lt;FK13&amp;gt; }; // b B | ¦ dead_ctrl&lt;br /&gt;
	key &amp;lt;AD02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, dead_acute, dead_doubleacute ], overlay1 = &amp;lt;FK14&amp;gt; }; // é É ´ ˝ dead_shift&lt;br /&gt;
	key &amp;lt;AD03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, ampersand, section ], overlay1 = &amp;lt;I77&amp;gt; }; // p P &amp;amp; § insert-shift&lt;br /&gt;
	key &amp;lt;AD04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ o, O, oe, OE ], overlay1 = &amp;lt;FK16&amp;gt; }; // o O œ Œ dead_altgr&lt;br /&gt;
	//key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ egrave, Egrave, dead_grave, grave ], }; // è È ` `&lt;br /&gt;
	key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ w, W, dead_breve ], overlay1 = &amp;lt;FK17&amp;gt; }; // w W ˘ multi_key&lt;br /&gt;
	key &amp;lt;AD06&amp;gt; { type[group1] = &amp;quot;THREE_LEVEL&amp;quot;, [ dead_grave, exclam, exclamdown ], overlay1 = &amp;lt;I70&amp;gt; }; // ` ! ¡&lt;br /&gt;
	key &amp;lt;AD07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ v, V, dead_caron ], overlay1 = &amp;lt;I70&amp;gt; }; // v V ˇ&lt;br /&gt;
	key &amp;lt;AD08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ d, D, eth, ETH ], overlay1 = &amp;lt;I7A&amp;gt;}; // d D ð Ð&lt;br /&gt;
	key &amp;lt;AD09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ l, L, UFDD0 ], overlay1 = &amp;lt;I7B&amp;gt;}; // l L /&lt;br /&gt;
	key &amp;lt;AD10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ j, J, U0133, U0132 ], overlay1 = &amp;lt;I70&amp;gt;}; // j J ĳ Ĳ&lt;br /&gt;
        key &amp;lt;AD11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_circumflex, dead_caron, schwa, SCHWA ], overlay1 = &amp;lt;I70&amp;gt; }; // ^ ˇ ə Ə&lt;br /&gt;
        key &amp;lt;AD12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_diaeresis, dead_abovedot, dead_breve, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ¨ ˙ ˘&lt;br /&gt;
	key &amp;lt;AC01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ a, A, ae, AE ], overlay1 = &amp;lt;ESC&amp;gt; }; // a A æ Æ escape&lt;br /&gt;
        key &amp;lt;AC02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ u, U, bracketleft ], overlay1 = &amp;lt;DELE&amp;gt; }; // u U [ delete&lt;br /&gt;
	key &amp;lt;AC03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ i, I, bracketright ], overlay1 = &amp;lt;BKSP&amp;gt; }; // i I ] backspace&lt;br /&gt;
	key &amp;lt;AC04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ e, E, EuroSign, UFDD1 ], overlay1 = &amp;lt;RTRN&amp;gt; }; // e E € ¤ return&lt;br /&gt;
        key &amp;lt;AC05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, rightsinglequotemark, dead_horn  ], // , ; &#039; &lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, apostrophe, dead_horn  ],           // , ; ’&lt;br /&gt;
            overlay1 = &amp;lt;INS&amp;gt;                                                                    // insert&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AC06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ c, C, copyright, U017F ], overlay1 = &amp;lt;LEFT&amp;gt; }; // c C © ſ&lt;br /&gt;
	key &amp;lt;AC07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ t, T, thorn, THORN ], overlay1 = &amp;lt;DOWN&amp;gt; }; // t T þ Þ&lt;br /&gt;
	key &amp;lt;AC08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ s, S, ssharp, U1E9E ], overlay1 = &amp;lt;UP&amp;gt; }; // s S ß ẞ&lt;br /&gt;
	key &amp;lt;AC09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ r, R, registered, trademark ], overlay1 = &amp;lt;RGHT&amp;gt; }; // r R ® ™&lt;br /&gt;
	key &amp;lt;AC10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ n, N, dead_tilde ], overlay1 = &amp;lt;ESC&amp;gt; }; // n N ~ escape&lt;br /&gt;
	key &amp;lt;AC11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ m, M, dead_macron, masculine ], overlay1 = &amp;lt;I70&amp;gt; }; // m M ¯ º&lt;br /&gt;
        key &amp;lt;BKSL&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_R, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;LSGT&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ecircumflex, Ecircumflex, backslash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ê Ê /&lt;br /&gt;
	key &amp;lt;AB01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ z, Z, slash, VoidSymbol ], overlay1 = &amp;lt;FK15&amp;gt; }; // z Z \&lt;br /&gt;
	key &amp;lt;AB02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ y, Y, braceleft, leftsinglequotemark ], overlay1 = &amp;lt;F35&amp;gt; }; // y Y { ‘&lt;br /&gt;
	key &amp;lt;AB03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ x, X, braceright, rightsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // x X } ’&lt;br /&gt;
	key &amp;lt;AB04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ period, colon, ellipsis, periodcentered ], overlay1 = &amp;lt;I70&amp;gt; }; // . : … ·&lt;br /&gt;
	key &amp;lt;AB05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ k, K, asciitilde, dead_tilde ], overlay1 = &amp;lt;I70&amp;gt; }; // k K ~&lt;br /&gt;
        key &amp;lt;AB06&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, question, questiondown, dead_hook ],           // ’ ? ¿ ̉&lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ rightsinglequotemark, question, questiondown, dead_hook ], // &#039; ? ¿ ̉&lt;br /&gt;
            overlay1 = &amp;lt;HOME&amp;gt;                                                                         // home&lt;br /&gt;
        }; &lt;br /&gt;
	key &amp;lt;AB07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ q, Q, dead_abovering, dead_belowdot ], overlay1 = &amp;lt;PGDN&amp;gt; }; // q Q ˚ ̣pgdn&lt;br /&gt;
	key &amp;lt;AB08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ g, G, UFDD2 ], overlay1 = &amp;lt;PGUP&amp;gt; }; // g G µ pgup&lt;br /&gt;
	key &amp;lt;AB09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ h, H, dagger, doubledagger ], overlay1 = &amp;lt;END&amp;gt; }; // h H † ‡&lt;br /&gt;
	key &amp;lt;AB10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ f, F, dead_ogonek, ordfeminine ], overlay1 = &amp;lt;I25&amp;gt; }; // f F ˛ ª&lt;br /&gt;
	key &amp;lt;RTSH&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ], overlay1 = &amp;lt;I70&amp;gt; }; // ç Ç ¸ ,&lt;br /&gt;
        key &amp;lt;SPCE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ space, space, nobreakspace, U202F ], overlay1 = &amp;lt;I7F&amp;gt; }; // spaces underscore&lt;br /&gt;
&lt;br /&gt;
        // Unused keys mapped to ctrl+letter actions&lt;br /&gt;
        key &amp;lt;I6C&amp;gt; { [ r ] };&lt;br /&gt;
        key &amp;lt;I6D&amp;gt; { [ f ] };&lt;br /&gt;
        key &amp;lt;I6E&amp;gt; { [ s ] };&lt;br /&gt;
        key &amp;lt;I6F&amp;gt; { [ Tab ] };&lt;br /&gt;
        key &amp;lt;I70&amp;gt; { [ VoidSymbol ] };&lt;br /&gt;
        key &amp;lt;I71&amp;gt; { [ p ] };&lt;br /&gt;
        key &amp;lt;I72&amp;gt; { [ n ] };&lt;br /&gt;
        key &amp;lt;I73&amp;gt; { [ v ] };&lt;br /&gt;
        key &amp;lt;I74&amp;gt; { [ z ] };&lt;br /&gt;
        key &amp;lt;I75&amp;gt; { [ y ] };&lt;br /&gt;
        key &amp;lt;I76&amp;gt; { [ space ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // For some reason there are SOMETIMES (not always!) errors with this code:&lt;br /&gt;
        //    key &amp;lt;I7A&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;I7B&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;I7C&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;I7D&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;I7E&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // However passing the action in the Â«Â interpretÂ Â» section for an unsused symbol seems to work&lt;br /&gt;
        key &amp;lt;I60&amp;gt; { [ F24 ] };      // ctrl-R&lt;br /&gt;
        key &amp;lt;I61&amp;gt; { [ F25 ] };      // ctrl-F&lt;br /&gt;
        //key &amp;lt;I77&amp;gt; {  actions[group1] = [ Redirect(keycode=&amp;lt;I6C&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I77&amp;gt; { [ INS ],  actions[group1] = [ Redirect(keycode=&amp;lt;INS&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I78&amp;gt; { [ F29 ] };      // ctrl-right&lt;br /&gt;
        key &amp;lt;I79&amp;gt; { [ F30 ] };      // ctrl+Tab&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        //    key &amp;lt;I79&amp;gt; { [ Tab ], actions = [ setMods(modifiers=Mod1) ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;I7A&amp;gt; { [ F31 ] };      // ctrl-p&lt;br /&gt;
        key &amp;lt;I7B&amp;gt; { [ F32 ] };      // ctrl-n&lt;br /&gt;
        key &amp;lt;I7C&amp;gt; { [ F33 ] };      // ctrl-v&lt;br /&gt;
        key &amp;lt;I7D&amp;gt; { [ F34 ] };      // ctrl-z&lt;br /&gt;
        key &amp;lt;I7E&amp;gt; { [ F35 ] };      // alt-y&lt;br /&gt;
        key &amp;lt;I7F&amp;gt; { [ underscore ] };      // _&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Using &amp;lt; 127 keycodes also works&lt;br /&gt;
        key &amp;lt;FK13&amp;gt; { actions = [ LatchMods(modifiers=Control) ] };        // dead ctrl&lt;br /&gt;
        key &amp;lt;FK14&amp;gt; { actions = [ LatchMods(modifiers=Shift) ] };          // dead shift&lt;br /&gt;
        key &amp;lt;FK15&amp;gt; { actions = [ LatchMods(modifiers=Mod1) ] };           // dead alt&lt;br /&gt;
        key &amp;lt;FK16&amp;gt; { actions = [ LatchMods(modifiers=AltGr) ] };          // dead altgr&lt;br /&gt;
        key &amp;lt;FK17&amp;gt; { [ Multi_key ] };                                     // multi_key&lt;br /&gt;
        //    key &amp;lt;FK13&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;FK14&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;FK15&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;FK16&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;FK17&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
        // See also the bug thread here : https://bugs.freedesktop.org/show_bug.cgi?id=12401&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Transforme CAPS en lock de couche alternative «déplacement/édition», et garde le caps-lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour échanger Shift et Caps_Lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; {  [    Caps_Lock    ] };&lt;br /&gt;
&lt;br /&gt;
        // Combinaison des 2 : attention, requiert que les LFSH et CAPS dans les définitions de la touche &amp;lt;AC01&amp;gt; soient aussi échangées dans la partie principale&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
&lt;br /&gt;
        // shift + lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer CAPS en un AltGr gauche, en gardant le lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ ISO_Level3_Shift, Caps_Lock ], actions = [ SetMods(modifiers=LevelThree), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer LWIN en un AltGr gauche&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour mettre un Compose sur RWIN&lt;br /&gt;
        //key &amp;lt;RWIN&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        // key &amp;lt;MENU&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        //key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = [ SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;RCTL&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour que LWIN permette de changer de groupe&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
&lt;br /&gt;
        // Echange CTRL et Alt Gauches. Et puisque LWIN est réaffectée, garde un modificateur META en niveau 3 et 4 (AltGr)&lt;br /&gt;
        // Note: Activer cette option fonctionne mieux lorsque que l&#039;on échange aussi les raccourcis du style Alt+Tabâ€¦&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; {        [ Control_L ], actions = [ SetMods(modifiers=Control) ]       };&lt;br /&gt;
        //    key &amp;lt;LCTL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [       Alt_L,  Alt_L,  Meta_L, Meta_L         ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ]       };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        key &amp;lt;LALT&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; { type = &amp;quot;ONE_LEVEL&amp;quot;, [ VoidSymbol ], actions = [ LockControls(controls=Overlay1) ] };&lt;br /&gt;
            &lt;br /&gt;
            key &amp;lt;LFSH&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
            key &amp;lt;LWIN&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [ Alt_L, Alt_L, Meta_L, Meta_L ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ] };&lt;br /&gt;
&lt;br /&gt;
            // Make Alt+Tab still work in the overlay !&lt;br /&gt;
        //key  &amp;lt;TAB&amp;gt; {&lt;br /&gt;
        //    // would need an appropriate type here [ Tab,  ISO_Left_Tab    ],&lt;br /&gt;
        //    overlay1 = &amp;lt;F30&amp;gt;&lt;br /&gt;
        //};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;level3(ralt_switch)&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_geometry { include &amp;quot;pc(pc105)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13309</id>
		<title>Utilisateur:Legrostdg</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13309"/>
		<updated>2009-03-25T23:02:10Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : /* Fn « déplacement/édition » (et underscore) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La [[Utilisateur:Nbrodu|variante proposée par Nbrodu]] est très utile mais étant plutôt adepte de vim, je n&#039;utilisais pas beaucoup les raccourcis en Ctrl+… En revanche return, delete, backspace et escape avaient selon moi besoin d&#039;être plus accessibles. J&#039;en ai profité pour mettre les touches de direction &amp;quot;alla vim&amp;quot; et ajuster les touches début, fin, pgup et pgdn de manière plus homogène.&lt;br /&gt;
&lt;br /&gt;
J&#039;ai également rajouté des touches dead-modificateur (plus parce que j&#039;étais content d&#039;avoir trouvé comment faire qu&#039;autre chose).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Keymap « de base »===&lt;br /&gt;
J&#039;ai adopté la version bépow. [[Utilisateur:Kaze/Bépo-int|Explications ici]].&lt;br /&gt;
&lt;br /&gt;
Le w était vraiment trop loin et les &#039;[&#039; et &#039;]&#039; disponibles dans la même rangée que &#039;{&#039;-&#039;}&#039; et &#039;&amp;lt;&#039;-&#039;&amp;gt;&#039; je trouvait ça trop pratique. Les parenthèses en altgr+&#039;é&#039; et altgr+&#039;p&#039; ce serait selon moi royal, mais c&#039;est vrai que le &#039;´&#039; est bien sur le é… Je n&#039;ai pas encore trouvé de solution idéale. En tous cas, pour l&#039;instant:&lt;br /&gt;
&lt;br /&gt;
L&#039;espace insécable est accessible en altgr+space et l&#039;espace fine insécable en altgr+maj+space. space et maj+space donnent une espace classique, je trouvais la combinaison &amp;quot;maj+space = espace&amp;quot; trop dangereuse pour la programmation. Pour l&#039;instant le &#039;_&#039; est accessible en fn+space. Ce n&#039;est pas super logique (le &#039;_&#039; c&#039;est pas du « déplacement/édition ») mais bon… la couche « déplacement/édition » est aussi accessible que la couche altgr et la laisser quasiment vide serait un peu du gaspillage. Le mieux serait peut-être de caler le &#039;_&#039; ailleurs (mais où ? :-)). Ou alors utiliser un peu plus cette couche fn -&amp;gt; :-)&lt;br /&gt;
&lt;br /&gt;
Ctrl droit et Compose sont inversés: les touches Ctrl sont tout à fait inaccessibles sans lever la main. Un &amp;quot;dead_Compose&amp;quot; est accessible en Fn+&#039;,&#039;.&lt;br /&gt;
&lt;br /&gt;
Maj et ç sont inversés pour augmenter l&#039;homogénéité avec l&#039;autre maj (cela rend aussi la touche plus accessible à mon avis).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
  ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
  │ # ¶│ 1 „│ 2 “│ 3 ”│ 4 ≤│ 5 ≥│ 6  ║ 7 ¬│ 8 ¼│ 9 ½│ 0 ¾│ ° ′│ ℝ ″║         ║&lt;br /&gt;
  │ $ –│ &amp;quot; —│ « &amp;lt;│ » &amp;gt;│ ( →│ ) ⇒│ @ ^║ + ±│ - −│ / ÷│ * ×│ = ≠│ % ‰║ &amp;lt;--     ║&lt;br /&gt;
  ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
  ║  |&amp;lt;-  ║ B ¦│ É ˝│ P §│ O Œ│ W  ║ !  │ V  │ D Ð│ L  │ J Ĳ│ ˇ Ə│ ˙  ║   |  ║&lt;br /&gt;
  ║  -&amp;gt;|  ║ b |│ é ´│ p &amp;amp;│ o œ│ w  ║ ` ¡│ v ˇ│ d ð│ l /│ j ĳ│ ^ ə│ ¨ ˘║ &amp;lt;-&#039;  ║&lt;br /&gt;
  ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
  ║        ║ A Æ│ U  │ I  │ E ¤│ ;  ║ C ſ│ T Þ│ S ß│ R  │ N  │ M º│    ║     ║&lt;br /&gt;
  ║ Maj. ⇑ ║ a æ│ u [│ i ]│ e €│ , &#039;║ c ©│ t þ│ s ß│ r ®│ n ˜│ m ¯│Maj.║     ║&lt;br /&gt;
  ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
  ║ «»’  ║ Ê  │ Z  │ Y ‘│ X ’│ : ·│ K  ║ ?  │ Q  │ G  │ H ‡│ F ª║   Ç ,      ║&lt;br /&gt;
  ║ &amp;lt;&amp;gt;&#039;  ║ ê /│ z \│ y {│ x }│ . …│ k ~║ ’ ¿│ q °│ g µ│ h †│ f ˛║   ç ¸      ║&lt;br /&gt;
  ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
  ║       ║      ║     ║ Espace   Fine Insécable  ║     ║       ║     ║      ║&lt;br /&gt;
  ║ Ctrl  ║ Alt  ║ Fn ⇄║ Espace     Insécable     ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
  ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Fn « déplacement/édition » (et underscore)===&lt;br /&gt;
&lt;br /&gt;
* ←  ↓  ↑  →  sous les doigts à droite avec les positions usuelles sur vim.&lt;br /&gt;
*&amp;quot;deb&amp;quot;, &amp;quot;pgdn&amp;quot;, &amp;quot;pgup&amp;quot; et &amp;quot;fin&amp;quot; accessibles facilement (on notera l&#039;homogégéité avec les flèches :)).&lt;br /&gt;
*&amp;quot;esc&amp;quot;, &amp;quot;del&amp;quot;, &amp;quot;bksp&amp;quot; et &amp;quot;entr&amp;quot; sous les doigts de la main gauche: trop bien. :)&lt;br /&gt;
*maj+insert (équivalent du clic scroll) en fn+p (p comme paste (en vim) ou comme prout (dans la vie de tous les jours))&lt;br /&gt;
*ctrl+p et ctrl+n (pour &amp;quot;précédent&amp;quot; et &amp;quot;suivant&amp;quot; dans plein de programmes) en haut des flèches haut et bas (peut-être pas top à cause du &amp;quot;d&amp;quot;: supprimer en vim, du coup, ils sont aussi sur les guillemets).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │    │    │ctl+│ctl+│    │    │    ║    │    │    │    │    │    ║         ║&lt;br /&gt;
 │    │    │ p  │ n  │    │    │    ║    │    │    │    │    │    ║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║dead│dead│maj+│dead│    ║    │ctl+│ctl+│    │    │    │    ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ctrl│ maj│ ins│altg│    ║    │ p  │ n  │    │    │    │    ║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║    │    │    │    │Com-║    │    │    │    │    │    │    ║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ esc│ del│bksp│entr│pose│ ←  │ ↓  │ ↑  | →  │ esc│    │Maj ║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║dead│    │    │    │    │    ║    │    │    │    │    ║            ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║ alt│    │    │    │    │    ║ deb│pgdn│pgup│ fin│    ║            ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║                          ║     ║       ║     ║      ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║            _             ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Des idées ?===&lt;br /&gt;
Si vous avez des idées pour améliorer cette super couche « déplacement/édition » rajoutez-les ici !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon fichier .xkb===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
xkb_keymap        {&lt;br /&gt;
&lt;br /&gt;
xkb_keycodes      { include &amp;quot;xfree86+aliases(azerty)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
xkb_types         {&lt;br /&gt;
    include &amp;quot;complete&amp;quot;&lt;br /&gt;
    type &amp;quot;ALTGR_TWO&amp;quot; {&lt;br /&gt;
       modifiers = LevelThree;&lt;br /&gt;
       map[None] = Level1;&lt;br /&gt;
       map[LevelThree] = Level2;&lt;br /&gt;
       level_name[Level1] = &amp;quot;Base&amp;quot;;&lt;br /&gt;
       level_name[Level2] = &amp;quot;AltGr&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_compatibility { include &amp;quot;complete&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        indicator &amp;quot;Scroll Lock&amp;quot; { controls = Overlay1; allowExplicit = True; drivesKeyboard = True; };&lt;br /&gt;
        &lt;br /&gt;
        interpret F24 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Control); // ctrl-r&lt;br /&gt;
        };&lt;br /&gt;
        interpret F25 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6D&amp;gt;, modifiers=Mod1); // alt-f&lt;br /&gt;
        };&lt;br /&gt;
        interpret F26 {&lt;br /&gt;
            action = LockControls(controls=Overlay1);&lt;br /&gt;
        };&lt;br /&gt;
        interpret F27 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6E&amp;gt;, modifiers=Control); // ctrl-s&lt;br /&gt;
        };&lt;br /&gt;
        interpret F28 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Shift); // insert-shift&lt;br /&gt;
        };&lt;br /&gt;
        interpret F29 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;RGHT&amp;gt;, modifiers=Control); // ctrl-â†’&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
        interpret F30 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6F&amp;gt;, modifiers=Control); // ctrl-Tab&lt;br /&gt;
        };&lt;br /&gt;
        interpret F31 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I71&amp;gt;, modifiers=Control); // ctrl-p&lt;br /&gt;
        };&lt;br /&gt;
        interpret F32 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I72&amp;gt;, modifiers=Control); // ctrl-n&lt;br /&gt;
        };&lt;br /&gt;
        interpret F33 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;INS&amp;gt;, modifiers=Shift); // ctrl-v&lt;br /&gt;
        };&lt;br /&gt;
        interpret F34 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I74&amp;gt;, modifiers=Control); // ctrl-z&lt;br /&gt;
        };&lt;br /&gt;
        interpret F35 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I75&amp;gt;, modifiers=Mod1); // alt-y&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
partial alphanumeric_keys&lt;br /&gt;
xkb_symbols &amp;quot;dvorak&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	name[Group1]= &amp;quot;France - Bepo, ergonomic, Dvorak way (v1.0rc2)&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;pc(pc105)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;TLDE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dollar, numbersign, endash, paragraph ], overlay1 = &amp;lt;I70&amp;gt; }; // $ # – ¶&lt;br /&gt;
	key &amp;lt;AE01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ quotedbl, 1, emdash, doublelowquotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // &amp;quot; 1 — „&lt;br /&gt;
	key &amp;lt;AE02&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotleft, 2, less, leftdoublequotemark ], // « 2 &amp;lt; “&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ less, 2, guillemotleft, leftdoublequotemark ], // &amp;lt; 2 « “&lt;br /&gt;
                     overlay1 = &amp;lt;I7A&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE03&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotright, 3, greater, rightdoublequotemark ], // » 3 &amp;gt; ”&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ greater, 3, guillemotright, rightdoublequotemark ], // &amp;gt; 3 » ”&lt;br /&gt;
                     overlay1 = &amp;lt;I7B&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenleft, 4, U2192, lessthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ( 4 → &lt;br /&gt;
	key &amp;lt;AE05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenright, 5, U21D2, greaterthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ) 5 ⇒ &lt;br /&gt;
	key &amp;lt;AE06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ at, 6, asciicircum ], overlay1 = &amp;lt;I70&amp;gt; }; // @ 6 ^&lt;br /&gt;
	key &amp;lt;AE07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ plus, 7, plusminus, notsign ], overlay1 = &amp;lt;I70&amp;gt; }; // + 7 ± ¬&lt;br /&gt;
	key &amp;lt;AE08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ minus, 8, U2212, onequarter ], overlay1 = &amp;lt;I70&amp;gt; }; // - 8 − ¼&lt;br /&gt;
	key &amp;lt;AE09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ slash, 9, division, onehalf ], overlay1 = &amp;lt;I70&amp;gt; }; // / 9 ÷ ½&lt;br /&gt;
	key &amp;lt;AE10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asterisk, 0, multiply, threequarters ], overlay1 = &amp;lt;I70&amp;gt; }; // * 0 × ¾&lt;br /&gt;
	key &amp;lt;AE11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ equal, degree, notequal, minutes ], overlay1 = &amp;lt;I70&amp;gt; }; // = ° ≠&lt;br /&gt;
	key &amp;lt;AE12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ percent, grave, U2030, seconds ], overlay1 = &amp;lt;I70&amp;gt; }; // % ` ‰&lt;br /&gt;
	key &amp;lt;AD01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ b, B, bar, brokenbar ], overlay1 = &amp;lt;FK13&amp;gt; }; // b B | ¦ dead_ctrl&lt;br /&gt;
	key &amp;lt;AD02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, dead_acute, dead_doubleacute ], overlay1 = &amp;lt;FK14&amp;gt; }; // é É ´ ˝ dead_shift&lt;br /&gt;
	key &amp;lt;AD03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, ampersand, section ], overlay1 = &amp;lt;I77&amp;gt; }; // p P &amp;amp; § insert-shift&lt;br /&gt;
	key &amp;lt;AD04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ o, O, oe, OE ], overlay1 = &amp;lt;FK16&amp;gt; }; // o O œ Œ dead_altgr&lt;br /&gt;
	//key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ egrave, Egrave, dead_grave, grave ], }; // è È ` `&lt;br /&gt;
	key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ w, W, dead_breve ], overlay1 = &amp;lt;FK17&amp;gt; }; // w W ˘ multi_key&lt;br /&gt;
	key &amp;lt;AD06&amp;gt; { type[group1] = &amp;quot;THREE_LEVEL&amp;quot;, [ dead_grave, exclam, exclamdown ], overlay1 = &amp;lt;I70&amp;gt; }; // ` ! ¡&lt;br /&gt;
	key &amp;lt;AD07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ v, V, dead_caron ], overlay1 = &amp;lt;I70&amp;gt; }; // v V ˇ&lt;br /&gt;
	key &amp;lt;AD08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ d, D, eth, ETH ], overlay1 = &amp;lt;I7A&amp;gt;}; // d D ð Ð&lt;br /&gt;
	key &amp;lt;AD09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ l, L, UFDD0 ], overlay1 = &amp;lt;I7B&amp;gt;}; // l L /&lt;br /&gt;
	key &amp;lt;AD10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ j, J, U0133, U0132 ], overlay1 = &amp;lt;I70&amp;gt;}; // j J ĳ Ĳ&lt;br /&gt;
        key &amp;lt;AD11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_circumflex, dead_caron, schwa, SCHWA ], overlay1 = &amp;lt;I70&amp;gt; }; // ^ ˇ ə Ə&lt;br /&gt;
        key &amp;lt;AD12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_diaeresis, dead_abovedot, dead_breve, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ¨ ˙ ˘&lt;br /&gt;
	key &amp;lt;AC01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ a, A, ae, AE ], overlay1 = &amp;lt;ESC&amp;gt; }; // a A æ Æ escape&lt;br /&gt;
        key &amp;lt;AC02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ u, U, bracketleft ], overlay1 = &amp;lt;DELE&amp;gt; }; // u U [ delete&lt;br /&gt;
	key &amp;lt;AC03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ i, I, bracketright ], overlay1 = &amp;lt;BKSP&amp;gt; }; // i I ] backspace&lt;br /&gt;
	key &amp;lt;AC04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ e, E, EuroSign, UFDD1 ], overlay1 = &amp;lt;RTRN&amp;gt; }; // e E € ¤ return&lt;br /&gt;
        key &amp;lt;AC05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, rightsinglequotemark, dead_horn  ], // , ; &#039; &lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, apostrophe, dead_horn  ],           // , ; ’&lt;br /&gt;
            overlay1 = &amp;lt;INS&amp;gt;                                                                    // insert&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AC06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ c, C, copyright, U017F ], overlay1 = &amp;lt;LEFT&amp;gt; }; // c C © ſ&lt;br /&gt;
	key &amp;lt;AC07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ t, T, thorn, THORN ], overlay1 = &amp;lt;DOWN&amp;gt; }; // t T þ Þ&lt;br /&gt;
	key &amp;lt;AC08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ s, S, ssharp, U1E9E ], overlay1 = &amp;lt;UP&amp;gt; }; // s S ß ẞ&lt;br /&gt;
	key &amp;lt;AC09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ r, R, registered, trademark ], overlay1 = &amp;lt;RGHT&amp;gt; }; // r R ® ™&lt;br /&gt;
	key &amp;lt;AC10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ n, N, dead_tilde ], overlay1 = &amp;lt;ESC&amp;gt; }; // n N ~ escape&lt;br /&gt;
	key &amp;lt;AC11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ m, M, dead_macron, masculine ], overlay1 = &amp;lt;I70&amp;gt; }; // m M ¯ º&lt;br /&gt;
        key &amp;lt;BKSL&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_R, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;LSGT&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ecircumflex, Ecircumflex, backslash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ê Ê /&lt;br /&gt;
	key &amp;lt;AB01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ z, Z, slash, VoidSymbol ], overlay1 = &amp;lt;FK15&amp;gt; }; // z Z \&lt;br /&gt;
	key &amp;lt;AB02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ y, Y, braceleft, leftsinglequotemark ], overlay1 = &amp;lt;F35&amp;gt; }; // y Y { ‘&lt;br /&gt;
	key &amp;lt;AB03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ x, X, braceright, rightsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // x X } ’&lt;br /&gt;
	key &amp;lt;AB04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ period, colon, ellipsis, periodcentered ], overlay1 = &amp;lt;I70&amp;gt; }; // . : … ·&lt;br /&gt;
	key &amp;lt;AB05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ k, K, asciitilde, dead_tilde ], overlay1 = &amp;lt;I70&amp;gt; }; // k K ~&lt;br /&gt;
        key &amp;lt;AB06&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, question, questiondown, dead_hook ],           // ’ ? ¿ ̉&lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ rightsinglequotemark, question, questiondown, dead_hook ], // &#039; ? ¿ ̉&lt;br /&gt;
            overlay1 = &amp;lt;HOME&amp;gt;                                                                         // home&lt;br /&gt;
        }; &lt;br /&gt;
	key &amp;lt;AB07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ q, Q, dead_abovering, dead_belowdot ], overlay1 = &amp;lt;PGDN&amp;gt; }; // q Q ˚ ̣pgdn&lt;br /&gt;
	key &amp;lt;AB08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ g, G, UFDD2 ], overlay1 = &amp;lt;PGUP&amp;gt; }; // g G µ pgup&lt;br /&gt;
	key &amp;lt;AB09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ h, H, dagger, doubledagger ], overlay1 = &amp;lt;END&amp;gt; }; // h H † ‡&lt;br /&gt;
	key &amp;lt;AB10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ f, F, dead_ogonek, ordfeminine ], overlay1 = &amp;lt;I25&amp;gt; }; // f F ˛ ª&lt;br /&gt;
	key &amp;lt;RTSH&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ], overlay1 = &amp;lt;I70&amp;gt; }; // ç Ç ¸ ,&lt;br /&gt;
        key &amp;lt;SPCE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ space, space, nobreakspace, U202F ], overlay1 = &amp;lt;I7F&amp;gt; }; // spaces underscore&lt;br /&gt;
&lt;br /&gt;
        // Unused keys mapped to ctrl+letter actions&lt;br /&gt;
        key &amp;lt;I6C&amp;gt; { [ r ] };&lt;br /&gt;
        key &amp;lt;I6D&amp;gt; { [ f ] };&lt;br /&gt;
        key &amp;lt;I6E&amp;gt; { [ s ] };&lt;br /&gt;
        key &amp;lt;I6F&amp;gt; { [ Tab ] };&lt;br /&gt;
        key &amp;lt;I70&amp;gt; { [ VoidSymbol ] };&lt;br /&gt;
        key &amp;lt;I71&amp;gt; { [ p ] };&lt;br /&gt;
        key &amp;lt;I72&amp;gt; { [ n ] };&lt;br /&gt;
        key &amp;lt;I73&amp;gt; { [ v ] };&lt;br /&gt;
        key &amp;lt;I74&amp;gt; { [ z ] };&lt;br /&gt;
        key &amp;lt;I75&amp;gt; { [ y ] };&lt;br /&gt;
        key &amp;lt;I76&amp;gt; { [ space ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // For some reason there are SOMETIMES (not always!) errors with this code:&lt;br /&gt;
        //    key &amp;lt;I7A&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;I7B&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;I7C&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;I7D&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;I7E&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // However passing the action in the Â«Â interpretÂ Â» section for an unsused symbol seems to work&lt;br /&gt;
        key &amp;lt;I60&amp;gt; { [ F24 ] };      // ctrl-R&lt;br /&gt;
        key &amp;lt;I61&amp;gt; { [ F25 ] };      // ctrl-F&lt;br /&gt;
        //key &amp;lt;I77&amp;gt; {  actions[group1] = [ Redirect(keycode=&amp;lt;I6C&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I77&amp;gt; { [ INS ],  actions[group1] = [ Redirect(keycode=&amp;lt;INS&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I78&amp;gt; { [ F29 ] };      // ctrl-right&lt;br /&gt;
        key &amp;lt;I79&amp;gt; { [ F30 ] };      // ctrl+Tab&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        //    key &amp;lt;I79&amp;gt; { [ Tab ], actions = [ setMods(modifiers=Mod1) ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;I7A&amp;gt; { [ F31 ] };      // ctrl-p&lt;br /&gt;
        key &amp;lt;I7B&amp;gt; { [ F32 ] };      // ctrl-n&lt;br /&gt;
        key &amp;lt;I7C&amp;gt; { [ F33 ] };      // ctrl-v&lt;br /&gt;
        key &amp;lt;I7D&amp;gt; { [ F34 ] };      // ctrl-z&lt;br /&gt;
        key &amp;lt;I7E&amp;gt; { [ F35 ] };      // alt-y&lt;br /&gt;
        key &amp;lt;I7F&amp;gt; { [ underscore ] };      // _&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Using &amp;lt; 127 keycodes also works&lt;br /&gt;
        key &amp;lt;FK13&amp;gt; { actions = [ LatchMods(modifiers=Control) ] };        // dead ctrl&lt;br /&gt;
        key &amp;lt;FK14&amp;gt; { actions = [ LatchMods(modifiers=Shift) ] };          // dead shift&lt;br /&gt;
        key &amp;lt;FK15&amp;gt; { actions = [ LatchMods(modifiers=Mod1) ] };           // dead alt&lt;br /&gt;
        key &amp;lt;FK16&amp;gt; { actions = [ LatchMods(modifiers=AltGr) ] };          // dead altgr&lt;br /&gt;
        key &amp;lt;FK17&amp;gt; { [ Multi_key ] };                                     // multi_key&lt;br /&gt;
        //    key &amp;lt;FK13&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;FK14&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;FK15&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;FK16&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;FK17&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
        // See also the bug thread here : https://bugs.freedesktop.org/show_bug.cgi?id=12401&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Transforme CAPS en lock de couche alternative «déplacement/édition», et garde le caps-lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour échanger Shift et Caps_Lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; {  [    Caps_Lock    ] };&lt;br /&gt;
&lt;br /&gt;
        // Combinaison des 2 : attention, requiert que les LFSH et CAPS dans les définitions de la touche &amp;lt;AC01&amp;gt; soient aussi échangées dans la partie principale&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
&lt;br /&gt;
        // shift + lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer CAPS en un AltGr gauche, en gardant le lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ ISO_Level3_Shift, Caps_Lock ], actions = [ SetMods(modifiers=LevelThree), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer LWIN en un AltGr gauche&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour mettre un Compose sur RWIN&lt;br /&gt;
        //key &amp;lt;RWIN&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        // key &amp;lt;MENU&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        //key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = [ SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;RCTL&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour que LWIN permette de changer de groupe&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
&lt;br /&gt;
        // Echange CTRL et Alt Gauches. Et puisque LWIN est réaffectée, garde un modificateur META en niveau 3 et 4 (AltGr)&lt;br /&gt;
        // Note: Activer cette option fonctionne mieux lorsque que l&#039;on échange aussi les raccourcis du style Alt+Tabâ€¦&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; {        [ Control_L ], actions = [ SetMods(modifiers=Control) ]       };&lt;br /&gt;
        //    key &amp;lt;LCTL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [       Alt_L,  Alt_L,  Meta_L, Meta_L         ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ]       };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        key &amp;lt;LALT&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; { type = &amp;quot;ONE_LEVEL&amp;quot;, [ VoidSymbol ], actions = [ LockControls(controls=Overlay1) ] };&lt;br /&gt;
            &lt;br /&gt;
            key &amp;lt;LFSH&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
            key &amp;lt;LWIN&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [ Alt_L, Alt_L, Meta_L, Meta_L ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ] };&lt;br /&gt;
&lt;br /&gt;
            // Make Alt+Tab still work in the overlay !&lt;br /&gt;
        //key  &amp;lt;TAB&amp;gt; {&lt;br /&gt;
        //    // would need an appropriate type here [ Tab,  ISO_Left_Tab    ],&lt;br /&gt;
        //    overlay1 = &amp;lt;F30&amp;gt;&lt;br /&gt;
        //};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;level3(ralt_switch)&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_geometry { include &amp;quot;pc(pc105)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13308</id>
		<title>Utilisateur:Legrostdg</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13308"/>
		<updated>2009-03-25T22:55:08Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : /* Fn « déplacement/édition » (et underscore) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La [[Utilisateur:Nbrodu|variante proposée par Nbrodu]] est très utile mais étant plutôt adepte de vim, je n&#039;utilisais pas beaucoup les raccourcis en Ctrl+… En revanche return, delete, backspace et escape avaient selon moi besoin d&#039;être plus accessibles. J&#039;en ai profité pour mettre les touches de direction &amp;quot;alla vim&amp;quot; et ajuster les touches début, fin, pgup et pgdn de manière plus homogène.&lt;br /&gt;
&lt;br /&gt;
J&#039;ai également rajouté des touches dead-modificateur (plus parce que j&#039;étais content d&#039;avoir trouvé comment faire qu&#039;autre chose).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Keymap « de base »===&lt;br /&gt;
J&#039;ai adopté la version bépow. [[Utilisateur:Kaze/Bépo-int|Explications ici]].&lt;br /&gt;
&lt;br /&gt;
Le w était vraiment trop loin et les &#039;[&#039; et &#039;]&#039; disponibles dans la même rangée que &#039;{&#039;-&#039;}&#039; et &#039;&amp;lt;&#039;-&#039;&amp;gt;&#039; je trouvait ça trop pratique. Les parenthèses en altgr+&#039;é&#039; et altgr+&#039;p&#039; ce serait selon moi royal, mais c&#039;est vrai que le &#039;´&#039; est bien sur le é… Je n&#039;ai pas encore trouvé de solution idéale. En tous cas, pour l&#039;instant:&lt;br /&gt;
&lt;br /&gt;
L&#039;espace insécable est accessible en altgr+space et l&#039;espace fine insécable en altgr+maj+space. space et maj+space donnent une espace classique, je trouvais la combinaison &amp;quot;maj+space = espace&amp;quot; trop dangereuse pour la programmation. Pour l&#039;instant le &#039;_&#039; est accessible en fn+space. Ce n&#039;est pas super logique (le &#039;_&#039; c&#039;est pas du « déplacement/édition ») mais bon… la couche « déplacement/édition » est aussi accessible que la couche altgr et la laisser quasiment vide serait un peu du gaspillage. Le mieux serait peut-être de caler le &#039;_&#039; ailleurs (mais où ? :-)). Ou alors utiliser un peu plus cette couche fn -&amp;gt; :-)&lt;br /&gt;
&lt;br /&gt;
Ctrl droit et Compose sont inversés: les touches Ctrl sont tout à fait inaccessibles sans lever la main. Un &amp;quot;dead_Compose&amp;quot; est accessible en Fn+&#039;,&#039;.&lt;br /&gt;
&lt;br /&gt;
Maj et ç sont inversés pour augmenter l&#039;homogénéité avec l&#039;autre maj (cela rend aussi la touche plus accessible à mon avis).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
  ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
  │ # ¶│ 1 „│ 2 “│ 3 ”│ 4 ≤│ 5 ≥│ 6  ║ 7 ¬│ 8 ¼│ 9 ½│ 0 ¾│ ° ′│ ℝ ″║         ║&lt;br /&gt;
  │ $ –│ &amp;quot; —│ « &amp;lt;│ » &amp;gt;│ ( →│ ) ⇒│ @ ^║ + ±│ - −│ / ÷│ * ×│ = ≠│ % ‰║ &amp;lt;--     ║&lt;br /&gt;
  ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
  ║  |&amp;lt;-  ║ B ¦│ É ˝│ P §│ O Œ│ W  ║ !  │ V  │ D Ð│ L  │ J Ĳ│ ˇ Ə│ ˙  ║   |  ║&lt;br /&gt;
  ║  -&amp;gt;|  ║ b |│ é ´│ p &amp;amp;│ o œ│ w  ║ ` ¡│ v ˇ│ d ð│ l /│ j ĳ│ ^ ə│ ¨ ˘║ &amp;lt;-&#039;  ║&lt;br /&gt;
  ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
  ║        ║ A Æ│ U  │ I  │ E ¤│ ;  ║ C ſ│ T Þ│ S ß│ R  │ N  │ M º│    ║     ║&lt;br /&gt;
  ║ Maj. ⇑ ║ a æ│ u [│ i ]│ e €│ , &#039;║ c ©│ t þ│ s ß│ r ®│ n ˜│ m ¯│Maj.║     ║&lt;br /&gt;
  ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
  ║ «»’  ║ Ê  │ Z  │ Y ‘│ X ’│ : ·│ K  ║ ?  │ Q  │ G  │ H ‡│ F ª║   Ç ,      ║&lt;br /&gt;
  ║ &amp;lt;&amp;gt;&#039;  ║ ê /│ z \│ y {│ x }│ . …│ k ~║ ’ ¿│ q °│ g µ│ h †│ f ˛║   ç ¸      ║&lt;br /&gt;
  ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
  ║       ║      ║     ║ Espace   Fine Insécable  ║     ║       ║     ║      ║&lt;br /&gt;
  ║ Ctrl  ║ Alt  ║ Fn ⇄║ Espace     Insécable     ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
  ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Fn « déplacement/édition » (et underscore)===&lt;br /&gt;
&lt;br /&gt;
*maj+insert (équivalent du clic scroll) en fn+p (p comme paste (en vim) ou comme prout (dans la vie de tous les jours))&lt;br /&gt;
*ctrl+p et ctrl+n (pour &amp;quot;précédent&amp;quot; et &amp;quot;suivant&amp;quot; dans plein de programmes) en haut des flèches haut et bas (peut-être pas top à cause du &amp;quot;d&amp;quot;: supprimer en vim, du coup, ils sont aussi sur les guillemets).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │    │    │ctl+│ctl+│    │    │    ║    │    │    │    │    │    ║         ║&lt;br /&gt;
 │    │    │ p  │ n  │    │    │    ║    │    │    │    │    │    ║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║dead│dead│maj+│dead│    ║    │ctl+│ctl+│    │    │    │    ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ctrl│ maj│ ins│altg│    ║    │ p  │ n  │    │    │    │    ║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║    │    │    │    │Com-║    │    │    │    │    │    │    ║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ esc│ del│bksp│entr│pose│ ←  │ ↓  │ ↑  | →  │ esc│    │Maj ║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║dead│    │    │    │    │    ║    │    │    │    │    ║            ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║ alt│    │    │    │    │    ║ deb│pgdn│pgup│ fin│    ║            ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║                          ║     ║       ║     ║      ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║            _             ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Des idées ?===&lt;br /&gt;
Si vous avez des idées pour améliorer cette super couche « déplacement/édition » rajoutez-les ici !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon fichier .xkb===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
xkb_keymap        {&lt;br /&gt;
&lt;br /&gt;
xkb_keycodes      { include &amp;quot;xfree86+aliases(azerty)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
xkb_types         {&lt;br /&gt;
    include &amp;quot;complete&amp;quot;&lt;br /&gt;
    type &amp;quot;ALTGR_TWO&amp;quot; {&lt;br /&gt;
       modifiers = LevelThree;&lt;br /&gt;
       map[None] = Level1;&lt;br /&gt;
       map[LevelThree] = Level2;&lt;br /&gt;
       level_name[Level1] = &amp;quot;Base&amp;quot;;&lt;br /&gt;
       level_name[Level2] = &amp;quot;AltGr&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_compatibility { include &amp;quot;complete&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        indicator &amp;quot;Scroll Lock&amp;quot; { controls = Overlay1; allowExplicit = True; drivesKeyboard = True; };&lt;br /&gt;
        &lt;br /&gt;
        interpret F24 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Control); // ctrl-r&lt;br /&gt;
        };&lt;br /&gt;
        interpret F25 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6D&amp;gt;, modifiers=Mod1); // alt-f&lt;br /&gt;
        };&lt;br /&gt;
        interpret F26 {&lt;br /&gt;
            action = LockControls(controls=Overlay1);&lt;br /&gt;
        };&lt;br /&gt;
        interpret F27 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6E&amp;gt;, modifiers=Control); // ctrl-s&lt;br /&gt;
        };&lt;br /&gt;
        interpret F28 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Shift); // insert-shift&lt;br /&gt;
        };&lt;br /&gt;
        interpret F29 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;RGHT&amp;gt;, modifiers=Control); // ctrl-â†’&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
        interpret F30 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6F&amp;gt;, modifiers=Control); // ctrl-Tab&lt;br /&gt;
        };&lt;br /&gt;
        interpret F31 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I71&amp;gt;, modifiers=Control); // ctrl-p&lt;br /&gt;
        };&lt;br /&gt;
        interpret F32 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I72&amp;gt;, modifiers=Control); // ctrl-n&lt;br /&gt;
        };&lt;br /&gt;
        interpret F33 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;INS&amp;gt;, modifiers=Shift); // ctrl-v&lt;br /&gt;
        };&lt;br /&gt;
        interpret F34 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I74&amp;gt;, modifiers=Control); // ctrl-z&lt;br /&gt;
        };&lt;br /&gt;
        interpret F35 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I75&amp;gt;, modifiers=Mod1); // alt-y&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
partial alphanumeric_keys&lt;br /&gt;
xkb_symbols &amp;quot;dvorak&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	name[Group1]= &amp;quot;France - Bepo, ergonomic, Dvorak way (v1.0rc2)&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;pc(pc105)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;TLDE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dollar, numbersign, endash, paragraph ], overlay1 = &amp;lt;I70&amp;gt; }; // $ # – ¶&lt;br /&gt;
	key &amp;lt;AE01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ quotedbl, 1, emdash, doublelowquotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // &amp;quot; 1 — „&lt;br /&gt;
	key &amp;lt;AE02&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotleft, 2, less, leftdoublequotemark ], // « 2 &amp;lt; “&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ less, 2, guillemotleft, leftdoublequotemark ], // &amp;lt; 2 « “&lt;br /&gt;
                     overlay1 = &amp;lt;I7A&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE03&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotright, 3, greater, rightdoublequotemark ], // » 3 &amp;gt; ”&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ greater, 3, guillemotright, rightdoublequotemark ], // &amp;gt; 3 » ”&lt;br /&gt;
                     overlay1 = &amp;lt;I7B&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenleft, 4, U2192, lessthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ( 4 → &lt;br /&gt;
	key &amp;lt;AE05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenright, 5, U21D2, greaterthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ) 5 ⇒ &lt;br /&gt;
	key &amp;lt;AE06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ at, 6, asciicircum ], overlay1 = &amp;lt;I70&amp;gt; }; // @ 6 ^&lt;br /&gt;
	key &amp;lt;AE07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ plus, 7, plusminus, notsign ], overlay1 = &amp;lt;I70&amp;gt; }; // + 7 ± ¬&lt;br /&gt;
	key &amp;lt;AE08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ minus, 8, U2212, onequarter ], overlay1 = &amp;lt;I70&amp;gt; }; // - 8 − ¼&lt;br /&gt;
	key &amp;lt;AE09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ slash, 9, division, onehalf ], overlay1 = &amp;lt;I70&amp;gt; }; // / 9 ÷ ½&lt;br /&gt;
	key &amp;lt;AE10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asterisk, 0, multiply, threequarters ], overlay1 = &amp;lt;I70&amp;gt; }; // * 0 × ¾&lt;br /&gt;
	key &amp;lt;AE11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ equal, degree, notequal, minutes ], overlay1 = &amp;lt;I70&amp;gt; }; // = ° ≠&lt;br /&gt;
	key &amp;lt;AE12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ percent, grave, U2030, seconds ], overlay1 = &amp;lt;I70&amp;gt; }; // % ` ‰&lt;br /&gt;
	key &amp;lt;AD01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ b, B, bar, brokenbar ], overlay1 = &amp;lt;FK13&amp;gt; }; // b B | ¦ dead_ctrl&lt;br /&gt;
	key &amp;lt;AD02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, dead_acute, dead_doubleacute ], overlay1 = &amp;lt;FK14&amp;gt; }; // é É ´ ˝ dead_shift&lt;br /&gt;
	key &amp;lt;AD03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, ampersand, section ], overlay1 = &amp;lt;I77&amp;gt; }; // p P &amp;amp; § insert-shift&lt;br /&gt;
	key &amp;lt;AD04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ o, O, oe, OE ], overlay1 = &amp;lt;FK16&amp;gt; }; // o O œ Œ dead_altgr&lt;br /&gt;
	//key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ egrave, Egrave, dead_grave, grave ], }; // è È ` `&lt;br /&gt;
	key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ w, W, dead_breve ], overlay1 = &amp;lt;FK17&amp;gt; }; // w W ˘ multi_key&lt;br /&gt;
	key &amp;lt;AD06&amp;gt; { type[group1] = &amp;quot;THREE_LEVEL&amp;quot;, [ dead_grave, exclam, exclamdown ], overlay1 = &amp;lt;I70&amp;gt; }; // ` ! ¡&lt;br /&gt;
	key &amp;lt;AD07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ v, V, dead_caron ], overlay1 = &amp;lt;I70&amp;gt; }; // v V ˇ&lt;br /&gt;
	key &amp;lt;AD08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ d, D, eth, ETH ], overlay1 = &amp;lt;I7A&amp;gt;}; // d D ð Ð&lt;br /&gt;
	key &amp;lt;AD09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ l, L, UFDD0 ], overlay1 = &amp;lt;I7B&amp;gt;}; // l L /&lt;br /&gt;
	key &amp;lt;AD10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ j, J, U0133, U0132 ], overlay1 = &amp;lt;I70&amp;gt;}; // j J ĳ Ĳ&lt;br /&gt;
        key &amp;lt;AD11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_circumflex, dead_caron, schwa, SCHWA ], overlay1 = &amp;lt;I70&amp;gt; }; // ^ ˇ ə Ə&lt;br /&gt;
        key &amp;lt;AD12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_diaeresis, dead_abovedot, dead_breve, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ¨ ˙ ˘&lt;br /&gt;
	key &amp;lt;AC01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ a, A, ae, AE ], overlay1 = &amp;lt;ESC&amp;gt; }; // a A æ Æ escape&lt;br /&gt;
        key &amp;lt;AC02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ u, U, bracketleft ], overlay1 = &amp;lt;DELE&amp;gt; }; // u U [ delete&lt;br /&gt;
	key &amp;lt;AC03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ i, I, bracketright ], overlay1 = &amp;lt;BKSP&amp;gt; }; // i I ] backspace&lt;br /&gt;
	key &amp;lt;AC04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ e, E, EuroSign, UFDD1 ], overlay1 = &amp;lt;RTRN&amp;gt; }; // e E € ¤ return&lt;br /&gt;
        key &amp;lt;AC05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, rightsinglequotemark, dead_horn  ], // , ; &#039; &lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, apostrophe, dead_horn  ],           // , ; ’&lt;br /&gt;
            overlay1 = &amp;lt;INS&amp;gt;                                                                    // insert&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AC06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ c, C, copyright, U017F ], overlay1 = &amp;lt;LEFT&amp;gt; }; // c C © ſ&lt;br /&gt;
	key &amp;lt;AC07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ t, T, thorn, THORN ], overlay1 = &amp;lt;DOWN&amp;gt; }; // t T þ Þ&lt;br /&gt;
	key &amp;lt;AC08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ s, S, ssharp, U1E9E ], overlay1 = &amp;lt;UP&amp;gt; }; // s S ß ẞ&lt;br /&gt;
	key &amp;lt;AC09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ r, R, registered, trademark ], overlay1 = &amp;lt;RGHT&amp;gt; }; // r R ® ™&lt;br /&gt;
	key &amp;lt;AC10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ n, N, dead_tilde ], overlay1 = &amp;lt;ESC&amp;gt; }; // n N ~ escape&lt;br /&gt;
	key &amp;lt;AC11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ m, M, dead_macron, masculine ], overlay1 = &amp;lt;I70&amp;gt; }; // m M ¯ º&lt;br /&gt;
        key &amp;lt;BKSL&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_R, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;LSGT&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ecircumflex, Ecircumflex, backslash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ê Ê /&lt;br /&gt;
	key &amp;lt;AB01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ z, Z, slash, VoidSymbol ], overlay1 = &amp;lt;FK15&amp;gt; }; // z Z \&lt;br /&gt;
	key &amp;lt;AB02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ y, Y, braceleft, leftsinglequotemark ], overlay1 = &amp;lt;F35&amp;gt; }; // y Y { ‘&lt;br /&gt;
	key &amp;lt;AB03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ x, X, braceright, rightsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // x X } ’&lt;br /&gt;
	key &amp;lt;AB04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ period, colon, ellipsis, periodcentered ], overlay1 = &amp;lt;I70&amp;gt; }; // . : … ·&lt;br /&gt;
	key &amp;lt;AB05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ k, K, asciitilde, dead_tilde ], overlay1 = &amp;lt;I70&amp;gt; }; // k K ~&lt;br /&gt;
        key &amp;lt;AB06&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, question, questiondown, dead_hook ],           // ’ ? ¿ ̉&lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ rightsinglequotemark, question, questiondown, dead_hook ], // &#039; ? ¿ ̉&lt;br /&gt;
            overlay1 = &amp;lt;HOME&amp;gt;                                                                         // home&lt;br /&gt;
        }; &lt;br /&gt;
	key &amp;lt;AB07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ q, Q, dead_abovering, dead_belowdot ], overlay1 = &amp;lt;PGDN&amp;gt; }; // q Q ˚ ̣pgdn&lt;br /&gt;
	key &amp;lt;AB08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ g, G, UFDD2 ], overlay1 = &amp;lt;PGUP&amp;gt; }; // g G µ pgup&lt;br /&gt;
	key &amp;lt;AB09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ h, H, dagger, doubledagger ], overlay1 = &amp;lt;END&amp;gt; }; // h H † ‡&lt;br /&gt;
	key &amp;lt;AB10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ f, F, dead_ogonek, ordfeminine ], overlay1 = &amp;lt;I25&amp;gt; }; // f F ˛ ª&lt;br /&gt;
	key &amp;lt;RTSH&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ], overlay1 = &amp;lt;I70&amp;gt; }; // ç Ç ¸ ,&lt;br /&gt;
        key &amp;lt;SPCE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ space, space, nobreakspace, U202F ], overlay1 = &amp;lt;I7F&amp;gt; }; // spaces underscore&lt;br /&gt;
&lt;br /&gt;
        // Unused keys mapped to ctrl+letter actions&lt;br /&gt;
        key &amp;lt;I6C&amp;gt; { [ r ] };&lt;br /&gt;
        key &amp;lt;I6D&amp;gt; { [ f ] };&lt;br /&gt;
        key &amp;lt;I6E&amp;gt; { [ s ] };&lt;br /&gt;
        key &amp;lt;I6F&amp;gt; { [ Tab ] };&lt;br /&gt;
        key &amp;lt;I70&amp;gt; { [ VoidSymbol ] };&lt;br /&gt;
        key &amp;lt;I71&amp;gt; { [ p ] };&lt;br /&gt;
        key &amp;lt;I72&amp;gt; { [ n ] };&lt;br /&gt;
        key &amp;lt;I73&amp;gt; { [ v ] };&lt;br /&gt;
        key &amp;lt;I74&amp;gt; { [ z ] };&lt;br /&gt;
        key &amp;lt;I75&amp;gt; { [ y ] };&lt;br /&gt;
        key &amp;lt;I76&amp;gt; { [ space ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // For some reason there are SOMETIMES (not always!) errors with this code:&lt;br /&gt;
        //    key &amp;lt;I7A&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;I7B&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;I7C&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;I7D&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;I7E&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // However passing the action in the Â«Â interpretÂ Â» section for an unsused symbol seems to work&lt;br /&gt;
        key &amp;lt;I60&amp;gt; { [ F24 ] };      // ctrl-R&lt;br /&gt;
        key &amp;lt;I61&amp;gt; { [ F25 ] };      // ctrl-F&lt;br /&gt;
        //key &amp;lt;I77&amp;gt; {  actions[group1] = [ Redirect(keycode=&amp;lt;I6C&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I77&amp;gt; { [ INS ],  actions[group1] = [ Redirect(keycode=&amp;lt;INS&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I78&amp;gt; { [ F29 ] };      // ctrl-right&lt;br /&gt;
        key &amp;lt;I79&amp;gt; { [ F30 ] };      // ctrl+Tab&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        //    key &amp;lt;I79&amp;gt; { [ Tab ], actions = [ setMods(modifiers=Mod1) ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;I7A&amp;gt; { [ F31 ] };      // ctrl-p&lt;br /&gt;
        key &amp;lt;I7B&amp;gt; { [ F32 ] };      // ctrl-n&lt;br /&gt;
        key &amp;lt;I7C&amp;gt; { [ F33 ] };      // ctrl-v&lt;br /&gt;
        key &amp;lt;I7D&amp;gt; { [ F34 ] };      // ctrl-z&lt;br /&gt;
        key &amp;lt;I7E&amp;gt; { [ F35 ] };      // alt-y&lt;br /&gt;
        key &amp;lt;I7F&amp;gt; { [ underscore ] };      // _&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Using &amp;lt; 127 keycodes also works&lt;br /&gt;
        key &amp;lt;FK13&amp;gt; { actions = [ LatchMods(modifiers=Control) ] };        // dead ctrl&lt;br /&gt;
        key &amp;lt;FK14&amp;gt; { actions = [ LatchMods(modifiers=Shift) ] };          // dead shift&lt;br /&gt;
        key &amp;lt;FK15&amp;gt; { actions = [ LatchMods(modifiers=Mod1) ] };           // dead alt&lt;br /&gt;
        key &amp;lt;FK16&amp;gt; { actions = [ LatchMods(modifiers=AltGr) ] };          // dead altgr&lt;br /&gt;
        key &amp;lt;FK17&amp;gt; { [ Multi_key ] };                                     // multi_key&lt;br /&gt;
        //    key &amp;lt;FK13&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;FK14&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;FK15&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;FK16&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;FK17&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
        // See also the bug thread here : https://bugs.freedesktop.org/show_bug.cgi?id=12401&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Transforme CAPS en lock de couche alternative «déplacement/édition», et garde le caps-lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour échanger Shift et Caps_Lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; {  [    Caps_Lock    ] };&lt;br /&gt;
&lt;br /&gt;
        // Combinaison des 2 : attention, requiert que les LFSH et CAPS dans les définitions de la touche &amp;lt;AC01&amp;gt; soient aussi échangées dans la partie principale&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
&lt;br /&gt;
        // shift + lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer CAPS en un AltGr gauche, en gardant le lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ ISO_Level3_Shift, Caps_Lock ], actions = [ SetMods(modifiers=LevelThree), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer LWIN en un AltGr gauche&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour mettre un Compose sur RWIN&lt;br /&gt;
        //key &amp;lt;RWIN&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        // key &amp;lt;MENU&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        //key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = [ SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;RCTL&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour que LWIN permette de changer de groupe&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
&lt;br /&gt;
        // Echange CTRL et Alt Gauches. Et puisque LWIN est réaffectée, garde un modificateur META en niveau 3 et 4 (AltGr)&lt;br /&gt;
        // Note: Activer cette option fonctionne mieux lorsque que l&#039;on échange aussi les raccourcis du style Alt+Tabâ€¦&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; {        [ Control_L ], actions = [ SetMods(modifiers=Control) ]       };&lt;br /&gt;
        //    key &amp;lt;LCTL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [       Alt_L,  Alt_L,  Meta_L, Meta_L         ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ]       };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        key &amp;lt;LALT&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; { type = &amp;quot;ONE_LEVEL&amp;quot;, [ VoidSymbol ], actions = [ LockControls(controls=Overlay1) ] };&lt;br /&gt;
            &lt;br /&gt;
            key &amp;lt;LFSH&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
            key &amp;lt;LWIN&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [ Alt_L, Alt_L, Meta_L, Meta_L ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ] };&lt;br /&gt;
&lt;br /&gt;
            // Make Alt+Tab still work in the overlay !&lt;br /&gt;
        //key  &amp;lt;TAB&amp;gt; {&lt;br /&gt;
        //    // would need an appropriate type here [ Tab,  ISO_Left_Tab    ],&lt;br /&gt;
        //    overlay1 = &amp;lt;F30&amp;gt;&lt;br /&gt;
        //};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;level3(ralt_switch)&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_geometry { include &amp;quot;pc(pc105)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13307</id>
		<title>Utilisateur:Legrostdg</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13307"/>
		<updated>2009-03-25T22:54:27Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : /* Keymap « de base » */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La [[Utilisateur:Nbrodu|variante proposée par Nbrodu]] est très utile mais étant plutôt adepte de vim, je n&#039;utilisais pas beaucoup les raccourcis en Ctrl+… En revanche return, delete, backspace et escape avaient selon moi besoin d&#039;être plus accessibles. J&#039;en ai profité pour mettre les touches de direction &amp;quot;alla vim&amp;quot; et ajuster les touches début, fin, pgup et pgdn de manière plus homogène.&lt;br /&gt;
&lt;br /&gt;
J&#039;ai également rajouté des touches dead-modificateur (plus parce que j&#039;étais content d&#039;avoir trouvé comment faire qu&#039;autre chose).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Keymap « de base »===&lt;br /&gt;
J&#039;ai adopté la version bépow. [[Utilisateur:Kaze/Bépo-int|Explications ici]].&lt;br /&gt;
&lt;br /&gt;
Le w était vraiment trop loin et les &#039;[&#039; et &#039;]&#039; disponibles dans la même rangée que &#039;{&#039;-&#039;}&#039; et &#039;&amp;lt;&#039;-&#039;&amp;gt;&#039; je trouvait ça trop pratique. Les parenthèses en altgr+&#039;é&#039; et altgr+&#039;p&#039; ce serait selon moi royal, mais c&#039;est vrai que le &#039;´&#039; est bien sur le é… Je n&#039;ai pas encore trouvé de solution idéale. En tous cas, pour l&#039;instant:&lt;br /&gt;
&lt;br /&gt;
L&#039;espace insécable est accessible en altgr+space et l&#039;espace fine insécable en altgr+maj+space. space et maj+space donnent une espace classique, je trouvais la combinaison &amp;quot;maj+space = espace&amp;quot; trop dangereuse pour la programmation. Pour l&#039;instant le &#039;_&#039; est accessible en fn+space. Ce n&#039;est pas super logique (le &#039;_&#039; c&#039;est pas du « déplacement/édition ») mais bon… la couche « déplacement/édition » est aussi accessible que la couche altgr et la laisser quasiment vide serait un peu du gaspillage. Le mieux serait peut-être de caler le &#039;_&#039; ailleurs (mais où ? :-)). Ou alors utiliser un peu plus cette couche fn -&amp;gt; :-)&lt;br /&gt;
&lt;br /&gt;
Ctrl droit et Compose sont inversés: les touches Ctrl sont tout à fait inaccessibles sans lever la main. Un &amp;quot;dead_Compose&amp;quot; est accessible en Fn+&#039;,&#039;.&lt;br /&gt;
&lt;br /&gt;
Maj et ç sont inversés pour augmenter l&#039;homogénéité avec l&#039;autre maj (cela rend aussi la touche plus accessible à mon avis).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
  ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
  │ # ¶│ 1 „│ 2 “│ 3 ”│ 4 ≤│ 5 ≥│ 6  ║ 7 ¬│ 8 ¼│ 9 ½│ 0 ¾│ ° ′│ ℝ ″║         ║&lt;br /&gt;
  │ $ –│ &amp;quot; —│ « &amp;lt;│ » &amp;gt;│ ( →│ ) ⇒│ @ ^║ + ±│ - −│ / ÷│ * ×│ = ≠│ % ‰║ &amp;lt;--     ║&lt;br /&gt;
  ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
  ║  |&amp;lt;-  ║ B ¦│ É ˝│ P §│ O Œ│ W  ║ !  │ V  │ D Ð│ L  │ J Ĳ│ ˇ Ə│ ˙  ║   |  ║&lt;br /&gt;
  ║  -&amp;gt;|  ║ b |│ é ´│ p &amp;amp;│ o œ│ w  ║ ` ¡│ v ˇ│ d ð│ l /│ j ĳ│ ^ ə│ ¨ ˘║ &amp;lt;-&#039;  ║&lt;br /&gt;
  ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
  ║        ║ A Æ│ U  │ I  │ E ¤│ ;  ║ C ſ│ T Þ│ S ß│ R  │ N  │ M º│    ║     ║&lt;br /&gt;
  ║ Maj. ⇑ ║ a æ│ u [│ i ]│ e €│ , &#039;║ c ©│ t þ│ s ß│ r ®│ n ˜│ m ¯│Maj.║     ║&lt;br /&gt;
  ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
  ║ «»’  ║ Ê  │ Z  │ Y ‘│ X ’│ : ·│ K  ║ ?  │ Q  │ G  │ H ‡│ F ª║   Ç ,      ║&lt;br /&gt;
  ║ &amp;lt;&amp;gt;&#039;  ║ ê /│ z \│ y {│ x }│ . …│ k ~║ ’ ¿│ q °│ g µ│ h †│ f ˛║   ç ¸      ║&lt;br /&gt;
  ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
  ║       ║      ║     ║ Espace   Fine Insécable  ║     ║       ║     ║      ║&lt;br /&gt;
  ║ Ctrl  ║ Alt  ║ Fn ⇄║ Espace     Insécable     ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
  ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Fn « déplacement/édition » (et underscore)===&lt;br /&gt;
&lt;br /&gt;
*maj+insert (équivalent du clic scroll) en fn+p (p comme paste (en vim) ou comme prout (dans la vie de tous les jours))&lt;br /&gt;
*ctrl+p et ctrl+n (pour &amp;quot;précédent&amp;quot; et &amp;quot;suivant&amp;quot; dans plein de programmes) en haut des flèches haut et bas (peut-être pas top à cause du &amp;quot;d&amp;quot;: supprimer en vim, du coup, ils sont aussi sur les guillemets).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
│    │    │ctl+│ctl+│    │    │    ║    │    │    │    │    │    ║         ║&lt;br /&gt;
│    │    │ p  │ n  │    │    │    ║    │    │    │    │    │    ║ &amp;lt;--     ║&lt;br /&gt;
╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
║  |&amp;lt;-  ║dead│dead│maj+│dead│    ║    │ctl+│ctl+│    │    │    │    ║   |  ║&lt;br /&gt;
║  -&amp;gt;|  ║ctrl│ maj│ ins│altg│    ║    │ p  │ n  │    │    │    │    ║ &amp;lt;-&#039;  ║&lt;br /&gt;
╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
║        ║    │    │    │    │Com-║    │    │    │    │    │    │    ║     ║&lt;br /&gt;
║ Maj. ⇑ ║ esc│ del│bksp│entr│pose│ ←  │ ↓  │ ↑  | →  │ esc│    │Maj ║     ║&lt;br /&gt;
╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
║ «»’  ║dead│    │    │    │    │    ║    │    │    │    │    ║            ║&lt;br /&gt;
║ &amp;lt;&amp;gt;&#039;  ║ alt│    │    │    │    │    ║ deb│pgdn│pgup│ fin│    ║            ║&lt;br /&gt;
╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
║       ║      ║     ║                          ║     ║       ║     ║      ║&lt;br /&gt;
║ Ctrl  ║ Alt  ║ Fn ⇄║            _             ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Des idées ?===&lt;br /&gt;
Si vous avez des idées pour améliorer cette super couche « déplacement/édition » rajoutez-les ici !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon fichier .xkb===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
xkb_keymap        {&lt;br /&gt;
&lt;br /&gt;
xkb_keycodes      { include &amp;quot;xfree86+aliases(azerty)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
xkb_types         {&lt;br /&gt;
    include &amp;quot;complete&amp;quot;&lt;br /&gt;
    type &amp;quot;ALTGR_TWO&amp;quot; {&lt;br /&gt;
       modifiers = LevelThree;&lt;br /&gt;
       map[None] = Level1;&lt;br /&gt;
       map[LevelThree] = Level2;&lt;br /&gt;
       level_name[Level1] = &amp;quot;Base&amp;quot;;&lt;br /&gt;
       level_name[Level2] = &amp;quot;AltGr&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_compatibility { include &amp;quot;complete&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        indicator &amp;quot;Scroll Lock&amp;quot; { controls = Overlay1; allowExplicit = True; drivesKeyboard = True; };&lt;br /&gt;
        &lt;br /&gt;
        interpret F24 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Control); // ctrl-r&lt;br /&gt;
        };&lt;br /&gt;
        interpret F25 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6D&amp;gt;, modifiers=Mod1); // alt-f&lt;br /&gt;
        };&lt;br /&gt;
        interpret F26 {&lt;br /&gt;
            action = LockControls(controls=Overlay1);&lt;br /&gt;
        };&lt;br /&gt;
        interpret F27 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6E&amp;gt;, modifiers=Control); // ctrl-s&lt;br /&gt;
        };&lt;br /&gt;
        interpret F28 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Shift); // insert-shift&lt;br /&gt;
        };&lt;br /&gt;
        interpret F29 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;RGHT&amp;gt;, modifiers=Control); // ctrl-â†’&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
        interpret F30 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6F&amp;gt;, modifiers=Control); // ctrl-Tab&lt;br /&gt;
        };&lt;br /&gt;
        interpret F31 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I71&amp;gt;, modifiers=Control); // ctrl-p&lt;br /&gt;
        };&lt;br /&gt;
        interpret F32 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I72&amp;gt;, modifiers=Control); // ctrl-n&lt;br /&gt;
        };&lt;br /&gt;
        interpret F33 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;INS&amp;gt;, modifiers=Shift); // ctrl-v&lt;br /&gt;
        };&lt;br /&gt;
        interpret F34 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I74&amp;gt;, modifiers=Control); // ctrl-z&lt;br /&gt;
        };&lt;br /&gt;
        interpret F35 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I75&amp;gt;, modifiers=Mod1); // alt-y&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
partial alphanumeric_keys&lt;br /&gt;
xkb_symbols &amp;quot;dvorak&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	name[Group1]= &amp;quot;France - Bepo, ergonomic, Dvorak way (v1.0rc2)&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;pc(pc105)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;TLDE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dollar, numbersign, endash, paragraph ], overlay1 = &amp;lt;I70&amp;gt; }; // $ # – ¶&lt;br /&gt;
	key &amp;lt;AE01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ quotedbl, 1, emdash, doublelowquotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // &amp;quot; 1 — „&lt;br /&gt;
	key &amp;lt;AE02&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotleft, 2, less, leftdoublequotemark ], // « 2 &amp;lt; “&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ less, 2, guillemotleft, leftdoublequotemark ], // &amp;lt; 2 « “&lt;br /&gt;
                     overlay1 = &amp;lt;I7A&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE03&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotright, 3, greater, rightdoublequotemark ], // » 3 &amp;gt; ”&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ greater, 3, guillemotright, rightdoublequotemark ], // &amp;gt; 3 » ”&lt;br /&gt;
                     overlay1 = &amp;lt;I7B&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenleft, 4, U2192, lessthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ( 4 → &lt;br /&gt;
	key &amp;lt;AE05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenright, 5, U21D2, greaterthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ) 5 ⇒ &lt;br /&gt;
	key &amp;lt;AE06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ at, 6, asciicircum ], overlay1 = &amp;lt;I70&amp;gt; }; // @ 6 ^&lt;br /&gt;
	key &amp;lt;AE07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ plus, 7, plusminus, notsign ], overlay1 = &amp;lt;I70&amp;gt; }; // + 7 ± ¬&lt;br /&gt;
	key &amp;lt;AE08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ minus, 8, U2212, onequarter ], overlay1 = &amp;lt;I70&amp;gt; }; // - 8 − ¼&lt;br /&gt;
	key &amp;lt;AE09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ slash, 9, division, onehalf ], overlay1 = &amp;lt;I70&amp;gt; }; // / 9 ÷ ½&lt;br /&gt;
	key &amp;lt;AE10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asterisk, 0, multiply, threequarters ], overlay1 = &amp;lt;I70&amp;gt; }; // * 0 × ¾&lt;br /&gt;
	key &amp;lt;AE11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ equal, degree, notequal, minutes ], overlay1 = &amp;lt;I70&amp;gt; }; // = ° ≠&lt;br /&gt;
	key &amp;lt;AE12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ percent, grave, U2030, seconds ], overlay1 = &amp;lt;I70&amp;gt; }; // % ` ‰&lt;br /&gt;
	key &amp;lt;AD01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ b, B, bar, brokenbar ], overlay1 = &amp;lt;FK13&amp;gt; }; // b B | ¦ dead_ctrl&lt;br /&gt;
	key &amp;lt;AD02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, dead_acute, dead_doubleacute ], overlay1 = &amp;lt;FK14&amp;gt; }; // é É ´ ˝ dead_shift&lt;br /&gt;
	key &amp;lt;AD03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, ampersand, section ], overlay1 = &amp;lt;I77&amp;gt; }; // p P &amp;amp; § insert-shift&lt;br /&gt;
	key &amp;lt;AD04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ o, O, oe, OE ], overlay1 = &amp;lt;FK16&amp;gt; }; // o O œ Œ dead_altgr&lt;br /&gt;
	//key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ egrave, Egrave, dead_grave, grave ], }; // è È ` `&lt;br /&gt;
	key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ w, W, dead_breve ], overlay1 = &amp;lt;FK17&amp;gt; }; // w W ˘ multi_key&lt;br /&gt;
	key &amp;lt;AD06&amp;gt; { type[group1] = &amp;quot;THREE_LEVEL&amp;quot;, [ dead_grave, exclam, exclamdown ], overlay1 = &amp;lt;I70&amp;gt; }; // ` ! ¡&lt;br /&gt;
	key &amp;lt;AD07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ v, V, dead_caron ], overlay1 = &amp;lt;I70&amp;gt; }; // v V ˇ&lt;br /&gt;
	key &amp;lt;AD08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ d, D, eth, ETH ], overlay1 = &amp;lt;I7A&amp;gt;}; // d D ð Ð&lt;br /&gt;
	key &amp;lt;AD09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ l, L, UFDD0 ], overlay1 = &amp;lt;I7B&amp;gt;}; // l L /&lt;br /&gt;
	key &amp;lt;AD10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ j, J, U0133, U0132 ], overlay1 = &amp;lt;I70&amp;gt;}; // j J ĳ Ĳ&lt;br /&gt;
        key &amp;lt;AD11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_circumflex, dead_caron, schwa, SCHWA ], overlay1 = &amp;lt;I70&amp;gt; }; // ^ ˇ ə Ə&lt;br /&gt;
        key &amp;lt;AD12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_diaeresis, dead_abovedot, dead_breve, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ¨ ˙ ˘&lt;br /&gt;
	key &amp;lt;AC01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ a, A, ae, AE ], overlay1 = &amp;lt;ESC&amp;gt; }; // a A æ Æ escape&lt;br /&gt;
        key &amp;lt;AC02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ u, U, bracketleft ], overlay1 = &amp;lt;DELE&amp;gt; }; // u U [ delete&lt;br /&gt;
	key &amp;lt;AC03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ i, I, bracketright ], overlay1 = &amp;lt;BKSP&amp;gt; }; // i I ] backspace&lt;br /&gt;
	key &amp;lt;AC04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ e, E, EuroSign, UFDD1 ], overlay1 = &amp;lt;RTRN&amp;gt; }; // e E € ¤ return&lt;br /&gt;
        key &amp;lt;AC05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, rightsinglequotemark, dead_horn  ], // , ; &#039; &lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, apostrophe, dead_horn  ],           // , ; ’&lt;br /&gt;
            overlay1 = &amp;lt;INS&amp;gt;                                                                    // insert&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AC06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ c, C, copyright, U017F ], overlay1 = &amp;lt;LEFT&amp;gt; }; // c C © ſ&lt;br /&gt;
	key &amp;lt;AC07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ t, T, thorn, THORN ], overlay1 = &amp;lt;DOWN&amp;gt; }; // t T þ Þ&lt;br /&gt;
	key &amp;lt;AC08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ s, S, ssharp, U1E9E ], overlay1 = &amp;lt;UP&amp;gt; }; // s S ß ẞ&lt;br /&gt;
	key &amp;lt;AC09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ r, R, registered, trademark ], overlay1 = &amp;lt;RGHT&amp;gt; }; // r R ® ™&lt;br /&gt;
	key &amp;lt;AC10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ n, N, dead_tilde ], overlay1 = &amp;lt;ESC&amp;gt; }; // n N ~ escape&lt;br /&gt;
	key &amp;lt;AC11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ m, M, dead_macron, masculine ], overlay1 = &amp;lt;I70&amp;gt; }; // m M ¯ º&lt;br /&gt;
        key &amp;lt;BKSL&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_R, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;LSGT&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ecircumflex, Ecircumflex, backslash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ê Ê /&lt;br /&gt;
	key &amp;lt;AB01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ z, Z, slash, VoidSymbol ], overlay1 = &amp;lt;FK15&amp;gt; }; // z Z \&lt;br /&gt;
	key &amp;lt;AB02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ y, Y, braceleft, leftsinglequotemark ], overlay1 = &amp;lt;F35&amp;gt; }; // y Y { ‘&lt;br /&gt;
	key &amp;lt;AB03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ x, X, braceright, rightsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // x X } ’&lt;br /&gt;
	key &amp;lt;AB04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ period, colon, ellipsis, periodcentered ], overlay1 = &amp;lt;I70&amp;gt; }; // . : … ·&lt;br /&gt;
	key &amp;lt;AB05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ k, K, asciitilde, dead_tilde ], overlay1 = &amp;lt;I70&amp;gt; }; // k K ~&lt;br /&gt;
        key &amp;lt;AB06&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, question, questiondown, dead_hook ],           // ’ ? ¿ ̉&lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ rightsinglequotemark, question, questiondown, dead_hook ], // &#039; ? ¿ ̉&lt;br /&gt;
            overlay1 = &amp;lt;HOME&amp;gt;                                                                         // home&lt;br /&gt;
        }; &lt;br /&gt;
	key &amp;lt;AB07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ q, Q, dead_abovering, dead_belowdot ], overlay1 = &amp;lt;PGDN&amp;gt; }; // q Q ˚ ̣pgdn&lt;br /&gt;
	key &amp;lt;AB08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ g, G, UFDD2 ], overlay1 = &amp;lt;PGUP&amp;gt; }; // g G µ pgup&lt;br /&gt;
	key &amp;lt;AB09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ h, H, dagger, doubledagger ], overlay1 = &amp;lt;END&amp;gt; }; // h H † ‡&lt;br /&gt;
	key &amp;lt;AB10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ f, F, dead_ogonek, ordfeminine ], overlay1 = &amp;lt;I25&amp;gt; }; // f F ˛ ª&lt;br /&gt;
	key &amp;lt;RTSH&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ], overlay1 = &amp;lt;I70&amp;gt; }; // ç Ç ¸ ,&lt;br /&gt;
        key &amp;lt;SPCE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ space, space, nobreakspace, U202F ], overlay1 = &amp;lt;I7F&amp;gt; }; // spaces underscore&lt;br /&gt;
&lt;br /&gt;
        // Unused keys mapped to ctrl+letter actions&lt;br /&gt;
        key &amp;lt;I6C&amp;gt; { [ r ] };&lt;br /&gt;
        key &amp;lt;I6D&amp;gt; { [ f ] };&lt;br /&gt;
        key &amp;lt;I6E&amp;gt; { [ s ] };&lt;br /&gt;
        key &amp;lt;I6F&amp;gt; { [ Tab ] };&lt;br /&gt;
        key &amp;lt;I70&amp;gt; { [ VoidSymbol ] };&lt;br /&gt;
        key &amp;lt;I71&amp;gt; { [ p ] };&lt;br /&gt;
        key &amp;lt;I72&amp;gt; { [ n ] };&lt;br /&gt;
        key &amp;lt;I73&amp;gt; { [ v ] };&lt;br /&gt;
        key &amp;lt;I74&amp;gt; { [ z ] };&lt;br /&gt;
        key &amp;lt;I75&amp;gt; { [ y ] };&lt;br /&gt;
        key &amp;lt;I76&amp;gt; { [ space ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // For some reason there are SOMETIMES (not always!) errors with this code:&lt;br /&gt;
        //    key &amp;lt;I7A&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;I7B&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;I7C&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;I7D&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;I7E&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // However passing the action in the Â«Â interpretÂ Â» section for an unsused symbol seems to work&lt;br /&gt;
        key &amp;lt;I60&amp;gt; { [ F24 ] };      // ctrl-R&lt;br /&gt;
        key &amp;lt;I61&amp;gt; { [ F25 ] };      // ctrl-F&lt;br /&gt;
        //key &amp;lt;I77&amp;gt; {  actions[group1] = [ Redirect(keycode=&amp;lt;I6C&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I77&amp;gt; { [ INS ],  actions[group1] = [ Redirect(keycode=&amp;lt;INS&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I78&amp;gt; { [ F29 ] };      // ctrl-right&lt;br /&gt;
        key &amp;lt;I79&amp;gt; { [ F30 ] };      // ctrl+Tab&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        //    key &amp;lt;I79&amp;gt; { [ Tab ], actions = [ setMods(modifiers=Mod1) ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;I7A&amp;gt; { [ F31 ] };      // ctrl-p&lt;br /&gt;
        key &amp;lt;I7B&amp;gt; { [ F32 ] };      // ctrl-n&lt;br /&gt;
        key &amp;lt;I7C&amp;gt; { [ F33 ] };      // ctrl-v&lt;br /&gt;
        key &amp;lt;I7D&amp;gt; { [ F34 ] };      // ctrl-z&lt;br /&gt;
        key &amp;lt;I7E&amp;gt; { [ F35 ] };      // alt-y&lt;br /&gt;
        key &amp;lt;I7F&amp;gt; { [ underscore ] };      // _&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Using &amp;lt; 127 keycodes also works&lt;br /&gt;
        key &amp;lt;FK13&amp;gt; { actions = [ LatchMods(modifiers=Control) ] };        // dead ctrl&lt;br /&gt;
        key &amp;lt;FK14&amp;gt; { actions = [ LatchMods(modifiers=Shift) ] };          // dead shift&lt;br /&gt;
        key &amp;lt;FK15&amp;gt; { actions = [ LatchMods(modifiers=Mod1) ] };           // dead alt&lt;br /&gt;
        key &amp;lt;FK16&amp;gt; { actions = [ LatchMods(modifiers=AltGr) ] };          // dead altgr&lt;br /&gt;
        key &amp;lt;FK17&amp;gt; { [ Multi_key ] };                                     // multi_key&lt;br /&gt;
        //    key &amp;lt;FK13&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;FK14&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;FK15&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;FK16&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;FK17&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
        // See also the bug thread here : https://bugs.freedesktop.org/show_bug.cgi?id=12401&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Transforme CAPS en lock de couche alternative «déplacement/édition», et garde le caps-lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour échanger Shift et Caps_Lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; {  [    Caps_Lock    ] };&lt;br /&gt;
&lt;br /&gt;
        // Combinaison des 2 : attention, requiert que les LFSH et CAPS dans les définitions de la touche &amp;lt;AC01&amp;gt; soient aussi échangées dans la partie principale&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
&lt;br /&gt;
        // shift + lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer CAPS en un AltGr gauche, en gardant le lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ ISO_Level3_Shift, Caps_Lock ], actions = [ SetMods(modifiers=LevelThree), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer LWIN en un AltGr gauche&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour mettre un Compose sur RWIN&lt;br /&gt;
        //key &amp;lt;RWIN&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        // key &amp;lt;MENU&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        //key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = [ SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;RCTL&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour que LWIN permette de changer de groupe&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
&lt;br /&gt;
        // Echange CTRL et Alt Gauches. Et puisque LWIN est réaffectée, garde un modificateur META en niveau 3 et 4 (AltGr)&lt;br /&gt;
        // Note: Activer cette option fonctionne mieux lorsque que l&#039;on échange aussi les raccourcis du style Alt+Tabâ€¦&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; {        [ Control_L ], actions = [ SetMods(modifiers=Control) ]       };&lt;br /&gt;
        //    key &amp;lt;LCTL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [       Alt_L,  Alt_L,  Meta_L, Meta_L         ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ]       };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        key &amp;lt;LALT&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; { type = &amp;quot;ONE_LEVEL&amp;quot;, [ VoidSymbol ], actions = [ LockControls(controls=Overlay1) ] };&lt;br /&gt;
            &lt;br /&gt;
            key &amp;lt;LFSH&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
            key &amp;lt;LWIN&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [ Alt_L, Alt_L, Meta_L, Meta_L ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ] };&lt;br /&gt;
&lt;br /&gt;
            // Make Alt+Tab still work in the overlay !&lt;br /&gt;
        //key  &amp;lt;TAB&amp;gt; {&lt;br /&gt;
        //    // would need an appropriate type here [ Tab,  ISO_Left_Tab    ],&lt;br /&gt;
        //    overlay1 = &amp;lt;F30&amp;gt;&lt;br /&gt;
        //};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;level3(ralt_switch)&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_geometry { include &amp;quot;pc(pc105)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13306</id>
		<title>Utilisateur:Legrostdg</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13306"/>
		<updated>2009-03-25T22:50:26Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La [[Utilisateur:Nbrodu|variante proposée par Nbrodu]] est très utile mais étant plutôt adepte de vim, je n&#039;utilisais pas beaucoup les raccourcis en Ctrl+… En revanche return, delete, backspace et escape avaient selon moi besoin d&#039;être plus accessibles. J&#039;en ai profité pour mettre les touches de direction &amp;quot;alla vim&amp;quot; et ajuster les touches début, fin, pgup et pgdn de manière plus homogène.&lt;br /&gt;
&lt;br /&gt;
J&#039;ai également rajouté des touches dead-modificateur (plus parce que j&#039;étais content d&#039;avoir trouvé comment faire qu&#039;autre chose).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Keymap « de base »===&lt;br /&gt;
J&#039;ai adopté la version bépow. [[Utilisateur:Kaze/Bépo-int|Explications ici]].&lt;br /&gt;
&lt;br /&gt;
Le w était vraiment trop loin et les &#039;[&#039; et &#039;]&#039; disponibles dans la même rangée que &#039;{&#039;-&#039;}&#039; et &#039;&amp;lt;&#039;-&#039;&amp;gt;&#039; je trouvait ça trop pratique. Les parenthèses en altgr+&#039;é&#039; et altgr+&#039;p&#039; ce serait selon moi royal, mais c&#039;est vrai que le &#039;´&#039; est bien sur le é… Je n&#039;ai pas encore trouvé de solution idéale. En tous cas, pour l&#039;instant:&lt;br /&gt;
&lt;br /&gt;
L&#039;espace insécable est accessible en altgr+space et l&#039;espace fine insécable en altgr+maj+space. space et maj+space donnent une espace classique, je trouvais la combinaison &amp;quot;maj+space = espace&amp;quot; trop dangereuse pour la programmation. Pour l&#039;instant le &#039;_&#039; est accessible en fn+space. Ce n&#039;est pas super logique (le &#039;_&#039; c&#039;est pas du « déplacement/édition ») mais bon… la couche « déplacement/édition » est aussi accessible que la couche altgr et la laisser quasiment vide serait un peu du gaspillage. Le mieux serait peut-être de caler le &#039;_&#039; ailleurs (mais où ? :-)). Ou alors utiliser un peu plus cette couche fn -&amp;gt; :-)&lt;br /&gt;
&lt;br /&gt;
Ctrl droit et Compose sont inversés: les touches Ctrl sont tout à fait inaccessibles sans lever la main. Un &amp;quot;dead_Compose&amp;quot; est accessible en Fn+&#039;,&#039;.&lt;br /&gt;
&lt;br /&gt;
Maj et ç sont inversés pour augmenter l&#039;homogénéité avec l&#039;autre maj (cela rend aussi la touche plus accessible à mon avis).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
│ # ¶│ 1 „│ 2 “│ 3 ”│ 4 ≤│ 5 ≥│ 6  ║ 7 ¬│ 8 ¼│ 9 ½│ 0 ¾│ ° ′│ ℝ ″║         ║&lt;br /&gt;
│ $ –│ &amp;quot; —│ « &amp;lt;│ » &amp;gt;│ ( →│ ) ⇒│ @ ^║ + ±│ - −│ / ÷│ * ×│ = ≠│ % ‰║ &amp;lt;--     ║&lt;br /&gt;
╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
║  |&amp;lt;-  ║ B ¦│ É ˝│ P §│ O Œ│ W  ║ !  │ V  │ D Ð│ L  │ J Ĳ│ ˇ Ə│ ˙  ║   |  ║&lt;br /&gt;
║  -&amp;gt;|  ║ b |│ é ´│ p &amp;amp;│ o œ│ w  ║ ` ¡│ v ˇ│ d ð│ l /│ j ĳ│ ^ ə│ ¨ ˘║ &amp;lt;-&#039;  ║&lt;br /&gt;
╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
║        ║ A Æ│ U  │ I  │ E ¤│ ;  ║ C ſ│ T Þ│ S ß│ R  │ N  │ M º│    ║     ║&lt;br /&gt;
║ Maj. ⇑ ║ a æ│ u [│ i ]│ e €│ , &#039;║ c ©│ t þ│ s ß│ r ®│ n ˜│ m ¯│Maj.║     ║&lt;br /&gt;
╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
║ «»’  ║ Ê  │ Z  │ Y ‘│ X ’│ : ·│ K  ║ ?  │ Q  │ G  │ H ‡│ F ª║   Ç ,      ║&lt;br /&gt;
║ &amp;lt;&amp;gt;&#039;  ║ ê /│ z \│ y {│ x }│ . …│ k ~║ ’ ¿│ q °│ g µ│ h †│ f ˛║   ç ¸      ║&lt;br /&gt;
╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
║       ║      ║     ║ Espace   Fine Insécable  ║     ║       ║     ║      ║&lt;br /&gt;
║ Ctrl  ║ Alt  ║ Fn ⇄║ Espace     Insécable     ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Fn « déplacement/édition » (et underscore)===&lt;br /&gt;
&lt;br /&gt;
*maj+insert (équivalent du clic scroll) en fn+p (p comme paste (en vim) ou comme prout (dans la vie de tous les jours))&lt;br /&gt;
*ctrl+p et ctrl+n (pour &amp;quot;précédent&amp;quot; et &amp;quot;suivant&amp;quot; dans plein de programmes) en haut des flèches haut et bas (peut-être pas top à cause du &amp;quot;d&amp;quot;: supprimer en vim, du coup, ils sont aussi sur les guillemets).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
│    │    │ctl+│ctl+│    │    │    ║    │    │    │    │    │    ║         ║&lt;br /&gt;
│    │    │ p  │ n  │    │    │    ║    │    │    │    │    │    ║ &amp;lt;--     ║&lt;br /&gt;
╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
║  |&amp;lt;-  ║dead│dead│maj+│dead│    ║    │ctl+│ctl+│    │    │    │    ║   |  ║&lt;br /&gt;
║  -&amp;gt;|  ║ctrl│ maj│ ins│altg│    ║    │ p  │ n  │    │    │    │    ║ &amp;lt;-&#039;  ║&lt;br /&gt;
╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
║        ║    │    │    │    │Com-║    │    │    │    │    │    │    ║     ║&lt;br /&gt;
║ Maj. ⇑ ║ esc│ del│bksp│entr│pose│ ←  │ ↓  │ ↑  | →  │ esc│    │Maj ║     ║&lt;br /&gt;
╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
║ «»’  ║dead│    │    │    │    │    ║    │    │    │    │    ║            ║&lt;br /&gt;
║ &amp;lt;&amp;gt;&#039;  ║ alt│    │    │    │    │    ║ deb│pgdn│pgup│ fin│    ║            ║&lt;br /&gt;
╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
║       ║      ║     ║                          ║     ║       ║     ║      ║&lt;br /&gt;
║ Ctrl  ║ Alt  ║ Fn ⇄║            _             ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Des idées ?===&lt;br /&gt;
Si vous avez des idées pour améliorer cette super couche « déplacement/édition » rajoutez-les ici !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon fichier .xkb===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
xkb_keymap        {&lt;br /&gt;
&lt;br /&gt;
xkb_keycodes      { include &amp;quot;xfree86+aliases(azerty)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
xkb_types         {&lt;br /&gt;
    include &amp;quot;complete&amp;quot;&lt;br /&gt;
    type &amp;quot;ALTGR_TWO&amp;quot; {&lt;br /&gt;
       modifiers = LevelThree;&lt;br /&gt;
       map[None] = Level1;&lt;br /&gt;
       map[LevelThree] = Level2;&lt;br /&gt;
       level_name[Level1] = &amp;quot;Base&amp;quot;;&lt;br /&gt;
       level_name[Level2] = &amp;quot;AltGr&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_compatibility { include &amp;quot;complete&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        indicator &amp;quot;Scroll Lock&amp;quot; { controls = Overlay1; allowExplicit = True; drivesKeyboard = True; };&lt;br /&gt;
        &lt;br /&gt;
        interpret F24 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Control); // ctrl-r&lt;br /&gt;
        };&lt;br /&gt;
        interpret F25 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6D&amp;gt;, modifiers=Mod1); // alt-f&lt;br /&gt;
        };&lt;br /&gt;
        interpret F26 {&lt;br /&gt;
            action = LockControls(controls=Overlay1);&lt;br /&gt;
        };&lt;br /&gt;
        interpret F27 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6E&amp;gt;, modifiers=Control); // ctrl-s&lt;br /&gt;
        };&lt;br /&gt;
        interpret F28 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Shift); // insert-shift&lt;br /&gt;
        };&lt;br /&gt;
        interpret F29 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;RGHT&amp;gt;, modifiers=Control); // ctrl-â†’&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
        interpret F30 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6F&amp;gt;, modifiers=Control); // ctrl-Tab&lt;br /&gt;
        };&lt;br /&gt;
        interpret F31 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I71&amp;gt;, modifiers=Control); // ctrl-p&lt;br /&gt;
        };&lt;br /&gt;
        interpret F32 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I72&amp;gt;, modifiers=Control); // ctrl-n&lt;br /&gt;
        };&lt;br /&gt;
        interpret F33 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;INS&amp;gt;, modifiers=Shift); // ctrl-v&lt;br /&gt;
        };&lt;br /&gt;
        interpret F34 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I74&amp;gt;, modifiers=Control); // ctrl-z&lt;br /&gt;
        };&lt;br /&gt;
        interpret F35 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I75&amp;gt;, modifiers=Mod1); // alt-y&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
partial alphanumeric_keys&lt;br /&gt;
xkb_symbols &amp;quot;dvorak&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	name[Group1]= &amp;quot;France - Bepo, ergonomic, Dvorak way (v1.0rc2)&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;pc(pc105)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;TLDE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dollar, numbersign, endash, paragraph ], overlay1 = &amp;lt;I70&amp;gt; }; // $ # – ¶&lt;br /&gt;
	key &amp;lt;AE01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ quotedbl, 1, emdash, doublelowquotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // &amp;quot; 1 — „&lt;br /&gt;
	key &amp;lt;AE02&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotleft, 2, less, leftdoublequotemark ], // « 2 &amp;lt; “&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ less, 2, guillemotleft, leftdoublequotemark ], // &amp;lt; 2 « “&lt;br /&gt;
                     overlay1 = &amp;lt;I7A&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE03&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotright, 3, greater, rightdoublequotemark ], // » 3 &amp;gt; ”&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ greater, 3, guillemotright, rightdoublequotemark ], // &amp;gt; 3 » ”&lt;br /&gt;
                     overlay1 = &amp;lt;I7B&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenleft, 4, U2192, lessthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ( 4 → &lt;br /&gt;
	key &amp;lt;AE05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenright, 5, U21D2, greaterthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ) 5 ⇒ &lt;br /&gt;
	key &amp;lt;AE06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ at, 6, asciicircum ], overlay1 = &amp;lt;I70&amp;gt; }; // @ 6 ^&lt;br /&gt;
	key &amp;lt;AE07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ plus, 7, plusminus, notsign ], overlay1 = &amp;lt;I70&amp;gt; }; // + 7 ± ¬&lt;br /&gt;
	key &amp;lt;AE08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ minus, 8, U2212, onequarter ], overlay1 = &amp;lt;I70&amp;gt; }; // - 8 − ¼&lt;br /&gt;
	key &amp;lt;AE09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ slash, 9, division, onehalf ], overlay1 = &amp;lt;I70&amp;gt; }; // / 9 ÷ ½&lt;br /&gt;
	key &amp;lt;AE10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asterisk, 0, multiply, threequarters ], overlay1 = &amp;lt;I70&amp;gt; }; // * 0 × ¾&lt;br /&gt;
	key &amp;lt;AE11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ equal, degree, notequal, minutes ], overlay1 = &amp;lt;I70&amp;gt; }; // = ° ≠&lt;br /&gt;
	key &amp;lt;AE12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ percent, grave, U2030, seconds ], overlay1 = &amp;lt;I70&amp;gt; }; // % ` ‰&lt;br /&gt;
	key &amp;lt;AD01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ b, B, bar, brokenbar ], overlay1 = &amp;lt;FK13&amp;gt; }; // b B | ¦ dead_ctrl&lt;br /&gt;
	key &amp;lt;AD02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, dead_acute, dead_doubleacute ], overlay1 = &amp;lt;FK14&amp;gt; }; // é É ´ ˝ dead_shift&lt;br /&gt;
	key &amp;lt;AD03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, ampersand, section ], overlay1 = &amp;lt;I77&amp;gt; }; // p P &amp;amp; § insert-shift&lt;br /&gt;
	key &amp;lt;AD04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ o, O, oe, OE ], overlay1 = &amp;lt;FK16&amp;gt; }; // o O œ Œ dead_altgr&lt;br /&gt;
	//key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ egrave, Egrave, dead_grave, grave ], }; // è È ` `&lt;br /&gt;
	key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ w, W, dead_breve ], overlay1 = &amp;lt;FK17&amp;gt; }; // w W ˘ multi_key&lt;br /&gt;
	key &amp;lt;AD06&amp;gt; { type[group1] = &amp;quot;THREE_LEVEL&amp;quot;, [ dead_grave, exclam, exclamdown ], overlay1 = &amp;lt;I70&amp;gt; }; // ` ! ¡&lt;br /&gt;
	key &amp;lt;AD07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ v, V, dead_caron ], overlay1 = &amp;lt;I70&amp;gt; }; // v V ˇ&lt;br /&gt;
	key &amp;lt;AD08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ d, D, eth, ETH ], overlay1 = &amp;lt;I7A&amp;gt;}; // d D ð Ð&lt;br /&gt;
	key &amp;lt;AD09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ l, L, UFDD0 ], overlay1 = &amp;lt;I7B&amp;gt;}; // l L /&lt;br /&gt;
	key &amp;lt;AD10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ j, J, U0133, U0132 ], overlay1 = &amp;lt;I70&amp;gt;}; // j J ĳ Ĳ&lt;br /&gt;
        key &amp;lt;AD11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_circumflex, dead_caron, schwa, SCHWA ], overlay1 = &amp;lt;I70&amp;gt; }; // ^ ˇ ə Ə&lt;br /&gt;
        key &amp;lt;AD12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_diaeresis, dead_abovedot, dead_breve, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ¨ ˙ ˘&lt;br /&gt;
	key &amp;lt;AC01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ a, A, ae, AE ], overlay1 = &amp;lt;ESC&amp;gt; }; // a A æ Æ escape&lt;br /&gt;
        key &amp;lt;AC02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ u, U, bracketleft ], overlay1 = &amp;lt;DELE&amp;gt; }; // u U [ delete&lt;br /&gt;
	key &amp;lt;AC03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ i, I, bracketright ], overlay1 = &amp;lt;BKSP&amp;gt; }; // i I ] backspace&lt;br /&gt;
	key &amp;lt;AC04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ e, E, EuroSign, UFDD1 ], overlay1 = &amp;lt;RTRN&amp;gt; }; // e E € ¤ return&lt;br /&gt;
        key &amp;lt;AC05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, rightsinglequotemark, dead_horn  ], // , ; &#039; &lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, apostrophe, dead_horn  ],           // , ; ’&lt;br /&gt;
            overlay1 = &amp;lt;INS&amp;gt;                                                                    // insert&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AC06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ c, C, copyright, U017F ], overlay1 = &amp;lt;LEFT&amp;gt; }; // c C © ſ&lt;br /&gt;
	key &amp;lt;AC07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ t, T, thorn, THORN ], overlay1 = &amp;lt;DOWN&amp;gt; }; // t T þ Þ&lt;br /&gt;
	key &amp;lt;AC08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ s, S, ssharp, U1E9E ], overlay1 = &amp;lt;UP&amp;gt; }; // s S ß ẞ&lt;br /&gt;
	key &amp;lt;AC09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ r, R, registered, trademark ], overlay1 = &amp;lt;RGHT&amp;gt; }; // r R ® ™&lt;br /&gt;
	key &amp;lt;AC10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ n, N, dead_tilde ], overlay1 = &amp;lt;ESC&amp;gt; }; // n N ~ escape&lt;br /&gt;
	key &amp;lt;AC11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ m, M, dead_macron, masculine ], overlay1 = &amp;lt;I70&amp;gt; }; // m M ¯ º&lt;br /&gt;
        key &amp;lt;BKSL&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_R, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;LSGT&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ecircumflex, Ecircumflex, backslash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ê Ê /&lt;br /&gt;
	key &amp;lt;AB01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ z, Z, slash, VoidSymbol ], overlay1 = &amp;lt;FK15&amp;gt; }; // z Z \&lt;br /&gt;
	key &amp;lt;AB02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ y, Y, braceleft, leftsinglequotemark ], overlay1 = &amp;lt;F35&amp;gt; }; // y Y { ‘&lt;br /&gt;
	key &amp;lt;AB03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ x, X, braceright, rightsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // x X } ’&lt;br /&gt;
	key &amp;lt;AB04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ period, colon, ellipsis, periodcentered ], overlay1 = &amp;lt;I70&amp;gt; }; // . : … ·&lt;br /&gt;
	key &amp;lt;AB05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ k, K, asciitilde, dead_tilde ], overlay1 = &amp;lt;I70&amp;gt; }; // k K ~&lt;br /&gt;
        key &amp;lt;AB06&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, question, questiondown, dead_hook ],           // ’ ? ¿ ̉&lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ rightsinglequotemark, question, questiondown, dead_hook ], // &#039; ? ¿ ̉&lt;br /&gt;
            overlay1 = &amp;lt;HOME&amp;gt;                                                                         // home&lt;br /&gt;
        }; &lt;br /&gt;
	key &amp;lt;AB07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ q, Q, dead_abovering, dead_belowdot ], overlay1 = &amp;lt;PGDN&amp;gt; }; // q Q ˚ ̣pgdn&lt;br /&gt;
	key &amp;lt;AB08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ g, G, UFDD2 ], overlay1 = &amp;lt;PGUP&amp;gt; }; // g G µ pgup&lt;br /&gt;
	key &amp;lt;AB09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ h, H, dagger, doubledagger ], overlay1 = &amp;lt;END&amp;gt; }; // h H † ‡&lt;br /&gt;
	key &amp;lt;AB10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ f, F, dead_ogonek, ordfeminine ], overlay1 = &amp;lt;I25&amp;gt; }; // f F ˛ ª&lt;br /&gt;
	key &amp;lt;RTSH&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ], overlay1 = &amp;lt;I70&amp;gt; }; // ç Ç ¸ ,&lt;br /&gt;
        key &amp;lt;SPCE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ space, space, nobreakspace, U202F ], overlay1 = &amp;lt;I7F&amp;gt; }; // spaces underscore&lt;br /&gt;
&lt;br /&gt;
        // Unused keys mapped to ctrl+letter actions&lt;br /&gt;
        key &amp;lt;I6C&amp;gt; { [ r ] };&lt;br /&gt;
        key &amp;lt;I6D&amp;gt; { [ f ] };&lt;br /&gt;
        key &amp;lt;I6E&amp;gt; { [ s ] };&lt;br /&gt;
        key &amp;lt;I6F&amp;gt; { [ Tab ] };&lt;br /&gt;
        key &amp;lt;I70&amp;gt; { [ VoidSymbol ] };&lt;br /&gt;
        key &amp;lt;I71&amp;gt; { [ p ] };&lt;br /&gt;
        key &amp;lt;I72&amp;gt; { [ n ] };&lt;br /&gt;
        key &amp;lt;I73&amp;gt; { [ v ] };&lt;br /&gt;
        key &amp;lt;I74&amp;gt; { [ z ] };&lt;br /&gt;
        key &amp;lt;I75&amp;gt; { [ y ] };&lt;br /&gt;
        key &amp;lt;I76&amp;gt; { [ space ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // For some reason there are SOMETIMES (not always!) errors with this code:&lt;br /&gt;
        //    key &amp;lt;I7A&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;I7B&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;I7C&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;I7D&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;I7E&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // However passing the action in the Â«Â interpretÂ Â» section for an unsused symbol seems to work&lt;br /&gt;
        key &amp;lt;I60&amp;gt; { [ F24 ] };      // ctrl-R&lt;br /&gt;
        key &amp;lt;I61&amp;gt; { [ F25 ] };      // ctrl-F&lt;br /&gt;
        //key &amp;lt;I77&amp;gt; {  actions[group1] = [ Redirect(keycode=&amp;lt;I6C&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I77&amp;gt; { [ INS ],  actions[group1] = [ Redirect(keycode=&amp;lt;INS&amp;gt;, modifiers=Shift) ]  };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I78&amp;gt; { [ F29 ] };      // ctrl-right&lt;br /&gt;
        key &amp;lt;I79&amp;gt; { [ F30 ] };      // ctrl+Tab&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        //    key &amp;lt;I79&amp;gt; { [ Tab ], actions = [ setMods(modifiers=Mod1) ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;I7A&amp;gt; { [ F31 ] };      // ctrl-p&lt;br /&gt;
        key &amp;lt;I7B&amp;gt; { [ F32 ] };      // ctrl-n&lt;br /&gt;
        key &amp;lt;I7C&amp;gt; { [ F33 ] };      // ctrl-v&lt;br /&gt;
        key &amp;lt;I7D&amp;gt; { [ F34 ] };      // ctrl-z&lt;br /&gt;
        key &amp;lt;I7E&amp;gt; { [ F35 ] };      // alt-y&lt;br /&gt;
        key &amp;lt;I7F&amp;gt; { [ underscore ] };      // _&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Using &amp;lt; 127 keycodes also works&lt;br /&gt;
        key &amp;lt;FK13&amp;gt; { actions = [ LatchMods(modifiers=Control) ] };        // dead ctrl&lt;br /&gt;
        key &amp;lt;FK14&amp;gt; { actions = [ LatchMods(modifiers=Shift) ] };          // dead shift&lt;br /&gt;
        key &amp;lt;FK15&amp;gt; { actions = [ LatchMods(modifiers=Mod1) ] };           // dead alt&lt;br /&gt;
        key &amp;lt;FK16&amp;gt; { actions = [ LatchMods(modifiers=AltGr) ] };          // dead altgr&lt;br /&gt;
        key &amp;lt;FK17&amp;gt; { [ Multi_key ] };                                     // multi_key&lt;br /&gt;
        //    key &amp;lt;FK13&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;FK14&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;FK15&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;FK16&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;FK17&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
        // See also the bug thread here : https://bugs.freedesktop.org/show_bug.cgi?id=12401&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Transforme CAPS en lock de couche alternative «déplacement/édition», et garde le caps-lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour échanger Shift et Caps_Lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; {  [    Caps_Lock    ] };&lt;br /&gt;
&lt;br /&gt;
        // Combinaison des 2 : attention, requiert que les LFSH et CAPS dans les définitions de la touche &amp;lt;AC01&amp;gt; soient aussi échangées dans la partie principale&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
&lt;br /&gt;
        // shift + lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer CAPS en un AltGr gauche, en gardant le lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ ISO_Level3_Shift, Caps_Lock ], actions = [ SetMods(modifiers=LevelThree), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer LWIN en un AltGr gauche&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour mettre un Compose sur RWIN&lt;br /&gt;
        //key &amp;lt;RWIN&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        // key &amp;lt;MENU&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        //key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = [ SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;RCTL&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour que LWIN permette de changer de groupe&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
&lt;br /&gt;
        // Echange CTRL et Alt Gauches. Et puisque LWIN est réaffectée, garde un modificateur META en niveau 3 et 4 (AltGr)&lt;br /&gt;
        // Note: Activer cette option fonctionne mieux lorsque que l&#039;on échange aussi les raccourcis du style Alt+Tabâ€¦&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; {        [ Control_L ], actions = [ SetMods(modifiers=Control) ]       };&lt;br /&gt;
        //    key &amp;lt;LCTL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [       Alt_L,  Alt_L,  Meta_L, Meta_L         ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ]       };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        key &amp;lt;LALT&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; { type = &amp;quot;ONE_LEVEL&amp;quot;, [ VoidSymbol ], actions = [ LockControls(controls=Overlay1) ] };&lt;br /&gt;
            &lt;br /&gt;
            key &amp;lt;LFSH&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
            key &amp;lt;LWIN&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [ Alt_L, Alt_L, Meta_L, Meta_L ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ] };&lt;br /&gt;
&lt;br /&gt;
            // Make Alt+Tab still work in the overlay !&lt;br /&gt;
        //key  &amp;lt;TAB&amp;gt; {&lt;br /&gt;
        //    // would need an appropriate type here [ Tab,  ISO_Left_Tab    ],&lt;br /&gt;
        //    overlay1 = &amp;lt;F30&amp;gt;&lt;br /&gt;
        //};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;level3(ralt_switch)&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_geometry { include &amp;quot;pc(pc105)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13305</id>
		<title>Utilisateur:Legrostdg</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13305"/>
		<updated>2009-03-25T22:33:16Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : /* Keymap « de base » */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La [[Utilisateur:Nbrodu|variante proposée par Nbrodu]] est très utile mais étant plutôt adepte de vim, je n&#039;utilisais pas beaucoup les raccourcis en Ctrl+… En revanche return, delete, backspace et escape avaient selon moi besoin d&#039;être plus accessibles. J&#039;en ai profité pour mettre les touches de direction &amp;quot;alla vim&amp;quot; et ajuster les touches début, fin, pgup et pgdn de manière plus homogène.&lt;br /&gt;
&lt;br /&gt;
J&#039;ai également rajouté des touches dead-modificateur (plus parce que j&#039;étais content d&#039;avoir trouvé comment faire qu&#039;autre chose).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Keymap « de base »===&lt;br /&gt;
J&#039;ai adopté la version bépow. [[Utilisateur:Kaze/Bépo-int|Explications ici]].&lt;br /&gt;
&lt;br /&gt;
Le w était vraiment trop loin et les &#039;[&#039; et &#039;]&#039; disponibles dans la même rangée que &#039;{&#039;-&#039;}&#039; et &#039;&amp;lt;&#039;-&#039;&amp;gt;&#039; je trouvait ça trop pratique. Les parenthèses en altgr+&#039;é&#039; et altgr+&#039;p&#039; ce serait selon moi royal, mais c&#039;est vrai que le &#039;´&#039; est bien sur le é… Je n&#039;ai pas encore trouvé de solution idéale. En tous cas, pour l&#039;instant:&lt;br /&gt;
&lt;br /&gt;
L&#039;espace insécable est accessible en altgr+space et l&#039;espace fine insécable en altgr+maj+space. space et maj+space donnent une espace classique, je trouvais la combinaison &amp;quot;maj+space = espace&amp;quot; trop dangereuse pour la programmation. Pour l&#039;instant le &#039;_&#039; est accessible en fn+space. Ce n&#039;est pas super logique (le &#039;_&#039; c&#039;est pas du « déplacement/édition ») mais bon… la couche « déplacement/édition » est aussi accessible que la couche altgr et la laisser quasiment vide serait un peu du gaspillage. Le mieux serait peut-être de caler le &#039;_&#039; ailleurs (mais où ? :-)). Ou alors utiliser un peu plus cette couche fn -&amp;gt; :-)&lt;br /&gt;
&lt;br /&gt;
Ctrl droit et Compose sont inversés: les touches Ctrl sont tout à fait inaccessibles sans lever la main. Un &amp;quot;dead_Compose&amp;quot; est accessible en Fn+&#039;,&#039;.&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │ # ¶│ 1 „│ 2 “│ 3 ”│ 4 ≤│ 5 ≥│ 6  ║ 7 ¬│ 8 ¼│ 9 ½│ 0 ¾│ ° ′│ ℝ ″║         ║&lt;br /&gt;
 │ $ –│ &amp;quot; —│ « &amp;lt;│ » &amp;gt;│ ( →│ ) ⇒│ @ ^║ + ±│ - −│ / ÷│ * ×│ = ≠│ % ‰║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║ B ¦│ É ˝│ P §│ O Œ│ W  ║ !  │ V  │ D Ð│ L  │ J Ĳ│ ˇ Ə│ ˙  ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ b |│ é ´│ p &amp;amp;│ o œ│ w  ║ ` ¡│ v ˇ│ d ð│ l /│ j ĳ│ ^ ə│ ¨ ˘║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║ A Æ│ U  │ I  │ E ¤│ ;  ║ C ſ│ T Þ│ S ß│ R  │ N  │ M º│ Ç ,║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ a æ│ u [│ i ]│ e €│ , &#039;║ c ©│ t þ│ s ß│ r ®│ n ˜│ m ¯│ ç ¸║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║ Ê  │ Z  │ Y ‘│ X ’│ : ·│ K  ║ ?  │ Q  │ G  │ H ‡│ F ª║     ^      ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║ ê /│ z \│ y {│ x }│ . …│ k ~║ ’ ¿│ q °│ g µ│ h †│ f ˛║     |      ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║ Espace   Fine Insécable  ║     ║       ║     ║ Com- ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║ Espace     Insécable     ║AltGr║ Ctrl  ║WinM ║ pose ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Fn « déplacement/édition » (et underscore)===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │    │    │    │    │    │    │    ║    │    │    │    │    │    ║         ║&lt;br /&gt;
 │    │    │    │    │    │    │    ║    │    │    │    │    │    ║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║dead│dead│dead│dead│    ║    │    │    │    │    │    │    ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ctrl│ maj│ alt│altg│    ║    │    │    │    │    │    │    ║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║    │    │    │    │Com-║    │    │    │    │    │    │    ║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ esc│ del│bksp│entr│pose│ ←  │ ↓  │ ↑  | →  │ esc│    │    ║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║    │    │    │    │    │    ║    │    │    │    │    ║     ^      ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║    │    │    │    │    │    ║ deb│pgdn│pgup│ fin│    ║     |      ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║                          ║     ║       ║     ║ Com- ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║            _             ║AltGr║ Ctrl  ║WinM ║ pose ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Des idées ?===&lt;br /&gt;
Si vous avez des idées pour améliorer cette super couche « déplacement/édition » rajoutez-les ici !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon fichier .xkb===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
xkb_keymap        {&lt;br /&gt;
&lt;br /&gt;
xkb_keycodes      { include &amp;quot;xfree86+aliases(azerty)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
xkb_types         {&lt;br /&gt;
    include &amp;quot;complete&amp;quot;&lt;br /&gt;
    type &amp;quot;ALTGR_TWO&amp;quot; {&lt;br /&gt;
       modifiers = LevelThree;&lt;br /&gt;
       map[None] = Level1;&lt;br /&gt;
       map[LevelThree] = Level2;&lt;br /&gt;
       level_name[Level1] = &amp;quot;Base&amp;quot;;&lt;br /&gt;
       level_name[Level2] = &amp;quot;AltGr&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_compatibility { include &amp;quot;complete&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        indicator &amp;quot;Scroll Lock&amp;quot; { controls = Overlay1; allowExplicit = True; drivesKeyboard = True; };&lt;br /&gt;
        &lt;br /&gt;
        interpret F24 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Control); // ctrl-r&lt;br /&gt;
        };&lt;br /&gt;
        interpret F25 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6D&amp;gt;, modifiers=Control); // ctrl-f&lt;br /&gt;
        };&lt;br /&gt;
        interpret F26 {&lt;br /&gt;
            action = LockControls(controls=Overlay1);&lt;br /&gt;
        };&lt;br /&gt;
        interpret F27 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6E&amp;gt;, modifiers=Control); // ctrl-s&lt;br /&gt;
        };&lt;br /&gt;
        interpret F28 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;LEFT&amp;gt;, modifiers=Control); // ctrl-â†&lt;br /&gt;
        };&lt;br /&gt;
        interpret F29 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;RGHT&amp;gt;, modifiers=Control); // ctrl-â†’&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
        interpret F30 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6F&amp;gt;, modifiers=Mod1); // Alt-Tab&lt;br /&gt;
        };&lt;br /&gt;
        interpret F31 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I71&amp;gt;, modifiers=Control); // ctrl-x&lt;br /&gt;
        };&lt;br /&gt;
        interpret F32 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I72&amp;gt;, modifiers=Control); // ctrl-c&lt;br /&gt;
        };&lt;br /&gt;
        interpret F33 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I73&amp;gt;, modifiers=Control); // ctrl-v&lt;br /&gt;
        };&lt;br /&gt;
        interpret F34 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I74&amp;gt;, modifiers=Control); // ctrl-z&lt;br /&gt;
        };&lt;br /&gt;
        interpret F35 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I75&amp;gt;, modifiers=Control); // ctrl-y&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
partial alphanumeric_keys&lt;br /&gt;
xkb_symbols &amp;quot;dvorak&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	name[Group1]= &amp;quot;France - Bepo, ergonomic, Dvorak way (v1.0rc2)&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;pc(pc105)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;TLDE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dollar, numbersign, endash, paragraph ], overlay1 = &amp;lt;I70&amp;gt; }; // $ # – ¶&lt;br /&gt;
	key &amp;lt;AE01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ quotedbl, 1, emdash, doublelowquotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // &amp;quot; 1 — „&lt;br /&gt;
	key &amp;lt;AE02&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotleft, 2, less, leftdoublequotemark ], // « 2 &amp;lt; “&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ less, 2, guillemotleft, leftdoublequotemark ], // &amp;lt; 2 « “&lt;br /&gt;
                     overlay1 = &amp;lt;I70&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE03&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotright, 3, greater, rightdoublequotemark ], // » 3 &amp;gt; ”&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ greater, 3, guillemotright, rightdoublequotemark ], // &amp;gt; 3 » ”&lt;br /&gt;
                     overlay1 = &amp;lt;I70&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenleft, 4, U2192, lessthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ( 4 → ≤&lt;br /&gt;
	key &amp;lt;AE05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenright, 5, U21D2, greaterthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ) 5 ⇒ ≥&lt;br /&gt;
	key &amp;lt;AE06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ at, 6, asciicircum ], overlay1 = &amp;lt;I70&amp;gt; }; // @ 6 ^&lt;br /&gt;
	key &amp;lt;AE07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ plus, 7, plusminus, notsign ], overlay1 = &amp;lt;I70&amp;gt; }; // + 7 ± ¬&lt;br /&gt;
	key &amp;lt;AE08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ minus, 8, U2212, onequarter ], overlay1 = &amp;lt;I70&amp;gt; }; // - 8 − ¼&lt;br /&gt;
	key &amp;lt;AE09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ slash, 9, division, onehalf ], overlay1 = &amp;lt;I70&amp;gt; }; // / 9 ÷ ½&lt;br /&gt;
	key &amp;lt;AE10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asterisk, 0, multiply, threequarters ], overlay1 = &amp;lt;I70&amp;gt; }; // * 0 × ¾&lt;br /&gt;
	key &amp;lt;AE11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ equal, degree, notequal, minutes ], overlay1 = &amp;lt;I70&amp;gt; }; // = ° ≠&lt;br /&gt;
	key &amp;lt;AE12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ percent, grave, U2030, seconds ], overlay1 = &amp;lt;I70&amp;gt; }; // % ` ‰&lt;br /&gt;
	key &amp;lt;AD01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ b, B, bar, brokenbar ], overlay1 = &amp;lt;FK13&amp;gt; }; // b B | ¦ dead_ctrl&lt;br /&gt;
	key &amp;lt;AD02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, dead_acute, dead_doubleacute ], overlay1 = &amp;lt;FK14&amp;gt; }; // é É ´ ˝ dead_shift&lt;br /&gt;
	key &amp;lt;AD03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, ampersand, section ], overlay1 = &amp;lt;FK15&amp;gt; }; // p P &amp;amp; § dead_alt&lt;br /&gt;
	key &amp;lt;AD04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ o, O, oe, OE ], overlay1 = &amp;lt;FK16&amp;gt; }; // o O œ Œ dead_altgr&lt;br /&gt;
	//key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ egrave, Egrave, dead_grave, grave ], }; // è È ` `&lt;br /&gt;
	key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ w, W, dead_breve ], overlay1 = &amp;lt;I70&amp;gt; }; // w W ˘&lt;br /&gt;
	key &amp;lt;AD06&amp;gt; { type[group1] = &amp;quot;THREE_LEVEL&amp;quot;, [ dead_grave, exclam, exclamdown ], overlay1 = &amp;lt;I70&amp;gt; }; // ` ! ¡&lt;br /&gt;
	key &amp;lt;AD07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ v, V, dead_caron ], overlay1 = &amp;lt;I70&amp;gt; }; // v V ˇ&lt;br /&gt;
	key &amp;lt;AD08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ d, D, eth, ETH ], overlay1 = &amp;lt;I70&amp;gt;}; // d D ð Ð&lt;br /&gt;
	key &amp;lt;AD09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ l, L, UFDD0 ], overlay1 = &amp;lt;I70&amp;gt;}; // l L /&lt;br /&gt;
	key &amp;lt;AD10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ j, J, U0133, U0132 ], overlay1 = &amp;lt;I70&amp;gt;}; // j J ĳ Ĳ&lt;br /&gt;
        key &amp;lt;AD11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_circumflex, dead_caron, schwa, SCHWA ], overlay1 = &amp;lt;I70&amp;gt; }; // ^ ˇ ə Ə&lt;br /&gt;
        key &amp;lt;AD12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_diaeresis, dead_abovedot, dead_breve, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ¨ ˙ ˘&lt;br /&gt;
	key &amp;lt;AC01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ a, A, ae, AE ], overlay1 = &amp;lt;ESC&amp;gt; }; // a A æ Æ escape&lt;br /&gt;
        key &amp;lt;AC02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ u, U, bracketleft ], overlay1 = &amp;lt;DELE&amp;gt; }; // u U [ delete&lt;br /&gt;
	key &amp;lt;AC03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ i, I, bracketright ], overlay1 = &amp;lt;BKSP&amp;gt; }; // i I ] backspace&lt;br /&gt;
	key &amp;lt;AC04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ e, E, EuroSign, UFDD1 ], overlay1 = &amp;lt;RTRN&amp;gt; }; // e E € ¤ return&lt;br /&gt;
        key &amp;lt;AC05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, rightsinglequotemark, dead_horn  ], // , ; &#039; &lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, apostrophe, dead_horn  ],           // , ; ’&lt;br /&gt;
            overlay1 = &amp;lt;FK17&amp;gt;                                                                    // multi_key&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AC06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ c, C, copyright, U017F ], overlay1 = &amp;lt;LEFT&amp;gt; }; // c C © ſ&lt;br /&gt;
	key &amp;lt;AC07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ t, T, thorn, THORN ], overlay1 = &amp;lt;DOWN&amp;gt; }; // t T þ Þ&lt;br /&gt;
	key &amp;lt;AC08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ s, S, ssharp, U1E9E ], overlay1 = &amp;lt;UP&amp;gt; }; // s S ß ẞ&lt;br /&gt;
	key &amp;lt;AC09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ r, R, registered, trademark ], overlay1 = &amp;lt;RGHT&amp;gt; }; // r R ® ™&lt;br /&gt;
	key &amp;lt;AC10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ n, N, dead_tilde ], overlay1 = &amp;lt;ESC&amp;gt; }; // n N ~ escape&lt;br /&gt;
	key &amp;lt;AC11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ m, M, dead_macron, masculine ], overlay1 = &amp;lt;I70&amp;gt; }; // m M ¯ º&lt;br /&gt;
	key &amp;lt;BKSL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ], overlay1 = &amp;lt;I70&amp;gt; }; // ç Ç ¸ ,&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;LSGT&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ecircumflex, Ecircumflex, slash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ê Ê /&lt;br /&gt;
	key &amp;lt;AB01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ z, Z, backslash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // z Z \&lt;br /&gt;
	key &amp;lt;AB02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ y, Y, braceleft, leftsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // y Y { ‘&lt;br /&gt;
	key &amp;lt;AB03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ x, X, braceright, rightsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // x X } ’&lt;br /&gt;
	key &amp;lt;AB04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ period, colon, ellipsis, periodcentered ], overlay1 = &amp;lt;I70&amp;gt; }; // . : … ·&lt;br /&gt;
	key &amp;lt;AB05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ k, K, asciitilde, dead_tilde ], overlay1 = &amp;lt;I70&amp;gt; }; // k K ~&lt;br /&gt;
        key &amp;lt;AB06&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, question, questiondown, dead_hook ],           // ’ ? ¿ ̉&lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ rightsinglequotemark, question, questiondown, dead_hook ], // &#039; ? ¿ ̉&lt;br /&gt;
            overlay1 = &amp;lt;HOME&amp;gt;                                                                         // home&lt;br /&gt;
        }; &lt;br /&gt;
	key &amp;lt;AB07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ q, Q, dead_abovering, dead_belowdot ], overlay1 = &amp;lt;PGDN&amp;gt; }; // q Q ˚ ̣pgdn&lt;br /&gt;
	key &amp;lt;AB08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ g, G, UFDD2 ], overlay1 = &amp;lt;PGUP&amp;gt; }; // g G µ pgup&lt;br /&gt;
	key &amp;lt;AB09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ h, H, dagger, doubledagger ], overlay1 = &amp;lt;END&amp;gt; }; // h H † ‡&lt;br /&gt;
	key &amp;lt;AB10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ f, F, dead_ogonek, ordfeminine ], overlay1 = &amp;lt;I70&amp;gt; }; // f F ˛ ª&lt;br /&gt;
        key &amp;lt;SPCE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ space, space, nobreakspace, U202F ], overlay1 = &amp;lt;I7F&amp;gt; }; //  spaces underscore&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Unused keys mapped to ctrl+letter actions&lt;br /&gt;
        key &amp;lt;I6C&amp;gt; { [ r ] };&lt;br /&gt;
        key &amp;lt;I6D&amp;gt; { [ f ] };&lt;br /&gt;
        key &amp;lt;I6E&amp;gt; { [ s ] };&lt;br /&gt;
        key &amp;lt;I6F&amp;gt; { [ Tab ] };&lt;br /&gt;
        key &amp;lt;I70&amp;gt; { [ VoidSymbol ] };&lt;br /&gt;
        key &amp;lt;I71&amp;gt; { [ x ] };&lt;br /&gt;
        key &amp;lt;I72&amp;gt; { [ c ] };&lt;br /&gt;
        key &amp;lt;I73&amp;gt; { [ v ] };&lt;br /&gt;
        key &amp;lt;I74&amp;gt; { [ z ] };&lt;br /&gt;
        key &amp;lt;I75&amp;gt; { [ y ] };&lt;br /&gt;
        key &amp;lt;I76&amp;gt; { [ space ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // For some reason there are SOMETIMES (not always!) errors with this code:&lt;br /&gt;
        //    key &amp;lt;I7A&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;I7B&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;I7C&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;I7D&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;I7E&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // However passing the action in the Â«Â interpretÂ Â» section for an unsused symbol seems to work&lt;br /&gt;
        key &amp;lt;I60&amp;gt; { [ F24 ] };      // ctrl-R&lt;br /&gt;
        key &amp;lt;I61&amp;gt; { [ F25 ] };      // ctrl-F&lt;br /&gt;
        key &amp;lt;I77&amp;gt; { [ F28 ] };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I78&amp;gt; { [ F29 ] };      // ctrl-right&lt;br /&gt;
        key &amp;lt;I79&amp;gt; { [ F30 ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        //    key &amp;lt;I79&amp;gt; { [ Tab ], actions = [ setMods(modifiers=Mod1) ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;I7A&amp;gt; { [ F31 ] };      // ctrl-x&lt;br /&gt;
        key &amp;lt;I7B&amp;gt; { [ F32 ] };      // ctrl-c&lt;br /&gt;
        key &amp;lt;I7C&amp;gt; { [ F33 ] };      // ctrl-v&lt;br /&gt;
        key &amp;lt;I7D&amp;gt; { [ F34 ] };      // ctrl-z&lt;br /&gt;
        key &amp;lt;I7E&amp;gt; { [ F35 ] };      // ctrl-y&lt;br /&gt;
        key &amp;lt;I7F&amp;gt; { [ underscore ] };      // _&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Using &amp;lt; 127 keycodes also works&lt;br /&gt;
        key &amp;lt;FK13&amp;gt; { actions = [ LatchMods(modifiers=Control) ] };        // dead ctrl&lt;br /&gt;
        key &amp;lt;FK14&amp;gt; { actions = [ LatchMods(modifiers=Shift) ] };          // dead shift&lt;br /&gt;
        key &amp;lt;FK15&amp;gt; { actions = [ LatchMods(modifiers=Alt) ] };            // dead alt&lt;br /&gt;
        key &amp;lt;FK16&amp;gt; { actions = [ LatchMods(modifiers=AltGr) ] };          // dead altgr&lt;br /&gt;
        key &amp;lt;FK17&amp;gt; { [ Multi_key ] };                                     // multi_key&lt;br /&gt;
        //    key &amp;lt;FK13&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;FK14&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;FK15&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;FK16&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;FK17&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
        // See also the bug thread here : https://bugs.freedesktop.org/show_bug.cgi?id=12401&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Transforme CAPS en lock de couche alternative «déplacement/édition», et garde le caps-lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour échanger Shift et Caps_Lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; {  [    Caps_Lock    ] };&lt;br /&gt;
&lt;br /&gt;
        // Combinaison des 2 : attention, requiert que les LFSH et CAPS dans les définitions de la touche &amp;lt;AC01&amp;gt; soient aussi échangées dans la partie principale&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
&lt;br /&gt;
        // shift + lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer CAPS en un AltGr gauche, en gardant le lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ ISO_Level3_Shift, Caps_Lock ], actions = [ SetMods(modifiers=LevelThree), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer LWIN en un AltGr gauche&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour mettre un Compose sur RWIN&lt;br /&gt;
        // key &amp;lt;RWIN&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        // key &amp;lt;MENU&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        //key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = [ SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;RCTL&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour que LWIN permette de changer de groupe&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
&lt;br /&gt;
        // Echange CTRL et Alt Gauches. Et puisque LWIN est réaffectée, garde un modificateur META en niveau 3 et 4 (AltGr)&lt;br /&gt;
        // Note: Activer cette option fonctionne mieux lorsque que l&#039;on échange aussi les raccourcis du style Alt+Tabâ€¦&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; {        [ Control_L ], actions = [ SetMods(modifiers=Control) ]       };&lt;br /&gt;
        //    key &amp;lt;LCTL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [       Alt_L,  Alt_L,  Meta_L, Meta_L         ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ]       };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        key &amp;lt;LALT&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; { type = &amp;quot;ONE_LEVEL&amp;quot;, [ VoidSymbol ], actions = [ LockControls(controls=Overlay1) ] };&lt;br /&gt;
            &lt;br /&gt;
            key &amp;lt;LFSH&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
            key &amp;lt;LWIN&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [ Alt_L, Alt_L, Meta_L, Meta_L ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ] };&lt;br /&gt;
&lt;br /&gt;
            // Make Alt+Tab still work in the overlay !&lt;br /&gt;
        //    key  &amp;lt;TAB&amp;gt; {&lt;br /&gt;
        //        // would need an appropriate type here [ Tab,  ISO_Left_Tab    ],&lt;br /&gt;
        //        overlay1 = &amp;lt;I79&amp;gt;&lt;br /&gt;
        //    };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;level3(ralt_switch)&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_geometry { include &amp;quot;pc(pc105)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg/Pastealacon&amp;diff=13273</id>
		<title>Utilisateur:Legrostdg/Pastealacon</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg/Pastealacon&amp;diff=13273"/>
		<updated>2009-03-20T16:55:07Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ce script permet de ne pas reprendre la souris pour coller des données sur le site [http://pastealacon.com pastealacon.com].&lt;br /&gt;
&lt;br /&gt;
Il prend le texte à coller sur l&#039;entrée standard et il renvoie l&#039;url associée. Il colle aussi cette url dans le buffer du clic scroll à l&#039;aide de xclip.&lt;br /&gt;
&lt;br /&gt;
Exemple d&#039;utilisation :&lt;br /&gt;
 toto@charcuterie ~% cat je_m_appelle_toto_et_je_suis_rigolo.txt | pastebin.pl&lt;br /&gt;
  http://pastealacon.com/2281&lt;br /&gt;
&lt;br /&gt;
On peut retrouver l&#039;url à l&#039;aide de &amp;quot;xclip -o&amp;quot;.&lt;br /&gt;
 toto@charcuterie ~% xclip -o&lt;br /&gt;
  http://pastealacon.com/2281&lt;br /&gt;
Il nécessite perl, le module perl WWW::Mechanize et xclip&lt;br /&gt;
&lt;br /&gt;
Les options disponibles sont:&lt;br /&gt;
*-nick (votre pseudo (Anonymous par défaut, éventuellement à adapter dans le script))&lt;br /&gt;
*-lang (le langage dans lequel sont codées les lignes que vous avez &amp;quot;pastées&amp;quot; (défaut: texte): utile pour la coloration syntaxique)&lt;br /&gt;
&lt;br /&gt;
voir la liste des languages de programmation supportés par [http://pastealacon.com pastealacon.com].&lt;br /&gt;
&lt;br /&gt;
en général il vous faut noter le nom du langage sans espace et en minuscule.&lt;br /&gt;
&lt;br /&gt;
*-time (durée de vie du &amp;quot;paste&amp;quot;: d = un jour (défaut), m = un mois, f = à jamais)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
#!/usr/bin/perl -w&lt;br /&gt;
#&lt;br /&gt;
# pastealacon.pl&lt;br /&gt;
#&lt;br /&gt;
# Faire des pastes en ligne de commande sur pastealacon.com.&lt;br /&gt;
# Colle l&#039;entrée standard sur pastealacon.com, renvoie l&#039;url&lt;br /&gt;
# et la met dans le buffer du clic scroll.&lt;br /&gt;
#&lt;br /&gt;
# Distribué sous les termes de la&lt;br /&gt;
# Licence Publique Rien À Branler (LPRAB) version 1&lt;br /&gt;
&lt;br /&gt;
my $url = &amp;quot;http://pastealacon.com/&amp;quot;;&lt;br /&gt;
my $nick = &amp;quot;Anonymous&amp;quot;;&lt;br /&gt;
my $format = &amp;quot;text&amp;quot;;&lt;br /&gt;
my $time = &amp;quot;d&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
use WWW::Mechanize;&lt;br /&gt;
use Getopt::Long;&lt;br /&gt;
&lt;br /&gt;
my %CONF = (&lt;br /&gt;
  lang     =&amp;gt; $format,&lt;br /&gt;
  nick     =&amp;gt; $nick,&lt;br /&gt;
  time     =&amp;gt; $time,&lt;br /&gt;
  text     =&amp;gt; &#039;&#039;,&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
GetOptions( \%CONF, &amp;quot;lang=s&amp;quot;, &amp;quot;nick=s&amp;quot;, &amp;quot;time=s&amp;quot;, &amp;quot;text=s&amp;quot; )&lt;br /&gt;
  or die &amp;quot;Bad Options.&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
my $m = WWW::Mechanize-&amp;gt;new;&lt;br /&gt;
$m-&amp;gt;get($url);&lt;br /&gt;
die $m-&amp;gt;res-&amp;gt;status_line unless $m-&amp;gt;success;&lt;br /&gt;
&lt;br /&gt;
unless ( $CONF{text} ) {&lt;br /&gt;
  $CONF{text} = join &amp;quot;&amp;quot;, &amp;lt;&amp;gt;;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
$m-&amp;gt;set_fields(&lt;br /&gt;
  format    =&amp;gt; $CONF{lang},&lt;br /&gt;
  code2     =&amp;gt; $CONF{text},&lt;br /&gt;
  poster    =&amp;gt; $CONF{nick},&lt;br /&gt;
  expiry    =&amp;gt; $CONF{time},&lt;br /&gt;
);&lt;br /&gt;
$m-&amp;gt;click;&lt;br /&gt;
die $m-&amp;gt;res-&amp;gt;status_line unless $m-&amp;gt;success;&lt;br /&gt;
my $response = $m-&amp;gt;response-&amp;gt;request-&amp;gt;uri-&amp;gt;as_string;&lt;br /&gt;
system( &amp;quot;echo $response | xclip -i&amp;quot; );&lt;br /&gt;
print $response, &amp;quot;\n&amp;quot;;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg/Pastealacon&amp;diff=13272</id>
		<title>Utilisateur:Legrostdg/Pastealacon</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg/Pastealacon&amp;diff=13272"/>
		<updated>2009-03-20T16:00:59Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ce script permet de ne pas reprendre la souris pour coller des données sur le site [http://pastealacon.com pastealacon.com].&lt;br /&gt;
&lt;br /&gt;
Il prend le texte à coller sur l&#039;entrée standard et il renvoie l&#039;url associée. Il colle aussi cette url dans le buffer du clic scroll à l&#039;aide de xclip.&lt;br /&gt;
&lt;br /&gt;
Exemple d&#039;utilisation :&lt;br /&gt;
 toto@charcuterie ~% cat je_m_appelle_toto_et_je_suis_rigolo.txt | xclip&lt;br /&gt;
 toto@charcuterie ~% xclip -o | pastebin.pl&lt;br /&gt;
  http://pastealacon.com/2281&lt;br /&gt;
&lt;br /&gt;
On peut retrouver l&#039;url à l&#039;aide de &amp;quot;xclip -o&amp;quot;.&lt;br /&gt;
 toto@charcuterie ~% xclip -o&lt;br /&gt;
  http://pastealacon.com/2281&lt;br /&gt;
Il nécessite perl, le module perl WWW::Mechanize et xclip&lt;br /&gt;
&lt;br /&gt;
Les options disponibles sont:&lt;br /&gt;
*-nick (votre pseudo (Anonymous par défaut, éventuellement à adapter dans le script))&lt;br /&gt;
*-lang (le langage dans lequel sont codées les lignes que vous avez &amp;quot;pastées&amp;quot; (défaut: texte): utile pour la coloration syntaxique)&lt;br /&gt;
&lt;br /&gt;
voir la liste des languages de programmation supportés par [http://pastealacon.com pastealacon.com].&lt;br /&gt;
&lt;br /&gt;
en général il vous faut noter le nom du langage sans espace et en minuscule.&lt;br /&gt;
&lt;br /&gt;
*-time (durée de vie du &amp;quot;paste&amp;quot;: d = un jour (défaut), m = un mois, f = à jamais)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
#!/usr/bin/perl -w&lt;br /&gt;
#&lt;br /&gt;
# pastealacon.pl&lt;br /&gt;
#&lt;br /&gt;
# Faire des pastes en ligne de commande sur pastealacon.com.&lt;br /&gt;
# Colle l&#039;entrée standard sur pastealacon.com, renvoie l&#039;url&lt;br /&gt;
# et la met dans le buffer du clic scroll.&lt;br /&gt;
#&lt;br /&gt;
# Distribué sous les termes de la&lt;br /&gt;
# Licence Publique Rien À Branler (LPRAB) version 1&lt;br /&gt;
&lt;br /&gt;
my $url = &amp;quot;http://pastealacon.com/&amp;quot;;&lt;br /&gt;
my $nick = &amp;quot;Anonymous&amp;quot;;&lt;br /&gt;
my $format = &amp;quot;text&amp;quot;;&lt;br /&gt;
my $time = &amp;quot;d&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
use WWW::Mechanize;&lt;br /&gt;
use Getopt::Long;&lt;br /&gt;
&lt;br /&gt;
my %CONF = (&lt;br /&gt;
  lang     =&amp;gt; $format,&lt;br /&gt;
  nick     =&amp;gt; $nick,&lt;br /&gt;
  time     =&amp;gt; $time,&lt;br /&gt;
  text     =&amp;gt; &#039;&#039;,&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
GetOptions( \%CONF, &amp;quot;lang=s&amp;quot;, &amp;quot;nick=s&amp;quot;, &amp;quot;time=s&amp;quot;, &amp;quot;text=s&amp;quot; )&lt;br /&gt;
  or die &amp;quot;Bad Options.&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
my $m = WWW::Mechanize-&amp;gt;new;&lt;br /&gt;
$m-&amp;gt;get($url);&lt;br /&gt;
die $m-&amp;gt;res-&amp;gt;status_line unless $m-&amp;gt;success;&lt;br /&gt;
&lt;br /&gt;
unless ( $CONF{text} ) {&lt;br /&gt;
  $CONF{text} = join &amp;quot;&amp;quot;, &amp;lt;&amp;gt;;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
$m-&amp;gt;set_fields(&lt;br /&gt;
  format    =&amp;gt; $CONF{lang},&lt;br /&gt;
  code2     =&amp;gt; $CONF{text},&lt;br /&gt;
  poster    =&amp;gt; $CONF{nick},&lt;br /&gt;
  expiry    =&amp;gt; $CONF{time},&lt;br /&gt;
);&lt;br /&gt;
$m-&amp;gt;click;&lt;br /&gt;
die $m-&amp;gt;res-&amp;gt;status_line unless $m-&amp;gt;success;&lt;br /&gt;
my $response = $m-&amp;gt;response-&amp;gt;request-&amp;gt;uri-&amp;gt;as_string;&lt;br /&gt;
system( &amp;quot;echo $response | xclip -i&amp;quot; );&lt;br /&gt;
print $response, &amp;quot;\n&amp;quot;;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Foire_aux_questions&amp;diff=13271</id>
		<title>Foire aux questions</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Foire_aux_questions&amp;diff=13271"/>
		<updated>2009-03-20T15:57:08Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : /* Différences entre —_-–¬¯− */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Cette page est destinée à recevoir les réponses aux questions courantes. La prochaine fois que vous voyez une question à laquelle nous avons déjà beaucoup répondu… c’est pour ici !&lt;br /&gt;
&lt;br /&gt;
== Questions générales ==&lt;br /&gt;
&lt;br /&gt;
=== Comment installer la disposition bépo ?  ===&lt;br /&gt;
&lt;br /&gt;
Toutes les explications pour Windows, Mac, Linux et FreeBSD sur la page à propos de l&#039;[[installation|installation du bépo]].&lt;br /&gt;
&lt;br /&gt;
=== Quand sortira la version 1.0 ? ===&lt;br /&gt;
&lt;br /&gt;
La version 1.0 est presque prête. Il ne reste plus qu&#039;à tester finaliser et tester les pilotes.&lt;br /&gt;
&lt;br /&gt;
=== Est-ce que cela vaut le coup d&#039;apprendre bépo dès maintenant ? ===&lt;br /&gt;
&lt;br /&gt;
Oui ! Comme le numéro de version l’indique (1.0) la disposition des caractères principaux ne changera plus. Seul quelques petits ajustements minimes ont encore lieu. Cf. les discussions en cours sur la [[Discuter:Version {{numéro de la prochaine version}}|page de discussion]].&lt;br /&gt;
&lt;br /&gt;
=== Existe-t-il des claviers vendus en bépo ? ===&lt;br /&gt;
&lt;br /&gt;
Malheureusement, on n&#039;a pas encore le choix, dans les magasins, entre les claviers bépo et les claviers azerty. Mais nous y travaillons ! Deux solutions sont déjà à votre portée :&lt;br /&gt;
* Le fabricant de claviers ergonomiques Typematrix propose des skins bépo noires ou transparentes compatibles avec son dernier clavier : le Typematrix 2030 usb.&lt;br /&gt;
* Beaujoie, renommé pour ses autocollants pour clavier, propose désormais les autocollants bépo, en blanc sur fond noir, et en noir sur fond blanc.&lt;br /&gt;
&lt;br /&gt;
Si aucune de ces solutions ne vous convient, sachez qu&#039;il est tout à fait possible de taper en bépo sur un clavier azerty ou qwerty, nous le faisions tous jusqu&#039;à il y a peu. D&#039;ailleurs, a disposition bépo est conçue pour être utilisée avec une frappe à dix doigts et sans regarder le clavier. On conseille même, pour faciliter l’[[apprentissage|apprentissage de bépo]], de conserver son clavier avec les touches d&#039;origine, et de ne pas y coller des étiquettes ou un cache bépo. Au début, on pourra s&#039;aider d&#039;un schéma du clavier bépo, et très vite, ce ne sera plus nécessaire !&lt;br /&gt;
&lt;br /&gt;
Par ailleurs, si votre entourage ne souhaite pas utiliser la disposition bépo, il est très facile de passer d’une disposition de clavier à une autre sur les système d’exploitation actuels.&lt;br /&gt;
&lt;br /&gt;
=== Je voudrais changer de clavier, de souris… que prendre ? ===&lt;br /&gt;
Nous avons une page [[Périphériques|périphériques]] sur laquelle de nombreux clavier et autres périphériques plus ou moins exotiques sont listés. Le principal problème ergonomique des claviers est que 99% d’entre eux ont, héritage des machines à écrire, les rangées de touches décalées les unes par rapport aux autres (une [http://www.typematrix.com/download/TypeMatrix-morph-promo-640.mpeg vidéo] sur le site de TypeMatrix™ l’explique bien). Bien que ce décalage soit anti-ergonomique dès lors qu’on tape à dix doigts — &#039;&#039;Cf.&#039;&#039; le [[Carte_d%27accessibilit%C3%A9_des_touches#Accessibilit.C3.A9_des_touches_du_point_de_vue_dactylographique|placement des doigts]] des méthodes dactylographique —, quasiment tous les claviers, y compris un bon nombre de prétendument « ergonomique » ont encore ce grave défaut.&lt;br /&gt;
&lt;br /&gt;
Un des buts de la disposition bépo est de gérer pour le mieux ce défaut. Néanmoins, il est évident qu’il est très profitable d’utiliser un clavier avec les rangées non décalées. En effet quelques exceptions existent, avec des touches [[Périphériques#Claviers_en_colonnes|replacées en colonnes]]. Ces claviers sont à l’évidence bien meilleurs d’un point de vue ergonomique (sans être parfaits, naturellement). Malheureusement, ils coûtent assez cher… mais songez au nombres d’heure que vous passez par jour à taper sur un clavier !&lt;br /&gt;
&lt;br /&gt;
=== Quelle est la licence de la disposition bépo ? ===&lt;br /&gt;
&lt;br /&gt;
[[Clavier_Dvorak:À propos|Toutes les informations légales]].&lt;br /&gt;
&lt;br /&gt;
=== Version 2 ? ===&lt;br /&gt;
Le principe de la version 2 serait de refaire une nouvelle disposition ergonomique à partir des mêmes principes que la première version mais en utilisant un [[corpus]] plus volumineux et mieux analysé et des postulats de base différents tels que la [[place des chiffres|position des chiffres]] ou bien l&#039;utilisation d&#039;un modificateur AltGr symétrique (dupliqué à gauche). Cependant, cette version 2 est encore à l&#039;[[idées pour une v2|état d&#039;ébauche]] et en l&#039;attendant il vaut mieux profiter du bépo que de rester en azerty.&lt;br /&gt;
&lt;br /&gt;
== Questions techniques ==&lt;br /&gt;
&lt;br /&gt;
=== Pourquoi &#039;&#039;refaire&#039;&#039; une disposition Dvorak francophone alors qu’il en existe déjà une ? ===&lt;br /&gt;
&lt;br /&gt;
La disposition dvorak-fr nous semble [[dvorak-fr|présenter des problèmes]] auxquels nous avons apporté des solutions qui nous semblent profitables.&lt;br /&gt;
&lt;br /&gt;
=== Pourquoi les guillemets français (« et ») sont-ils en accès direct, alors que les logiciels de traitement de texte remplacent automatiquement les guillemets anglais (&amp;quot;) ? ===&lt;br /&gt;
&lt;br /&gt;
Premièrement, le remplacement automatique n&#039;est pas une fonctionnalité de tous les logiciels de rédaction, loin de là. En particulier, la plupart des logiciels de courriel n&#039;ont pas de mécanisme évolué (voire aucun mécanisme) de traitement du texte tapé.C&#039;est aussi le cas de bien des éditeurs de texte, d&#039;un grand nombre de [http://fr.wikipedia.org/wiki/Syst%C3%A8me_de_gestion_de_contenu système de gestion de contenu] et interfaces d’édition de blog, etc.&lt;br /&gt;
&lt;br /&gt;
Pourtant, dans ces applications, on a aussi besoin de &#039;&#039;citer&#039;&#039; et de &#039;&#039;nuancer&#039;&#039; ; ce à quoi servent les guillemets. Et puis surtout, il ne faut pas raisonner à l’envers : l’usage de cette conversion automatique s&#039;est répandu précisemment parce que les guillemets français ne sont pas disponibles sur le clavier, et pas l&#039;inverse. En créant la disposition bépo, nous avons l’occasion de corriger ce point, nous le faisons. N’oublions pas que les guillemets sont tout aussi spécifiques du français que le « é » ou le « ï ». Il est donc bien évident que c&#039;est aussi un acte « militant » qui vise à promouvoir une écriture correcte de la langue française, du point de vue typographique.&lt;br /&gt;
&lt;br /&gt;
À ce propos, précisons que les guillemets ouvrants («) doivent être suivis d’une espace insécable (Maj.+espace), et que les fermants (») doivent en être précédés.&lt;br /&gt;
&lt;br /&gt;
=== Pourquoi ne pas mettre l’espace insécable en AltGr ? Pourquoi est-elle en Maj. ? ===&lt;br /&gt;
&lt;br /&gt;
Cette possibilité a été mise en balance, discutée et testé en concurrence de la position actuelle : Maj. + [espace].&lt;br /&gt;
&lt;br /&gt;
Il est possible que le critère déterminant soit le fait que le pouce, mis en flexion sous la paume de la main pour appuyer sur AltGr, ne remonte pas &#039;&#039;assez vite&#039;&#039; une fois la combinaison en AltGr accomplie (en terme biomécanique,la combinaison AltGr+main droite n&#039;est pas terrible). Certes, ce n&#039;est pas grave dans le cadre de l&#039;usage des guillemets, mais ça l&#039;est pour les autres combinaisons en AltGr suivies d&#039;un espace, puisque le signe composé est le plus souvent invisible (à ce propos, GEdit permet de rendre les insécables visibles ; pour les autres éditeurs, il doit être possible de régler la coloration syntaxique ?). &lt;br /&gt;
&lt;br /&gt;
Finalement l&#039;insécable doit rester en Maj., ne serait-ce que pour les autres symboles qui ont besoin de l&#039;insécable et qui se trouvent en Maj. : « : », « ; », « ? », « ! ».&lt;br /&gt;
&lt;br /&gt;
=== Pourquoi débattre de petites modifications qui semblent insignifiantes ? ===&lt;br /&gt;
&lt;br /&gt;
Parfois, les modifications discutées semblent ne rien changer à l’ergonomie générale du clavier… Globalement, ce n&#039;est pas faux, car de toute façon, comparé à l&#039;Azerty, le Bépo (et les autres claviers dvorak francophones) permet un gain énorme à tous points de vue (ergonomie, facilité d&#039;apprentissage, rapidité de la frappe). Mais si ce sont des gains minimes, ils ne sont pas pour autant nuls. Ce sur quoi nous travaillons désormais est précisemment l&#039;amélioration de petits points de détail afin d&#039;essayer de satisfaire un maximum d&#039;utilisateurs.&lt;br /&gt;
&lt;br /&gt;
Ces changements sont aussi plus « visibles » dans des conditions de frappe plus « extrêmes ». Nous entendons par là, qu&#039;à partir d&#039;une certaine vitesse, les détails des combinaisons de touches deviennent importants et parfois décisifs, car ils conditionnent la facilité et la rapidité les enchaînements, et entrent en ligne de compte dans l&#039;apparition de tensions et de fatigue après un certain temps de frappe. Pour donner une analogie simplificatrice, un matelas très mou, qui peut sembler très confortable au premier abord durant le court essai en magasin, peut se révéler très néfaste pour le dos et le cou à l&#039;usage. Somme toute, jauger l&#039;ergonomie en règle générale est compliqué, car au-delà la première impression « logique » se cache une seconde, l&#039;expérience réaliste, en durée comme en usages, qui inclue parfois des paramètres auxquels non initialement pris en compte, par oubli ou méconnaissance.&lt;br /&gt;
&lt;br /&gt;
Les petits réglages et rodages actuels vont donc dans ce sens, et il faut du temps pour les faire.&lt;br /&gt;
&lt;br /&gt;
=== Pourquoi le « / » est-il en double ? ===&lt;br /&gt;
La première touche de la rangée du bas, à droite de {{t|Maj.}} sur la plupart des claviers, est la « [[Type de clavier|105&amp;lt;sup&amp;gt;ème&amp;lt;/sup&amp;gt; touche du clavier]] ». Cette touche est une particularité des claviers francophones, mais n’est pas présente sur les vrais claviers ergonomiques ou les claviers américains. À vrai dire, une grande majorité des claviers dans le monde ne possèdent pas cette touche. Un des objectifs de la disposition bépo étant d’être portable sur tous les claviers, les caractères placés sur cette touche sont disponibles en double :&lt;br /&gt;
* le « ê » peut être obtenu par la combinaison {{touches|{{R|^}}|e}} ;&lt;br /&gt;
* le « / » est directement accessible sur la touche {{t|9}}. &lt;br /&gt;
Si vous comptez acheter un clavier 104 touches, il peut-être bon de ne pas du tout utiliser cette touche lors de l’apprentissage du bépo.&lt;br /&gt;
&lt;br /&gt;
=== [[Place_des_chiffres|Les chiffres]], entre rangée du haut et pavé numérique ===&lt;br /&gt;
&lt;br /&gt;
Vu leur fréquence d&#039;utilisation par rapport aux autres caractères, les chiffres ne méritent pas un accès direct. La langue française comporte en effet nombre de caractères spécifiques en plus des 26 lettres : é, à, è, ç, etc. Ceci nous contraint à déplacer des symboles vers la rangée du haut (et, incidemment, à passer les chiffres en Maj. si on veut conserver un accès direct à ces caractères d&#039;usage courant).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De plus, les chiffres sont accessibles en accès direct une fois CapsLock enfoncé (ce qui n&#039;est pas le comportement par défaut de CapsLock sur les autres claviers, qui n&#039;est pas un ShiftLock). Cette exception existe pour simplifier l&#039;existence de ceux qui n&#039;ont pas de pavé numérique indépendant et/ou pas de touche fonction/NumLock sur leurs portables. D&#039;ailleurs, même sur les claviers qui en possèdent, ce n&#039;est pas la panacée, car il faut déplacer le bras droit pour atteindre le pavé numérique ou faire des manipulations supplémentaires pour utiliser le NumLock. Il est toutefois conseillé d’utiliser ces dispositifs quand on a plus d&#039;une dizaine de chiffres à taper.&lt;br /&gt;
&lt;br /&gt;
=== Disposition en braille ===&lt;br /&gt;
Nous n&#039;avons malheureusement pas les compétences nécessaires pour produire une « image » de la disposition fr-dvorak-bépo qui soit exploitable en [[wp:braille|braille]]. Si d&#039;aventure un tel ajout vous était nécessaire, nous serions heureux de pouvoir l&#039;effectuer avec votre aide.&lt;br /&gt;
&lt;br /&gt;
== Questions sur les caractères ==&lt;br /&gt;
Le nom unicode français est donné en gras.&lt;br /&gt;
&lt;br /&gt;
=== Différences entre  &#039; ’ ´ ′ ` ‘ ===&lt;br /&gt;
*&#039;&#039;&#039;&amp;lt;nowiki&amp;gt;&#039;&amp;lt;/nowiki&amp;gt;&#039;&#039;&#039; sur {{tA|N}} est l’&#039;&#039;&#039;[[apostrophe]]&#039;&#039;&#039; « droite ». Elle ne devrait être utilisé qu’en programmation mais il est aujourd’hui courant de l’utiliser comme apostrophe ;&lt;br /&gt;
*&#039;&#039;&#039;’&#039;&#039;&#039; sur {{tA|AltGr}}+{{tA|G}} et {{tA|AltGr}}+{{tA|Maj.}}+{{tA|C}} est le &#039;&#039;&#039;guillemet-apostrophe&#039;&#039;&#039; parfois appelé apostrophe « typographique ». Il est normalement utilisé dans la langue française mais n’est pas reconnue par tous les logiciels ;&lt;br /&gt;
*&#039;&#039;&#039;‘&#039;&#039;&#039; sur {{tA|AltGr}}+{{tA|Maj.}}+{{tA|X}} est le &#039;&#039;&#039;guillemet-apostrophe culbuté&#039;&#039;&#039;, qui sert, avec le guillemet-apostrophe, de guillemets de second niveau en anglais ;&lt;br /&gt;
*&#039;&#039;&#039;′&#039;&#039;&#039; sur {{tA|AltGr}}+{{tA|Maj.}}+{{tA|)}} est le symbole &#039;&#039;&#039;prime&#039;&#039;&#039; utilisé en mathématique (la dérivé f′ et la minute dans la mesure d&#039;angle) et pour l&#039;unité du pied ;&lt;br /&gt;
* &#039;&#039;&#039;´&#039;&#039;&#039; sur {{tA|AltGr}}+{{tA|Z}} est la &#039;&#039;&#039;touche morte [[Touches_mortes#Accent_aigu|accent aigu&#039;&#039;&#039;]]. Exemple : ´ + o = ó.&lt;br /&gt;
*&#039;&#039;&#039;`&#039;&#039;&#039; sur {{tA|AltGr}}+{{tA|T}} est la &#039;&#039;&#039;touche morte [[Touches_mortes#Accent_grave|accent grave&#039;&#039;&#039;]]. Exemple ` + o = ò.&lt;br /&gt;
*&#039;&#039;&#039;`&#039;&#039;&#039; sur {{tA|Maj.}}+{{tA|1==}} est un &#039;&#039;&#039;accent grave&#039;&#039;&#039; ascii, non mort. Il est utilisé en programmation et pour la ligne de commande.&lt;br /&gt;
&lt;br /&gt;
=== Différences entre &amp;quot; “ ” ″ ˝ ===&lt;br /&gt;
*&#039;&#039;&#039;&amp;quot;&#039;&#039;&#039; sur {{tA|1}} est le &#039;&#039;&#039;guillemet anglais&#039;&#039;&#039; (&#039;&#039;quotation mark&#039;&#039;) dit guillemet « droit » et parfois appelé « chiure de mouche ». Il est utilisé en programmation. Il est incorrect de l&#039;utiliser comme guillemet en français et en anglais.&lt;br /&gt;
*&#039;&#039;&#039;“&#039;&#039;&#039; sur {{tA|AltGr}}+{{tA|Maj.}}+{{tA|2}} est le &#039;&#039;&#039;guillemet-apostrophe double culbuté&#039;&#039;&#039;. Avec son homologue &#039;&#039;&#039;”&#039;&#039;&#039; sur {{tA|AltGr}}+{{tA|Maj.}}+{{tA|3}} qui est le &#039;&#039;&#039;guillemet-apostrophe double&#039;&#039;&#039;, on obtient les guillemets anglais. Ce sont également les guillemets de second niveau en français. Exemple : « Il m&#039;a dit : “j&#039;aime le bépo”. » et “&#039;&#039;I love Dvorak&#039;&#039;”.&lt;br /&gt;
*&#039;&#039;&#039;″&#039;&#039;&#039; sur {{tA|AltGr}}+{{tA|Maj.}}+{{tA|1==}} est le &#039;&#039;&#039;double prime&#039;&#039;&#039; utilisé pour le pouce et la seconde dans la mesure d’angle. Exemple : un écran 15″.&lt;br /&gt;
*&#039;&#039;&#039;˝&#039;&#039;&#039; sur {{tA|AltGr}}+{{tA|Maj.}}+{{tA|Z}} est la &#039;&#039;&#039;touche morte [[Touches_mortes#Double_accent_aigu|double accent aigu]]&#039;&#039;&#039;. Exemple : {{touches|˝|o}} donne « ő ».&lt;br /&gt;
&lt;br /&gt;
=== Différences entre ° º ° ===&lt;br /&gt;
*&#039;&#039;&#039;°&#039;&#039;&#039; sur {{tA|Maj.}}+{{tA|)}} est le &#039;&#039;&#039;symbole degré&#039;&#039;&#039; pour les angles et la température.&lt;br /&gt;
*&#039;&#039;&#039;º&#039;&#039;&#039; sur {{tA|AltGr}}+{{tA|Maj.}}+{{tA|Ù}} est l’&#039;&#039;&#039;indicateur ordinal masculin&#039;&#039;&#039; utilisé pour nº (numéro) ou 1º (primo). C’est un « o » en l’air alors que le symbole degré est un rond en l’air.&lt;br /&gt;
*&#039;&#039;&#039;°&#039;&#039;&#039; sur {{tA|AltGr}}+{{tA|,}} est la &#039;&#039;&#039;touche morte [[Touches_mortes#rond_en_chef|rond en chef]]&#039;&#039;&#039;. Exemple : {{touches|°|a}} donne « å ».&lt;br /&gt;
&lt;br /&gt;
=== Différences entre —_-–¬¯−  ===&lt;br /&gt;
(voir le [http://fr.wikipedia.org/wiki/Tiret tiret (wp)], [http://www.orthotypographie.fr/volume-II/telegramme-troncation.html#Tiret le tiret] et [http://www.orthotypographie.fr/volume-II/telegramme-troncation.html#Trait-d_union le trait d’union] sur l’orthotypographe)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* — sur {{tA|alt gr}} + {{tA|1}} : le tiret sur cadratin, il est utilisé pour les dialogues, énumération, et les incises&lt;br /&gt;
* – sur {{tA|alt gr}} + {{tA|²}} : le tiret sur demi cadratin, il est utilisé pour les intervalles (page 16–20) et comme trait d’union pour une paire (Chirac–Mitterand), et, parfois, dans les compositions contemporaines, à la place du tiret sur cadratin bien que ce ne soit pas du tout recommandé&lt;br /&gt;
* - sur {{tA|8}} : le tiret court est utilisé pour les traits d&#039;union, la césure, comme moins et en ligne de commande&lt;br /&gt;
* − sur {{tA|alt gr}} + {{tA|8}} : c&#039;est le moins mathématique utilisé en typographie&lt;br /&gt;
* _ sur {{tA|alt gr}} + {{tA|espace}} : le tiret bas ou underscore, il sert à remplacer l&#039;espace quand celui-ci est interdit, par exemple dans les URL ou les noms de variable en programmation&lt;br /&gt;
* ¬ sur {{tA|alt gr}}+{{tA|Maj.}} + {{tA|7}} : c&#039;est le non logique&lt;br /&gt;
* ¯ sur {{tA|alt gr}} + {{tA|ù}} : une touche morte pour le [[Touches_mortes#Macron|macron]]. Exemple : {{t|¯}} + {{t|a}} = « ā ».&lt;br /&gt;
&lt;br /&gt;
http://marcautret.free.fr/sigma/pratik/typo/tiret/index.php&lt;br /&gt;
On y apprend que le tiret de dialogue peut également être marqué par le caractère unicode « U+2015 », dit « super tiret », et donc encore plus long que le tiret sur cadratin :&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Ce signe, dont le dessin est encore plus long que le tiret sur cadratin, est répertorié comme un tiret de dialogue de très noble  facture en typographie française, italienne, espagnole, russe ou polonaise. C′est du moins ainsi qu′on le voit de l′étranger, bien qu′il soit extrêmement rare de posséder et d′exploiter ce caractère dans nos jeux de caractères européens&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
L′usage états-unien, et par voie de conséquence des économistes, est de remplacer le tiret d&#039;incise (tiret sur cadratin) par le tiret court. Cependant, ce ne peut être − en France − que par dépit de ne pouvoir utiliser le tiret sur cadratin. Le tiret demi cadratin doublé « -- » est mieux accepté.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Aide]]&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg/Pastealacon&amp;diff=13212</id>
		<title>Utilisateur:Legrostdg/Pastealacon</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg/Pastealacon&amp;diff=13212"/>
		<updated>2009-03-19T03:08:33Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ce script permet de ne pas reprendre la souris pour coller des données sur le site [http://pastealacon.com pastealacon.com].&lt;br /&gt;
&lt;br /&gt;
Il prend le texte à coller sur l&#039;entrée standard et il renvoie l&#039;url associée. Il colle aussi cette url dans le buffer du clic scroll à l&#039;aide de xclip.&lt;br /&gt;
&lt;br /&gt;
Exemple d&#039;utilisation (en supposant que le texte à copier se trouve dans le buffer du clic scroll) :&lt;br /&gt;
 toto@charcuterie ~% xclip | pastebin.pl&lt;br /&gt;
  http://pastealacon.com/2281&lt;br /&gt;
&lt;br /&gt;
On peut ainsi retrouver l&#039;url à l&#039;aide de &amp;quot;xclip -o&amp;quot;.&lt;br /&gt;
 toto@charcuterie ~% xclip -o&lt;br /&gt;
  http://pastealacon.com/2281&lt;br /&gt;
Il nécessite perl, le module perl WWW::Mechanize et xclip&lt;br /&gt;
&lt;br /&gt;
Les options disponibles sont:&lt;br /&gt;
*-nick (votre pseudo (Anonymous par défaut, éventuellement à adapter dans le script))&lt;br /&gt;
*-lang (le langage dans lequel sont codées les lignes que vous avez &amp;quot;pastées&amp;quot; (défaut: texte): utile pour la coloration syntaxique)&lt;br /&gt;
&lt;br /&gt;
voir la liste des languages de programmation supportés par [http://pastealacon.com pastealacon.com].&lt;br /&gt;
&lt;br /&gt;
en général il vous faut noter le nom du langage sans espace et en minuscule.&lt;br /&gt;
&lt;br /&gt;
*-time (durée de vie du &amp;quot;paste&amp;quot;: d = un jour (défaut), m = un mois, f = à jamais)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
#!/usr/bin/perl -w&lt;br /&gt;
#&lt;br /&gt;
# pastealacon.pl&lt;br /&gt;
#&lt;br /&gt;
# Faire des pastes en ligne de commande sur pastealacon.com.&lt;br /&gt;
# Colle l&#039;entrée standard sur pastealacon.com, renvoie l&#039;url&lt;br /&gt;
# et la met dans le buffer du clic scroll.&lt;br /&gt;
#&lt;br /&gt;
# Distribué sous les termes de la&lt;br /&gt;
# Licence Publique Rien À Branler (LPRAB) version 1&lt;br /&gt;
&lt;br /&gt;
my $url = &amp;quot;http://pastealacon.com/&amp;quot;;&lt;br /&gt;
my $nick = &amp;quot;Anonymous&amp;quot;;&lt;br /&gt;
my $format = &amp;quot;text&amp;quot;;&lt;br /&gt;
my $time = &amp;quot;d&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
use WWW::Mechanize;&lt;br /&gt;
use Getopt::Long;&lt;br /&gt;
&lt;br /&gt;
my %CONF = (&lt;br /&gt;
  lang     =&amp;gt; $format,&lt;br /&gt;
  nick     =&amp;gt; $nick,&lt;br /&gt;
  time     =&amp;gt; $time,&lt;br /&gt;
  text     =&amp;gt; &#039;&#039;,&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
GetOptions( \%CONF, &amp;quot;lang=s&amp;quot;, &amp;quot;nick=s&amp;quot;, &amp;quot;time=s&amp;quot;, &amp;quot;text=s&amp;quot; )&lt;br /&gt;
  or die &amp;quot;Bad Options.&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
my $m = WWW::Mechanize-&amp;gt;new;&lt;br /&gt;
$m-&amp;gt;get($url);&lt;br /&gt;
die $m-&amp;gt;res-&amp;gt;status_line unless $m-&amp;gt;success;&lt;br /&gt;
&lt;br /&gt;
unless ( $CONF{text} ) {&lt;br /&gt;
  $CONF{text} = join &amp;quot;&amp;quot;, &amp;lt;&amp;gt;;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
$m-&amp;gt;set_fields(&lt;br /&gt;
  format    =&amp;gt; $CONF{lang},&lt;br /&gt;
  code2     =&amp;gt; $CONF{text},&lt;br /&gt;
  poster    =&amp;gt; $CONF{nick},&lt;br /&gt;
  expiry    =&amp;gt; $CONF{time},&lt;br /&gt;
);&lt;br /&gt;
$m-&amp;gt;click;&lt;br /&gt;
die $m-&amp;gt;res-&amp;gt;status_line unless $m-&amp;gt;success;&lt;br /&gt;
my $response = $m-&amp;gt;response-&amp;gt;request-&amp;gt;uri-&amp;gt;as_string;&lt;br /&gt;
system( &amp;quot;echo $response | xclip -i&amp;quot; );&lt;br /&gt;
print $response, &amp;quot;\n&amp;quot;;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Discussion_utilisateur:A2/Installation&amp;diff=13211</id>
		<title>Discussion utilisateur:A2/Installation</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Discussion_utilisateur:A2/Installation&amp;diff=13211"/>
		<updated>2009-03-19T02:19:33Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : Page créée avec « cette page est vraiment à chier :-) ahahah, qu&amp;#039;est-ce qu&amp;#039;on rigole! »&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;cette page est vraiment à chier :-)&lt;br /&gt;
ahahah, qu&#039;est-ce qu&#039;on rigole!&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Vimperator&amp;diff=13135</id>
		<title>Vimperator</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Vimperator&amp;diff=13135"/>
		<updated>2009-03-17T22:26:47Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Tutoriel ==&lt;br /&gt;
&lt;br /&gt;
traduction du tutoriel disponible lors du démarrage de Vimperator. Ce tutoriel est fait pour le clavier fr-dvorak-bépo avec cette [[Utilisateur:tiot/vimperatorrc|cette configuration]]. Entre [] j&#039;ai mis les raccourcis par défaut de vimperator qui marcheront parfaitement sur un clavier Azerty.&lt;br /&gt;
&lt;br /&gt;
=== Démarrage rapide ===&lt;br /&gt;
&lt;br /&gt;
Si vous avez commencé à utiliser Vimperator nu (c&#039;est à dire sans aucune configuration), vous devez voir cette page d&#039;aide, en anglais dans une fenêtre relativement dépouillée. La barre de menu, la barre de navigation et la barre de marques pages sont cachées. Dans le cas où vous avez manqué l&#039;astuce sur la page d&#039;introduction, vous pouvez les retrouvez en tapant la commande :&lt;br /&gt;
&lt;br /&gt;
:set go+=mTb&amp;lt;cr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Où cr représente la touche &amp;lt;Entrée&amp;gt; ou &amp;lt;retour&amp;gt;. Si vous êtes un utilisateur vétéran de vim, cela devrait vous dire quelque chose.&lt;br /&gt;
&lt;br /&gt;
Cependant, selon l&#039;opinion de l&#039;auteur, le meilleur moyen pour se familiariser avec Vimperator est de laisser les barres désactiver. (L&#039;action ci-dessus peut-être inversée avec :set go=&amp;lt;cr&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
===L&#039;interface modale de Vimperator===&lt;br /&gt;
&lt;br /&gt;
La puissance de Vimperator, comme Vim, vient de son interface modale. Les touches ont des sens différents qui dépendent du mode du navigateur. Vimperator a plusieurs modes, mais les 2 plus importants sont le mode « normal » et le mode « ligne de commande ».&lt;br /&gt;
&lt;br /&gt;
Quand Vimperator démarre, il est en mode normal par défaut. C&#039;est probablement le mode où vous serez la plupart du temps.&lt;br /&gt;
&lt;br /&gt;
L&#039;autre mode central de Vimperator, est le mode ligne de commande, il peut être activé depuis le mode normal en tapant un « : » (deux points). Vous verrez souvent des commandes de Vimperator commençant avec un « : », il indique que ce qui suit est une commande.&lt;br /&gt;
&lt;br /&gt;
Pour retourner en mode normal depuis le mode ligne de commande, tapez « Échap ». Presser « Échap » permet de retourner en mode normal depuis les autres modes de Vimperator.&lt;br /&gt;
&lt;br /&gt;
=== Obtenir de l&#039;aide ===&lt;br /&gt;
	&lt;br /&gt;
Vim est un superbe éditeur mais ce n&#039;est pas un navigateur web. Donc même les utilisateurs chevronnés de Vim devront probablement regarder la documentation de Vimperator tôt ou tard. La plupart de la documentation des fonctionnalités de Vimérator sont facilement trouvable en utilisant la commande {{b|:help command}}. Par exemple, vous pouvez trouvez l&#039;aide de la commande aide en tapant :&lt;br /&gt;
&lt;br /&gt;
{{b|:help :help&amp;lt;cr&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
De la même façon, l&#039;aide des options de configuration sont disponibles sur {{b|:help &#039;{option_name}&#039;}}. (Remarquez les apostrophes autour du nom de l&#039;option comme dans Vim). La liste de toutes les options disponibles est accessible en tapant {{b|:help options}}&lt;br /&gt;
&lt;br /&gt;
Et vous pouvez trouvez l&#039;aide sur les raccourcis {{b|gb}} [gt] et {{b|gé}} [gT] avec :&lt;br /&gt;
&lt;br /&gt;
{{b|:help gt&amp;lt;cr&amp;gt;}}&amp;lt;br&amp;gt;&lt;br /&gt;
{{b|:hepl gT&amp;lt;cr&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
Enfin, en plus du système d&#039;aide lui-même, {{b|:exusage}} et {{b|:viusage}} sont des références des commandes.&lt;br /&gt;
&lt;br /&gt;
=== Sans la souris ! ===&lt;br /&gt;
— ou comment j&#039;ai appris à stopper les soucis et aimer le truc à plus de 80 boutons que j&#039;ai déjà. &lt;br /&gt;
&lt;br /&gt;
L&#039;efficacité de Vimperator, comme le légendaire éditeur auquel il est inspiré, mise sur la capacité de l&#039;utilisateur à garder leurs doigts sur le clavier où ils peuvent faire le meilleur[++]. Bien qu&#039;il y ait quelques domaines où la souris est clairement meilleur, comme des interfaces graphiques ou des jeux vidéos, Vimperator part de l&#039;hypothèse que le navigateur web ne doit pas être de ceux là.&lt;br /&gt;
&lt;br /&gt;
[The efficiency of Vimperator, as [with the legendary editor it was inspired by, relies on the user being able to keep his fingers on the keyboard where they can do the most good.]&lt;br /&gt;
&lt;br /&gt;
Voici quelques exemples où la souris est typiquement considérée comme indispensable, et comment Vimperator défie cette opinion préconçue.&lt;br /&gt;
&lt;br /&gt;
=== défilement ===&lt;br /&gt;
&lt;br /&gt;
Le défilement de la fenêtre du navigateur se fait avec des simples touches : &lt;br /&gt;
&lt;br /&gt;
* {{b|t/s}} [j/k] : défile  la fenêtre en bas/haut ligne par ligne ; &lt;br /&gt;
* {{b|c/r}} [h/l] : défile la fenêtre à gauche/droite ;&lt;br /&gt;
* {{b|&amp;lt;Espace&amp;gt;/&amp;lt;C-b&amp;gt;}} : défile en bas/haut par page ;&lt;br /&gt;
* {{b|T/S}} et {{b|&amp;lt;C-d&amp;gt;/&amp;lt;C-u&amp;gt;}} : défile en bas/haut par ½ page ;&lt;br /&gt;
&lt;br /&gt;
Les touches standards (&amp;lt;up&amp;gt;/&amp;lt;down&amp;gt;/&amp;lt;PgUp&amp;gt;/&amp;lt;PgDn&amp;gt;) fonctionnent aussi.&lt;br /&gt;
&lt;br /&gt;
=== Historique et onglets ===&lt;br /&gt;
&lt;br /&gt;
La navigation de l&#039;historique (par exemple : « précédent », « suivant ») se fait de la même façon que le défilement.&lt;br /&gt;
&lt;br /&gt;
* {{b|C/R}} [H/R] ou {{b|&amp;lt;C-o&amp;gt;/&amp;lt;C-i&amp;gt;}} : va au précédent/suivant dans l&#039;historique de la fenêtre/onglet.&lt;br /&gt;
&lt;br /&gt;
Se déplacer entre les onglets utilise les touches qui sont familiers aux utilisateurs des onglets de vim.&lt;br /&gt;
&lt;br /&gt;
* {{b|i/&amp;lt;C-n&amp;gt;}} [gt] : va à l&#039;onglet suivant&lt;br /&gt;
* {{b|e/&amp;lt;C-p&amp;gt;}} [gT] : va à l&#039;onglet précédent&lt;br /&gt;
* {{b|g0/g$}} : va au premier/dernier onglet&lt;br /&gt;
* {{b|d}} : ferme l&#039;onglet actif (efface le tampon)&lt;br /&gt;
* {{b|u}} : réouvre le(s) dernier(s) onglet(s) fermé(s)&lt;br /&gt;
&lt;br /&gt;
Pour ouvrir une page web sur un nouvel onglet, utilisez le {{b|:tabopen {url}}}. Pour ouvrir une URL dans l&#039;onglet courant, utilisez :open. En mode normal les touches {{b|t}} et {{b|o}}, sont respectivement des raccourcis de ces commandes, donc les paires de séquence suivante sont équivalentes :&lt;br /&gt;
&lt;br /&gt;
{{b|:open mon.site.com&amp;lt;cr&amp;gt;}}&amp;lt;br&amp;gt;&lt;br /&gt;
{{b|omon.site.com&amp;lt;cr&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{b|:tabopen vimperator.mozdev.org&amp;lt;cr&amp;gt;}}&amp;lt;br&amp;gt;&lt;br /&gt;
{{b|tvimperator.mozdev.org&amp;lt;cr&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
Les version majuscules (respectivement {{b|T}} [J] et {{b|O}}) font de même mais en recopiant l’url de l’onglet courant.&lt;br /&gt;
&lt;br /&gt;
===Les hints pour surfer===&lt;br /&gt;
&lt;br /&gt;
Donc, maintenant vous pouvez naviguer avec Vimperator. Mais attendez… comment ouvrir une page ou un onglet liée à une page web ? Comment faire pour « cliquer » dans tous ces liens sans votre amie à queue ?&lt;br /&gt;
&lt;br /&gt;
La réponse est « hints ». Activer hints affiche un nombre sur tous les liens que Vimperator peut trouver. Pour suivre le lien, il suffit simplement de taper le nombre correspondant au hint, par défaut c&#039;est un nombre blanc à l&#039;intérieur d&#039;un carré rouge.&lt;br /&gt;
&lt;br /&gt;
Pour les liens textuels, il y a un raccourcis additionnel ; vous pouvez taper un peu de texte contenu dans le lien et Vimperator cherchera tous les liens qu&#039;il peut trouver et seulement les hints contenant votre texte. Si le texte que vous tapez identifie un unique lien, Vimperator suivra ce lien immédiatement sans aucune autre action de l&#039;utilisateur.&lt;br /&gt;
&lt;br /&gt;
Quelque soit la façon choisi pour indiquer le liens cible, une fois que Vimperator a illuminé le lien voulu en vert, tapez simplement &amp;lt;Entrée&amp;gt; pour l&#039;ouvrir.&lt;br /&gt;
&lt;br /&gt;
Le plus courant de mode hint est appelé mode QuickHint. Pour activer le mode QuickHnt, pressez {{b|f}} ou {{b|F}}. Le {{b|f}} ouvrira le lien dans l&#039;onglet actuel, tandis que le {{b|F}} l&#039;ouvrira dans un nouvel onglet.&lt;br /&gt;
&lt;br /&gt;
===Copier-coller avec son clavier===&lt;br /&gt;
&lt;br /&gt;
L&#039;astuce :&lt;br /&gt;
*Passez en mode caret avec I [i] : vous pouvez à présent naviguer dans la page web avec un petit (trop petit ?) curseur.&lt;br /&gt;
*Placez-vous au début du texte que vous souhaitez copier puis passez en mode visuel v [v].&lt;br /&gt;
*Déplacez le curseur jusqu&#039;à la fin de votre sélection.&lt;br /&gt;
*y [y] pour copier !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sauvegarder pour la prospérité===&lt;br /&gt;
&lt;br /&gt;
Une fois que vous avez configuré Vimperator avec vos option, raccourcis et commandes, vous allez probablement vouloir les rendre accessible au prochain démarrage de Vimperator. Comme pour les thèmes de vim, ceci est fait dans le fichier vimperatorrc.&lt;br /&gt;
&lt;br /&gt;
Pour sauver votre configuration actuel et autoriser qu&#039;il soit automatiquement chargé au prochain démarrage de Vimpérator, tapez la commande :mkv.&lt;br /&gt;
&lt;br /&gt;
Cela va créer le fichier $HOME/.vimperatorrc qui contient votre configuration. C&#039;est un simple fichier texte, comme le fichier vimrc et il peut être facilement éditable pour l&#039;adapter à vos préférences.&lt;br /&gt;
&lt;br /&gt;
===Trouvez la plus proche sortie===&lt;br /&gt;
&lt;br /&gt;
Vimperator contient tous les méthodes classiques de Vim pour sortir.&lt;br /&gt;
&lt;br /&gt;
* {{b|:xall}} : commande pour quitter et sauver la session en cour pour la prochaine fois ; action par défaut.&lt;br /&gt;
* {{b|:qall}} : commande pour quitter sans sauvegarder la session.&lt;br /&gt;
* {{b|ZZ}} : raccourcis en mode normal équivalant à {{b|:xall}}.&lt;br /&gt;
* {{b|ZQ}} : raccourcis en mode normal équivalant à {{b|:qall}}.&lt;br /&gt;
  &lt;br /&gt;
=== Ou est passé firefox ? ===&lt;br /&gt;
&lt;br /&gt;
Peut-être vous vous sentez un peu désorienté. Ne vous inquiétez pas. C&#039;est toujours votre navigateur Firefox. Il y a des façons de réveiller votre firefox. Allez voir l&#039;aide (:help) pour ces commandes et raccourcis :&lt;br /&gt;
&lt;br /&gt;
* {{b|:dialog}} : pour accéder aux fenêtres de firefox. Voir {{b|:help :dialog}}&lt;br /&gt;
* {{b|:bmarks}} : Vimpérator fournit une nouvelle interface pour les marques pages, mais il y a toujours les marques pages standards de Firefox. {{b|:bmark}} ajoute une nouvelle marque page, tandis que {{b|:bmarks}} liste les marques pages.&lt;br /&gt;
* {{b|:history}} : cette commande affiche l&#039;historique des pages visitées ({{b|:jumps}} n’affiche que l’historique de l’onglet courant)&lt;br /&gt;
* {{b|:preferences}} : affiche le panneau des préférences de firefox&lt;br /&gt;
&lt;br /&gt;
=== Sortez moi de là ===&lt;br /&gt;
&lt;br /&gt;
La désinstallation de vimperation se fait avec la commande {{b|:addons}}. Cela amène la fenêtre de Firefox de gestion des add-ons. Il suffit alors de sélectionner Vimperator et de cliquer sur Désinstaller.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Je suis intéressé mais perdu ===	&lt;br /&gt;
&lt;br /&gt;
Vimperateur a une base d&#039;utilisateur énergique et en augmentation. Si vous avez un problème qui vous semble solvable par Vimperator, ou si vous pensez avoir trouvé un bogue, faite le nous savoir ! Il y a un support disponible sur le wiki, ou sur le salon IRC #vimperator sur freenode.&lt;br /&gt;
&lt;br /&gt;
Si vous avez des demandes de fonctionnalité ou si vous voulez nous offrir votre aide. Les développeurs travaillent sur Vimperator le plus possible, mais nous sommes ni infini ni omnipotent. Si vous ne pouvez pas attendre, restez assuré que les patches sont bienvenues ! Allez voir la page des développeurs pour plus d&#039;information.&lt;br /&gt;
&lt;br /&gt;
== Fichiers de configuration ==&lt;br /&gt;
=== À partager avec vim ===&lt;br /&gt;
&lt;br /&gt;
Pour ce tutoriel j&#039;ai utilisé la configuraton de tiot.&lt;br /&gt;
* celui de [[Utilisateur:Kaze|Kazé]] est [[Utilisateur:Kaze/vimrc|ici]]&lt;br /&gt;
* celui de [[Utilisateur:Nemolivier|NémOlivier]] est [[Utilisateur:Nemolivier/vimrc|là]]&lt;br /&gt;
&lt;br /&gt;
=== Pour vimperator seulement ===&lt;br /&gt;
&lt;br /&gt;
* celui de [[Utilisateur:Tiot|Tiot]] est [[Utilisateur:tiot/vimperatorrc|ici]]&lt;br /&gt;
* celui de [[Utilisateur:Nemolivier|Nemolivier]] est [[Utilisateur:Nemolivier/vimperatorrc|là]]&lt;br /&gt;
&lt;br /&gt;
== Pense-bête ==&lt;br /&gt;
=== Raccourcis utiles au quotidien ===&lt;br /&gt;
&lt;br /&gt;
* t/s : bas/haut ligne par ligne&lt;br /&gt;
* c/r : gauche/droite&lt;br /&gt;
* C/R ou C-o/C-i : précédent/suivant dans l&#039;historique&lt;br /&gt;
* o : ouvre une URL dans l&#039;onglet courant&lt;br /&gt;
* j : ouvre une URL dans un nouvel onglet&lt;br /&gt;
* f/F : active le mode hint. Des caractères peuvent être tapés pour sélectionner des liens. f ouvre le lien dans l&#039;onglet courant et F dans un nouveau.&lt;br /&gt;
* i/e : onglet précédent/onglet suivant&lt;br /&gt;
* gh/gH : va à la page d&#039;accueil dans l&#039;onglet courant/nouvel onglet&lt;br /&gt;
* gu/gU : va dans le répertoire courant/aller à la racine du site&lt;br /&gt;
* gg/G : va en haut/bas de la page&lt;br /&gt;
* p/P : ouvre l&#039;URL du presse papier dans l&#039;onglet courant/nouvel onglet&lt;br /&gt;
* c-c : arrête le chargement de la page&lt;br /&gt;
* y : met l&#039;URL courante dans le presse papier&lt;br /&gt;
* Y : copie la sélection dans le presse papier&lt;br /&gt;
* gf : voir les sources de la page&lt;br /&gt;
* d : ferme un onglet&lt;br /&gt;
* D : ferme l&#039;onglet à gauche de l&#039;onglet actif&lt;br /&gt;
* u : annule la fermeture de l&#039;onglet&lt;br /&gt;
&lt;br /&gt;
=== Recherche dans le document ===&lt;br /&gt;
&lt;br /&gt;
* / : pour effectuer une recherche en avant / arrière&lt;br /&gt;
* n : aller au prochain mot trouvé&lt;br /&gt;
* N : aller au mot trouvé précédent&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Vimperator&amp;diff=13134</id>
		<title>Vimperator</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Vimperator&amp;diff=13134"/>
		<updated>2009-03-17T22:22:00Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Tutoriel ==&lt;br /&gt;
&lt;br /&gt;
traduction du tutoriel disponible lors du démarrage de Vimperator. Ce tutoriel est fait pour le clavier fr-dvorak-bépo avec cette [[Utilisateur:tiot/vimperatorrc|cette configuration]]. Entre [] j&#039;ai mis les raccourcis par défaut de vimperator qui marcheront parfaitement sur un clavier Azerty.&lt;br /&gt;
&lt;br /&gt;
=== Démarrage rapide ===&lt;br /&gt;
&lt;br /&gt;
Si vous avez commencé à utiliser Vimperator nu (c&#039;est à dire sans aucune configuration), vous devez voir cette page d&#039;aide, en anglais dans une fenêtre relativement dépouillée. La barre de menu, la barre de navigation et la barre de marques pages sont cachées. Dans le cas où vous avez manqué l&#039;astuce sur la page d&#039;introduction, vous pouvez les retrouvez en tapant la commande :&lt;br /&gt;
&lt;br /&gt;
:set go+=mTb&amp;lt;cr&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Où cr représente la touche &amp;lt;Entrée&amp;gt; ou &amp;lt;retour&amp;gt;. Si vous êtes un utilisateur vétéran de vim, cela devrait vous dire quelque chose.&lt;br /&gt;
&lt;br /&gt;
Cependant, selon l&#039;opinion de l&#039;auteur, le meilleur moyen pour se familiariser avec Vimperator est de laisser les barres désactiver. (L&#039;action ci-dessus peut-être inversée avec :set go=&amp;lt;cr&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
===L&#039;interface modale de Vimperator===&lt;br /&gt;
&lt;br /&gt;
La puissance de Vimperator, comme Vim, vient de son interface modale. Les touches ont des sens différents qui dépendent du mode du navigateur. Vimperator a plusieurs modes, mais les 2 plus importants sont le mode « normal » et le mode « ligne de commande ».&lt;br /&gt;
&lt;br /&gt;
Quand Vimperator démarre, il est en mode normal par défaut. C&#039;est probablement le mode où vous serez la plupart du temps.&lt;br /&gt;
&lt;br /&gt;
L&#039;autre mode central de Vimperator, est le mode ligne de commande, il peut être activé depuis le mode normal en tapant un « : » (deux points). Vous verrez souvent des commandes de Vimperator commençant avec un « : », il indique que ce qui suit est une commande.&lt;br /&gt;
&lt;br /&gt;
Pour retourner en mode normal depuis le mode ligne de commande, tapez « Échap ». Presser « Échap » permet de retourner en mode normal depuis les autres modes de Vimperator.&lt;br /&gt;
&lt;br /&gt;
=== Obtenir de l&#039;aide ===&lt;br /&gt;
	&lt;br /&gt;
Vim est un superbe éditeur mais ce n&#039;est pas un navigateur web. Donc même les utilisateurs chevronnés de Vim devront probablement regarder la documentation de Vimperator tôt ou tard. La plupart de la documentation des fonctionnalités de Vimérator sont facilement trouvable en utilisant la commande {{b|:help command}}. Par exemple, vous pouvez trouvez l&#039;aide de la commande aide en tapant :&lt;br /&gt;
&lt;br /&gt;
{{b|:help :help&amp;lt;cr&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
De la même façon, l&#039;aide des options de configuration sont disponibles sur {{b|:help &#039;{option_name}&#039;}}. (Remarquez les apostrophes autour du nom de l&#039;option comme dans Vim). La liste de toutes les options disponibles est accessible en tapant {{b|:help options}}&lt;br /&gt;
&lt;br /&gt;
Et vous pouvez trouvez l&#039;aide sur les raccourcis {{b|gb}} [gt] et {{b|gé}} [gT] avec :&lt;br /&gt;
&lt;br /&gt;
{{b|:help gt&amp;lt;cr&amp;gt;}}&amp;lt;br&amp;gt;&lt;br /&gt;
{{b|:hepl gT&amp;lt;cr&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
Enfin, en plus du système d&#039;aide lui-même, {{b|:exusage}} et {{b|:viusage}} sont des références des commandes.&lt;br /&gt;
&lt;br /&gt;
=== Sans la souris ! ===&lt;br /&gt;
— ou comment j&#039;ai appris à stopper les soucis et aimer le truc à plus de 80 boutons que j&#039;ai déjà. &lt;br /&gt;
&lt;br /&gt;
L&#039;efficacité de Vimperator, comme le légendaire éditeur auquel il est inspiré, mise sur la capacité de l&#039;utilisateur à garder leurs doigts sur le clavier où ils peuvent faire le meilleur[++]. Bien qu&#039;il y ait quelques domaines où la souris est clairement meilleur, comme des interfaces graphiques ou des jeux vidéos, Vimperator part de l&#039;hypothèse que le navigateur web ne doit pas être de ceux là.&lt;br /&gt;
&lt;br /&gt;
[The efficiency of Vimperator, as [with the legendary editor it was inspired by, relies on the user being able to keep his fingers on the keyboard where they can do the most good.]&lt;br /&gt;
&lt;br /&gt;
Voici quelques exemples où la souris est typiquement considérée comme indispensable, et comment Vimperator défie cette opinion préconçue.&lt;br /&gt;
&lt;br /&gt;
=== défilement ===&lt;br /&gt;
&lt;br /&gt;
Le défilement de la fenêtre du navigateur se fait avec des simples touches : &lt;br /&gt;
&lt;br /&gt;
* {{b|t/s}} [j/k] : défile  la fenêtre en bas/haut ligne par ligne ; &lt;br /&gt;
* {{b|c/r}} [h/l] : défile la fenêtre à gauche/droite ;&lt;br /&gt;
* {{b|&amp;lt;Espace&amp;gt;/&amp;lt;C-b&amp;gt;}} : défile en bas/haut par page ;&lt;br /&gt;
* {{b|T/S}} et {{b|&amp;lt;C-d&amp;gt;/&amp;lt;C-u&amp;gt;}} : défile en bas/haut par ½ page ;&lt;br /&gt;
&lt;br /&gt;
Les touches standards (&amp;lt;up&amp;gt;/&amp;lt;down&amp;gt;/&amp;lt;PgUp&amp;gt;/&amp;lt;PgDn&amp;gt;) fonctionnent aussi.&lt;br /&gt;
&lt;br /&gt;
=== Historique et onglets ===&lt;br /&gt;
&lt;br /&gt;
La navigation de l&#039;historique (par exemple : « précédent », « suivant ») se fait de la même façon que le défilement.&lt;br /&gt;
&lt;br /&gt;
* {{b|C/R}} [H/R] ou {{b|&amp;lt;C-o&amp;gt;/&amp;lt;C-i&amp;gt;}} : va au précédent/suivant dans l&#039;historique de la fenêtre/onglet.&lt;br /&gt;
&lt;br /&gt;
Se déplacer entre les onglets utilise les touches qui sont familiers aux utilisateurs des onglets de vim.&lt;br /&gt;
&lt;br /&gt;
* {{b|i/&amp;lt;C-n&amp;gt;}} [gt] : va à l&#039;onglet suivant&lt;br /&gt;
* {{b|e/&amp;lt;C-p&amp;gt;}} [gT] : va à l&#039;onglet précédent&lt;br /&gt;
* {{b|g0/g$}} : va au premier/dernier onglet&lt;br /&gt;
* {{b|d}} : ferme l&#039;onglet actif (efface le tampon)&lt;br /&gt;
* {{b|u}} : réouvre le(s) dernier(s) onglet(s) fermé(s)&lt;br /&gt;
&lt;br /&gt;
Pour ouvrir une page web sur un nouvel onglet, utilisez le {{b|:tabopen {url}}}. Pour ouvrir une URL dans l&#039;onglet courant, utilisez :open. En mode normal les touches {{b|t}} et {{b|o}}, sont respectivement des raccourcis de ces commandes, donc les paires de séquence suivante sont équivalentes :&lt;br /&gt;
&lt;br /&gt;
{{b|:open mon.site.com&amp;lt;cr&amp;gt;}}&amp;lt;br&amp;gt;&lt;br /&gt;
{{b|omon.site.com&amp;lt;cr&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
{{b|:tabopen vimperator.mozdev.org&amp;lt;cr&amp;gt;}}&amp;lt;br&amp;gt;&lt;br /&gt;
{{b|tvimperator.mozdev.org&amp;lt;cr&amp;gt;}}&lt;br /&gt;
&lt;br /&gt;
Les version majuscules (respectivement {{b|T}} [J] et {{b|O}}) font de même mais en recopiant l’url de l’onglet courant.&lt;br /&gt;
&lt;br /&gt;
===Les hints pour surfer===&lt;br /&gt;
&lt;br /&gt;
Donc, maintenant vous pouvez naviguer avec Vimperator. Mais attendez… comment ouvrir une page ou un onglet liée à une page web ? Comment faire pour « cliquer » dans tous ces liens sans votre amie à queue ?&lt;br /&gt;
&lt;br /&gt;
La réponse est « hints ». Activer hints affiche un nombre sur tous les liens que Vimperator peut trouver. Pour suivre le lien, il suffit simplement de taper le nombre correspondant au hint, par défaut c&#039;est un nombre blanc à l&#039;intérieur d&#039;un carré rouge.&lt;br /&gt;
&lt;br /&gt;
Pour les liens textuels, il y a un raccourcis additionnel ; vous pouvez taper un peu de texte contenu dans le lien et Vimperator cherchera tous les liens qu&#039;il peut trouver et seulement les hints contenant votre texte. Si le texte que vous tapez identifie un unique lien, Vimperator suivra ce lien immédiatement sans aucune autre action de l&#039;utilisateur.&lt;br /&gt;
&lt;br /&gt;
Quelque soit la façon choisi pour indiquer le liens cible, une fois que Vimperator a illuminé le lien voulu en vert, tapez simplement &amp;lt;Entrée&amp;gt; pour l&#039;ouvrir.&lt;br /&gt;
&lt;br /&gt;
Le plus courant de mode hint est appelé mode QuickHint. Pour activer le mode QuickHnt, pressez {{b|f}} ou {{b|F}}. Le {{b|f}} ouvrira le lien dans l&#039;onglet actuel, tandis que le {{b|F}} l&#039;ouvrira dans un nouvel onglet.&lt;br /&gt;
&lt;br /&gt;
===Copier-coller avec son clavier===&lt;br /&gt;
&lt;br /&gt;
L&#039;astuce :&lt;br /&gt;
*Passez en mode caret avec {{I|i}} : vous pouvez à présent naviguer dans la page web avec un petit (trop petit ?) curseur.&lt;br /&gt;
*Placez-vous au début du texte que vous souhaitez copier puis passez en mode visuel {{v|v}}.&lt;br /&gt;
*Déplacez le curseur jusqu&#039;à la fin de votre sélection.&lt;br /&gt;
*{{y|y}} pour copier !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Sauvegarder pour la prospérité===&lt;br /&gt;
&lt;br /&gt;
Une fois que vous avez configuré Vimperator avec vos option, raccourcis et commandes, vous allez probablement vouloir les rendre accessible au prochain démarrage de Vimperator. Comme pour les thèmes de vim, ceci est fait dans le fichier vimperatorrc.&lt;br /&gt;
&lt;br /&gt;
Pour sauver votre configuration actuel et autoriser qu&#039;il soit automatiquement chargé au prochain démarrage de Vimpérator, tapez la commande :mkv.&lt;br /&gt;
&lt;br /&gt;
Cela va créer le fichier $HOME/.vimperatorrc qui contient votre configuration. C&#039;est un simple fichier texte, comme le fichier vimrc et il peut être facilement éditable pour l&#039;adapter à vos préférences.&lt;br /&gt;
&lt;br /&gt;
===Trouvez la plus proche sortie===&lt;br /&gt;
&lt;br /&gt;
Vimperator contient tous les méthodes classiques de Vim pour sortir.&lt;br /&gt;
&lt;br /&gt;
* {{b|:xall}} : commande pour quitter et sauver la session en cour pour la prochaine fois ; action par défaut.&lt;br /&gt;
* {{b|:qall}} : commande pour quitter sans sauvegarder la session.&lt;br /&gt;
* {{b|ZZ}} : raccourcis en mode normal équivalant à {{b|:xall}}.&lt;br /&gt;
* {{b|ZQ}} : raccourcis en mode normal équivalant à {{b|:qall}}.&lt;br /&gt;
  &lt;br /&gt;
=== Ou est passé firefox ? ===&lt;br /&gt;
&lt;br /&gt;
Peut-être vous vous sentez un peu désorienté. Ne vous inquiétez pas. C&#039;est toujours votre navigateur Firefox. Il y a des façons de réveiller votre firefox. Allez voir l&#039;aide (:help) pour ces commandes et raccourcis :&lt;br /&gt;
&lt;br /&gt;
* {{b|:dialog}} : pour accéder aux fenêtres de firefox. Voir {{b|:help :dialog}}&lt;br /&gt;
* {{b|:bmarks}} : Vimpérator fournit une nouvelle interface pour les marques pages, mais il y a toujours les marques pages standards de Firefox. {{b|:bmark}} ajoute une nouvelle marque page, tandis que {{b|:bmarks}} liste les marques pages.&lt;br /&gt;
* {{b|:history}} : cette commande affiche l&#039;historique des pages visitées ({{b|:jumps}} n’affiche que l’historique de l’onglet courant)&lt;br /&gt;
* {{b|:preferences}} : affiche le panneau des préférences de firefox&lt;br /&gt;
&lt;br /&gt;
=== Sortez moi de là ===&lt;br /&gt;
&lt;br /&gt;
La désinstallation de vimperation se fait avec la commande {{b|:addons}}. Cela amène la fenêtre de Firefox de gestion des add-ons. Il suffit alors de sélectionner Vimperator et de cliquer sur Désinstaller.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Je suis intéressé mais perdu ===	&lt;br /&gt;
&lt;br /&gt;
Vimperateur a une base d&#039;utilisateur énergique et en augmentation. Si vous avez un problème qui vous semble solvable par Vimperator, ou si vous pensez avoir trouvé un bogue, faite le nous savoir ! Il y a un support disponible sur le wiki, ou sur le salon IRC #vimperator sur freenode.&lt;br /&gt;
&lt;br /&gt;
Si vous avez des demandes de fonctionnalité ou si vous voulez nous offrir votre aide. Les développeurs travaillent sur Vimperator le plus possible, mais nous sommes ni infini ni omnipotent. Si vous ne pouvez pas attendre, restez assuré que les patches sont bienvenues ! Allez voir la page des développeurs pour plus d&#039;information.&lt;br /&gt;
&lt;br /&gt;
== Fichiers de configuration ==&lt;br /&gt;
=== À partager avec vim ===&lt;br /&gt;
&lt;br /&gt;
Pour ce tutoriel j&#039;ai utilisé la configuraton de tiot.&lt;br /&gt;
* celui de [[Utilisateur:Kaze|Kazé]] est [[Utilisateur:Kaze/vimrc|ici]]&lt;br /&gt;
* celui de [[Utilisateur:Nemolivier|NémOlivier]] est [[Utilisateur:Nemolivier/vimrc|là]]&lt;br /&gt;
&lt;br /&gt;
=== Pour vimperator seulement ===&lt;br /&gt;
&lt;br /&gt;
* celui de [[Utilisateur:Tiot|Tiot]] est [[Utilisateur:tiot/vimperatorrc|ici]]&lt;br /&gt;
* celui de [[Utilisateur:Nemolivier|Nemolivier]] est [[Utilisateur:Nemolivier/vimperatorrc|là]]&lt;br /&gt;
&lt;br /&gt;
== Pense-bête ==&lt;br /&gt;
=== Raccourcis utiles au quotidien ===&lt;br /&gt;
&lt;br /&gt;
* t/s : bas/haut ligne par ligne&lt;br /&gt;
* c/r : gauche/droite&lt;br /&gt;
* C/R ou C-o/C-i : précédent/suivant dans l&#039;historique&lt;br /&gt;
* o : ouvre une URL dans l&#039;onglet courant&lt;br /&gt;
* j : ouvre une URL dans un nouvel onglet&lt;br /&gt;
* f/F : active le mode hint. Des caractères peuvent être tapés pour sélectionner des liens. f ouvre le lien dans l&#039;onglet courant et F dans un nouveau.&lt;br /&gt;
* i/e : onglet précédent/onglet suivant&lt;br /&gt;
* gh/gH : va à la page d&#039;accueil dans l&#039;onglet courant/nouvel onglet&lt;br /&gt;
* gu/gU : va dans le répertoire courant/aller à la racine du site&lt;br /&gt;
* gg/G : va en haut/bas de la page&lt;br /&gt;
* p/P : ouvre l&#039;URL du presse papier dans l&#039;onglet courant/nouvel onglet&lt;br /&gt;
* c-c : arrête le chargement de la page&lt;br /&gt;
* y : met l&#039;URL courante dans le presse papier&lt;br /&gt;
* Y : copie la sélection dans le presse papier&lt;br /&gt;
* gf : voir les sources de la page&lt;br /&gt;
* d : ferme un onglet&lt;br /&gt;
* D : ferme l&#039;onglet à gauche de l&#039;onglet actif&lt;br /&gt;
* u : annule la fermeture de l&#039;onglet&lt;br /&gt;
&lt;br /&gt;
=== Recherche dans le document ===&lt;br /&gt;
&lt;br /&gt;
* / : pour effectuer une recherche en avant / arrière&lt;br /&gt;
* n : aller au prochain mot trouvé&lt;br /&gt;
* N : aller au mot trouvé précédent&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=URxvt&amp;diff=13115</id>
		<title>URxvt</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=URxvt&amp;diff=13115"/>
		<updated>2009-03-16T20:11:53Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : /* Faire des copier-collers 100% clavier */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;URxvt est un terminal virtuel utilisé dans X.Org. C&#039;est un clone de Rxvt mais il supporte l&#039;Unicode.&lt;br /&gt;
&lt;br /&gt;
Cette page répertorie des astuces liées à sa configuration. Le fichier a modifier est ~/.Xdefault, ~/.Xdefaults ou ~/.Xressources. Si le fichier n&#039;existe pas, il ne vous reste plus qu&#039;à le créer !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Définir la fonte de secours pour les caractères non définis===&lt;br /&gt;
Il suffit de séparer les deux fontes par une virgule &#039;,&#039;.&lt;br /&gt;
&lt;br /&gt;
Par exemple, si vous voulez utiliser la fonte proggytinysz et aller chercher les caractères non définis dans DejaVu Sans Mono:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;small&amp;gt;urxvt.font: -*-proggytinysz-medium-*-*-*-*-*-*-*-*-*-*,xft:Dejavu Sans Mono:pixelsize=10:autohint=true&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(vous pouvez obtenir le descripteur &amp;quot;-*-proggytinysz-medium-*-*-*-*-*-*-*-*-*-*&amp;quot; adapté à votre fonte à l&#039;aide de la commande xfontsel)&lt;br /&gt;
&lt;br /&gt;
===Faire des copier-collers 100% clavier===&lt;br /&gt;
Il faut tout d&#039;abord installer le script mark-and-yank: &amp;quot;git clone  git://git.jukie.net/urxvt&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Il vous faudra perl, le module perl Clipboard ou [[Xclip]].&lt;br /&gt;
&lt;br /&gt;
À rajouter dans votre ~/.Xdefault:&lt;br /&gt;
 !! on active les modules nécessaires&lt;br /&gt;
 URxvt.perl-ext: selection,mark-and-yank&lt;br /&gt;
 !! on définit comment passer en mode &amp;quot;copie&amp;quot;: ici il s&#039;agit de alt-y &lt;br /&gt;
 URxvt.keysym.M-y: perl:mark-and-yank:activate_mark_mode&lt;br /&gt;
&lt;br /&gt;
Les touches de contrôles:&lt;br /&gt;
*h,j,k,l: pour les déplacements&lt;br /&gt;
*espace ou Entrée: passer en mode sélection, arrêter la sélection&lt;br /&gt;
*Esc: quitter le mode copie&lt;br /&gt;
*o: pendant une sélection, aller à l&#039;autre bout de la sélection&lt;br /&gt;
*w: copier le mot sous le curseur&lt;br /&gt;
*Y: copier depuis le curseur jusqu&#039;à la fin de la ligne&lt;br /&gt;
*y: copier la sélection&lt;br /&gt;
*$: aller à la fin de la ligne&lt;br /&gt;
…&lt;br /&gt;
&lt;br /&gt;
Globalement, les contrôles sont les mêmes que ceux de vim, libre à vous d&#039;aller les adapter à votre sauce dans le script.&lt;br /&gt;
&lt;br /&gt;
===Gérer les urls au clavier===&lt;br /&gt;
Quoi de plus affligeant que de reprendre la souris pour copier-coller une url?&lt;br /&gt;
&lt;br /&gt;
Le [http://www.jukie.net/~bart/blog/20070503013555 script mark-yank-urls] permet de sélectionner les urls au clavier et de les copier dans le buffer du clic scroll.&lt;br /&gt;
&lt;br /&gt;
Il nécessite l&#039;installation de perl et du module perl Clipboard ou de [[Xclip]].&lt;br /&gt;
&lt;br /&gt;
L&#039;utilisation est très simple. Comme d&#039;habitude, on règle les options dans le fichier ~/.Xdefault &lt;br /&gt;
&lt;br /&gt;
 !! on active les modules nécessaires&lt;br /&gt;
 URxvt.perl-ext: selection,mark-yank-urls&lt;br /&gt;
 !! on définit comment passer en mode &amp;quot;copie d&#039;url&amp;quot;: ici il s&#039;agit de alt-u &lt;br /&gt;
 URxvt.keysym.M-u: perl:mark-yank-urls:activate_mark_mode&lt;br /&gt;
 !! on peut choisir de souligner les urls&lt;br /&gt;
 URxvt.underlineURLs: true&lt;br /&gt;
 !! on définit ici le navigateur par défaut (pour lancer une url sélectionnée avec entrée)&lt;br /&gt;
 URxvt.urlLauncher: firefox&lt;br /&gt;
&lt;br /&gt;
Une fois en mode &amp;quot;copie d&#039;url&amp;quot; les commandes sont:&lt;br /&gt;
*Entrée: lancer l&#039;url sélectionnée&lt;br /&gt;
*Ctrl+n: passer à l&#039;url suivante&lt;br /&gt;
*Ctrl+p: passer à l&#039;url précédente&lt;br /&gt;
*y: copier l&#039;url dans le buffer du clic scroll&lt;br /&gt;
*Esc: sortir du mode &amp;quot;copie d&#039;url&amp;quot;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=URxvt&amp;diff=13114</id>
		<title>URxvt</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=URxvt&amp;diff=13114"/>
		<updated>2009-03-16T20:03:02Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : /* Faire des copier-collers 100% clavier */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;URxvt est un terminal virtuel utilisé dans X.Org. C&#039;est un clone de Rxvt mais il supporte l&#039;Unicode.&lt;br /&gt;
&lt;br /&gt;
Cette page répertorie des astuces liées à sa configuration. Le fichier a modifier est ~/.Xdefault, ~/.Xdefaults ou ~/.Xressources. Si le fichier n&#039;existe pas, il ne vous reste plus qu&#039;à le créer !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Définir la fonte de secours pour les caractères non définis===&lt;br /&gt;
Il suffit de séparer les deux fontes par une virgule &#039;,&#039;.&lt;br /&gt;
&lt;br /&gt;
Par exemple, si vous voulez utiliser la fonte proggytinysz et aller chercher les caractères non définis dans DejaVu Sans Mono:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;small&amp;gt;urxvt.font: -*-proggytinysz-medium-*-*-*-*-*-*-*-*-*-*,xft:Dejavu Sans Mono:pixelsize=10:autohint=true&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(vous pouvez obtenir le descripteur &amp;quot;-*-proggytinysz-medium-*-*-*-*-*-*-*-*-*-*&amp;quot; adapté à votre fonte à l&#039;aide de la commande xfontsel)&lt;br /&gt;
&lt;br /&gt;
===Faire des copier-collers 100% clavier===&lt;br /&gt;
Il faut tout d&#039;abord installer le [lien script mark-and-yank].&lt;br /&gt;
&lt;br /&gt;
Il vous faudra perl, le module perl Clipboard ou [[Xclip]].&lt;br /&gt;
&lt;br /&gt;
À rajouter dans votre ~/.Xdefault:&lt;br /&gt;
 !! on active les modules nécessaires&lt;br /&gt;
 URxvt.perl-ext: selection,mark-and-yank&lt;br /&gt;
 !! on définit comment passer en mode &amp;quot;copie&amp;quot;: ici il s&#039;agit de alt-y &lt;br /&gt;
 URxvt.keysym.M-y: perl:mark-and-yank:activate_mark_mode&lt;br /&gt;
&lt;br /&gt;
Les touches de contrôles:&lt;br /&gt;
*h,j,k,l: pour les déplacements&lt;br /&gt;
*espace ou Entrée: passer en mode sélection, arrêter la sélection&lt;br /&gt;
*Esc: quitter le mode copie&lt;br /&gt;
*o: pendant une sélection, aller à l&#039;autre bout de la sélection&lt;br /&gt;
*w: copier le mot sous le curseur&lt;br /&gt;
*Y: copier depuis le curseur jusqu&#039;à la fin de la ligne&lt;br /&gt;
*y: copier la sélection&lt;br /&gt;
*$: aller à la fin de la ligne&lt;br /&gt;
…&lt;br /&gt;
&lt;br /&gt;
Globalement, les contrôles sont les mêmes que ceux de vim, libre à vous d&#039;aller les adapter à votre sauce dans le script.&lt;br /&gt;
&lt;br /&gt;
===Gérer les urls au clavier===&lt;br /&gt;
Quoi de plus affligeant que de reprendre la souris pour copier-coller une url?&lt;br /&gt;
&lt;br /&gt;
Le [http://www.jukie.net/~bart/blog/20070503013555 script mark-yank-urls] permet de sélectionner les urls au clavier et de les copier dans le buffer du clic scroll.&lt;br /&gt;
&lt;br /&gt;
Il nécessite l&#039;installation de perl et du module perl Clipboard ou de [[Xclip]].&lt;br /&gt;
&lt;br /&gt;
L&#039;utilisation est très simple. Comme d&#039;habitude, on règle les options dans le fichier ~/.Xdefault &lt;br /&gt;
&lt;br /&gt;
 !! on active les modules nécessaires&lt;br /&gt;
 URxvt.perl-ext: selection,mark-yank-urls&lt;br /&gt;
 !! on définit comment passer en mode &amp;quot;copie d&#039;url&amp;quot;: ici il s&#039;agit de alt-u &lt;br /&gt;
 URxvt.keysym.M-u: perl:mark-yank-urls:activate_mark_mode&lt;br /&gt;
 !! on peut choisir de souligner les urls&lt;br /&gt;
 URxvt.underlineURLs: true&lt;br /&gt;
 !! on définit ici le navigateur par défaut (pour lancer une url sélectionnée avec entrée)&lt;br /&gt;
 URxvt.urlLauncher: firefox&lt;br /&gt;
&lt;br /&gt;
Une fois en mode &amp;quot;copie d&#039;url&amp;quot; les commandes sont:&lt;br /&gt;
*Entrée: lancer l&#039;url sélectionnée&lt;br /&gt;
*Ctrl+n: passer à l&#039;url suivante&lt;br /&gt;
*Ctrl+p: passer à l&#039;url précédente&lt;br /&gt;
*y: copier l&#039;url dans le buffer du clic scroll&lt;br /&gt;
*Esc: sortir du mode &amp;quot;copie d&#039;url&amp;quot;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=URxvt&amp;diff=13113</id>
		<title>URxvt</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=URxvt&amp;diff=13113"/>
		<updated>2009-03-16T20:02:20Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;URxvt est un terminal virtuel utilisé dans X.Org. C&#039;est un clone de Rxvt mais il supporte l&#039;Unicode.&lt;br /&gt;
&lt;br /&gt;
Cette page répertorie des astuces liées à sa configuration. Le fichier a modifier est ~/.Xdefault, ~/.Xdefaults ou ~/.Xressources. Si le fichier n&#039;existe pas, il ne vous reste plus qu&#039;à le créer !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Définir la fonte de secours pour les caractères non définis===&lt;br /&gt;
Il suffit de séparer les deux fontes par une virgule &#039;,&#039;.&lt;br /&gt;
&lt;br /&gt;
Par exemple, si vous voulez utiliser la fonte proggytinysz et aller chercher les caractères non définis dans DejaVu Sans Mono:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;small&amp;gt;urxvt.font: -*-proggytinysz-medium-*-*-*-*-*-*-*-*-*-*,xft:Dejavu Sans Mono:pixelsize=10:autohint=true&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(vous pouvez obtenir le descripteur &amp;quot;-*-proggytinysz-medium-*-*-*-*-*-*-*-*-*-*&amp;quot; adapté à votre fonte à l&#039;aide de la commande xfontsel)&lt;br /&gt;
&lt;br /&gt;
===Faire des copier-collers 100% clavier===&lt;br /&gt;
Il faut tout d&#039;abord installer le [lien script mark-and-yank].&lt;br /&gt;
&lt;br /&gt;
Il vous faudra perl, le module perl Clipboard ou [[Xclip]].&lt;br /&gt;
&lt;br /&gt;
À rajouter dans votre ~/.Xdefault:&lt;br /&gt;
 !! on active les modules nécessaires&lt;br /&gt;
 URxvt.perl-ext: selection,mark-and-yank&lt;br /&gt;
 !! on définit comment passer en mode &amp;quot;copie&amp;quot;: ici il s&#039;agit de alt-y &lt;br /&gt;
 URxvt.keysym.M-y: perl:mark-and-yank:activate_mark_mode&lt;br /&gt;
&lt;br /&gt;
Les touches de contrôles:&lt;br /&gt;
*h,j,k,l: pour les déplacements&lt;br /&gt;
*espace ou Entrée: passer en mode sélection, arrêter la sélection&lt;br /&gt;
*Esc: quitter le mode copie&lt;br /&gt;
*o: pendant une sélection, aller à l&#039;autre bout de la sélection&lt;br /&gt;
*w: copier le mot sous le curseur&lt;br /&gt;
*Y: copier depuis le curseur jusqu&#039;à la fin de la ligne&lt;br /&gt;
*y: copier la sélection&lt;br /&gt;
*$: aller à la fin de la ligne&lt;br /&gt;
… Globalement, les contrôles sont les mêmes que ceux de vim, libre à vous d&#039;aller les adapter à votre sauce dans le script.&lt;br /&gt;
&lt;br /&gt;
===Gérer les urls au clavier===&lt;br /&gt;
Quoi de plus affligeant que de reprendre la souris pour copier-coller une url?&lt;br /&gt;
&lt;br /&gt;
Le [http://www.jukie.net/~bart/blog/20070503013555 script mark-yank-urls] permet de sélectionner les urls au clavier et de les copier dans le buffer du clic scroll.&lt;br /&gt;
&lt;br /&gt;
Il nécessite l&#039;installation de perl et du module perl Clipboard ou de [[Xclip]].&lt;br /&gt;
&lt;br /&gt;
L&#039;utilisation est très simple. Comme d&#039;habitude, on règle les options dans le fichier ~/.Xdefault &lt;br /&gt;
&lt;br /&gt;
 !! on active les modules nécessaires&lt;br /&gt;
 URxvt.perl-ext: selection,mark-yank-urls&lt;br /&gt;
 !! on définit comment passer en mode &amp;quot;copie d&#039;url&amp;quot;: ici il s&#039;agit de alt-u &lt;br /&gt;
 URxvt.keysym.M-u: perl:mark-yank-urls:activate_mark_mode&lt;br /&gt;
 !! on peut choisir de souligner les urls&lt;br /&gt;
 URxvt.underlineURLs: true&lt;br /&gt;
 !! on définit ici le navigateur par défaut (pour lancer une url sélectionnée avec entrée)&lt;br /&gt;
 URxvt.urlLauncher: firefox&lt;br /&gt;
&lt;br /&gt;
Une fois en mode &amp;quot;copie d&#039;url&amp;quot; les commandes sont:&lt;br /&gt;
*Entrée: lancer l&#039;url sélectionnée&lt;br /&gt;
*Ctrl+n: passer à l&#039;url suivante&lt;br /&gt;
*Ctrl+p: passer à l&#039;url précédente&lt;br /&gt;
*y: copier l&#039;url dans le buffer du clic scroll&lt;br /&gt;
*Esc: sortir du mode &amp;quot;copie d&#039;url&amp;quot;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=URxvt&amp;diff=13111</id>
		<title>URxvt</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=URxvt&amp;diff=13111"/>
		<updated>2009-03-16T19:00:25Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;URxvt est un terminal virtuel utilisé dans X.Org. C&#039;est un clone de Rxvt mais il supporte l&#039;Unicode.&lt;br /&gt;
&lt;br /&gt;
Cette page répertorie des astuces liées à sa configuration. Le fichier a modifier est ~/.Xdefault, ~/.Xdefaults ou ~/.Xressources. Si le fichier n&#039;existe pas, il ne vous reste plus qu&#039;à le créer !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Définir la fonte de secours pour les caractères non définis===&lt;br /&gt;
Il suffit de séparer les deux fontes par une virgule &#039;,&#039;.&lt;br /&gt;
&lt;br /&gt;
Par exemple, si vous voulez utiliser la fonte proggytinysz et aller chercher les caractères non définis dans DejaVu Sans Mono:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;small&amp;gt;urxvt.font: -*-proggytinysz-medium-*-*-*-*-*-*-*-*-*-*,xft:Dejavu Sans Mono:pixelsize=10:autohint=true&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(vous pouvez obtenir le descripteur &amp;quot;-*-proggytinysz-medium-*-*-*-*-*-*-*-*-*-*&amp;quot; adapté à votre fonte à l&#039;aide de la commande xfontsel)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Gérer les urls au clavier===&lt;br /&gt;
Quoi de plus affligeant que de reprendre la souris pour copier-coller une url?&lt;br /&gt;
&lt;br /&gt;
Le [http://www.jukie.net/~bart/blog/20070503013555 script mark-yank-urls] permet de sélectionner les urls au clavier et de les copier dans le buffer du clic scroll.&lt;br /&gt;
&lt;br /&gt;
Il nécessite l&#039;installation de perl, du module perl Clipboard et de xclip.&lt;br /&gt;
&lt;br /&gt;
L&#039;utilisation est très simple. Comme d&#039;habitude, on règle les options dans le fichier ~/.Xdefault &lt;br /&gt;
&lt;br /&gt;
 !! on active les modules nécessaires&lt;br /&gt;
 URxvt.perl-ext: selection,mark-yank-urls&lt;br /&gt;
 !! on définit comment passer en mode &amp;quot;copie d&#039;url&amp;quot;: ici il s&#039;agit de alt-u &lt;br /&gt;
 URxvt.keysym.M-u: perl:mark-yank-urls:activate_mark_mode&lt;br /&gt;
 !! on peut choisir de souligner les urls&lt;br /&gt;
 URxvt.underlineURLs: true&lt;br /&gt;
 !! on définit ici le navigateur par défaut (pour lancer une url sélectionnée avec entrée)&lt;br /&gt;
 URxvt.urlLauncher: firefox&lt;br /&gt;
&lt;br /&gt;
Une fois en mode &amp;quot;copie d&#039;url&amp;quot; les commandes sont:&lt;br /&gt;
*Entrée: lancer l&#039;url sélectionnée&lt;br /&gt;
*Ctrl+n: passer à l&#039;url suivante&lt;br /&gt;
*Ctrl+p: passer à l&#039;url précédente&lt;br /&gt;
*y: copier l&#039;url dans le buffer du clic scroll&lt;br /&gt;
*Esc: sortir du mode &amp;quot;copie d&#039;url&amp;quot;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13099</id>
		<title>Utilisateur:Legrostdg</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13099"/>
		<updated>2009-03-16T02:42:12Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : /* Fn « déplacement/édition » (et underscore) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La [[Utilisateur:Nbrodu|variante proposée par Nbrodu]] est très utile mais étant plutôt adepte de vim, je n&#039;utilisais pas beaucoup les raccourcis en Ctrl+… En revanche return, delete, backspace et escape avaient selon moi besoin d&#039;être plus accessibles. J&#039;en ai profité pour mettre les touches de direction &amp;quot;alla vim&amp;quot; et ajuster les touches début, fin, pgup et pgdn de manière plus homogène.&lt;br /&gt;
&lt;br /&gt;
J&#039;ai également rajouté des touches dead-modificateur (plus parce que j&#039;étais content d&#039;avoir trouvé comment faire qu&#039;autre chose).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Keymap « de base »===&lt;br /&gt;
J&#039;ai adopté la version bépow. [[Utilisateur:Kaze/Bépo-int|Explications ici]].&lt;br /&gt;
&lt;br /&gt;
Le w était vraiment trop loin et les &#039;[&#039; et &#039;]&#039; disponibles dans la même rangée que &#039;{&#039;-&#039;}&#039; et &#039;&amp;lt;&#039;-&#039;&amp;gt;&#039; je trouvait ça trop pratique. Les parenthèses en altgr+&#039;é&#039; et altgr+&#039;p&#039; ce serait selon moi royal, mais c&#039;est vrai que le &#039;´&#039; est bien sur le é… Je n&#039;ai pas encore trouvé de solution idéale. En tous cas, pour l&#039;instant:&lt;br /&gt;
&lt;br /&gt;
L&#039;espace insécable est accessible en altgr+space et l&#039;espace fine insécable en altgr+maj+space. space et maj+space donne une espace classique, je trouvais la combinaison &amp;quot;maj+space = espace&amp;quot; trop dangereuse pour la programmation. Pour l&#039;instant le &#039;_&#039; est accessible en fn+space. Ce n&#039;est pas super logique (le &#039;_&#039; c&#039;est pas du « déplacement/édition ») mais bon… la couche « déplacement/édition » est aussi accessible que la couche altgr et la laisser quasiment vide serait un peu du gaspillage. Le mieux serait peut-être de caler le &#039;_&#039; ailleurs (mais où ? :-)). Ou alors utiliser un peu plus cette couche fn -&amp;gt; :-)&lt;br /&gt;
&lt;br /&gt;
Ctrl droit et Compose sont inversés: les touches Ctrl sont tout à fait inaccessibles sans lever la main. Un &amp;quot;dead_Compose&amp;quot; est accessible en Fn+&#039;,&#039;.&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │ # ¶│ 1 „│ 2 “│ 3 ”│ 4 ≤│ 5 ≥│ 6  ║ 7 ¬│ 8 ¼│ 9 ½│ 0 ¾│ ° ′│ ℝ ″║         ║&lt;br /&gt;
 │ $ –│ &amp;quot; —│ « &amp;lt;│ » &amp;gt;│ ( →│ ) ⇒│ @ ^║ + ±│ - −│ / ÷│ * ×│ = ≠│ % ‰║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║ B ¦│ É ˝│ P §│ O Œ│ W  ║ !  │ V  │ D Ð│ L  │ J Ĳ│ ˇ Ə│ ˙  ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ b |│ é ´│ p &amp;amp;│ o œ│ w  ║ ` ¡│ v ˇ│ d ð│ l /│ j ĳ│ ^ ə│ ¨ ˘║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║ A Æ│ U  │ I  │ E ¤│ ;  ║ C ſ│ T Þ│ S ß│ R  │ N  │ M º│ Ç ,║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ a æ│ u [│ i ]│ e €│ , &#039;║ c ©│ t þ│ s ß│ r ®│ n ˜│ m ¯│ ç ¸║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║ Ê  │ Z  │ Y ‘│ X ’│ : ·│ K  ║ ?  │ Q  │ G  │ H ‡│ F ª║     ^      ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║ ê /│ z \│ y {│ x }│ . …│ k ~║ ’ ¿│ q °│ g µ│ h †│ f ˛║     |      ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║ Espace   Fine Insécable  ║     ║       ║     ║ Com- ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║ Espace     Insécable     ║AltGr║ Ctrl  ║WinM ║ pose ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Fn « déplacement/édition » (et underscore)===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │    │    │    │    │    │    │    ║    │    │    │    │    │    ║         ║&lt;br /&gt;
 │    │    │    │    │    │    │    ║    │    │    │    │    │    ║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║dead│dead│dead│dead│    ║    │    │    │    │    │    │    ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ctrl│ maj│ alt│altg│    ║    │    │    │    │    │    │    ║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║    │    │    │    │Com-║    │    │    │    │    │    │    ║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ esc│ del│bksp│entr│pose│ ←  │ ↓  │ ↑  | →  │ esc│    │    ║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║    │    │    │    │    │    ║    │    │    │    │    ║     ^      ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║    │    │    │    │    │    ║ deb│pgdn│pgup│ fin│    ║     |      ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║                          ║     ║       ║     ║ Com- ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║            _             ║AltGr║ Ctrl  ║WinM ║ pose ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Des idées ?===&lt;br /&gt;
Si vous avez des idées pour améliorer cette super couche « déplacement/édition » rajoutez-les ici !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon fichier .xkb===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
xkb_keymap        {&lt;br /&gt;
&lt;br /&gt;
xkb_keycodes      { include &amp;quot;xfree86+aliases(azerty)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
xkb_types         {&lt;br /&gt;
    include &amp;quot;complete&amp;quot;&lt;br /&gt;
    type &amp;quot;ALTGR_TWO&amp;quot; {&lt;br /&gt;
       modifiers = LevelThree;&lt;br /&gt;
       map[None] = Level1;&lt;br /&gt;
       map[LevelThree] = Level2;&lt;br /&gt;
       level_name[Level1] = &amp;quot;Base&amp;quot;;&lt;br /&gt;
       level_name[Level2] = &amp;quot;AltGr&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_compatibility { include &amp;quot;complete&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        indicator &amp;quot;Scroll Lock&amp;quot; { controls = Overlay1; allowExplicit = True; drivesKeyboard = True; };&lt;br /&gt;
        &lt;br /&gt;
        interpret F24 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Control); // ctrl-r&lt;br /&gt;
        };&lt;br /&gt;
        interpret F25 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6D&amp;gt;, modifiers=Control); // ctrl-f&lt;br /&gt;
        };&lt;br /&gt;
        interpret F26 {&lt;br /&gt;
            action = LockControls(controls=Overlay1);&lt;br /&gt;
        };&lt;br /&gt;
        interpret F27 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6E&amp;gt;, modifiers=Control); // ctrl-s&lt;br /&gt;
        };&lt;br /&gt;
        interpret F28 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;LEFT&amp;gt;, modifiers=Control); // ctrl-â†&lt;br /&gt;
        };&lt;br /&gt;
        interpret F29 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;RGHT&amp;gt;, modifiers=Control); // ctrl-â†’&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
        interpret F30 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6F&amp;gt;, modifiers=Mod1); // Alt-Tab&lt;br /&gt;
        };&lt;br /&gt;
        interpret F31 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I71&amp;gt;, modifiers=Control); // ctrl-x&lt;br /&gt;
        };&lt;br /&gt;
        interpret F32 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I72&amp;gt;, modifiers=Control); // ctrl-c&lt;br /&gt;
        };&lt;br /&gt;
        interpret F33 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I73&amp;gt;, modifiers=Control); // ctrl-v&lt;br /&gt;
        };&lt;br /&gt;
        interpret F34 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I74&amp;gt;, modifiers=Control); // ctrl-z&lt;br /&gt;
        };&lt;br /&gt;
        interpret F35 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I75&amp;gt;, modifiers=Control); // ctrl-y&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
partial alphanumeric_keys&lt;br /&gt;
xkb_symbols &amp;quot;dvorak&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	name[Group1]= &amp;quot;France - Bepo, ergonomic, Dvorak way (v1.0rc2)&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;pc(pc105)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;TLDE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dollar, numbersign, endash, paragraph ], overlay1 = &amp;lt;I70&amp;gt; }; // $ # – ¶&lt;br /&gt;
	key &amp;lt;AE01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ quotedbl, 1, emdash, doublelowquotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // &amp;quot; 1 — „&lt;br /&gt;
	key &amp;lt;AE02&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotleft, 2, less, leftdoublequotemark ], // « 2 &amp;lt; “&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ less, 2, guillemotleft, leftdoublequotemark ], // &amp;lt; 2 « “&lt;br /&gt;
                     overlay1 = &amp;lt;I70&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE03&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotright, 3, greater, rightdoublequotemark ], // » 3 &amp;gt; ”&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ greater, 3, guillemotright, rightdoublequotemark ], // &amp;gt; 3 » ”&lt;br /&gt;
                     overlay1 = &amp;lt;I70&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenleft, 4, U2192, lessthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ( 4 → ≤&lt;br /&gt;
	key &amp;lt;AE05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenright, 5, U21D2, greaterthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ) 5 ⇒ ≥&lt;br /&gt;
	key &amp;lt;AE06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ at, 6, asciicircum ], overlay1 = &amp;lt;I70&amp;gt; }; // @ 6 ^&lt;br /&gt;
	key &amp;lt;AE07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ plus, 7, plusminus, notsign ], overlay1 = &amp;lt;I70&amp;gt; }; // + 7 ± ¬&lt;br /&gt;
	key &amp;lt;AE08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ minus, 8, U2212, onequarter ], overlay1 = &amp;lt;I70&amp;gt; }; // - 8 − ¼&lt;br /&gt;
	key &amp;lt;AE09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ slash, 9, division, onehalf ], overlay1 = &amp;lt;I70&amp;gt; }; // / 9 ÷ ½&lt;br /&gt;
	key &amp;lt;AE10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asterisk, 0, multiply, threequarters ], overlay1 = &amp;lt;I70&amp;gt; }; // * 0 × ¾&lt;br /&gt;
	key &amp;lt;AE11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ equal, degree, notequal, minutes ], overlay1 = &amp;lt;I70&amp;gt; }; // = ° ≠&lt;br /&gt;
	key &amp;lt;AE12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ percent, grave, U2030, seconds ], overlay1 = &amp;lt;I70&amp;gt; }; // % ` ‰&lt;br /&gt;
	key &amp;lt;AD01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ b, B, bar, brokenbar ], overlay1 = &amp;lt;FK13&amp;gt; }; // b B | ¦ dead_ctrl&lt;br /&gt;
	key &amp;lt;AD02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, dead_acute, dead_doubleacute ], overlay1 = &amp;lt;FK14&amp;gt; }; // é É ´ ˝ dead_shift&lt;br /&gt;
	key &amp;lt;AD03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, ampersand, section ], overlay1 = &amp;lt;FK15&amp;gt; }; // p P &amp;amp; § dead_alt&lt;br /&gt;
	key &amp;lt;AD04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ o, O, oe, OE ], overlay1 = &amp;lt;FK16&amp;gt; }; // o O œ Œ dead_altgr&lt;br /&gt;
	//key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ egrave, Egrave, dead_grave, grave ], }; // è È ` `&lt;br /&gt;
	key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ w, W, dead_breve ], overlay1 = &amp;lt;I70&amp;gt; }; // w W ˘&lt;br /&gt;
	key &amp;lt;AD06&amp;gt; { type[group1] = &amp;quot;THREE_LEVEL&amp;quot;, [ dead_grave, exclam, exclamdown ], overlay1 = &amp;lt;I70&amp;gt; }; // ` ! ¡&lt;br /&gt;
	key &amp;lt;AD07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ v, V, dead_caron ], overlay1 = &amp;lt;I70&amp;gt; }; // v V ˇ&lt;br /&gt;
	key &amp;lt;AD08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ d, D, eth, ETH ], overlay1 = &amp;lt;I70&amp;gt;}; // d D ð Ð&lt;br /&gt;
	key &amp;lt;AD09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ l, L, UFDD0 ], overlay1 = &amp;lt;I70&amp;gt;}; // l L /&lt;br /&gt;
	key &amp;lt;AD10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ j, J, U0133, U0132 ], overlay1 = &amp;lt;I70&amp;gt;}; // j J ĳ Ĳ&lt;br /&gt;
        key &amp;lt;AD11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_circumflex, dead_caron, schwa, SCHWA ], overlay1 = &amp;lt;I70&amp;gt; }; // ^ ˇ ə Ə&lt;br /&gt;
        key &amp;lt;AD12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_diaeresis, dead_abovedot, dead_breve, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ¨ ˙ ˘&lt;br /&gt;
	key &amp;lt;AC01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ a, A, ae, AE ], overlay1 = &amp;lt;ESC&amp;gt; }; // a A æ Æ escape&lt;br /&gt;
        key &amp;lt;AC02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ u, U, bracketleft ], overlay1 = &amp;lt;DELE&amp;gt; }; // u U [ delete&lt;br /&gt;
	key &amp;lt;AC03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ i, I, bracketright ], overlay1 = &amp;lt;BKSP&amp;gt; }; // i I ] backspace&lt;br /&gt;
	key &amp;lt;AC04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ e, E, EuroSign, UFDD1 ], overlay1 = &amp;lt;RTRN&amp;gt; }; // e E € ¤ return&lt;br /&gt;
        key &amp;lt;AC05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, rightsinglequotemark, dead_horn  ], // , ; &#039; &lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, apostrophe, dead_horn  ],           // , ; ’&lt;br /&gt;
            overlay1 = &amp;lt;FK17&amp;gt;                                                                    // multi_key&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AC06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ c, C, copyright, U017F ], overlay1 = &amp;lt;LEFT&amp;gt; }; // c C © ſ&lt;br /&gt;
	key &amp;lt;AC07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ t, T, thorn, THORN ], overlay1 = &amp;lt;DOWN&amp;gt; }; // t T þ Þ&lt;br /&gt;
	key &amp;lt;AC08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ s, S, ssharp, U1E9E ], overlay1 = &amp;lt;UP&amp;gt; }; // s S ß ẞ&lt;br /&gt;
	key &amp;lt;AC09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ r, R, registered, trademark ], overlay1 = &amp;lt;RGHT&amp;gt; }; // r R ® ™&lt;br /&gt;
	key &amp;lt;AC10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ n, N, dead_tilde ], overlay1 = &amp;lt;ESC&amp;gt; }; // n N ~ escape&lt;br /&gt;
	key &amp;lt;AC11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ m, M, dead_macron, masculine ], overlay1 = &amp;lt;I70&amp;gt; }; // m M ¯ º&lt;br /&gt;
	key &amp;lt;BKSL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ], overlay1 = &amp;lt;I70&amp;gt; }; // ç Ç ¸ ,&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;LSGT&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ecircumflex, Ecircumflex, slash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ê Ê /&lt;br /&gt;
	key &amp;lt;AB01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ z, Z, backslash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // z Z \&lt;br /&gt;
	key &amp;lt;AB02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ y, Y, braceleft, leftsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // y Y { ‘&lt;br /&gt;
	key &amp;lt;AB03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ x, X, braceright, rightsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // x X } ’&lt;br /&gt;
	key &amp;lt;AB04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ period, colon, ellipsis, periodcentered ], overlay1 = &amp;lt;I70&amp;gt; }; // . : … ·&lt;br /&gt;
	key &amp;lt;AB05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ k, K, asciitilde, dead_tilde ], overlay1 = &amp;lt;I70&amp;gt; }; // k K ~&lt;br /&gt;
        key &amp;lt;AB06&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, question, questiondown, dead_hook ],           // ’ ? ¿ ̉&lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ rightsinglequotemark, question, questiondown, dead_hook ], // &#039; ? ¿ ̉&lt;br /&gt;
            overlay1 = &amp;lt;HOME&amp;gt;                                                                         // home&lt;br /&gt;
        }; &lt;br /&gt;
	key &amp;lt;AB07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ q, Q, dead_abovering, dead_belowdot ], overlay1 = &amp;lt;PGDN&amp;gt; }; // q Q ˚ ̣pgdn&lt;br /&gt;
	key &amp;lt;AB08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ g, G, UFDD2 ], overlay1 = &amp;lt;PGUP&amp;gt; }; // g G µ pgup&lt;br /&gt;
	key &amp;lt;AB09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ h, H, dagger, doubledagger ], overlay1 = &amp;lt;END&amp;gt; }; // h H † ‡&lt;br /&gt;
	key &amp;lt;AB10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ f, F, dead_ogonek, ordfeminine ], overlay1 = &amp;lt;I70&amp;gt; }; // f F ˛ ª&lt;br /&gt;
        key &amp;lt;SPCE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ space, space, nobreakspace, U202F ], overlay1 = &amp;lt;I7F&amp;gt; }; //  spaces underscore&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Unused keys mapped to ctrl+letter actions&lt;br /&gt;
        key &amp;lt;I6C&amp;gt; { [ r ] };&lt;br /&gt;
        key &amp;lt;I6D&amp;gt; { [ f ] };&lt;br /&gt;
        key &amp;lt;I6E&amp;gt; { [ s ] };&lt;br /&gt;
        key &amp;lt;I6F&amp;gt; { [ Tab ] };&lt;br /&gt;
        key &amp;lt;I70&amp;gt; { [ VoidSymbol ] };&lt;br /&gt;
        key &amp;lt;I71&amp;gt; { [ x ] };&lt;br /&gt;
        key &amp;lt;I72&amp;gt; { [ c ] };&lt;br /&gt;
        key &amp;lt;I73&amp;gt; { [ v ] };&lt;br /&gt;
        key &amp;lt;I74&amp;gt; { [ z ] };&lt;br /&gt;
        key &amp;lt;I75&amp;gt; { [ y ] };&lt;br /&gt;
        key &amp;lt;I76&amp;gt; { [ space ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // For some reason there are SOMETIMES (not always!) errors with this code:&lt;br /&gt;
        //    key &amp;lt;I7A&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;I7B&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;I7C&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;I7D&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;I7E&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // However passing the action in the Â«Â interpretÂ Â» section for an unsused symbol seems to work&lt;br /&gt;
        key &amp;lt;I60&amp;gt; { [ F24 ] };      // ctrl-R&lt;br /&gt;
        key &amp;lt;I61&amp;gt; { [ F25 ] };      // ctrl-F&lt;br /&gt;
        key &amp;lt;I77&amp;gt; { [ F28 ] };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I78&amp;gt; { [ F29 ] };      // ctrl-right&lt;br /&gt;
        key &amp;lt;I79&amp;gt; { [ F30 ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        //    key &amp;lt;I79&amp;gt; { [ Tab ], actions = [ setMods(modifiers=Mod1) ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;I7A&amp;gt; { [ F31 ] };      // ctrl-x&lt;br /&gt;
        key &amp;lt;I7B&amp;gt; { [ F32 ] };      // ctrl-c&lt;br /&gt;
        key &amp;lt;I7C&amp;gt; { [ F33 ] };      // ctrl-v&lt;br /&gt;
        key &amp;lt;I7D&amp;gt; { [ F34 ] };      // ctrl-z&lt;br /&gt;
        key &amp;lt;I7E&amp;gt; { [ F35 ] };      // ctrl-y&lt;br /&gt;
        key &amp;lt;I7F&amp;gt; { [ underscore ] };      // _&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Using &amp;lt; 127 keycodes also works&lt;br /&gt;
        key &amp;lt;FK13&amp;gt; { actions = [ LatchMods(modifiers=Control) ] };        // dead ctrl&lt;br /&gt;
        key &amp;lt;FK14&amp;gt; { actions = [ LatchMods(modifiers=Shift) ] };          // dead shift&lt;br /&gt;
        key &amp;lt;FK15&amp;gt; { actions = [ LatchMods(modifiers=Alt) ] };            // dead alt&lt;br /&gt;
        key &amp;lt;FK16&amp;gt; { actions = [ LatchMods(modifiers=AltGr) ] };          // dead altgr&lt;br /&gt;
        key &amp;lt;FK17&amp;gt; { [ Multi_key ] };                                     // multi_key&lt;br /&gt;
        //    key &amp;lt;FK13&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;FK14&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;FK15&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;FK16&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;FK17&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
        // See also the bug thread here : https://bugs.freedesktop.org/show_bug.cgi?id=12401&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Transforme CAPS en lock de couche alternative «déplacement/édition», et garde le caps-lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour échanger Shift et Caps_Lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; {  [    Caps_Lock    ] };&lt;br /&gt;
&lt;br /&gt;
        // Combinaison des 2 : attention, requiert que les LFSH et CAPS dans les définitions de la touche &amp;lt;AC01&amp;gt; soient aussi échangées dans la partie principale&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
&lt;br /&gt;
        // shift + lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer CAPS en un AltGr gauche, en gardant le lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ ISO_Level3_Shift, Caps_Lock ], actions = [ SetMods(modifiers=LevelThree), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer LWIN en un AltGr gauche&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour mettre un Compose sur RWIN&lt;br /&gt;
        // key &amp;lt;RWIN&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        // key &amp;lt;MENU&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        //key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = [ SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;RCTL&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour que LWIN permette de changer de groupe&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
&lt;br /&gt;
        // Echange CTRL et Alt Gauches. Et puisque LWIN est réaffectée, garde un modificateur META en niveau 3 et 4 (AltGr)&lt;br /&gt;
        // Note: Activer cette option fonctionne mieux lorsque que l&#039;on échange aussi les raccourcis du style Alt+Tabâ€¦&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; {        [ Control_L ], actions = [ SetMods(modifiers=Control) ]       };&lt;br /&gt;
        //    key &amp;lt;LCTL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [       Alt_L,  Alt_L,  Meta_L, Meta_L         ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ]       };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        key &amp;lt;LALT&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; { type = &amp;quot;ONE_LEVEL&amp;quot;, [ VoidSymbol ], actions = [ LockControls(controls=Overlay1) ] };&lt;br /&gt;
            &lt;br /&gt;
            key &amp;lt;LFSH&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
            key &amp;lt;LWIN&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [ Alt_L, Alt_L, Meta_L, Meta_L ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ] };&lt;br /&gt;
&lt;br /&gt;
            // Make Alt+Tab still work in the overlay !&lt;br /&gt;
        //    key  &amp;lt;TAB&amp;gt; {&lt;br /&gt;
        //        // would need an appropriate type here [ Tab,  ISO_Left_Tab    ],&lt;br /&gt;
        //        overlay1 = &amp;lt;I79&amp;gt;&lt;br /&gt;
        //    };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;level3(ralt_switch)&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_geometry { include &amp;quot;pc(pc105)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13098</id>
		<title>Utilisateur:Legrostdg</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13098"/>
		<updated>2009-03-16T02:41:25Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : /* Keymap « de base » */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La [[Utilisateur:Nbrodu|variante proposée par Nbrodu]] est très utile mais étant plutôt adepte de vim, je n&#039;utilisais pas beaucoup les raccourcis en Ctrl+… En revanche return, delete, backspace et escape avaient selon moi besoin d&#039;être plus accessibles. J&#039;en ai profité pour mettre les touches de direction &amp;quot;alla vim&amp;quot; et ajuster les touches début, fin, pgup et pgdn de manière plus homogène.&lt;br /&gt;
&lt;br /&gt;
J&#039;ai également rajouté des touches dead-modificateur (plus parce que j&#039;étais content d&#039;avoir trouvé comment faire qu&#039;autre chose).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Keymap « de base »===&lt;br /&gt;
J&#039;ai adopté la version bépow. [[Utilisateur:Kaze/Bépo-int|Explications ici]].&lt;br /&gt;
&lt;br /&gt;
Le w était vraiment trop loin et les &#039;[&#039; et &#039;]&#039; disponibles dans la même rangée que &#039;{&#039;-&#039;}&#039; et &#039;&amp;lt;&#039;-&#039;&amp;gt;&#039; je trouvait ça trop pratique. Les parenthèses en altgr+&#039;é&#039; et altgr+&#039;p&#039; ce serait selon moi royal, mais c&#039;est vrai que le &#039;´&#039; est bien sur le é… Je n&#039;ai pas encore trouvé de solution idéale. En tous cas, pour l&#039;instant:&lt;br /&gt;
&lt;br /&gt;
L&#039;espace insécable est accessible en altgr+space et l&#039;espace fine insécable en altgr+maj+space. space et maj+space donne une espace classique, je trouvais la combinaison &amp;quot;maj+space = espace&amp;quot; trop dangereuse pour la programmation. Pour l&#039;instant le &#039;_&#039; est accessible en fn+space. Ce n&#039;est pas super logique (le &#039;_&#039; c&#039;est pas du « déplacement/édition ») mais bon… la couche « déplacement/édition » est aussi accessible que la couche altgr et la laisser quasiment vide serait un peu du gaspillage. Le mieux serait peut-être de caler le &#039;_&#039; ailleurs (mais où ? :-)). Ou alors utiliser un peu plus cette couche fn -&amp;gt; :-)&lt;br /&gt;
&lt;br /&gt;
Ctrl droit et Compose sont inversés: les touches Ctrl sont tout à fait inaccessibles sans lever la main. Un &amp;quot;dead_Compose&amp;quot; est accessible en Fn+&#039;,&#039;.&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │ # ¶│ 1 „│ 2 “│ 3 ”│ 4 ≤│ 5 ≥│ 6  ║ 7 ¬│ 8 ¼│ 9 ½│ 0 ¾│ ° ′│ ℝ ″║         ║&lt;br /&gt;
 │ $ –│ &amp;quot; —│ « &amp;lt;│ » &amp;gt;│ ( →│ ) ⇒│ @ ^║ + ±│ - −│ / ÷│ * ×│ = ≠│ % ‰║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║ B ¦│ É ˝│ P §│ O Œ│ W  ║ !  │ V  │ D Ð│ L  │ J Ĳ│ ˇ Ə│ ˙  ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ b |│ é ´│ p &amp;amp;│ o œ│ w  ║ ` ¡│ v ˇ│ d ð│ l /│ j ĳ│ ^ ə│ ¨ ˘║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║ A Æ│ U  │ I  │ E ¤│ ;  ║ C ſ│ T Þ│ S ß│ R  │ N  │ M º│ Ç ,║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ a æ│ u [│ i ]│ e €│ , &#039;║ c ©│ t þ│ s ß│ r ®│ n ˜│ m ¯│ ç ¸║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║ Ê  │ Z  │ Y ‘│ X ’│ : ·│ K  ║ ?  │ Q  │ G  │ H ‡│ F ª║     ^      ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║ ê /│ z \│ y {│ x }│ . …│ k ~║ ’ ¿│ q °│ g µ│ h †│ f ˛║     |      ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║ Espace   Fine Insécable  ║     ║       ║     ║ Com- ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║ Espace     Insécable     ║AltGr║ Ctrl  ║WinM ║ pose ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Fn « déplacement/édition » (et underscore)===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │    │    │    │    │    │    │    ║    │    │    │    │    │    ║         ║&lt;br /&gt;
 │    │    │    │    │    │    │    ║    │    │    │    │    │    ║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║dead│dead│dead│dead│    ║    │    │    │    │    │    │    ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ctrl│ maj│ alt│altg│    ║    │    │    │    │    │    │    ║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║    │    │    │    │Com-║    │    │    │    │    │    │    ║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ esc│ del│bksp│entr│pose│ ←  │ ↓  │ ↑  | →  │ esc│    │    ║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║    │    │    │    │    │    ║    │    │    │    │    ║     ^      ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║    │    │    │    │    │    ║ deb│pgdn│pgup│ fin│    ║     |      ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║                          ║     ║       ║     ║      ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║            _             ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Des idées ?===&lt;br /&gt;
Si vous avez des idées pour améliorer cette super couche « déplacement/édition » rajoutez-les ici !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon fichier .xkb===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
xkb_keymap        {&lt;br /&gt;
&lt;br /&gt;
xkb_keycodes      { include &amp;quot;xfree86+aliases(azerty)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
xkb_types         {&lt;br /&gt;
    include &amp;quot;complete&amp;quot;&lt;br /&gt;
    type &amp;quot;ALTGR_TWO&amp;quot; {&lt;br /&gt;
       modifiers = LevelThree;&lt;br /&gt;
       map[None] = Level1;&lt;br /&gt;
       map[LevelThree] = Level2;&lt;br /&gt;
       level_name[Level1] = &amp;quot;Base&amp;quot;;&lt;br /&gt;
       level_name[Level2] = &amp;quot;AltGr&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_compatibility { include &amp;quot;complete&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        indicator &amp;quot;Scroll Lock&amp;quot; { controls = Overlay1; allowExplicit = True; drivesKeyboard = True; };&lt;br /&gt;
        &lt;br /&gt;
        interpret F24 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Control); // ctrl-r&lt;br /&gt;
        };&lt;br /&gt;
        interpret F25 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6D&amp;gt;, modifiers=Control); // ctrl-f&lt;br /&gt;
        };&lt;br /&gt;
        interpret F26 {&lt;br /&gt;
            action = LockControls(controls=Overlay1);&lt;br /&gt;
        };&lt;br /&gt;
        interpret F27 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6E&amp;gt;, modifiers=Control); // ctrl-s&lt;br /&gt;
        };&lt;br /&gt;
        interpret F28 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;LEFT&amp;gt;, modifiers=Control); // ctrl-â†&lt;br /&gt;
        };&lt;br /&gt;
        interpret F29 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;RGHT&amp;gt;, modifiers=Control); // ctrl-â†’&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
        interpret F30 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6F&amp;gt;, modifiers=Mod1); // Alt-Tab&lt;br /&gt;
        };&lt;br /&gt;
        interpret F31 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I71&amp;gt;, modifiers=Control); // ctrl-x&lt;br /&gt;
        };&lt;br /&gt;
        interpret F32 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I72&amp;gt;, modifiers=Control); // ctrl-c&lt;br /&gt;
        };&lt;br /&gt;
        interpret F33 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I73&amp;gt;, modifiers=Control); // ctrl-v&lt;br /&gt;
        };&lt;br /&gt;
        interpret F34 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I74&amp;gt;, modifiers=Control); // ctrl-z&lt;br /&gt;
        };&lt;br /&gt;
        interpret F35 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I75&amp;gt;, modifiers=Control); // ctrl-y&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
partial alphanumeric_keys&lt;br /&gt;
xkb_symbols &amp;quot;dvorak&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	name[Group1]= &amp;quot;France - Bepo, ergonomic, Dvorak way (v1.0rc2)&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;pc(pc105)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;TLDE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dollar, numbersign, endash, paragraph ], overlay1 = &amp;lt;I70&amp;gt; }; // $ # – ¶&lt;br /&gt;
	key &amp;lt;AE01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ quotedbl, 1, emdash, doublelowquotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // &amp;quot; 1 — „&lt;br /&gt;
	key &amp;lt;AE02&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotleft, 2, less, leftdoublequotemark ], // « 2 &amp;lt; “&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ less, 2, guillemotleft, leftdoublequotemark ], // &amp;lt; 2 « “&lt;br /&gt;
                     overlay1 = &amp;lt;I70&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE03&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotright, 3, greater, rightdoublequotemark ], // » 3 &amp;gt; ”&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ greater, 3, guillemotright, rightdoublequotemark ], // &amp;gt; 3 » ”&lt;br /&gt;
                     overlay1 = &amp;lt;I70&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenleft, 4, U2192, lessthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ( 4 → ≤&lt;br /&gt;
	key &amp;lt;AE05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenright, 5, U21D2, greaterthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ) 5 ⇒ ≥&lt;br /&gt;
	key &amp;lt;AE06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ at, 6, asciicircum ], overlay1 = &amp;lt;I70&amp;gt; }; // @ 6 ^&lt;br /&gt;
	key &amp;lt;AE07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ plus, 7, plusminus, notsign ], overlay1 = &amp;lt;I70&amp;gt; }; // + 7 ± ¬&lt;br /&gt;
	key &amp;lt;AE08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ minus, 8, U2212, onequarter ], overlay1 = &amp;lt;I70&amp;gt; }; // - 8 − ¼&lt;br /&gt;
	key &amp;lt;AE09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ slash, 9, division, onehalf ], overlay1 = &amp;lt;I70&amp;gt; }; // / 9 ÷ ½&lt;br /&gt;
	key &amp;lt;AE10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asterisk, 0, multiply, threequarters ], overlay1 = &amp;lt;I70&amp;gt; }; // * 0 × ¾&lt;br /&gt;
	key &amp;lt;AE11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ equal, degree, notequal, minutes ], overlay1 = &amp;lt;I70&amp;gt; }; // = ° ≠&lt;br /&gt;
	key &amp;lt;AE12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ percent, grave, U2030, seconds ], overlay1 = &amp;lt;I70&amp;gt; }; // % ` ‰&lt;br /&gt;
	key &amp;lt;AD01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ b, B, bar, brokenbar ], overlay1 = &amp;lt;FK13&amp;gt; }; // b B | ¦ dead_ctrl&lt;br /&gt;
	key &amp;lt;AD02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, dead_acute, dead_doubleacute ], overlay1 = &amp;lt;FK14&amp;gt; }; // é É ´ ˝ dead_shift&lt;br /&gt;
	key &amp;lt;AD03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, ampersand, section ], overlay1 = &amp;lt;FK15&amp;gt; }; // p P &amp;amp; § dead_alt&lt;br /&gt;
	key &amp;lt;AD04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ o, O, oe, OE ], overlay1 = &amp;lt;FK16&amp;gt; }; // o O œ Œ dead_altgr&lt;br /&gt;
	//key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ egrave, Egrave, dead_grave, grave ], }; // è È ` `&lt;br /&gt;
	key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ w, W, dead_breve ], overlay1 = &amp;lt;I70&amp;gt; }; // w W ˘&lt;br /&gt;
	key &amp;lt;AD06&amp;gt; { type[group1] = &amp;quot;THREE_LEVEL&amp;quot;, [ dead_grave, exclam, exclamdown ], overlay1 = &amp;lt;I70&amp;gt; }; // ` ! ¡&lt;br /&gt;
	key &amp;lt;AD07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ v, V, dead_caron ], overlay1 = &amp;lt;I70&amp;gt; }; // v V ˇ&lt;br /&gt;
	key &amp;lt;AD08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ d, D, eth, ETH ], overlay1 = &amp;lt;I70&amp;gt;}; // d D ð Ð&lt;br /&gt;
	key &amp;lt;AD09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ l, L, UFDD0 ], overlay1 = &amp;lt;I70&amp;gt;}; // l L /&lt;br /&gt;
	key &amp;lt;AD10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ j, J, U0133, U0132 ], overlay1 = &amp;lt;I70&amp;gt;}; // j J ĳ Ĳ&lt;br /&gt;
        key &amp;lt;AD11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_circumflex, dead_caron, schwa, SCHWA ], overlay1 = &amp;lt;I70&amp;gt; }; // ^ ˇ ə Ə&lt;br /&gt;
        key &amp;lt;AD12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_diaeresis, dead_abovedot, dead_breve, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ¨ ˙ ˘&lt;br /&gt;
	key &amp;lt;AC01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ a, A, ae, AE ], overlay1 = &amp;lt;ESC&amp;gt; }; // a A æ Æ escape&lt;br /&gt;
        key &amp;lt;AC02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ u, U, bracketleft ], overlay1 = &amp;lt;DELE&amp;gt; }; // u U [ delete&lt;br /&gt;
	key &amp;lt;AC03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ i, I, bracketright ], overlay1 = &amp;lt;BKSP&amp;gt; }; // i I ] backspace&lt;br /&gt;
	key &amp;lt;AC04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ e, E, EuroSign, UFDD1 ], overlay1 = &amp;lt;RTRN&amp;gt; }; // e E € ¤ return&lt;br /&gt;
        key &amp;lt;AC05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, rightsinglequotemark, dead_horn  ], // , ; &#039; &lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, apostrophe, dead_horn  ],           // , ; ’&lt;br /&gt;
            overlay1 = &amp;lt;FK17&amp;gt;                                                                    // multi_key&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AC06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ c, C, copyright, U017F ], overlay1 = &amp;lt;LEFT&amp;gt; }; // c C © ſ&lt;br /&gt;
	key &amp;lt;AC07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ t, T, thorn, THORN ], overlay1 = &amp;lt;DOWN&amp;gt; }; // t T þ Þ&lt;br /&gt;
	key &amp;lt;AC08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ s, S, ssharp, U1E9E ], overlay1 = &amp;lt;UP&amp;gt; }; // s S ß ẞ&lt;br /&gt;
	key &amp;lt;AC09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ r, R, registered, trademark ], overlay1 = &amp;lt;RGHT&amp;gt; }; // r R ® ™&lt;br /&gt;
	key &amp;lt;AC10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ n, N, dead_tilde ], overlay1 = &amp;lt;ESC&amp;gt; }; // n N ~ escape&lt;br /&gt;
	key &amp;lt;AC11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ m, M, dead_macron, masculine ], overlay1 = &amp;lt;I70&amp;gt; }; // m M ¯ º&lt;br /&gt;
	key &amp;lt;BKSL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ], overlay1 = &amp;lt;I70&amp;gt; }; // ç Ç ¸ ,&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;LSGT&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ecircumflex, Ecircumflex, slash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ê Ê /&lt;br /&gt;
	key &amp;lt;AB01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ z, Z, backslash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // z Z \&lt;br /&gt;
	key &amp;lt;AB02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ y, Y, braceleft, leftsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // y Y { ‘&lt;br /&gt;
	key &amp;lt;AB03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ x, X, braceright, rightsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // x X } ’&lt;br /&gt;
	key &amp;lt;AB04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ period, colon, ellipsis, periodcentered ], overlay1 = &amp;lt;I70&amp;gt; }; // . : … ·&lt;br /&gt;
	key &amp;lt;AB05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ k, K, asciitilde, dead_tilde ], overlay1 = &amp;lt;I70&amp;gt; }; // k K ~&lt;br /&gt;
        key &amp;lt;AB06&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, question, questiondown, dead_hook ],           // ’ ? ¿ ̉&lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ rightsinglequotemark, question, questiondown, dead_hook ], // &#039; ? ¿ ̉&lt;br /&gt;
            overlay1 = &amp;lt;HOME&amp;gt;                                                                         // home&lt;br /&gt;
        }; &lt;br /&gt;
	key &amp;lt;AB07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ q, Q, dead_abovering, dead_belowdot ], overlay1 = &amp;lt;PGDN&amp;gt; }; // q Q ˚ ̣pgdn&lt;br /&gt;
	key &amp;lt;AB08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ g, G, UFDD2 ], overlay1 = &amp;lt;PGUP&amp;gt; }; // g G µ pgup&lt;br /&gt;
	key &amp;lt;AB09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ h, H, dagger, doubledagger ], overlay1 = &amp;lt;END&amp;gt; }; // h H † ‡&lt;br /&gt;
	key &amp;lt;AB10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ f, F, dead_ogonek, ordfeminine ], overlay1 = &amp;lt;I70&amp;gt; }; // f F ˛ ª&lt;br /&gt;
        key &amp;lt;SPCE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ space, space, nobreakspace, U202F ], overlay1 = &amp;lt;I7F&amp;gt; }; //  spaces underscore&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Unused keys mapped to ctrl+letter actions&lt;br /&gt;
        key &amp;lt;I6C&amp;gt; { [ r ] };&lt;br /&gt;
        key &amp;lt;I6D&amp;gt; { [ f ] };&lt;br /&gt;
        key &amp;lt;I6E&amp;gt; { [ s ] };&lt;br /&gt;
        key &amp;lt;I6F&amp;gt; { [ Tab ] };&lt;br /&gt;
        key &amp;lt;I70&amp;gt; { [ VoidSymbol ] };&lt;br /&gt;
        key &amp;lt;I71&amp;gt; { [ x ] };&lt;br /&gt;
        key &amp;lt;I72&amp;gt; { [ c ] };&lt;br /&gt;
        key &amp;lt;I73&amp;gt; { [ v ] };&lt;br /&gt;
        key &amp;lt;I74&amp;gt; { [ z ] };&lt;br /&gt;
        key &amp;lt;I75&amp;gt; { [ y ] };&lt;br /&gt;
        key &amp;lt;I76&amp;gt; { [ space ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // For some reason there are SOMETIMES (not always!) errors with this code:&lt;br /&gt;
        //    key &amp;lt;I7A&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;I7B&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;I7C&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;I7D&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;I7E&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // However passing the action in the Â«Â interpretÂ Â» section for an unsused symbol seems to work&lt;br /&gt;
        key &amp;lt;I60&amp;gt; { [ F24 ] };      // ctrl-R&lt;br /&gt;
        key &amp;lt;I61&amp;gt; { [ F25 ] };      // ctrl-F&lt;br /&gt;
        key &amp;lt;I77&amp;gt; { [ F28 ] };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I78&amp;gt; { [ F29 ] };      // ctrl-right&lt;br /&gt;
        key &amp;lt;I79&amp;gt; { [ F30 ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        //    key &amp;lt;I79&amp;gt; { [ Tab ], actions = [ setMods(modifiers=Mod1) ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;I7A&amp;gt; { [ F31 ] };      // ctrl-x&lt;br /&gt;
        key &amp;lt;I7B&amp;gt; { [ F32 ] };      // ctrl-c&lt;br /&gt;
        key &amp;lt;I7C&amp;gt; { [ F33 ] };      // ctrl-v&lt;br /&gt;
        key &amp;lt;I7D&amp;gt; { [ F34 ] };      // ctrl-z&lt;br /&gt;
        key &amp;lt;I7E&amp;gt; { [ F35 ] };      // ctrl-y&lt;br /&gt;
        key &amp;lt;I7F&amp;gt; { [ underscore ] };      // _&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Using &amp;lt; 127 keycodes also works&lt;br /&gt;
        key &amp;lt;FK13&amp;gt; { actions = [ LatchMods(modifiers=Control) ] };        // dead ctrl&lt;br /&gt;
        key &amp;lt;FK14&amp;gt; { actions = [ LatchMods(modifiers=Shift) ] };          // dead shift&lt;br /&gt;
        key &amp;lt;FK15&amp;gt; { actions = [ LatchMods(modifiers=Alt) ] };            // dead alt&lt;br /&gt;
        key &amp;lt;FK16&amp;gt; { actions = [ LatchMods(modifiers=AltGr) ] };          // dead altgr&lt;br /&gt;
        key &amp;lt;FK17&amp;gt; { [ Multi_key ] };                                     // multi_key&lt;br /&gt;
        //    key &amp;lt;FK13&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;FK14&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;FK15&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;FK16&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;FK17&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
        // See also the bug thread here : https://bugs.freedesktop.org/show_bug.cgi?id=12401&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Transforme CAPS en lock de couche alternative «déplacement/édition», et garde le caps-lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour échanger Shift et Caps_Lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; {  [    Caps_Lock    ] };&lt;br /&gt;
&lt;br /&gt;
        // Combinaison des 2 : attention, requiert que les LFSH et CAPS dans les définitions de la touche &amp;lt;AC01&amp;gt; soient aussi échangées dans la partie principale&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
&lt;br /&gt;
        // shift + lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer CAPS en un AltGr gauche, en gardant le lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ ISO_Level3_Shift, Caps_Lock ], actions = [ SetMods(modifiers=LevelThree), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer LWIN en un AltGr gauche&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour mettre un Compose sur RWIN&lt;br /&gt;
        // key &amp;lt;RWIN&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        // key &amp;lt;MENU&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        //key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = [ SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;RCTL&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour que LWIN permette de changer de groupe&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
&lt;br /&gt;
        // Echange CTRL et Alt Gauches. Et puisque LWIN est réaffectée, garde un modificateur META en niveau 3 et 4 (AltGr)&lt;br /&gt;
        // Note: Activer cette option fonctionne mieux lorsque que l&#039;on échange aussi les raccourcis du style Alt+Tabâ€¦&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; {        [ Control_L ], actions = [ SetMods(modifiers=Control) ]       };&lt;br /&gt;
        //    key &amp;lt;LCTL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [       Alt_L,  Alt_L,  Meta_L, Meta_L         ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ]       };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        key &amp;lt;LALT&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; { type = &amp;quot;ONE_LEVEL&amp;quot;, [ VoidSymbol ], actions = [ LockControls(controls=Overlay1) ] };&lt;br /&gt;
            &lt;br /&gt;
            key &amp;lt;LFSH&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
            key &amp;lt;LWIN&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [ Alt_L, Alt_L, Meta_L, Meta_L ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ] };&lt;br /&gt;
&lt;br /&gt;
            // Make Alt+Tab still work in the overlay !&lt;br /&gt;
        //    key  &amp;lt;TAB&amp;gt; {&lt;br /&gt;
        //        // would need an appropriate type here [ Tab,  ISO_Left_Tab    ],&lt;br /&gt;
        //        overlay1 = &amp;lt;I79&amp;gt;&lt;br /&gt;
        //    };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;level3(ralt_switch)&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_geometry { include &amp;quot;pc(pc105)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13097</id>
		<title>Utilisateur:Legrostdg</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg&amp;diff=13097"/>
		<updated>2009-03-16T02:28:13Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : /* Keymap « de base » */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;La [[Utilisateur:Nbrodu|variante proposée par Nbrodu]] est très utile mais étant plutôt adepte de vim, je n&#039;utilisais pas beaucoup les raccourcis en Ctrl+… En revanche return, delete, backspace et escape avaient selon moi besoin d&#039;être plus accessibles. J&#039;en ai profité pour mettre les touches de direction &amp;quot;alla vim&amp;quot; et ajuster les touches début, fin, pgup et pgdn de manière plus homogène.&lt;br /&gt;
&lt;br /&gt;
J&#039;ai également rajouté des touches dead-modificateur (plus parce que j&#039;étais content d&#039;avoir trouvé comment faire qu&#039;autre chose).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Keymap « de base »===&lt;br /&gt;
J&#039;ai adopté la version bépow. [[Utilisateur:Kaze/Bépo-int|Explications ici]].&lt;br /&gt;
&lt;br /&gt;
Le w était vraiment trop loin et les &#039;[&#039; et &#039;]&#039; disponibles dans la même rangée que &#039;{&#039;-&#039;}&#039; et &#039;&amp;lt;&#039;-&#039;&amp;gt;&#039; je trouvait ça trop pratique. Les parenthèses en altgr+&#039;é&#039; et altgr+&#039;p&#039; ce serait selon moi royal, mais c&#039;est vrai que le &#039;´&#039; est bien sur le é… Je n&#039;ai pas encore trouvé de solution idéale. En tous cas, pour l&#039;instant:&lt;br /&gt;
&lt;br /&gt;
L&#039;espace insécable est accessible en altgr+space et l&#039;espace fine insécable en altgr+maj+space. space et maj+space donne une espace classique, je trouvais la combinaison &amp;quot;maj+space = espace&amp;quot; trop dangereuse pour la programmation. Pour l&#039;instant le &#039;_&#039; est accessible en fn+space. Ce n&#039;est pas super logique (le &#039;_&#039; c&#039;est pas du « déplacement/édition ») mais bon… la couche « déplacement/édition » est aussi accessible que la couche altgr et la laisser quasiment vide serait un peu du gaspillage. Le mieux serait peut-être de caler le &#039;_&#039; ailleurs (mais où ? :-)). Ou alors utiliser un peu plus cette couche fn -&amp;gt; :-)&lt;br /&gt;
&lt;br /&gt;
Ctrl droit et Compose sont inversés: les touches Ctrl sont tout à fait inaccessibles sans lever la main. Un &amp;quot;dead_Compose&amp;quot; est accessible en Fn+&#039;,&#039;.&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │ # ¶│ 1 „│ 2 “│ 3 ”│ 4 ≤│ 5 ≥│ 6  ║ 7 ¬│ 8 ¼│ 9 ½│ 0 ¾│ ° ′│ ℝ ″║         ║&lt;br /&gt;
 │ $ –│ &amp;quot; —│ « &amp;lt;│ » &amp;gt;│ ( →│ ) ⇒│ @ ^║ + ±│ - −│ / ÷│ * ×│ = ≠│ % ‰║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║ B ¦│ É ˝│ P §│ O Œ│ W  ║ !  │ V  │ D Ð│ L  │ J Ĳ│ ˇ Ə│ ˙  ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ b |│ é ´│ p &amp;amp;│ o œ│ w  ║ ` ¡│ v ˇ│ d ð│ l /│ j ĳ│ ^ ə│ ¨ ˘║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║ A Æ│ U  │ I  │ E ¤│ ;  ║ C ſ│ T Þ│ S ß│ R  │ N  │ M º│ Ç ,║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ a æ│ u [│ i ]│ e €│ , &#039;║ c ©│ t þ│ s ß│ r ®│ n ˜│ m ¯│ ç ¸║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║ Ê  │ Z  │ Y ‘│ X ’│ : ·│ K  ║ ?  │ Q  │ G  │ H ‡│ F ª║     ^      ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║ ê /│ z \│ y {│ x }│ . …│ k ~║ ’ ¿│ q °│ g µ│ h †│ f ˛║     |      ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║ Espace   Fine Insécable  ║     ║       ║     ║      ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║ Espace     Insécable     ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Fn « déplacement/édition » (et underscore)===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
 ┌────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────┬────╔═════════╗&lt;br /&gt;
 │    │    │    │    │    │    │    ║    │    │    │    │    │    ║         ║&lt;br /&gt;
 │    │    │    │    │    │    │    ║    │    │    │    │    │    ║ &amp;lt;--     ║&lt;br /&gt;
 ╔════╧══╗─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─┴──┬─╚══╦══════╣&lt;br /&gt;
 ║  |&amp;lt;-  ║dead│dead│dead│dead│    ║    │    │    │    │    │    │    ║   |  ║&lt;br /&gt;
 ║  -&amp;gt;|  ║ctrl│ maj│ alt│altg│    ║    │    │    │    │    │    │    ║ &amp;lt;-&#039;  ║&lt;br /&gt;
 ╠═══════╩╗───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───┴┬───╚╗     ║&lt;br /&gt;
 ║        ║    │    │    │    │Com-║    │    │    │    │    │    │    ║     ║&lt;br /&gt;
 ║ Maj. ⇑ ║ esc│ del│bksp│entr│pose│ ←  │ ↓  │ ↑  | →  │ esc│    │    ║     ║&lt;br /&gt;
 ╠══════╦═╝──┬─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴─══─┴──┬─┴──┬─┴──┬─┴──╔═╧════╩═════╣&lt;br /&gt;
 ║ «»’  ║    │    │    │    │    │    ║    │    │    │    │    ║     ^      ║&lt;br /&gt;
 ║ &amp;lt;&amp;gt;&#039;  ║    │    │    │    │    │    ║ deb│pgdn│pgup│ fin│    ║     |      ║&lt;br /&gt;
 ╠══════╩╦═══╧══╦═╧═══╦╧════╧════╧════╧════╧════╧╦═══╧═╦══╧════╬═════╦══════╣&lt;br /&gt;
 ║       ║      ║     ║                          ║     ║       ║     ║      ║&lt;br /&gt;
 ║ Ctrl  ║ Alt  ║ Fn ⇄║            _             ║AltGr║Compose║WinM ║ Ctrl ║&lt;br /&gt;
 ╚═══════╩══════╩═════╩══════════════════════════╩═════╩═══════╩═════╩══════╝&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Des idées ?===&lt;br /&gt;
Si vous avez des idées pour améliorer cette super couche « déplacement/édition » rajoutez-les ici !&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Mon fichier .xkb===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
xkb_keymap        {&lt;br /&gt;
&lt;br /&gt;
xkb_keycodes      { include &amp;quot;xfree86+aliases(azerty)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
xkb_types         {&lt;br /&gt;
    include &amp;quot;complete&amp;quot;&lt;br /&gt;
    type &amp;quot;ALTGR_TWO&amp;quot; {&lt;br /&gt;
       modifiers = LevelThree;&lt;br /&gt;
       map[None] = Level1;&lt;br /&gt;
       map[LevelThree] = Level2;&lt;br /&gt;
       level_name[Level1] = &amp;quot;Base&amp;quot;;&lt;br /&gt;
       level_name[Level2] = &amp;quot;AltGr&amp;quot;;&lt;br /&gt;
    };&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_compatibility { include &amp;quot;complete&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
        indicator &amp;quot;Scroll Lock&amp;quot; { controls = Overlay1; allowExplicit = True; drivesKeyboard = True; };&lt;br /&gt;
        &lt;br /&gt;
        interpret F24 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6C&amp;gt;, modifiers=Control); // ctrl-r&lt;br /&gt;
        };&lt;br /&gt;
        interpret F25 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6D&amp;gt;, modifiers=Control); // ctrl-f&lt;br /&gt;
        };&lt;br /&gt;
        interpret F26 {&lt;br /&gt;
            action = LockControls(controls=Overlay1);&lt;br /&gt;
        };&lt;br /&gt;
        interpret F27 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6E&amp;gt;, modifiers=Control); // ctrl-s&lt;br /&gt;
        };&lt;br /&gt;
        interpret F28 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;LEFT&amp;gt;, modifiers=Control); // ctrl-â†&lt;br /&gt;
        };&lt;br /&gt;
        interpret F29 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;RGHT&amp;gt;, modifiers=Control); // ctrl-â†’&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
        interpret F30 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I6F&amp;gt;, modifiers=Mod1); // Alt-Tab&lt;br /&gt;
        };&lt;br /&gt;
        interpret F31 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I71&amp;gt;, modifiers=Control); // ctrl-x&lt;br /&gt;
        };&lt;br /&gt;
        interpret F32 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I72&amp;gt;, modifiers=Control); // ctrl-c&lt;br /&gt;
        };&lt;br /&gt;
        interpret F33 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I73&amp;gt;, modifiers=Control); // ctrl-v&lt;br /&gt;
        };&lt;br /&gt;
        interpret F34 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I74&amp;gt;, modifiers=Control); // ctrl-z&lt;br /&gt;
        };&lt;br /&gt;
        interpret F35 {&lt;br /&gt;
            action = Redirect(Key=&amp;lt;I75&amp;gt;, modifiers=Control); // ctrl-y&lt;br /&gt;
        };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
partial alphanumeric_keys&lt;br /&gt;
xkb_symbols &amp;quot;dvorak&amp;quot; {&lt;br /&gt;
&lt;br /&gt;
	name[Group1]= &amp;quot;France - Bepo, ergonomic, Dvorak way (v1.0rc2)&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;pc(pc105)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;TLDE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dollar, numbersign, endash, paragraph ], overlay1 = &amp;lt;I70&amp;gt; }; // $ # – ¶&lt;br /&gt;
	key &amp;lt;AE01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ quotedbl, 1, emdash, doublelowquotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // &amp;quot; 1 — „&lt;br /&gt;
	key &amp;lt;AE02&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotleft, 2, less, leftdoublequotemark ], // « 2 &amp;lt; “&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ less, 2, guillemotleft, leftdoublequotemark ], // &amp;lt; 2 « “&lt;br /&gt;
                     overlay1 = &amp;lt;I70&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE03&amp;gt; {&lt;br /&gt;
	             type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ guillemotright, 3, greater, rightdoublequotemark ], // » 3 &amp;gt; ”&lt;br /&gt;
                     type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ greater, 3, guillemotright, rightdoublequotemark ], // &amp;gt; 3 » ”&lt;br /&gt;
                     overlay1 = &amp;lt;I70&amp;gt;&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AE04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenleft, 4, U2192, lessthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ( 4 → ≤&lt;br /&gt;
	key &amp;lt;AE05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ parenright, 5, U21D2, greaterthanequal ], overlay1 = &amp;lt;I70&amp;gt; }; // ) 5 ⇒ ≥&lt;br /&gt;
	key &amp;lt;AE06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ at, 6, asciicircum ], overlay1 = &amp;lt;I70&amp;gt; }; // @ 6 ^&lt;br /&gt;
	key &amp;lt;AE07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ plus, 7, plusminus, notsign ], overlay1 = &amp;lt;I70&amp;gt; }; // + 7 ± ¬&lt;br /&gt;
	key &amp;lt;AE08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ minus, 8, U2212, onequarter ], overlay1 = &amp;lt;I70&amp;gt; }; // - 8 − ¼&lt;br /&gt;
	key &amp;lt;AE09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ slash, 9, division, onehalf ], overlay1 = &amp;lt;I70&amp;gt; }; // / 9 ÷ ½&lt;br /&gt;
	key &amp;lt;AE10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ asterisk, 0, multiply, threequarters ], overlay1 = &amp;lt;I70&amp;gt; }; // * 0 × ¾&lt;br /&gt;
	key &amp;lt;AE11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ equal, degree, notequal, minutes ], overlay1 = &amp;lt;I70&amp;gt; }; // = ° ≠&lt;br /&gt;
	key &amp;lt;AE12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ percent, grave, U2030, seconds ], overlay1 = &amp;lt;I70&amp;gt; }; // % ` ‰&lt;br /&gt;
	key &amp;lt;AD01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ b, B, bar, brokenbar ], overlay1 = &amp;lt;FK13&amp;gt; }; // b B | ¦ dead_ctrl&lt;br /&gt;
	key &amp;lt;AD02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ eacute, Eacute, dead_acute, dead_doubleacute ], overlay1 = &amp;lt;FK14&amp;gt; }; // é É ´ ˝ dead_shift&lt;br /&gt;
	key &amp;lt;AD03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ p, P, ampersand, section ], overlay1 = &amp;lt;FK15&amp;gt; }; // p P &amp;amp; § dead_alt&lt;br /&gt;
	key &amp;lt;AD04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ o, O, oe, OE ], overlay1 = &amp;lt;FK16&amp;gt; }; // o O œ Œ dead_altgr&lt;br /&gt;
	//key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ egrave, Egrave, dead_grave, grave ], }; // è È ` `&lt;br /&gt;
	key &amp;lt;AD05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ w, W, dead_breve ], overlay1 = &amp;lt;I70&amp;gt; }; // w W ˘&lt;br /&gt;
	key &amp;lt;AD06&amp;gt; { type[group1] = &amp;quot;THREE_LEVEL&amp;quot;, [ dead_grave, exclam, exclamdown ], overlay1 = &amp;lt;I70&amp;gt; }; // ` ! ¡&lt;br /&gt;
	key &amp;lt;AD07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ v, V, dead_caron ], overlay1 = &amp;lt;I70&amp;gt; }; // v V ˇ&lt;br /&gt;
	key &amp;lt;AD08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ d, D, eth, ETH ], overlay1 = &amp;lt;I70&amp;gt;}; // d D ð Ð&lt;br /&gt;
	key &amp;lt;AD09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ l, L, UFDD0 ], overlay1 = &amp;lt;I70&amp;gt;}; // l L /&lt;br /&gt;
	key &amp;lt;AD10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ j, J, U0133, U0132 ], overlay1 = &amp;lt;I70&amp;gt;}; // j J ĳ Ĳ&lt;br /&gt;
        key &amp;lt;AD11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_circumflex, dead_caron, schwa, SCHWA ], overlay1 = &amp;lt;I70&amp;gt; }; // ^ ˇ ə Ə&lt;br /&gt;
        key &amp;lt;AD12&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ dead_diaeresis, dead_abovedot, dead_breve, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ¨ ˙ ˘&lt;br /&gt;
	key &amp;lt;AC01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ a, A, ae, AE ], overlay1 = &amp;lt;ESC&amp;gt; }; // a A æ Æ escape&lt;br /&gt;
        key &amp;lt;AC02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ u, U, bracketleft ], overlay1 = &amp;lt;DELE&amp;gt; }; // u U [ delete&lt;br /&gt;
	key &amp;lt;AC03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ i, I, bracketright ], overlay1 = &amp;lt;BKSP&amp;gt; }; // i I ] backspace&lt;br /&gt;
	key &amp;lt;AC04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ e, E, EuroSign, UFDD1 ], overlay1 = &amp;lt;RTRN&amp;gt; }; // e E € ¤ return&lt;br /&gt;
        key &amp;lt;AC05&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, rightsinglequotemark, dead_horn  ], // , ; &#039; &lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ comma, semicolon, apostrophe, dead_horn  ],           // , ; ’&lt;br /&gt;
            overlay1 = &amp;lt;FK17&amp;gt;                                                                    // multi_key&lt;br /&gt;
        };&lt;br /&gt;
	key &amp;lt;AC06&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ c, C, copyright, U017F ], overlay1 = &amp;lt;LEFT&amp;gt; }; // c C © ſ&lt;br /&gt;
	key &amp;lt;AC07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ t, T, thorn, THORN ], overlay1 = &amp;lt;DOWN&amp;gt; }; // t T þ Þ&lt;br /&gt;
	key &amp;lt;AC08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_ALPHABETIC&amp;quot;, [ s, S, ssharp, U1E9E ], overlay1 = &amp;lt;UP&amp;gt; }; // s S ß ẞ&lt;br /&gt;
	key &amp;lt;AC09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ r, R, registered, trademark ], overlay1 = &amp;lt;RGHT&amp;gt; }; // r R ® ™&lt;br /&gt;
	key &amp;lt;AC10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ n, N, dead_tilde ], overlay1 = &amp;lt;ESC&amp;gt; }; // n N ~ escape&lt;br /&gt;
	key &amp;lt;AC11&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ m, M, dead_macron, masculine ], overlay1 = &amp;lt;I70&amp;gt; }; // m M ¯ º&lt;br /&gt;
	key &amp;lt;BKSL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ccedilla, Ccedilla, dead_cedilla, UFDD3 ], overlay1 = &amp;lt;I70&amp;gt; }; // ç Ç ¸ ,&lt;br /&gt;
&lt;br /&gt;
	key &amp;lt;LSGT&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ ecircumflex, Ecircumflex, slash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // ê Ê /&lt;br /&gt;
	key &amp;lt;AB01&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ z, Z, backslash, VoidSymbol ], overlay1 = &amp;lt;I70&amp;gt; }; // z Z \&lt;br /&gt;
	key &amp;lt;AB02&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ y, Y, braceleft, leftsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // y Y { ‘&lt;br /&gt;
	key &amp;lt;AB03&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ x, X, braceright, rightsinglequotemark ], overlay1 = &amp;lt;I70&amp;gt; }; // x X } ’&lt;br /&gt;
	key &amp;lt;AB04&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ period, colon, ellipsis, periodcentered ], overlay1 = &amp;lt;I70&amp;gt; }; // . : … ·&lt;br /&gt;
	key &amp;lt;AB05&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ k, K, asciitilde, dead_tilde ], overlay1 = &amp;lt;I70&amp;gt; }; // k K ~&lt;br /&gt;
        key &amp;lt;AB06&amp;gt; {&lt;br /&gt;
            type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ apostrophe, question, questiondown, dead_hook ],           // ’ ? ¿ ̉&lt;br /&gt;
            type[group2] = &amp;quot;FOUR_LEVEL&amp;quot;, [ rightsinglequotemark, question, questiondown, dead_hook ], // &#039; ? ¿ ̉&lt;br /&gt;
            overlay1 = &amp;lt;HOME&amp;gt;                                                                         // home&lt;br /&gt;
        }; &lt;br /&gt;
	key &amp;lt;AB07&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ q, Q, dead_abovering, dead_belowdot ], overlay1 = &amp;lt;PGDN&amp;gt; }; // q Q ˚ ̣pgdn&lt;br /&gt;
	key &amp;lt;AB08&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ g, G, UFDD2 ], overlay1 = &amp;lt;PGUP&amp;gt; }; // g G µ pgup&lt;br /&gt;
	key &amp;lt;AB09&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ h, H, dagger, doubledagger ], overlay1 = &amp;lt;END&amp;gt; }; // h H † ‡&lt;br /&gt;
	key &amp;lt;AB10&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL_SEMIALPHABETIC&amp;quot;, [ f, F, dead_ogonek, ordfeminine ], overlay1 = &amp;lt;I70&amp;gt; }; // f F ˛ ª&lt;br /&gt;
        key &amp;lt;SPCE&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;, [ space, space, nobreakspace, U202F ], overlay1 = &amp;lt;I7F&amp;gt; }; //  spaces underscore&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Unused keys mapped to ctrl+letter actions&lt;br /&gt;
        key &amp;lt;I6C&amp;gt; { [ r ] };&lt;br /&gt;
        key &amp;lt;I6D&amp;gt; { [ f ] };&lt;br /&gt;
        key &amp;lt;I6E&amp;gt; { [ s ] };&lt;br /&gt;
        key &amp;lt;I6F&amp;gt; { [ Tab ] };&lt;br /&gt;
        key &amp;lt;I70&amp;gt; { [ VoidSymbol ] };&lt;br /&gt;
        key &amp;lt;I71&amp;gt; { [ x ] };&lt;br /&gt;
        key &amp;lt;I72&amp;gt; { [ c ] };&lt;br /&gt;
        key &amp;lt;I73&amp;gt; { [ v ] };&lt;br /&gt;
        key &amp;lt;I74&amp;gt; { [ z ] };&lt;br /&gt;
        key &amp;lt;I75&amp;gt; { [ y ] };&lt;br /&gt;
        key &amp;lt;I76&amp;gt; { [ space ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // For some reason there are SOMETIMES (not always!) errors with this code:&lt;br /&gt;
        //    key &amp;lt;I7A&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;I7B&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;I7C&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;I7D&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;I7E&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // However passing the action in the Â«Â interpretÂ Â» section for an unsused symbol seems to work&lt;br /&gt;
        key &amp;lt;I60&amp;gt; { [ F24 ] };      // ctrl-R&lt;br /&gt;
        key &amp;lt;I61&amp;gt; { [ F25 ] };      // ctrl-F&lt;br /&gt;
        key &amp;lt;I77&amp;gt; { [ F28 ] };      // ctrl-left&lt;br /&gt;
        key &amp;lt;I78&amp;gt; { [ F29 ] };      // ctrl-right&lt;br /&gt;
        key &amp;lt;I79&amp;gt; { [ F30 ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        //    key &amp;lt;I79&amp;gt; { [ Tab ], actions = [ setMods(modifiers=Mod1) ] };      // Alt+Tab&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;I7A&amp;gt; { [ F31 ] };      // ctrl-x&lt;br /&gt;
        key &amp;lt;I7B&amp;gt; { [ F32 ] };      // ctrl-c&lt;br /&gt;
        key &amp;lt;I7C&amp;gt; { [ F33 ] };      // ctrl-v&lt;br /&gt;
        key &amp;lt;I7D&amp;gt; { [ F34 ] };      // ctrl-z&lt;br /&gt;
        key &amp;lt;I7E&amp;gt; { [ F35 ] };      // ctrl-y&lt;br /&gt;
        key &amp;lt;I7F&amp;gt; { [ underscore ] };      // _&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Using &amp;lt; 127 keycodes also works&lt;br /&gt;
        key &amp;lt;FK13&amp;gt; { actions = [ LatchMods(modifiers=Control) ] };        // dead ctrl&lt;br /&gt;
        key &amp;lt;FK14&amp;gt; { actions = [ LatchMods(modifiers=Shift) ] };          // dead shift&lt;br /&gt;
        key &amp;lt;FK15&amp;gt; { actions = [ LatchMods(modifiers=Alt) ] };            // dead alt&lt;br /&gt;
        key &amp;lt;FK16&amp;gt; { actions = [ LatchMods(modifiers=AltGr) ] };          // dead altgr&lt;br /&gt;
        key &amp;lt;FK17&amp;gt; { [ Multi_key ] };                                     // multi_key&lt;br /&gt;
        //    key &amp;lt;FK13&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I71&amp;gt;, modifiers=Control) ] };      // ctrl-x&lt;br /&gt;
        //    key &amp;lt;FK14&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I72&amp;gt;, modifiers=Control) ] };      // ctrl-c&lt;br /&gt;
        //    key &amp;lt;FK15&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I73&amp;gt;, modifiers=Control) ] };      // ctrl-v&lt;br /&gt;
        //    key &amp;lt;FK16&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I74&amp;gt;, modifiers=Control) ] };      // ctrl-z&lt;br /&gt;
        //    key &amp;lt;FK17&amp;gt; { actions[group1] = [ Redirect(keycode=&amp;lt;I75&amp;gt;, modifiers=Control) ] };      // ctrl-y&lt;br /&gt;
&lt;br /&gt;
        // See also the bug thread here : https://bugs.freedesktop.org/show_bug.cgi?id=12401&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Transforme CAPS en lock de couche alternative «déplacement/édition», et garde le caps-lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour échanger Shift et Caps_Lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; {  [    Caps_Lock    ] };&lt;br /&gt;
&lt;br /&gt;
        // Combinaison des 2 : attention, requiert que les LFSH et CAPS dans les définitions de la touche &amp;lt;AC01&amp;gt; soient aussi échangées dans la partie principale&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ LockControls(controls=Overlay1), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { [ Shift_L ], actions = [ SetMods(modifiers=Shift) ] };&lt;br /&gt;
&lt;br /&gt;
        // shift + lock&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        //    key &amp;lt;LFSH&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer CAPS en un AltGr gauche, en gardant le lock habituel en AltGr&lt;br /&gt;
        //    key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ ISO_Level3_Shift, Caps_Lock ], actions = [ SetMods(modifiers=LevelThree), LockMods(modifiers=Lock) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour transformer LWIN en un AltGr gauche&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [ ISO_Level3_Shift ], actions = [ SetMods(modifiers=LevelThree) ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour mettre un Compose sur RWIN&lt;br /&gt;
        // key &amp;lt;RWIN&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        // key &amp;lt;MENU&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
        //key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;MENU&amp;gt;  { [ Control_L ], actions = [ SetMods(modifiers=Control) ] };&lt;br /&gt;
        key &amp;lt;RCTL&amp;gt;  { [ Multi_key, Multi_key, Multi_key, Multi_key ] };&lt;br /&gt;
&lt;br /&gt;
        // Pour que LWIN permette de changer de groupe&lt;br /&gt;
        //    key &amp;lt;LWIN&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
&lt;br /&gt;
        // Echange CTRL et Alt Gauches. Et puisque LWIN est réaffectée, garde un modificateur META en niveau 3 et 4 (AltGr)&lt;br /&gt;
        // Note: Activer cette option fonctionne mieux lorsque que l&#039;on échange aussi les raccourcis du style Alt+Tabâ€¦&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; {        [ Control_L ], actions = [ SetMods(modifiers=Control) ]       };&lt;br /&gt;
        //    key &amp;lt;LCTL&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [       Alt_L,  Alt_L,  Meta_L, Meta_L         ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ]       };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
        key &amp;lt;CAPS&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ Shift_L, Caps_Lock ], actions = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ] };&lt;br /&gt;
        key &amp;lt;LALT&amp;gt; { type = &amp;quot;ALTGR_TWO&amp;quot;, [ VoidSymbol ], actions = [ SetControls(controls=Overlay1), LockControls(controls=Overlay1) ] };&lt;br /&gt;
        //    key &amp;lt;LALT&amp;gt; { type = &amp;quot;ONE_LEVEL&amp;quot;, [ VoidSymbol ], actions = [ LockControls(controls=Overlay1) ] };&lt;br /&gt;
            &lt;br /&gt;
            key &amp;lt;LFSH&amp;gt; { [  ISO_Next_Group, ISO_Prev_Group, ISO_Next_Group, ISO_Prev_Group ] };&lt;br /&gt;
            key &amp;lt;LWIN&amp;gt; { type[group1] = &amp;quot;FOUR_LEVEL&amp;quot;,  [ Alt_L, Alt_L, Meta_L, Meta_L ], actions = [ SetMods(modifiers=Mod1), SetMods(modifiers=Mod1), SetMods(modifiers=Mod4), SetMods(modifiers=Mod4) ] };&lt;br /&gt;
&lt;br /&gt;
            // Make Alt+Tab still work in the overlay !&lt;br /&gt;
        //    key  &amp;lt;TAB&amp;gt; {&lt;br /&gt;
        //        // would need an appropriate type here [ Tab,  ISO_Left_Tab    ],&lt;br /&gt;
        //        overlay1 = &amp;lt;I79&amp;gt;&lt;br /&gt;
        //    };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
	include &amp;quot;level3(ralt_switch)&amp;quot;&lt;br /&gt;
        &lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
xkb_geometry { include &amp;quot;pc(pc105)&amp;quot; };&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg/Pastealacon&amp;diff=13096</id>
		<title>Utilisateur:Legrostdg/Pastealacon</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg/Pastealacon&amp;diff=13096"/>
		<updated>2009-03-16T02:14:14Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ce script permet de ne pas reprendre la souris pour coller des données sur le site [http://pastealacon.com pastealacon.com].&lt;br /&gt;
&lt;br /&gt;
Il prend le texte à coller sur l&#039;entrée standard et il renvoie l&#039;url associée. Il colle aussi cette url dans le buffer du clic scroll à l&#039;aide de xclip.&lt;br /&gt;
&lt;br /&gt;
On peut ainsi retrouver l&#039;url à l&#039;aide de &amp;quot;xclip -o&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Il nécessite perl, le module perl WWW::Mechanize et xclip&lt;br /&gt;
&lt;br /&gt;
Les options disponibles sont:&lt;br /&gt;
*-nick (votre pseudo (Anonymous par défaut, éventuellement à adapter dans le script))&lt;br /&gt;
*-lang (le langage dans lequel sont codées les lignes que vous avez &amp;quot;pastées&amp;quot; (défaut: texte): utile pour la coloration syntaxique)&lt;br /&gt;
&lt;br /&gt;
voir la liste des languages de programmation supportés par [http://pastealacon.com pastealacon.com].&lt;br /&gt;
&lt;br /&gt;
en général il vous faut noter le nom du langage sans espace et en minuscule.&lt;br /&gt;
&lt;br /&gt;
*-time (durée de vie du &amp;quot;paste&amp;quot;: d = un jour (défaut), m = un mois, f = à jamais)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
#!/usr/bin/perl -w&lt;br /&gt;
#&lt;br /&gt;
# pastealacon.pl&lt;br /&gt;
#&lt;br /&gt;
# Faire des pastes en ligne de commande sur pastealacon.com.&lt;br /&gt;
# Colle l&#039;entrée standard sur pastealacon.com, renvoie l&#039;url&lt;br /&gt;
# et la met dans le buffer du clic scroll.&lt;br /&gt;
#&lt;br /&gt;
# Distribué sous les termes de la&lt;br /&gt;
# Licence Publique Rien À Branler (LPRAB) version 1&lt;br /&gt;
&lt;br /&gt;
my $url = &amp;quot;http://pastealacon.com/&amp;quot;;&lt;br /&gt;
my $nick = &amp;quot;Anonymous&amp;quot;;&lt;br /&gt;
my $format = &amp;quot;text&amp;quot;;&lt;br /&gt;
my $time = &amp;quot;d&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
use WWW::Mechanize;&lt;br /&gt;
use Getopt::Long;&lt;br /&gt;
&lt;br /&gt;
my %CONF = (&lt;br /&gt;
  lang     =&amp;gt; $format,&lt;br /&gt;
  nick     =&amp;gt; $nick,&lt;br /&gt;
  time     =&amp;gt; $time,&lt;br /&gt;
  text     =&amp;gt; &#039;&#039;,&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
GetOptions( \%CONF, &amp;quot;lang=s&amp;quot;, &amp;quot;nick=s&amp;quot;, &amp;quot;time=s&amp;quot;, &amp;quot;text=s&amp;quot; )&lt;br /&gt;
  or die &amp;quot;Bad Options.&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
my $m = WWW::Mechanize-&amp;gt;new;&lt;br /&gt;
$m-&amp;gt;get($url);&lt;br /&gt;
die $m-&amp;gt;res-&amp;gt;status_line unless $m-&amp;gt;success;&lt;br /&gt;
&lt;br /&gt;
unless ( $CONF{text} ) {&lt;br /&gt;
  $CONF{text} = join &amp;quot;&amp;quot;, &amp;lt;&amp;gt;;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
$m-&amp;gt;set_fields(&lt;br /&gt;
  format    =&amp;gt; $CONF{lang},&lt;br /&gt;
  code2     =&amp;gt; $CONF{text},&lt;br /&gt;
  poster    =&amp;gt; $CONF{nick},&lt;br /&gt;
  expiry    =&amp;gt; $CONF{time},&lt;br /&gt;
);&lt;br /&gt;
$m-&amp;gt;click;&lt;br /&gt;
die $m-&amp;gt;res-&amp;gt;status_line unless $m-&amp;gt;success;&lt;br /&gt;
my $response = $m-&amp;gt;response-&amp;gt;request-&amp;gt;uri-&amp;gt;as_string;&lt;br /&gt;
system( &amp;quot;echo $response | xclip -i&amp;quot; );&lt;br /&gt;
print $response, &amp;quot;\n&amp;quot;;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg/Pastealacon&amp;diff=13095</id>
		<title>Utilisateur:Legrostdg/Pastealacon</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg/Pastealacon&amp;diff=13095"/>
		<updated>2009-03-16T02:12:43Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ce script permet de ne pas reprendre la souris pour coller des données sur le site [http://pastealacon.com pastealacon.com].&lt;br /&gt;
&lt;br /&gt;
Il prend le texte à coller sur l&#039;entrée standard et il renvoie l&#039;url associée. Il colle aussi cette url dans le buffer du clic scroll à l&#039;aide de xclip.&lt;br /&gt;
&lt;br /&gt;
On peut ainsi retrouver l&#039;url à l&#039;aide de &amp;quot;xclip -o&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Il nécessite perl, le module perl WWW::Mechanize et xclip&lt;br /&gt;
&lt;br /&gt;
Les options disponibles sont:&lt;br /&gt;
*-nick (votre pseudo (Anonymous par défaut, éventuellement à adapter dans le script))&lt;br /&gt;
*-lang (le langage dans lequel sont codées les lignes que vous avez &amp;quot;pastées&amp;quot; (défaut: texte): utile pour la coloration syntaxique)&lt;br /&gt;
&lt;br /&gt;
voir la liste des languages de programmation supportés par [http://pastealacon.com pastealacon.com].&lt;br /&gt;
&lt;br /&gt;
en général il vous faut noter le nom du langage sans espace et en minuscule.&lt;br /&gt;
&lt;br /&gt;
*-time (durée de vie du &amp;quot;paste&amp;quot;: d = un jour (défaut), m = un mois, f = à jamais)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
#!/usr/bin/perl -w&lt;br /&gt;
# Faire des pastes en ligne de commande sur pastealacon.com.&lt;br /&gt;
# Colle l&#039;entrée standard sur pastealacon.com, renvoie l&#039;url&lt;br /&gt;
# et la met dans le buffer du clic scroll.&lt;br /&gt;
#&lt;br /&gt;
# Distribué sous les termes de la&lt;br /&gt;
# Licence Publique Rien À Branler (LPRAB) version 1&lt;br /&gt;
&lt;br /&gt;
my $url = &amp;quot;http://pastealacon.com/&amp;quot;;&lt;br /&gt;
my $nick = &amp;quot;Anonymous&amp;quot;;&lt;br /&gt;
my $format = &amp;quot;text&amp;quot;;&lt;br /&gt;
my $time = &amp;quot;d&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
use WWW::Mechanize;&lt;br /&gt;
use Getopt::Long;&lt;br /&gt;
&lt;br /&gt;
my %CONF = (&lt;br /&gt;
  lang     =&amp;gt; $format,&lt;br /&gt;
  nick     =&amp;gt; $nick,&lt;br /&gt;
  time     =&amp;gt; $time,&lt;br /&gt;
  text     =&amp;gt; &#039;&#039;,&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
GetOptions( \%CONF, &amp;quot;lang=s&amp;quot;, &amp;quot;nick=s&amp;quot;, &amp;quot;time=s&amp;quot;, &amp;quot;text=s&amp;quot; )&lt;br /&gt;
  or die &amp;quot;Bad Options.&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
my $m = WWW::Mechanize-&amp;gt;new;&lt;br /&gt;
$m-&amp;gt;get($url);&lt;br /&gt;
die $m-&amp;gt;res-&amp;gt;status_line unless $m-&amp;gt;success;&lt;br /&gt;
&lt;br /&gt;
unless ( $CONF{text} ) {&lt;br /&gt;
  $CONF{text} = join &amp;quot;&amp;quot;, &amp;lt;&amp;gt;;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
$m-&amp;gt;set_fields(&lt;br /&gt;
  format    =&amp;gt; $CONF{lang},&lt;br /&gt;
  code2     =&amp;gt; $CONF{text},&lt;br /&gt;
  poster    =&amp;gt; $CONF{nick},&lt;br /&gt;
  expiry    =&amp;gt; $CONF{time},&lt;br /&gt;
);&lt;br /&gt;
$m-&amp;gt;click;&lt;br /&gt;
die $m-&amp;gt;res-&amp;gt;status_line unless $m-&amp;gt;success;&lt;br /&gt;
my $response = $m-&amp;gt;response-&amp;gt;request-&amp;gt;uri-&amp;gt;as_string;&lt;br /&gt;
system( &amp;quot;echo $response | xclip -i&amp;quot; );&lt;br /&gt;
print $response, &amp;quot;\n&amp;quot;;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisation&amp;diff=13094</id>
		<title>Utilisation</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisation&amp;diff=13094"/>
		<updated>2009-03-16T02:09:17Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : /* Mieux utiliser vos logiciels */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{sommaire à droite}}&lt;br /&gt;
Cette page recense les conseils pour une utilisation optimale du bépo.&lt;br /&gt;
&lt;br /&gt;
===Ergonomie===&lt;br /&gt;
Avant de commencer à taper en bépo, intéressez-vous à votre confort. Êtes-vous bien assis ? Votre clavier est-il bien positionné ?&lt;br /&gt;
Améliorez l’[[Ergonomie|ergonomie de votre poste de travail]].&lt;br /&gt;
&lt;br /&gt;
===Apprentissage===&lt;br /&gt;
Découvrez les conseils pour [[Apprentissage|mieux utiliser votre clavier]] : comment positionner ses doigts, où faut-il regarder…&lt;br /&gt;
&lt;br /&gt;
N&#039;hésitez pas à télécharger, imprimer (et même distribuer) notre [http://download.tuxfamily.org/dvorak/documents/bepo_aide-memoire.pdf aide-mémoire]. Pliez-le en trois, et posez-le sur votre bureau, devant votre écran. Vous pourrez vous y référer pour savoir où appuyer sans déplacer vos mains.&lt;br /&gt;
&lt;br /&gt;
Nous vous proposons des [[Exercices|exercices]] d&#039;apprentissage. Comme les exercices « traditionnels » de l&#039;azerty, il faudra commencer par les  lettres de la rangée de base, mais vous verrez tout de suite les avantages du bépo : les 8 lettres placées sous les doigts au repos vous permettent déjà de taper des phrases telles que « une eau saine et sans nitrates rassure » plutôt que des groupes de lettres du style « dfdf jljl ».&lt;br /&gt;
&lt;br /&gt;
Certains logiciels d&#039;apprentissage pourront vous être utiles. (à compléter).&lt;br /&gt;
&lt;br /&gt;
{{note|type=note|Le [[Manuel|manuel d&#039;utilisation]], sur le [[Manuel|wiki en version complète]], et [http://download.tuxfamily.org/dvorak/documents/bepo_aide-memoire.pdf en résumé dans l&#039;aide-mémoire]  passe en revue les caractères disponibles sur le clavier, et donne quelques conseils de typographie française.}}&lt;br /&gt;
&lt;br /&gt;
=== Mieux utiliser vos logiciels ===&lt;br /&gt;
Certains programmes nécessitent l&#039;utilisation intensive de raccourcis claviers. Ils sont étroitement liés à la position des lettres sur le clavier, le bépo chamboule vos habitudes. Pour vous aidez, la communauté est passée par là !&lt;br /&gt;
* Adaptez votre bureau :&lt;br /&gt;
** [[Utilisation_avec_Gnome|Gnome]] ;&lt;br /&gt;
** [[Utilisation_avec_KDE|KDE]] ;&lt;br /&gt;
** [[Awesome]].&lt;br /&gt;
&lt;br /&gt;
* Arrêtez le copier-coller à la souris:&lt;br /&gt;
**passez à la ligne de commande avec [[Xclip]]&lt;br /&gt;
**coller des données sur [http://pastealacon.com pastealacon.com] en ligne de commande: [[Utilisateur:Legrostdg/Pastealacon|Script pastealacon.pl]].&lt;br /&gt;
* Réglez votre terminal virtuel: [[URxvt]].&lt;br /&gt;
* Personnalisez l&#039;éditeur [[Less]] (il sert entre autre à afficher les pages de manuel sous unix).&lt;br /&gt;
* Adaptez l&#039;éditeur de texte [[Vim]].&lt;br /&gt;
* Naviguez dans Firefox aussi facilement que dans Vim grâce à [[Vimperator]].&lt;br /&gt;
* Facilitez l&#039;usage de [[Usage_dans_Latex|Latex]].&lt;br /&gt;
* Utilisez au mieux le clavier dans [[Irssi]] pour vos conversations IRC.&lt;br /&gt;
&lt;br /&gt;
===Un clavier qui vous ressemble encore plus===&lt;br /&gt;
Maintenant que vous avez pris goût à une disposition ergonomique, vous vous prenez à rêver d&#039;un clavier qui vous ressemble ? La page « [[Trucs et astuces|Trucs et Astuces]] » liste les personnalisations déjà effectuées par certains membres du projet.&lt;br /&gt;
&lt;br /&gt;
===Rien compris ?===&lt;br /&gt;
Vous ne comprenez pas les termes employés sur le wiki ? Le [[glossaire]] est fait pour vous !&lt;br /&gt;
&lt;br /&gt;
Vous avez encore des problèmes, quelque chose vous a échappé ?&lt;br /&gt;
Peut-être trouverez-vous votre bonheur dans la [[foire aux questions]].&lt;br /&gt;
&lt;br /&gt;
Vos problèmes restent insolubles ? Ne perdez pas espoir ! Vous pouvez contacter d&#039;autres utilisateurs sur le canal [[IRC]] ou la [[liste de diffusion]], ils se feront un plaisir de vous aider.&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg/Pastealacon&amp;diff=13093</id>
		<title>Utilisateur:Legrostdg/Pastealacon</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Utilisateur:Legrostdg/Pastealacon&amp;diff=13093"/>
		<updated>2009-03-16T02:05:12Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : Page créée avec « Ce script permet de ne pas reprendre la souris pour coller des données sur le site [http://pastealacon.com pastealacon.com].  Il prend le texte à coller sur l&amp;#039;entrée stand... »&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ce script permet de ne pas reprendre la souris pour coller des données sur le site [http://pastealacon.com pastealacon.com].&lt;br /&gt;
&lt;br /&gt;
Il prend le texte à coller sur l&#039;entrée standard et il renvoie l&#039;url associée. Il colle aussi cette url dans le buffer du clic scroll à l&#039;aide de xclip.&lt;br /&gt;
&lt;br /&gt;
On peut ainsi retrouver l&#039;url à l&#039;aide de &amp;quot;xclip -o&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Il nécessite perl, le module perl WWW::Mechanize et xclip&lt;br /&gt;
&lt;br /&gt;
Les options disponibles sont:&lt;br /&gt;
*-nick (votre pseudo (Anonymous par défaut, éventuellement à adapter dans le script))&lt;br /&gt;
*-lang (le langage dans lequel sont codées les lignes que vous avez &amp;quot;pastées&amp;quot; (défaut: texte): utile pour la coloration syntaxique)&lt;br /&gt;
&lt;br /&gt;
voir la liste des languages de programmation supportés par [http://pastealacon.com pastealacon.com].&lt;br /&gt;
&lt;br /&gt;
en général il vous faut noter le nom du langage sans espace et en minuscule.&lt;br /&gt;
&lt;br /&gt;
*-time (durée de vie du &amp;quot;paste&amp;quot;: d = un jour (défaut), m = un mois, f = à jamais)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;xkb&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
#!/usr/bin/perl -w&lt;br /&gt;
# Faire des pastes en ligne de commande sur pastealacon.com.&lt;br /&gt;
# Colle l&#039;entrée standard sur pastealacon.com, renvoie l&#039;url&lt;br /&gt;
# et la met dans le buffer du clic scroll.&lt;br /&gt;
&lt;br /&gt;
my $url = &amp;quot;http://pastealacon.com/&amp;quot;;&lt;br /&gt;
my $nick = &amp;quot;Anonymous&amp;quot;;&lt;br /&gt;
my $format = &amp;quot;text&amp;quot;;&lt;br /&gt;
my $time = &amp;quot;d&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
use WWW::Mechanize;&lt;br /&gt;
use Getopt::Long;&lt;br /&gt;
&lt;br /&gt;
my %CONF = (&lt;br /&gt;
  lang     =&amp;gt; $format,&lt;br /&gt;
  nick     =&amp;gt; $nick,&lt;br /&gt;
  time     =&amp;gt; $time,&lt;br /&gt;
  text     =&amp;gt; &#039;&#039;,&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
GetOptions( \%CONF, &amp;quot;lang=s&amp;quot;, &amp;quot;nick=s&amp;quot;, &amp;quot;time=s&amp;quot;, &amp;quot;text=s&amp;quot; )&lt;br /&gt;
  or die &amp;quot;Bad Options.&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
my $m = WWW::Mechanize-&amp;gt;new;&lt;br /&gt;
$m-&amp;gt;get($url);&lt;br /&gt;
die $m-&amp;gt;res-&amp;gt;status_line unless $m-&amp;gt;success;&lt;br /&gt;
&lt;br /&gt;
unless ( $CONF{text} ) {&lt;br /&gt;
  $CONF{text} = join &amp;quot;&amp;quot;, &amp;lt;&amp;gt;;&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
$m-&amp;gt;set_fields(&lt;br /&gt;
  format    =&amp;gt; $CONF{lang},&lt;br /&gt;
  code2     =&amp;gt; $CONF{text},&lt;br /&gt;
  poster    =&amp;gt; $CONF{nick},&lt;br /&gt;
  expiry    =&amp;gt; $CONF{time},&lt;br /&gt;
);&lt;br /&gt;
$m-&amp;gt;click;&lt;br /&gt;
die $m-&amp;gt;res-&amp;gt;status_line unless $m-&amp;gt;success;&lt;br /&gt;
my $response = $m-&amp;gt;response-&amp;gt;request-&amp;gt;uri-&amp;gt;as_string;&lt;br /&gt;
system( &amp;quot;echo $response | xclip -i&amp;quot; );&lt;br /&gt;
print $response, &amp;quot;\n&amp;quot;;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
	<entry>
		<id>https://bepo.fr/wiki/index.php?title=Xclip&amp;diff=13092</id>
		<title>Xclip</title>
		<link rel="alternate" type="text/html" href="https://bepo.fr/wiki/index.php?title=Xclip&amp;diff=13092"/>
		<updated>2009-03-15T19:09:24Z</updated>

		<summary type="html">&lt;p&gt;Legrostdg : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;xclip est un petit programme en ligne de commande qui vous permet de jouer avec le buffer de copie du clic scroll (et donc de laisser de côté votre souris).&lt;br /&gt;
&lt;br /&gt;
L&#039;utilisation basique est très simple:&lt;br /&gt;
*&amp;quot;xclip -i&amp;quot; ou tout simplement &amp;quot;xclip&amp;quot; colle l&#039;entrée standard dans le buffer de copie.&lt;br /&gt;
*&amp;quot;xclip -o&amp;quot; colle le contenu du buffer de copie sur la sortie standard.&lt;br /&gt;
&lt;br /&gt;
Exemple:&lt;br /&gt;
 toto@charcuterie ~% ls | xclip&lt;br /&gt;
 toto@charcuterie ~% xclip -o&lt;br /&gt;
  bepo.xkb&lt;br /&gt;
  Desktop/&lt;br /&gt;
  Musique/&lt;br /&gt;
  Toto_chez_sa_mémé/&lt;br /&gt;
  Toto_doit_acheter_du_boudin.txt&lt;br /&gt;
&lt;br /&gt;
Parenthèse pour vous montrer la puissance de la ligne de commande face à la souris:&lt;br /&gt;
On peut par exemple s&#039;amuser à éditer le contenu du buffer.&lt;br /&gt;
Exemple:&lt;br /&gt;
 meme@charcuterie ~% xclip -o&lt;br /&gt;
  n&#039;oublie pas d&#039;acheter du boudin, toto.&lt;br /&gt;
 meme@charcuterie ~% xclip -o | tr a-z A-Z | xclip -i&lt;br /&gt;
 meme@charcuterie ~% xclip -o&lt;br /&gt;
  N&#039;OUBLIE PAS D&#039;ACHETER DU BOUDIN, TOTO.&lt;/div&gt;</summary>
		<author><name>Legrostdg</name></author>
	</entry>
</feed>