Utilisateur:Kaze/CapsLock
CapsLock saymal. Quelques idées pour utiliser cette touche à autre chose.
Ctrl
Très utilisé par les Emacsiens, c'est aussi l'usage recommandé par CapsOff.org. Mais c'est une mauvaise idée dans la mesure où cette touche n'est pas mappée physiquement pour fonctionner comme une touche modificatrice : sur la plupart des claviers, cela causera des problème de touches fantômes, i.e. des raccourcis en Ctrl+Shift+lettre ou Ctrl+Alt+lettre qui ne fonctionneront pas.
Escape
On peut intervertir Escape et CapsLock pour différentes raisons :
- symétriser Escape et Entrée pour les applications graphiques : annuler = à gauche, valider = à droite
- Vim
BackSpace
C'est déjà ce qui est fait dans la disposition Colemak. Très confortable.
AltGr
Utiliser le CapsLock comme AltGr ne symétrise pas complètement AltGr, puisqu'il est sur l'auriculaire à gauche et sur le pouce à droite. Par contre, ça peut être très utile pour utiliser un pavé numérique virtuel sous [789] en couche AltGr, comme avec [Fn] sur les portables. Ça a le mérite de placer 0 et 1 sur des touches faciles d'accès ; c'est d'autant plus appréciable en Bépo, où les chiffres ne sont pas disponibles en accès direct.
Par contre, on perd complètement la fonction CapsLock. Il est peut-être possible de faire un [AltGr]+[Caps] pour implémenter CapsLock.
Chiffres en direct
La question des chiffres en direct est un débat récurrent du Bépo. On pourrait utiliser la touche CapsLock de la façon suivante :
- CapsLock On => chiffres en accès direct
- CapsLock Off => chiffres sur la couche Maj
ou même :
- CapsLock On => littéraire (apostrophe courbe, guillemets typographiques en direct)
- CapsLock Off => technique (apostrophe droite, crochets <> en direct)
…et dans tous les cas, CapsLock ne sert plus à mettre quoi que ce soit en majuscules — sauf à implémenter CapsLock en [AltGr]+[Caps] (si c'est possible).
Utiliser CapsLock pour passer les chiffres en direct est relativement aisé pour Xorg, voir ce fichier xkb pour l'exemple (version 0.6.6 modifiée) :
key <TLDE> { type[group1] = "FOUR_LEVEL" , [ dollar , numbersign , section , paragraph ] }; // $ # § ¶ key <AE01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ quotedbl , 1 , at , doublelowquotemark ] }; // " 1 @ „ key <AE02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ less , 2 , guillemotleft , leftdoublequotemark ] }; // < 2 « “ key <AE03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ guillemotright , 3 , greater , rightdoublequotemark ] }; // > 3 » ” key <AE04> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ parenleft , 4 , bracketleft , leftsinglequotemark ] }; // ( 4 [ ‘ key <AE05> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ parenright , 5 , bracketright , rightsinglequotemark ] }; // ) 5 ] ’ key <AE06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ emdash , 6 , endash , notsign ] }; // — 6 – ¬ key <AE07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ plus , 7 , plusminus , degree ] }; // + 7 ± ° key <AE08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ minus , 8 , notsign , minutes ] }; // - 8 – ′ key <AE09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ slash , 9 , division , seconds ] }; // / 9 ÷ ″ key <AE10> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ asterisk , 0 , multiply , VoidSymbol ] }; // * 0 × key <AE11> { type[group1] = "THREE_LEVEL" , [ equal , asciicircum , notequal ] }; // = ^ ≠ key <AE12> { type[group1] = "THREE_LEVEL" , [ percent , grave , U2030 ] }; // % ` ‰ key <AD01> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ b , B , bar , brokenbar , b , B ] }; // b B | ¦ key <AD02> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ eacute , Eacute , dead_acute , dead_doubleacute , eacute , Eacute ] }; // é É ´ ” key <AD03> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ p , P , ampersand , VoidSymbol , p , P ] }; // p P & key <AD04> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ o , O , oe , OE , o , O ] }; // o O œ Œ key <AD05> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ egrave , Egrave , dead_grave , grave , egrave , Egrave ] }; // è È ` ` key <AD06> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ dead_circumflex, exclam , dead_caron , exclamdown , dead_circumflex , exclam ] }; // ^ ! ˇ ¡ key <AD07> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ v , V , VoidSymbol , VoidSymbol , v , V ] }; // v V key <AD08> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ d , D , eth , ETH , d , D ] }; // d D ð Ð key <AD09> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ l , L , UFE63 , VoidSymbol , l , L ] }; // l L / key <AD10> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ j , J , U0133 , U0132 , j , J ] }; // j J ij IJ key <AD11> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ z , Z , schwa , SCHWA , z , Z ] }; // z Z ə Ə key <AD12> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ w , W , dead_breve , VoidSymbol , w , W ] }; // w W ˘ key <AC01> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ a , A , ae , AE , a , A ] }; // a A æ Æ key <AC02> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ u , U , ugrave , Ugrave , u , U ] }; // u U ù Ù key <AC03> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ i , I , dead_diaeresis , dead_abovedot , i , I ] }; // i I ¨ ˙ key <AC04> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ e , E , EuroSign , UFDD1 , e , E ] }; // e E € ¤ key <AC05> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ comma , semicolon , ccedilla , Ccedilla , comma , semicolon ] }; // , ; ç Ç key <AC06> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ c , C , copyright , VoidSymbol , c , C ] }; // c C © key <AC07> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ t , T , thorn , THORN , t , T ] }; // t T þ Þ key <AC08> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ s , S , ssharp , U017F , s , S ] }; // s S ß ſ key <AC09> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ r , R , registered , trademark , r , R ] }; // r R ® key <AC10> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ n , N , ntilde , Ntilde , n , N ] }; // n N ñ Ñ key <AC11> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ m , M , dead_macron , masculine , m , M ] }; // m M ¯ º key <BKSL> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ ccedilla , Ccedilla , dead_cedilla , VoidSymbol , ccedilla , Ccedilla ] }; // ç Ç ¸ key <LSGT> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ ecircumflex , Ecircumflex , slash , VoidSymbol , ecircumflex , Ecircumflex ] }; // ê Ê / key <AB01> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ x , X , backslash , VoidSymbol , x , X ] }; // x X \ key <AB02> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ y , Y , braceleft , leftsinglequotemark , y , Y ] }; // y Y { ‘ key <AB03> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ agrave , Agrave , braceright , rightsinglequotemark , agrave , Agrave ] }; // à À } ’ key <AB04> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ period , colon , ellipsis , periodcentered , period , colon ] }; // . : … · key <AB05> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ k , K , asciitilde , dead_tilde , k , K ] }; // k K ~ ~ key <AB06> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ apostrophe , question , cent , questiondown , apostrophe , question ] }; // ' ? ¢ ¿ key <AB07> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ q , Q , dead_abovering , VoidSymbol , q , Q ] }; // q Q ° key <AB08> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ g , G , mu , VoidSymbol , g , G ] }; // g G µ key <AB09> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ h , H , dagger , doubledagger , h , H ] }; // h H † ‡ key <AB10> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [ f , F , dead_ogonek , ordfeminine , f , F ] }; // f F ? ª key <SPCE> { type[group1] = "FOUR_LEVEL" , [ space, nobreakspace, underscore, U202F ] }; include "level3(ralt_switch)"
Par contre, je ne sais pas si c'est faisable sous Windows et MacOS.