xclip conteúdo binário da imagem colado em campos de texto

2

Digamos que eu escolha um arquivo png e execute o seguinte comando:

xclip -selection clip -t image/png image.png

Agora tenho essa imagem na minha área de transferência. Se eu colá-lo em algum lugar que aceita uma imagem, ela é colada como esperado e tudo é bom.

Agora, considere que eu pressione Ctrl + V enquanto estiver na barra de endereços do Firefox ou no campo de texto em que estou digitando. Os conteúdos binários do arquivo são colados textualmente no campo de texto, em alguns casos causando navegador para pendurar por um tempo.

É claro que sei que não faz sentido colar uma imagem lá, mas às vezes faço isso acidentalmente e isso causa problemas.

Quando, em vez disso, colo uma imagem que copiei usando o botão "copiar imagem" do firefox, ela não é colada quando tento colá-la, portanto, é possível armazená-la na área de transferência para permitir esse comportamento. / p>

Como posso colocar uma imagem na área de transferência sem que a imagem seja colada textualmente como dados binários em campos de texto? Se for possível, de alguma forma, colocar uma imagem e uma string de texto (como o caminho para a imagem ou algo assim) na área de transferência e fazer com que ela escolha a apropriada ao colar, isso seria incrível.

    
por Alice Ryhl 03.07.2017 / 17:49

1 resposta

0

Eu copiei uma imagem para a área de transferência com o xclip, como você fez, e aqui está a lista de alvos que eu consegui:

> xclip -selection clip -t TARGETS -o
TARGETS
image/png

e agora, se eu copiar uma imagem de uma página da web, recebo isso:

> xclip -selection clip -t TARGETS -o
TIMESTAMP
TARGETS
MULTIPLE
SAVE_TARGETS
text/html
text/_moz_htmlinfo
text/_moz_htmlcontext
image/png
image/jpeg
image/x-icon
image/x-ico
image/x-win-bitmap
image/vnd.microsoft.icon
application/ico
image/ico
image/icon
text/ico
image/tiff
image/bmp
image/x-bmp
image/x-MS-bmp

e, por exemplo, definindo o destino como text / html fornece tal saída

> xclip -sel c -t text/html -o       
<img src="..." alt="...">>

Então, obviamente, é o problema do xclip, conforme declarado na resposta anterior

    
por 03.07.2018 / 12:50