web-dev-qa-db-fra.com

Terminal Mac OS X: Option de carte + supprimer pour "supprimer en arrière Word"

J'ai essayé de le mapper depuis Préférences -> Paramètres -> Clavier, mais la combo "clé" ne comporte que "supprimer en avant" mais pas "supprimer". Par contre, mon clavier n'a que "supprimer" et non "supprimer en avant"!

Existe-t-il un autre moyen de le faire, sauf dans les préférences?

207
ibz

Activer la clé d'option en tant que clé méta

  1. Allez à Terminal> Preferences> Profiles> Keyboard
  2. Vérifier Use option key as meta key.

Image

Sur macOS High Sierra 10.13.6, capturé le 23 octobre 2018.

Illustration of the window for toggling option key as meta key

Remarques

De nombreuses applications (y compris bash et tcsh) traitent méta-suppression comme "suppression arrière de Word".

372
Andru Luvisi

Le terminal d’OS X exécute bash, qui inclut le support readline. Suivez les conseils de Glomek et dites au terminal d’utiliser l’option comme clé méta (sinon utilisez Esc) et puis vous avez un tas d'options pratiques: Ctrl+w supprime prev Word (comme Meta + delete comme indiqué), mais vous pouvez également utiliser Meta + f et Meta + b pour avancer et revenir en arrière à travers des mots, Ctrl+a et Ctrl+e au début et à la fin de la ligne, Ctrl+k delete (kill) du curseur à la fin de la ligne, et un tas d'autres.

Voir http://www.bigsmoke.us/readline/shortcuts pour un joli petit tableau de référence.

67
nadafigment

Supprimer un mot en retour:

Ctrl-w.

52
Shai

Par défaut, meta backspace effectue un tirage en arrière dans la plupart des shells. Si vous appuyez sur échappement puis sur retour arrière, cela fonctionne presque partout.

22
Dustin

⌃W (control + W) n’est pas la même chose que meta + delete (ESC + delete si vous n’avez pas coché l’option d’utilisation en tant que clé méta) meta + delete traitera / _ comme délimiteur de mots où ^W considérera l’espace comme un délimiteur.

par exemple. en utilisant ESC + Bakcspace sur (curseur à la fin)

rm /dira/dirb/file1

donne

rm /dira/dirb/

tandis que ^ W sur le même donnera

rm

Il est donc préférable d'utiliser\033\177 plutôt que ^ W lors de la définition de la modification du profil du terminal. De cette façon, vous mappez vraiment "à ce que fait" escut et vous continuez d'avoir ^ W pour effacer Word en fonction du délimiteur d'espace.

J'aimerais pouvoir publier une image sur la façon de procéder, mais en tant que débutant, je ne le peux pas.

reportez-vous au commentaire bouke pour savoir comment modifier le profil du terminal.

15
Stephane Gasparini

Dans le profil de votre terminal, vous pouvez associer (option + suppression) à ⌃W (contrôle + W), afin que cela fonctionne de manière similaire aux autres applications.

Terminal Profile Keyboard settings

13
Bouke

Vous voudrez peut-être aussi essayer iTerm , il offre un contrôle plus précis des associations de touches.

2
csexton