Como posso abrir um menu com uma tecla de atalho se não existir uma tecla de atalho para o menu?

1

Existe um atalho de teclado para abrir / suspender o menu / indicador de som, por exemplo, para ver a música que está tocando? Se não, como eu poderia definir um?

    
por MakisH 30.05.2015 / 13:19

2 respostas

2

Com o script abaixo sob uma tecla de atalho, você pode fazer com que qualquer qualquer item do menu caia, se nenhum atalho existir para ele, incluindo o menu de som:

Naverdade,épraticamenteamesmarespostaquefoipostada aqui , mas a questão é diferente. Tomei a liberdade, no entanto, de ampliar (o título de) sua pergunta um pouco para cobrir possíveis questões similares futuras.

O que faz

O script simula uma movimentação do mouse para o menu ou ícone, clica e, em seguida, retorna o mouse para onde estava. Isso tudo acontece em uma fração de segundo, então você não vai notar nada.

Ele pode ser usado de forma flexível, para clicar na tela em qualquer posição, para ser alterado facilmente. Ele é executado com duas opções:

  1. para definir (lembrar) a localização atual do mouse:

    run_click -set
    
  2. para clicar na última posição lembrada:

    run_click -run
    

Se nenhuma posição foi definida, aparece uma mensagem zenity, convidando para definir uma posição

O script cria um arquivo oculto; ~/.run_click onde armazena as últimas coordenadas lembradas.

Como usar

  1. Instale xdotool

    sudo apt-get install xdotool
    
  2. Copie o script abaixo em um arquivo vazio, salve-o como open_menu (sem extensão) em ~/bin . Crie o diretório, se necessário, e torne o script executável .

  3. Se você acabou de criar ~/bin , execute source ~/.profile .
  4. Teste os dois comandos, primeiro open_menu -set e, em seguida, open_menu -run para ver se tudo funciona conforme o esperado.
  5. Agora crie dois atalhos: um para fazer o script lembrar a posição do seu item de menu, o segundo para realmente abrir o menu. escolha: Configurações do sistema > "Teclado" > "Atalhos" > "Atalhos personalizados". Clique no botão "+" e adicione os comandos a duas combinações de teclas de atalho diferentes:

    open_menu -set
    

    e

    open_menu -run
    

Agora coloque o mouse no ícone do menu de som e pressione a primeira tecla de atalho. A partir daí, você pode abrir o menu com a segunda tecla de atalho.

O script

#!/usr/bin/env python3
import subprocess
import time
import sys
import os

option = sys.argv[1]
datafile = os.path.join(os.environ["HOME"], ".run_click")

def get_mousepos():
    cursordata = subprocess.check_output(["xdotool", "getmouselocation"]).decode("utf-8").split()
    return [d.split(":")[1] for d in cursordata[:2]]

if option == "-run":
    try:
        data = open(datafile).read()
        coords = (" ").join([l for l in data.splitlines()])
    except FileNotFoundError:
        message = "Please run the command: 'run_click -set' first, to set the click position"
        subprocess.Popen(["zenity", "--info", "--text", message])
    else:
        cmd1 = "xdotool mousemove "+coords; cmd2 = "xdotool click 1"; cmd3 = "xdotool mousemove "+(" ").join(get_mousepos())
        for cmd in [cmd1, cmd2, cmd3]:
            subprocess.Popen(["/bin/bash", "-c", cmd])
            time.sleep(0.05)
elif option == "-set":
    open(datafile, "wt").write(("\n").join(get_mousepos()))
    
por Jacob Vlijm 30.05.2015 / 16:29
0

Não há um atalho específico para abrir o Indicador de Som, mas você pode pressionar Alt + F10 para focar o Indicador de Menu e traduzir para o Indicador de Som.

    
por xangua 30.05.2015 / 13:30