Question

Je connais la combinaison Ctrl + A pour aller au début de la commande en cours et Ctrl + E pour sauter à la fin.

Mais existe-t-il un moyen de passer mot à mot, comme Alt + & # 8592; / & # 8594; dans les applications Cocoa fait?

Était-ce utile?

La solution

Hors de la boîte, vous pouvez utiliser le très bizarre Echap + F pour vous déplacer au début du mot suivant et Echap + < kbd> B pour aller au début du mot actuel.

Autres conseils

Sous Mac OS X - les raccourcis clavier suivants fonctionnent par défaut. Notez que vous devez faire en sorte que la Option touche la touche Méta dans les préférences du terminal (sous l'onglet Clavier)

.
  • alt (?) + F pour sauter F par un mot
  • alt (?) + B pour sauter B par un mot

J'ai constaté que les raccourcis clavier par défaut emacs pour la navigation simple semblent fonctionner avec les shells bash. Vous pouvez utiliser

  • alt (?) + D pour supprimer un mot à partir de la position actuelle du curseur
  • ctrl + A pour sauter au début de la ligne
  • ctrl + E pour sauter à la fin de la ligne
  • ctrl + K pour supprimer la ligne à partir de la position du curseur
  • ctrl + Y pour coller du texte à partir du tampon de suppression
  • ctrl + R pour inverser la recherche des commandes que vous avez saisies dans le passé à partir de votre historique
  • ctrl + S pour transférer la recherche (fonctionne en zsh pour moi mais pas en bash)
  • ctrl + F pour avancer d'un caractère
  • ctrl + B pour reculer d'un caractère
  • ctrl + W pour supprimer le mot en arrière de la position du curseur

Voici comment vous pouvez le faire

Par défaut, le terminal utilise ces raccourcis pour déplacer (gauche et droite) mot à mot:

  • échap + B (gauche)
  • échap + F (droite)

Vous pouvez configurer alt + & # 8592; et & # 8594; pour générer ces séquences pour vous:

  • Préférences du terminal ouvert ( cmd + , );
  • Dans l'onglet Paramètres, sélectionnez Clavier et double-cliquez sur & # 8997; & # 8592; s'il est présent ou ajoutez-le s'il ne l'est pas.
  • Définissez le modificateur comme vous le souhaitez et tapez le raccourci clavier dans la zone: echa + B , générant le texte \ 033b (vous ne peut pas taper ce texte manuellement).
  • Répéter pour mot-droit ( échap + F devient \ 033f )

Vous pouvez également vous référer à ce blog sur textmate:

http://blog.macromates.com/2006/word-movement -in-terminal /

Passez à iTerm2 . C'est gratuit et beaucoup plus agréable qu'un simple vieux terminal. En outre, il offre beaucoup plus d'options de personnalisation, telles que les raccourcis clavier.

J'aime aussi pouvoir utiliser cmd et 1-9 pour basculer entre les onglets. Essayez-le et vous ne retournerez jamais au terminal habituel:)

Comment configurer les préférences de clavier personnalisées dans iterm2

  • Installer iTerm2
  • Lancez puis accédez au volet des préférences.
  • Choisissez l'onglet Profils de clavier
  • Vous devrez soit copier le profil dans quelque chose de nouveau, puis supprimer les raccourcis clavier tels que ^ + Droite / Gauche ou si vous ne vous souciez pas d'une sauvegarde, supprimez-la simplement du profil par défaut.
  • Assurez-vous ensuite que votre profil modifié est sélectionné (suivi)

 Picture 1.png

  • Choisissez maintenant l'onglet du clavier (rangée très supérieure)

 iTerm 2

  • Cliquez sur le bouton plus pour ajouter un nouveau raccourci clavier
  • Dans la première case, tapez CMD + Flèche gauche
  • Dans la deuxième zone, choisissez "envoyer le code d'échappement"
  • .
  • Dans la troisième case, tapez la lettre B

 Picture 2.png

  • Répétez avec les combinaisons de touches souhaitées. escape + B déplace un mot à gauche, escape + f déplace un mot à droite.
  • vous pouvez également configurer cmd + d pour supprimer le mot situé devant le curseur avec échappement + d

Je clique souvent sur le mauvais bouton ( cmd / contrôle / alt ) avec les combinaisons de touches de direction suivantes: ces boutons sont tous configurés pour sauter en avant et en arrière, mais faites ce qui vous convient le mieux.

En fait, il existe une bien meilleure approche. Tenez option ( alt sur certains claviers) et appuyez sur les touches fléchées gauche ou droite pour vous déplacer par mot. Aussi simple que cela.

option & # 8592;
option & # 8594;

De plus, ctrl e vous mènera à la fin de la ligne et ctrl a vous mènera à le début.

J'ai Alt + ? / ? en marche: ouvrez Préférences »Paramètres» Clavier , définissez l'entrée pour option curseur gauche à envoyer une chaîne au shell: \ 033b et définir option curseur à droite sur envoyer une chaîne au shell: \ 033f . Vous pouvez également l'utiliser pour d'autres combinaisons de touches de contrôle.

En fait, cela dépend du shell que vous utilisez. Cependant, la plupart des shell ont des liaisons similaires. Les liaisons auxquelles vous faites référence (par exemple, Ctrl + A et Ctrl + E ) sont des liaisons que vous trouverez dans de nombreux autres programmes et qu'ils sont utilisés depuis très longtemps, BTW fonctionne également dans la plupart des applications d'interface utilisateur.

Voici un aperçu des liaisons par défaut pour Bash:

Principaux raccourcis clavier Bash

Notez également que vous pouvez les personnaliser. Vous devez créer un fichier, nommez-le à votre guise, j'ai nommé le mien .bash_key_bindings et je l'ai mis dans mon répertoire personnel. Là, vous pouvez définir des options générales bash et vous pouvez également définir des raccourcis clavier. Pour vous assurer qu'elles sont appliquées, vous devez modifier un fichier nommé ".bashrc" lu par bash au démarrage (vous devez le créer s'il n'existe pas) et procéder comme suit. appeler là:

bind -f ~/.bash_key_bindings

~ signifie répertoire de base en bash, comme indiqué ci-dessus, vous pouvez nommer le fichier comme bon vous semble et également le placer où bon vous semble, à condition de saisir le chemin correct + le nom à associer.

Laissez-moi vous montrer des extraits de mon fichier .bash_key_bindings:

set meta-flag on
set input-meta on
set output-meta on
set convert-meta off
set show-all-if-ambiguous on
set bell-style none
set print-completions-horizontally off

Celles-ci ne définissent que quelques options (par exemple, désactivez la sonnerie; vous pourrez la consulter sur la page Web bash).

"A": self-insert
"B": self-insert
"C": self-insert
"D": self-insert
"E": self-insert
"F": self-insert
"G": self-insert
"H": self-insert
"I": self-insert
"J": self-insert

Celles-ci permettent de s’assurer que les caractères seuls ne font rien mais s’assurent que le caractère est "saisi". (ils s’insèrent dans la coque).

"\C-dW": kill-word
"\C-dL": kill-line
"\C-dw": backward-kill-word
"\C-dl": backward-kill-line
"\C-da": kill-line

C'est assez intéressant. Si je tape Ctrl + D seul (j'ai sélectionné d pour suppression), rien ne se passe. Mais si je tape ensuite une lettre minuscule w, le mot situé à gauche du curseur est supprimé. Si je tape une majuscule, cependant, le mot à la droite du curseur est tué. Il en va de même pour l et L en ce qui concerne la ligne entière à partir du curseur. Si je tape un "a", toute la ligne est supprimée (tout ce qui se trouve avant et après le curseur).

