Experimentando tiling WMs, uma das coisas que senti falta eram teclas de atalho que pudessem facilmente enviar prints da tela para a área de transferência (tinha um bocado de keybind para isso com o Spectacle). Depois de uma pesquisada, venho trazer os resultados.
Todos os comandos vão ser no formato: comando | xclip -t image/png
. Vou deixar o | xclip -t image/png
subtendido para não ficar tão poluído.
Usando ImageMagick
Todos os monitores: import -window root png:-
Janela atual: import -window "$(xdotool getactivewindow)" png:-
Seleção retangular import -window root -crop "$(slop)" png:-
- Observe que os últimos dois comandos tem dependências além do ImageMagick.
- O última comando tem duas ressalvas se você tem compositor:
- Lembre-se de configurar para o
slop
não ser borrado. Por exemplo, no Picom:blur-background-exclude = [ ..., "class_g = 'slop'", ... ]
- Lembre-se de excluir o slop de animações (como fade-out, etc. – isso vai interferir no print). Por exemplo, fade do picom:
fade-exclude = [ ..., "class_g = 'slop'", ... ]
- Lembre-se de configurar para o
Usando Scrot
Todos os monitores: scrot -o /dev/stdout
Janela atual: scrot -uo /dev/stdout
Seleção retangular: scrot -so /dev/stdout
- Uma opção adicional do
scrot
é o-f
, que congela a tela antes de tirar o print. Bastante útil em conjunto com a seleção retangular. - Se tiver alguma janela em cima da janela que você estiver tentando capturar, ela vai junto no print (a versão ImageMagick não tem esse comportamento). Pode ser um problema se você estiver com janelas no modo floating.
Lembre-se de acrescentar o | xclip -t image/png
quando for configurar as keybinds do seu TWM favorito, por exemplo, shxkd do Bspwm:
ctrl + Print
scrot -f -so /dev/stdout | xclip -t image/png
Por hoje é isso, com algumas técnicas mais complicadas dá para fazer coisas como obter a configuração de monitor atual e daí tirar um print dele. Porém, não achei nenhuma maneira “fácil” (uma linha) de fazer isso, por isso não coloquei.