web-dev-qa-db-fra.com

Comment utiliser les touches CTRL et CMD sur Apple Keyboard?

Je suis très habitué à Emacs-like ctrl+a signifier "maison" et cmd+a signifie "tout sélectionner". De même ctrl+e j'envoie", ctrl+d est "supprimer", ctrl+c fait ce que j'attends dans Terminal, et probablement quelques autres nécessités que je n'ai pas sous la main.

Bien sûr, Ubuntu est un peu différent. le ctrl la clé est fonctionnellement la plus associée au cmd touche, même si dans la disposition du clavier physique la cmd la clé va se lier à super.

Donc, ma première étape a été simplement d'échanger cmd et ctrl en éditant xkb puisque cela restaure 70% des fonctionnalités qui me manquent.

Cela laisse la plupart du temps début/fin/suppression et la fonctionnalité de "contrôle" associée au Mac, mais je ne connais pas le bon moyen de scinder la fonctionnalité ou de déplacer une clé super obscure vers ctrl pour y parvenir. J'essaie de trouver une stratégie cohérente en général, mais les hacks sont une étape.

Ubuntu 14.04.

5
djechlin

Pour corriger votre comportement de terminal:

Un moyen simple de réaliser ce que vous essayez de faire est de modifier vos fichiers de configuration à domicile. Pour un terminal bash, vous cherchez à éditer votre readline config, qui serait votre .inputrc.

  1. Ouvrir un terminal
  2. man readline Ceci vous indique la plupart de vos options de personnalisation. Si vous faites défiler vers le bas, il vous montre comment le mode emacs est configuré. Plus à ce sujet ci-dessous.
  3. gedit .inputrc C'est ce que vous voulez éditer. Il est chargé à chaque fois que vous vous connectez et personnalisera votre comportement readline (ce que bash utilise pour la saisie).

Comment j'ai résolu un problème similaire.

Je devais faire quelque chose de similaire parce que j'utilise le mode Vi dans Bash:

set -o vi
  • J'utilise aussi Colemak.
  • Par la suite, j'utilise une version hautement personnalisée de Vim.

Ma configuration .vimrc n'affecte pas vi Mode pour bash (et ZSH d'ailleurs).

J'ai donc dû en créer un sur mesure, et c'était beaucoup de travail:

http://Bazaar.launchpad.net/~akiva/colemak.vim/trunk/view/head:/.inputrc

Vous pouvez utiliser mon code ici comme modèle pour travailler. J'ai toutes les fonctions là-bas. Ceux que je n'utilise pas sont commentés. Vous pouvez associer vos personnages à deux choses:

########
# Copy #
########
# Copy to
"c":    vi-yank-to 
# fake copy line
"C":    "0c$$"
  • vi-yank-to est une fonction intégrée
  • "0c$$" est une chaîne personnalisée (remarquez les guillemets qui l'entourent) qui me simule en appuyant sur 0, c, $, $ dans cet ordre.

Faites moi savoir si vous avez des questions.

1
Akiva