Raccourci du terminal OS X: Aller au début / à la fin de la ligne

115

Je sais que je peux sauter au début et à la fin d'une ligne à l'intérieur du terminal OS X avec Ctrl+ Aet Ctrl+ E. Mais j'ai tellement l'habitude de sauter avec Cmd+ Rightflèche et Cmd+ Leftflèche depuis mon éditeur, que j'aimerais utiliser ces raccourcis également pour le terminal.

Je n'ai pas trouvé de solution sur google, alors peut-être que quelqu'un peut vous aider ici.

Mettre à jour

Comme dans les commentaires, j'ai essayé la solution de Y a-t-il un moyen dans le terminal OS X de déplacer le curseur mot par mot?

Malheureusement, les paramètres du terminal ne semblent pas inclure en Cmdtant que touche de modification, comme vous pouvez le voir ici:

Touches de modification du terminal

23tux
la source
tu ne peux pas adapter ça ?
Thomas Ayoub
J'ai mis à jour ma question, voir ci
23tux
1
Hmmm, je ne pense pas. Je l'ai essayé, cela fonctionne avec Option + right-arrow, mais pas avecCmd + right-arrow
23tux
Tu as raison, ma faute, j'ai des jours difficiles sur un PC
Thomas Ayoub
Raccourcis plus utiles: stackoverflow.com/a/5542996
AT

Réponses:

23

J'utilise une application pratique appelée Karabiner pour ce faire, et bien d'autres choses. C'est gratuit et open source.

C'est un remappeur de clavier, avec de nombreux préréglages pratiques pour de nombreux remappages courants que les gens peuvent vouloir faire.

Comme vous pouvez le voir sur la capture d'écran, ce remappage est inclus en tant que préréglage dans Karabiner.

Capture d'écran des préférences de Karabiner montrant le préréglage pour mapper cmd + gauche / droite vers ctrl + a / e

J'espère que cela t'aides. Bon remappage!

Aaron Wallentine
la source
3
Attention, Karabiner ne fonctionne pas sur macOS Sierra pour le moment.
knuhol
Bon à savoir; Je n'ai pas mis à jour. Espérons que Karabiner sera mis à jour avant trop longtemps! :)
Aaron Wallentine
2
Maintenant, il prend en charge Sierra et même plus. Voici le lien vers certaines règles prédéfinies du site Web de Karabiner .
Java Xu
Dans le lien @ JavaXu dans le commentaire juste au-dessus de moi, recherchez pour Navigation in Terminal Appstrouver la règle que vous devez importer.
électrovir
126
fn + shift + leftArrow = goto beginning of line
fn + shift + rightArrow = goto end of line

ça marche pour moi

