Acabei de mudar para o Linux e estou configurando meu laptop. No windows, eu uso um atalho AutoHotkey, para fazer o seguinte:
- Abra "chrome" quando não estiver ativo.
- Minimize "chrome" quando estiver em primeiro plano.
- Traga para o primeiro plano quando a janela não estiver ativa.
Eu uso o seguinte código em "Autokey", que funciona muito bem, mas eu adoraria se pudesse fazer isso com um simples script:
#AutoKey script to toggle any windowed application, Nautilus as the example. Requires xdotool and wmctrl.
import subprocess
command = 'wmctrl -lx'
output = system.exec_command(command, getOutput=True)
if 'google-chrome' in output:
winClass = window.get_active_class()
if winClass == 'google-chrome.Google-chrome':
system.exec_command("xdotool windowminimize $(xdotool getactivewindow)")
else:
system.exec_command("wmctrl -x -a google-chrome")
else:
system.exec_command("google-chrome")
#end script
Agora, tentei traduzir isso para o código bash, mas fiquei preso ao verificar se o Chrome está sendo executado em primeiro plano. Eu tive o seguinte pseudocódigo em mente, mas não consigo encontrar os comandos de shell certos:
if chrome is not open
open chrome
else
if chrome is on foreground
minimize chrome
else
bring chrome to foreground
end
Eu tentei obter esse comportamento no Linux usando um script de shell no aplicativo "atalho" do Linux. Mas até agora, não consegui encontrar uma maneira de verificar se o Google Chrome está em primeiro plano. Eu tentei usar o pacote "xdotools", mas isso não parece funcionar:
if ($(xdotool search --name "Google Chrome") -eq $(xdotool getactivewindow))
xdotool windowminimize $(xdotool getactivewindow)
else
wmctrl -x -a google-chrome
end
Você talvez tenha algumas dicas sobre qual é a melhor maneira de conseguir isso? Agora tenho os seguintes ingredientes:
Para abrir o google-chrome, uso:
google-chrome &
Para minimizar o google-chrome, uso:
xdotool windowminimize $(xdotool getactivewindow)
Para maximizar o google-chrome, uso:
wmctrl -x -a google-chrome
E eu acho que preciso usar algo assim para verificar se o cromo está em primeiro plano:
wmctrl -lx
xdotool search --name "Google Chrome"
xdotool getactivewindow
enter code here
Muito obrigado antecipadamente,
Saudações,
Rick,
Informação do sistema:
Desktop: Estúdio Hp Zbook G3
ID do Distribuidor: Ubuntu
Descrição: Bionic Beaver Ubuntu (ramo de desenvolvimento)
Versão: 18.04
Codinome: bionic