impossible de coller avec xclip en dehors du terminal

41

J'essaie de copier depuis le terminal avec xclip et de le coller dans l'environnement de bureau de l'unité dans l'éditeur de texte gedit. Je peux copier et coller avec xclip dans le terminal:

$ cat line-size.c | xclip
xclip -o > input5.txt
cat input5.txt
#include <stdio.h>
...

Cependant, lorsque j'appuie sur les touches Ctrl + V pour coller dans gedit, cela ne fait que coller la dernière chose que j'ai copiée dans le bureau de l'unité, telle que quelque chose du navigateur Firefox.

Comment puis-je coller dans une application graphique quelque chose que j'ai copié depuis un terminal?

JohnMerlino
la source

Réponses:

72

Je pense que c'est juste une question de comprendre les différents presse-papiers de sélection utilisés par l' xcliputilitaire

   -selection
          specify  which X selection to use, options are "primary" to use
          XA_PRIMARY (default), "secondary" for  XA_SECONDARY  or  "clip‐
          board" for XA_CLIPBOARD

Lorsque vous faites cat line-size.c | xcliple comportement par défaut est de copier dans le tampon de sélection X principal - pour coller à partir de ce tampon, vous devez utiliser un clic de souris à la place de la combinaison Ctrl+ v.

Pour copier dans le presse-papiers à la place, afin que vous puissiez coller avec Ctrl+ v, vous devrez faire

cat line-size.c | xclip -selection clipboard
Steeldriver
la source
1
Il est tout aussi facile de coller par piping to xclip sans arguments supplémentaires. Au lieu de Ctrl + v, utilisez simplement le clic du milieu.
TheBicentennialMan
Cela peut être changé enxclip < line-size.c -selection clipboard
JamesTheAwesomeDude
@SubhamoySengupta voir mon édition
kbtzr
5
L'instruction cat line-size.c | xclip -sel clipa le même résultat quecat line-size.c | xclip -selection clipboard
Geison Santos
Je ne peux pas imaginer que le cas d'utilisation par défaut xclipétait d'interagir avec autre chose que le Presse-papiers de l'utilisateur.
aaaaaa
6

Juste au cas où quelqu'un chercherait la version la plus courte sans utiliser d'alias. En utilisant something|xclip -se cplutôt que nu, something|xclipvous pouvez appuyer sur Ctrl + V / Ctrl + Maj + V et voir un résultat souhaité. Où something — cat somefile.txtpar exemple.

daGo
la source