hygoh2k
la source
20
Je n'avais pas besoin de tenir la touche Maj. fn + leftArrawou fn + rightArrowtravaillé pour moi. Peut-être que ça aide!
Bharat Gupta
7
@BharatGupta fn + leftArrow fonctionne dans certaines applications de terminal (par exemple VI), mais ne fonctionne pas dans la ligne de commande du terminal.
hygoh2k
2
En utilisant iTerm2, fn + gauche et fn + droite fonctionnent sans décalage. Avec shift, ils ne fonctionnent pas. ctrl + a et ctrl + e fonctionnent également.
bhekman
1
Je suis un nouvel utilisateur de Mac et je suis dégoûté par la difficulté de tout sur Mac contre Windows! Le matériel est bon, mais le logiciel est horrible (c'est-à-dire pas convivial.)
doctorram
1
Si vous êtes nouveau sur Mac, pensez simple, car lorsque vous utilisez Windows à long terme, vous avez l'habitude de toujours utiliser un chemin compliqué ... avec Mac, vous devez penser très simple ... et la plupart du temps, vous l'avez. C'était comme ça pour moi quand je suis
passé
34

Dans le dernier Mac OS, vous pouvez utiliser shift+ homeou shift+end

elad argent
la source
16

Comme configuration dans le terminal en utilisant vi :

Le Homebouton sur un Macbook Pro clavier: Fn + Left Arrow.

Le Endbouton sur un Macbook Pro clavier: Fn + Right Arrow.

Thinkhear
la source
9

Je ne sais pas si cela fonctionnera pour vous (j'utilise toujours OS 10.8), mais cela fonctionne pour mon terminal:

home = move cursor to the start of the line
shift+end = move cursor to the end of the line

alt+leftArrow = move one "word" to the left
alt+rightArrow = move one "word" to the right

J'espère que cela t'aides!

Boncrete
la source
1
Dans 10.12 Sierra, on dirait que c'est shift + home pour aller au début. les autres énumérés ici fonctionnent comme indiqué.
Chris
8

fn + leftArraw or fn + rightArrow travaillé pour moi!

Thanmayi Rapolu
la source
8

Pour iterm2:

Accédez à Profils / Profils ouverts / Clés

Définir Cmd + left_arrow_keypour envoyerHex Code 001

Définir Cmd + right_arrow_keypour envoyerHex Code 005

Cela vous permet d'utiliser Cmd + arrow_keyspour vous déplacer du début à la fin de la ligne.

Timmy Von Heiss
la source
selon le commentaire de @ bhekman: "En utilisant iTerm2, fn + gauche et fn + droite fonctionnent sans décalage. Avec shift, ils ne fonctionnent pas. ctrl + a et ctrl + e fonctionnent également."
Alexander Suraphel le
Je ne vois pas cmdcomme une option de touche de modification, comme dans la question initiale
électrovir
@electrovir, maintenez-le enfoncé et appuyez sur les touches fléchées
Timmy Von Heiss
Voir «Malheureusement, les paramètres du terminal ne semblent pas inclure Cmd comme touche de modification, comme vous pouvez le voir ici» dans la question d'origine. J'ai le même problème. Mon commentaire portait sur la création du paramètre clé, pas sur son exécution.
electrovir le
@electrovir, on dirait que vous êtes au mauvais endroit. il n'y a pas de modificateur. ouvrez iterm. aller aux préférences. aller aux profils. appuyez sur le bouton "+" à gauche de "Load Preset". Il existe deux champs: "Raccourci clavier" et "Action" pour la commande de raccourci clavier maintenez la touche fléchée gauche. puis pour l'action -> "envoyer le code hexadécimal -> 001"
Timmy Von Heiss
5

Ici, j'ai trouvé un ajustement pour cela, sans aucun outil tiers . Cela fera fonctionner le raccourci suivant:

 fn + right: to go to the end of the line.
 fn + left: to go to the beginning of the line.
  • Ouvrez les préférences du terminal. ( cmd + ,).
  • Accédez à votre thème sélectionné, puis à l'onglet clavier.

entrez la description de l'image ici

  • Et ajoutez une nouvelle entrée comme suit. entrez la description de l'image ici entrez la description de l'image ici

  • C'est tout. Maintenant fermez et vérifiez.

    J'espère que ça aide.

EDIT: Reportez-vous au commentaire de @Maurice Gilden ci-dessous pour plus d'informations.

Abhishek saharn
la source
5
Cela entrera simplement "001" ou "005". La barre oblique inverse est manquante et je n'ai trouvé aucun moyen de l'ajouter manuellement. Cependant, vous pouvez appuyer sur Ctrl + A pour "\ 001" et Ctrl + E pour "\ 005" dans la zone de texte.
Maurice Gilden
2
Cela devrait être la bonne réponse absolue. Toutes les applications tierces sont soit cassées, soit ne sont plus maintenues et fn + shift + leftArrow ne fonctionne plus sur Mojave.
Salyangoz
Cela a fonctionné à merveille. Cependant, j'ai sélectionné "Fin" plutôt que "Page suivante" pour le mappage fn + flèche droite.
nedblorf le
2

Vous pouvez télécharger Better Touch Tools . C'est une application qui vous permet de créer des raccourcis clavier et des raccourcis personnalisés sur l'ensemble de votre système ou sur des applications individuelles. En l'utilisant, vous pouvez créer un raccourci dans le terminal qui émule ctrl-a / ctrl-e chaque fois que vous appuyez sur cmd-gauche / cmd-droite, respectivement. Je le recommande vraiment! Je l'utilise depuis des années et j'ai plus de 50 raccourcis répartis sur plusieurs applications différentes.

Jacob
la source
2
Malheureusement, votre lien est rompu
23tux
Merci pour l'information! Je l'ai corrigé.
Jacob
Hey @Jacob quelle serait l '«action prédéfinie déclenchée» pour aller au début ou à la fin de la commande du terminal?
Oer le
Ou bien, vous devez utiliser l'option "Déclencher un autre raccourci clavier" et entrer Ctrl-A pour aller au début de la commande du terminal et Ctrl-E pour aller à la fin.
Jacob
1

dans iterm2

fn + leftArraw ou fn + rightArrow

cela a fonctionné pour moi

Ajith
la source
0

Pour les derniers mac os, les raccourcis ci-dessous fonctionnent pour moi.

Aller au début de la ligne == shift + fn + RightArrow

Aller à la fin de la ligne == shift + fn + LeftArrow

Tejas Niturkar
la source