J'ai placé un mot en avant sur Ctrl + F et un mot en arrière sur Ctrl + B

"\C-f": forward-word
"\C-b": backward-word

Comme vous pouvez le voir, vous pouvez créer un raccourci menant immédiatement à une action, ou vous pouvez en créer une qui ne contient qu'une séquence de caractères et vous devez ensuite taper un (ou plusieurs) caractères pour provoquer l'action se déroule comme dans l'exemple ci-dessus.

Donc, si vous n'êtes pas satisfait des liaisons par défaut, n'hésitez pas à les personnaliser à votre guise. Voici un lien vers le manuel bash pour plus d'informations. informations.

Si vous êtes un utilisateur de Vim, vous pouvez essayer le mode vim de bash. Exécutez ceci ou mettez-le dans votre fichier ~ / .bashrc :

set -o vi

Par défaut, vous êtes en mode insertion. appuyez sur echap et vous pouvez vous déplacer comme vous pouvez le faire en mode normal Vim. Le mouvement par mot est donc w ou b , et le Les touches de déplacement habituelles fonctionnent également .

Si vous cochez Utiliser l'option en tant que clé méta dans l'onglet Clavier des préférences, les commandes de style emacs par défaut pour les mots avant et arrière et & # 8997; F ( Alt + F ) et & # 8997; B ( Alt + B ) respectivement.

Je vous recommande de lire De Bash à Z-Shell . Si vous souhaitez augmenter vos prouesses bash / zsh!

À partir de Mac OS X Lion 10.7, les cartes de terminal Option - Flèche gauche / droite à Échap - b / f par défaut, donc cela est maintenant intégré pour bash et les autres programmes qui utilisent ces raccourcis clavier compatibles avec emacs.

Dans Bash, ils sont liés à Esc - B et à Esc - F . Bash a beaucoup, beaucoup plus de raccourcis clavier; Regardez la sortie de bind -p pour voir ce qu’ils sont.

Sous iterm2 , Préférences > Profil > Touches , vous cliquez sur les + sous Mappages de touches et enregistrez un nouveau raccourci. Pour la Action , sélectionnez Envoyer une séquence d'échappement et tapez b ou f , respectivement pour aller et retour.

Lorsque j'ai essayé d'en enregistrer un pour ( Ctrl + & # 8592; ), j'ai remarqué dans le champ Raccourci clavier que la flèche jamais montré. Il s’est avéré que je devais désactiver les Préférences Système> du Mac par défaut. Clavier > Raccourcis > Mission Control lance d'abord les commandes pour que tout fonctionne, car elles remplacent les raccourcis par défaut d'iterm2. Cela devrait également être vrai pour l'application de terminal standard.

 Préférences système du clavier

Maintenez la touche Option enfoncée et cliquez à l'endroit où vous souhaitez que le curseur se déplace

Utiliser le préréglage Natural Text Editing !

 entrer la description de l'image ici

Fondamentalement, il lie, parmi d'autres séquences de touches, Option + LeftArrow à la séquence ^ [b et Option + RightArrow à ^ [f

Cela fonctionne dans fish and bash, ainsi que dans psql terminal.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top