Transformer la ligne des nombres en ligne des symboles par défaut

12

En tant que programmeur, je me retrouve à taper des symboles beaucoup plus souvent que des chiffres. Il serait donc bien que la ligne des chiffres sur le clavier produise des symboles par défaut.

Le résultat final devrait être: 6produirait ^et Shift+ 6donnerait 6.

J'ai essayé de passer à Dvorak pendant un certain temps, mais la combinaison d'une courbe d'apprentissage abrupte et d'une échéance imminente n'en fait pas une solution attrayante.

Idéalement, j'aimerais aussi cela sur Windows, mais concentrons-nous sur Debian car c'est ma principale machine de développement.

D'après ce que je trouve sur le Web, la fonction de «verrouillage du décalage», activée en appuyant rapidement sur le bouton Shift, fait exactement cela sous Windows, mais je n'ai trouvé aucune référence * nix.

Edit: Idéalement, la solution ne devrait pas interférer avec les touches de ligne non numériques telles que, [mais si c'est le cas, je peux vivre avec (comme {c'est plus courant en C que [).

rath
la source

Réponses:

8

D'après votre question, je comprends que vous n'avez besoin que de certaines touches pour fonctionner exactement comme lorsque vous appuyez sur Maj et vice versa. Pour cela, vous pouvez créer votre propre disposition de clavier personnalisée. Pour cela, vous pouvez télécharger Microsoft Keyboard Layout Creator MSKLC , puis l'utiliser pour créer une disposition personnalisée pour votre système. De plus, après la création de la disposition personnalisée, il devrait vous demander d'installer la disposition créée, choisissez donc OUI pour accéder au dossier où se trouve le programme d'installation et installez votre disposition personnalisée. Vous devez également redémarrer votre système après avoir créé votre disposition personnalisée. Après cela, il vous suffit de l'activer à partir du panneau de configuration.

Allez à (pour Windows 8)

  1. Appuyez sur le bouton Windows + I (pour ouvrir le menu Paramètres Charms)
  2. Cliquez sur le bouton Clavier (coin inférieur droit)
  3. Vous devriez voir votre mise en page personnalisée
  4. Sélectionnez-le
  5. Et maintenant, votre mise en page personnalisée sera activée

Aussi Pour un tutoriel complet sur MSKLC, vous pouvez l'obtenir ici et ici . Voir les deux tuts en cas de problème.

chasseur
la source
1
La question concerne Debian.
harrymc
@harrymc Eh bien, oui et non. "Idéalement, j'aimerais aussi cela sur Windows, mais concentrons-nous sur Debian car c'est ma principale machine de développement." La réponse n'est donc pas exactement invalide dans le contexte de la question.
un CVn du
Eh bien, je suppose que j'aurais dû spécifier Windows 7 car je ne possède pas de machine Win8. Une réponse valable néanmoins.
Rath
@rath n'a pas besoin de s'inquiéter, je mettrais les détails pour gagner 7 en cours d'exécution sur une boîte virtuelle.
Hunter
@rath Voici les détails pour le faire dans W7. Reportez-vous à ces liens: - support.microsoft.com/kb/258824 , support.microsoft.com/kb/306560 et sevenforums.com/tutorials/86239-keyboard-layout-change.html . Vérifiez également que lorsque vous ajoutez une disposition de clavier personnalisée (ou des dispositions supplémentaires fournies par Windows) seulement alors (lorsque vous avez plus d'une disposition de clavier activée), vous pourrez voir la barre de langue (dans la barre des tâches, tout comme Windows 8 sauf est dans le menu des charmes).
Hunter
5

Du fil Inverser le rôle d'appuyer sur shift + numéro vient ce fichier xmodmap:

keycode  10 = exclam 1 exclam 1
keycode  11 = at 2 at 2
keycode  12 = numbersign 3 numbersign 3
keycode  13 = dollar 4 dollar 4
keycode  14 = percent 5 percent 5
keycode  15 = asciicircum 6 asciicircum 6
keycode  16 = ampersand 7 ampersand 7
keycode  17 = asterisk 8 asterisk 8
keycode  18 = parenleft 9 parenleft 9
keycode  19 = parenright 0 parenright 0

Voir le lien ci-dessus pour plus d'informations sur l'utilisation de ce fichier.

harrymc
la source
2

Vous pouvez utiliser soit dumpkeyset loadkeys(pour la console) ou xmodmap(pour X) pour redéfinir la fonction d'une touche de clavier donnée. xevpeut vous dire comment X voit une entrée clé particulière.

Je vous recommande d'imprimer d'abord l'ensemble complet des expressions de mappage de touches; il est possible que votre système soit configuré légèrement différemment pour commencer, auquel cas ce qui précède ne correspondra pas exactement. Pour ce faire, il suffit de faire xmodmap -pke(pour imprimer la table des images clés en tant qu'expressions).

À titre d'exemple, remapper 1à !et Shift+ 1à 1X, nous avons d' abord l' utilisation xev pour savoir qui 1est keycode 10 (dans mon cas, assurez - vous de vérifier). Pour remapper la touche pour inverser sa fonction décalée:

xmodmap -e 'keycode 10 = exclam 1 exclam 1 exclamdown onesuperior exclamdown'

Pour restaurer un fonctionnement normal (cela correspond à ce qui est imprimé par xmodmap -pke):

xmodmap -e 'keycode 10 = 1 exclam 1 exclam exclamdown onesuperior exclamdown'

Les modifications prennent effet immédiatement et affectent au moins la session X entière (elles ne sont pas locales à l'application qui lance xmodmap).

Une fois que vous disposez d'un ensemble de commandes xmodmap qui configure le clavier comme vous le souhaitez, stockez-les dans ~ / .xmodmaprc, puis ajoutez-les à votre ~ / .xsessionrc (en le créant s'il n'existe pas):

xmodmap ~/.xmodmaprc

La partie que vous souhaitez ajouter à .xmodmaprc est simplement la keycode XX = yyy ...partie de la commande de ligne de commande (c'est-à-dire l'argument du -ecommutateur).

un CVn
la source