6 votes

Faire en sorte que Ctrl-k dans le terminal copie dans le presse-papiers du système

J'aimerais que ce que j'ai "coupé" en dernier avec Ctrl-k dans Terminal soit disponible dans mon éditeur de texte lorsque j'appuie sur Cmd-v. Est-ce possible ? Ou quelque chose d'approchant ?

Mise à jour avec des explications supplémentaires : Ctrl-k est par défaut dans Terminal "supprimer jusqu'à la fin de la ligne". En plus d'effacer, il place le texte effacé dans le presse-papiers du terminal (emacs "kill ring") et il peut être récupéré avec Ctrl-y. Il s'agit essentiellement d'un second presse-papiers séparé du presse-papiers du système. Je veux utiliser le même presse-papiers pour le Terminal et pour le reste du système comme mon éditeur de texte.

3voto

Khb Points 1002

Il existe une solution très simple si vous souhaitez étendre les fonctionnalités de votre shell. (Bien qu'il soit assez cool de voir la solution de l'automate)

Si vous utilisez zsh, l'interpréteur de commandes par défaut de MacOS, il vous suffit d'ajouter ceci à votre fichier ~/.zshrc profil.

pb-kill-line () {
  zle kill-line   # `kill-line` is the default ctrl+k binding
  echo -n $CUTBUFFER | pbcopy
}

zle -N pb-kill-line  # register our new function

bindkey '^K' pb-kill-line  # change the ctrl+k binding to use our new function

Tout ce que cela fait, c'est d'envelopper le Ctrl + k de sorte qu'en plus de son comportement par défaut ( kill-line ), il copie également le texte concerné dans le presse-papiers du système. Le mystérieux $CUTBUFFER contient le texte qui vient d'être coupé, et le fichier MacOS pbcopy place tout ce qu'il reçoit de STDIN dans le presse-papiers du système.

Cette solution a été en grande partie copiée à partir de https://gist.github.com/welldan97/5127861 ! Mon seul contenu original est l'explication :-)

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X