Raccourci clavier pour coller la sélection principale

34

Existe-t-il un raccourci clavier standard ou conventionnel pour coller la sélection principale?

Je voudrais sélectionner du texte et aller dans une autre application pour coller sans le contenu de mon presse-papiers. Je préfère garder mes doigts sur le clavier plutôt que de me déplacer vers la souris, trouver le pointeur, le positionner où je veux et cliquer avec le bouton du milieu.

S'il n'y a rien de conventionnel, ou s'il est spécifique à l'application et qu'il n'est pas pris en charge par plusieurs, existe-t-il une solution pour que cela fonctionne globalement? (Ou au moins dans d'autres applications.)

    
posée Stefano Palazzo 16.10.2010 - 20:39
la source

6 réponses

27

L'envoi de touches virtuelles virtuelles ne fonctionne pas pour moi (voir commentaires ), mais cette réponse m'a incité à rechercher des solutions. L'envoi d'un événement "texte" avec xvkbd ignore l'état actuel de votre clavier physique:

sh -c 'xsel | xvkbd -xsendevent -file - 2>/dev/null'

xvkbd -text utilise quelques séquences de barre oblique inverse, donc plutôt que de danser avec un échappement, -file fonctionne. xvkbd affiche également un texte d'avertissement sur les modificateurs, mais il semble ne pas être pertinent pour cette utilisation (mais je ne voulais pas le voir dans ~/.xsession-errors ).

J'ai lié ceci à un raccourci utilisant System & gt; Préférences & gt; Raccourcis clavier .

Notez que vous devez installer les packages xsel et xvkbd:

sudo apt-get install xsel xvkbd
    
réponse donnée Roger Pate 16.10.2010 - 23:30
la source
5

Vous pouvez obtenir cela avec l'utilisation combinée des programmes xdotool ( cliquez pour installer ) et xsel ( cliquez pour installer ).

xdotool peut simuler la saisie dans une fenêtre; xsel affiche le contenu de la sélection PRIMARY (par défaut); la coquille suivante un paquebot fera l'affaire:

 xdotool type 'xsel'

Pour lier ceci à n'importe quelle clé en utilisant le System- & gt; Preferences- & gt; Keyboard élément de menu raccourcis il est nécessaire de l'envelopper dans une invocation de shell:

 sh -c 'xdotool type --clearmodifiers -- "'xsel'"'

La saisie de xdotool ne fonctionnera pas avec certains programmes; voir les notes dans la documentation de xdotool .

    
réponse donnée Riccardo Murri 16.10.2010 - 21:01
la source
4

Je cherchais une réponse à cette même question et j'ai trouvé cette réponse qui disait que Shift + Insert travaille pour coller la sélection primaire. Je travaille pour moi Plus simple.

    
réponse donnée Anne 05.10.2016 - 16:47
la source
2

L'appel de xdotool click --clearmodifiers 2 simule un clic sur le bouton central de la souris. Cela fonctionne beaucoup mieux que d'utiliser xsel (du moins pour moi). Bien que vous deviez positionner votre souris avant de taper ...

    
réponse donnée Robert Jakob 13.12.2013 - 18:18
la source
1

Autre suggestion de xdotool dans Debian Jessie 8.7 (janvier 2017):

xdotool click --delay 0 --clearmodifiers 2
  • xdotool gère les chaînes multi-octets (p.e. UTF-8), contrairement à xvkbd.
  • xdotool click simule un clic réel, vous n'avez donc pas à cliquer sur vous-même pour coller à la position de la souris, comme si vous utilisiez xdotool type ou xvkbd.

Le seul problème est que --clearmodifiers va "appuyer" sur tout modificateur (Ctrl / Alt / Shift / Meta) utilisé après avoir simulé le clic. Même avec --delay 0 (au lieu de 12ms), la commande prend un peu à exécuter. Si vous relâchez les touches avant qu'elles ne se terminent, vos modificateurs seront à nouveau "pressés" et bloqués jusqu'à ce que vous appuyiez et relâchiez la touche une fois de plus.

Donc, avec cela, vous devez être un peu "lent" (50ms?) pour libérer vos modificateurs, si vous en utilisez.

Vous pouvez tester cela en configurant votre raccourci clavier, en l'utilisant dans un éditeur de texte, puis en appuyant sur une touche (comme a ou une flèche). La lettre devrait apparaître en minuscule. Si quelque chose d'autre se produit, vous êtes trop rapide et un modificateur est bloqué (p.ex. s'il est en majuscule, Ctrl si vous avez sélectionné tout le texte, Alt si vous avez ouvert un menu). Appuyez et relâchez vos modificateurs à nouveau pour les réinitialiser.

Si vous êtes trop rapide, vous pouvez utiliser la suggestion d'ilkerk:

sh -c 'sleep 0.3 && xdotool type --clearmodifiers --delay 0  "'xsel'"'

Ensuite, vous devez les libérer dans moins que 300ms, et attendre une demi-seconde pour que le texte apparaisse.

En outre, l'utilisation de xdotool type signifie que vous insérez le texte comme si vous saisissiez, à la position du curseur de texte, et non le pointeur de la souris. Vous pouvez le changer en click si vous préférez le comportement de clic moyen habituel.

(a fait ce post pour que les nouveaux venus n’aient pas à repasser les pièces du puzzle dans les commentaires)

    
réponse donnée Chema 08.03.2017 - 21:43
la source
0
J'ai eu le même problème et la recherche sur Internet ne m'a pas beaucoup aidé. Le problème simulant le clic 2 est gênant comme mentionné.

Le problème avec les xdotool et xsel proposés ci-dessus est lorsque xdotool commence à "taper", vous appuyez toujours sur une autre touche. Cela ne se traduit pas toujours par une sortie. Par exemple, si vous le liez à la touche "insert", xdotool envoie les clés pendant que votre doigt appuie sur la touche "insert" qui ne cause rien.

Vous trouverez ci-dessous une solution de contournement pour le lier à une pression sur une touche:

sh -c 'sleep 0.3 && xdotool type --clearmodifiers --delay 0  "'xsel'"'

ce n'est pas parfait mais ça marche. Vous avez maintenant 0,3 seconde pour terminer votre sélection de touches (et de touches).

    
réponse donnée ilkerk 11.02.2016 - 18:04
la source

Lire d'autres questions sur les étiquettes