Em algumas configurações padrão do linux, o Shift+ Insertexecutará um X-selection-paste. Como você observou, isso é distintamente diferente do X-clipboard-pastecomando, cuja ligação geralmente varia de acordo com o aplicativo. Se isso não funcionar, aqui estão algumas outras chaves para tentar:
Ctrl+V
Ctrl+ Shift+V
Ctrl+ Shift+Insert
Não vá? Seu ambiente de área de trabalho ou o Gerenciador de janelas provavelmente não os tem configurado, e é complicado porque - mesmo sob a bandeira de um DE ou WM - cada kit de ferramentas (por exemplo, GTK, Qt, Etc.) pode ter diferentes ligações padrão. Alguns programas (por exemplo gvim) têm até seus próprios registros de cópia internos que não são necessariamente sincronizados com o ambiente gráfico em que são executados. Para completar, mesmo quando um programa usa o sistema da área de transferência X, o X tem vários sistemas para escolher. Os dois mais básicos são o buffer de seleção - que sempre tem a última coisa selecionada (executada quando não existe) - e o buffer de cópia - no qual as coisas geralmente precisam ser especificamente copiadas. Para fazer uma cópia explícita no último sistema, você pode tentar qualquer uma dessas opções para obter o tamanho:
Ctrl+C
Shift+ Ctrl+C
Ctrl+Insert
Se nada disso estiver funcionando magicamente para você, existem duas maneiras de seguir.
Há um aplicativo para isso! ™ Use um dos vários programas do gerenciador de transferência para lidar com isso para você. Os mais populares parecem ser Parcellite e Glippy , mas você pode conferir outras alternativas aqui . Consulte também esta pergunta sobre gerenciadores de área de transferência avançados
Corte você mesmo.
Então, digamos que você queira hackear.
Além de escrever seu próprio código e acessar a API do X, as ferramentas de hacker para o trabalho são alguns pequenos utilitários de linha de comando que oferecem uma janela para a mente do X. Apenas uma pequena janela para você, a visão toda muito assustadora .
A primeira ferramenta é xsel. Este pequeno jobber cuspirá o que estiver no buffer de seleção de X a qualquer momento.
Agora você precisa colocar isso em seu programa. Existem duas opções para isso. Um é o xdotoolque permite simular o envio de eventos para o sistema de entrada do Xorg. Você pode usar o método typexdotool type foo_bar para imitar a digitação 'foo_bar' no cursor. Combinado, você obtém algo parecido com isto:
$ xdotool type $(xsel)
O outro é o xvkbdque envia eventos de teclado de um subsistema inferior. Você pode inserir as teclas pressionadas nele no STDIN. Combinado com xsel, você obtém algo parecido com isto:
$ xsel | xvkbd -xsendevent -file -
Ótimo. Agora, para que essa combinação de teclas execute essas coisas. Se você executar o Gnome-2, poderá adicionar um atalho personalizado em Sistema -> Preferências -> Atalhos do teclado . Se você usar um DE ou WM diferente, esse tamanho excedente é deixado para o leitor.
A última observação é que, ao vincular comandos a atalhos de teclado, geralmente é necessário ter apenas um comando, não dois comandos conectados a um canal, como usamos acima. Você pode fazer isso chamando seu comando canalizado como uma sequência de comandos argumetn para um novo shell como este:
sh -c 'xsel | xvkbd -xsendevent -file -'
sh -c 'xdotool type "$(xsel)"'